Archive for the ‘styx technology group’ Category

TechTip: Dbunit Export from Jetbrains DataGrip

I am an avid test driven development (TDD) advocate nowadays, with a pragmatic slant of course, looking to bullet proof the features that I deliver to ensure that they do what is expected, and work out edge cases.

A big challenge to testing is generating of test data, which is needed to setup some integration test work flows. I have been using Jailer (http://jailer.sourceforge.net/) to generate data from existing tables in a Dbunit format which can then embed in my test dataset xml files.

This is a challenge due to the mapping of relationships by Jailer (a neat feature by the way). So while working Datagrip, the database IDE of choice, we were struck by how to export different formats when looking at a table. This solution would allow us to leverage available filtering and searching features, to nail down the datasets that needs to be exported.

On contacting the support team through Twitter (https://twitter.com/0xdbe/status/853900122828222465/photo/1), the recommendation was to modify the existing XML groovy script to generate DBunit XML, following the steps at https://www.jetbrains.com/help/datagrip/2017.1/extending-the-datagrip-functionality.html

And well an hour later below is a groovy script to do just that can be found at https://gist.github.com/ssmusoke/ca4c55b4e52de97acb99a590644a677f

The code was not being well rendered hence the move to a Gist

Styx Technology Group Launches Poultry Farm Revenue Calculator App

As part of the Styx Technology Group mission to leverage technology to support executives identify, implement & refine strategic technology interventions in their business & target market segments, we are proud to partner with Kkungu Poultry Farm Enterprises Ltd to help bring relevant, useable cutting edge technology to Uganda agriculture executives.

Leveraging the experiences shared in this post Poultry Feed Economic 101 – Changing the Supplier Scenario, the team has built a simple easy to use calculator to address this question using minimal inputs to help poultry farm managers:

  1. Estimate their spot profitability based on the cost of inputs and revenue from sales of eggs
  2. Use simple data to decide whether to make the feed change based on the impact on the bottom line.

Download the application today from Google Play store with this link http://bit.ly/poultry-farm-calc

Please do share your feedback and let us know to improve this by sending email to poultrycalc at styxtechgroup dot com

Screenshots below:

Layer Profitability computation

Layer Profitability computation

Sample Layer Profitability computation

Sample Layer Profitability computation

Feed Switch Comparison Computation

Feed Switch Comparison Computation

Sample Feed Switch Comparison Computation

Sample Feed Switch Comparison Computation

Alternate Approach to Legal Independent Election Tallying

The Uganda elections are more or less over with less than 6 hours for the Uganda Electoral Commission (EC) to announce the results for the presidential elections.

Given all the time on our hands, with no social media, the team at Styx Technology Group designed the following alternative approach to independent electoral vote tallying for future elections that provides inbuilt mechanisms for audit and verification of results.

The primary data sources for the process are:

  1. Official EC list of polling stations and voters per polling station
  2. Photos of the signed election tally sheets from each polling station. To ensure that the photos are not tampered with and provide an audit trail:
    • Each photograph has to be taken with information on the camera, the GPS coordinates of where the photo was taken, date and time when the photo was taken which is available in many cameras that share it using the Exchangeable Image File Format (EXIF)
    • Two separate photos of the tally sheets have to be taken by different cameras
    • The cameras taking equipment may be registered beforehand to provide validation of the source of the information
    • The signatures of the returning officers and stamp must be clear and visible in the photo

The architecture for the technology solution is as follows:

  1. Web based solution accessible via any browser. Due to poor Internet connectivity in many areas of the country, an Android app would be provided to assist in data collection, then data sent once the user gets into an area with Internet.
  2. The field officers who capture the photos would also be provided with an option of entering the candidate vote tallies.
  3. In the tallying center, candidate vote tallies are entered from the photos received and vote tallies entered by data clerks. In order to reduce errors the following approach would be used:
    • The clerks are randomly assigned photos as they come in
    • The tally for a station must be entered correctly by two separate data entry clerks, then approved by a supervisor. This process is formally called the two-pass verification method or double data entry.
  4. All correctly entered data is shared with the rest of the world for download and analysis.

This system is mission-critical having to be available for the entire vote counting period of 48 hours,  so the architecture includes the following paths for data collection:

  1.  Multiple access IP addresses and domains for the website in case some are blocked off
  2. Any data collected via the Android app can be sent via email to a dedicated tallying center address. To ensure that only data from the app is received and not changed in transit, encryption is used.

The inspiration came from a quote by Ghandi “Be the change you wish to see in the world”, disproving the myth that there is no local capability to design and implement such solutions and most of all that such solutions have to be complex.

Looking forward to hearing your thoughts and suggestions…

Tech Tip: Websites on Github with Jekyll

We have been facing a challenge on how to manage the Styx Technology Group corporate website without having dedicated resources to host, deal with security, updates and maintenance. Having been in the website business for over a decade at the turn of Y2K,  having an easily maintainable solution was key for the long haul.

Enter GitHub pages (https://help.github.com/categories/github-pages-basics/), of course any decent software developer and team are using some form of version control, but the beauty is that it allows projects, users and organisations to have self hosted sites that are managed through a repository.  That in combination with Jekyll (http://jekyllrb.com/) supports content management without a database.

To further speed up our development process, we leveraged existing themes for the website look and feel that were close to our need, while keeping the site design very simple so that we focused on solving the problem at hand.

It was suddenly music to our ears as the team did not have to leave their IDEs (random plug for Jetbrains IDE tool suite that we have standardized upon)  in order to make updates to the website. Just create a new markdown document, verify and push … And bam!! the updates are done, version controlled and all, no more hassles with database configurations …

Need help getting your website up and running in such a fashion do shoot us an email at consulting at styxtechgroup dot com and we shall be happy to help and engage…. Have a great weekend

Syzygy – Release 2 – Uganda Mobile Money Cost Estimator

Syzygy is a Uganda focused utility calculator (launched by this post https://ssmusoke.com/2015/08/11/launching-syzygy-uganda-focused-utility-calculator/), this new release adds a tool not available anywhere else allowing you to estimate the costs of a mobile money transaction. Are you sending to a registered number, unregistered or trying to withdraw from an agent or ATM?

Hope this app saves you the hassle of searching for the transaction chart which is usually hanging in the agent’s booth.

Do let us know what you think of the new release.

The link to the app is http://bit.ly/syzygy-ug

A screenshot of the new calculator is below

Mobile Money Cost Estimator

Mobile Money Cost Estimator

Alternate Approach to MTN SIM Card Registration Process & Web Tool 

MTN Uganda has finally put together an application to support the online registration of simcards. However the process as outlined in the Dignited article (http://www.dignited.com/15503/you-can-now-register-your-mtn-uganda-sim-card-online-heres-how/) requires a user to download a registration form, upload it then wait until MTN staff can get back on the registration status.
This blog post provides an alternate design and approach for an online sim-card registration tool, thanks to the team at Styx Technology Group for putting the design and mockups for the alternate solution.
The principles of the system design are as follows:
  1. A user can register more than one sim-card under their own names only after completing their profile information, which cannot be changed later (for audibility)
  2. A user can return and check their registration information later
  3. MTN staff can respond to a registration pointing out any missing or inaccurate information
  4. The user can be notified by SMS and/or email of the status of their registration, and can also login to check the status
  5. The registrations can also be downloaded and added to MTN systems (as may be required)
  6. For identification, two documents have to be provided to confirm, and because the numbers are entered, it is easy for MTN staff to verify
The mockups below tell the story of how an alternate process looks like  licensed under the Creative Commons 3
Login Screen

Login Screen

Signup Screen

Signup Screen

Dashboard

Dashboard

My Profile

My Profile

Register Number

Register Number

UPDATE – November 19, 2015: Looks like MTN updated the sim card registration process to an online form at https://www.mtnbusiness.co.ug/mtnreg/ in response to this post

Alternate Approach to Voice Price Wars in Telecom Industry in Uganda

My colleagues at Styx Technology Group are looking at alternate approaches to telecos in Uganda to increase their ARPU (Average Revenue Per Unit) a metric for revenue from each customer, instead of the current price war tagged to 3/= per second (US$ 0.1 per minute).

  1. Accept that voice is now commodity, being pushed further out by VOIP for both regular users and business, due to the improving Internet connectivity both via fixed and mobile connections. There is no longer a competitive edge to having cheaper voice, the revenues are fixed and can only go lower
  2. Bundled services: Currently there are separate plans for voice, SMS and data, which have to be purchased daily or when needed. The monthly plans have a premium attached, so without looking at the numbers I suspect that a majority of the regular users purchase daily plans as and when is needed. The telecoms can create bundled plans (already existing for voice) to include SMS and data without the hefty premium. Additional incentives can be provided for further discounts when a user pays consistently for a plan for 6 months, without any breaks.
  3. Smartphone Device and Service Contracts: While these are being gotten rid of in the US and Europe, the market in Uganda is ripe for disruption, where smartphones are paid over 12 to 24 months, with bundled services. Obviously the argument here is the risk associated with lending in Uganda, but options include partnering with financial institutions can help reduce the risk profile, work through employers to deduct the costs of the contract directly at source.
  4. Multiple Smartphone Data Plans: This is similar to the device plans above, however this allows the owner of the plan to register additional devices for monthly fee to share the data. This has been common with unlimited plans, and would provide a new revenue stream.
  5. Extending Mobile Money Services: The best service to copy is PayWay with a wide range of devices, and platforms on which to use the service based on what infrastructure the agent has. I would like to be able to swipe my VISA card and transfer money to my account without having to go through the bank interface which tends to be down more often than not.
  6. Bulk Sales of Devices to Schools: The new underlapped customer base, sell more devices to schools get parents to pay part of the costs to push e-education services, why do kids still have to fill Advanced Level and University Level choices on paper forms that can be lost? With powerful tablets in the $50 to $100 range only the telecoms have the clout, network and drive to push this through.
  7. Custom Devices and Services: These are for data collection needs, surveys etc, which can be accessed through third parties but pushing the envelope on what is possible. The key here is flexibility of service, enabling channel partners build and innovate by creating custom services and plans to meet their specific needs.
The telecoms need to think of blue ocean strategies to create new markets, provide ability for others to leverage their platform investments for new revenue channels, leveraging the example of Amazon that has created a multi-billion dollar technology infrastructure business based on solving internal problems.
What do you think?

UPDATE: This blog post follows the same thinking as The Telecom Wars in Uganda – Round 5 – 2015 and Beyond on this blog too

%d bloggers like this: