Emerging Market Software Blog

There are still much more to come

published on 2019/06/18

The currency is designed not to be a speculative asset, like Bitcoin, but a form of digital money backed by a reserve of assets. You will one day be able to use Libra as payment for online and offline services, Facebook executives say. At the beginning, the company imagines Libra will be used mainly to transfer money between individuals in developing countries who lack access to traditional banks. Eventually, the goal is to create the first truly mainstream cryptocurrency: a decentralized global form of payment that is as stable as the dollar, can be used to buy almost anything, and can support an entire range of financial products — from banking to loans to credit.

The Verge

Right now we are in the age of digital abundance where it seems that everything that can be digitized, already has. However it is important to note that note everyone is connected to the Internet yet. Right now barely 50% of the world population is connected to the Internet.

There are still many aspect of societies that have not been touched and affected by Internet revolution. We will see whether this latest push on digital currency by Facebook, a digital behemoth, will be successful. If it does, it will change the lives of many people, good and bad.

Important milestones in our most popular open source project

published on 2019/06/05

The open source project of SilverKey's co-founder on ASP.NET Core has reached an important milestone today. The project has accumulated 250 high quality samples for Microsoft's next generation technology stack, ASP.NET Core. It has been used by thousands of people as a resource for their learning on mastering ASP.NET Core.

Currently the project is ranked 4th on the topic of aspnet-core on GitHub. It has also been listed by .NET Foundation as a resource on their presentation toolkit page.

The ruins of technology stack

published on 2019/05/28

Plain and simple question, isn't it ? We're stuck with a load of applications in .Net 4.6.1 and are not litterate in .Net Core. Now that has become the future, I'm beginning to worry about the EOL. Some applications use WebAPI 2 but most are WebForm. No MVC. Thanks for your answers !


This is a dilemma that many organizations face in their IT infrastructure. How do you make sure that your software is always at good standing in regards of the underlying technology stack.

The good news about WebForm and it's underlying .NET framework is that they will continue to work and be supported by Microsoft indefinitely in terms of security fixes. The bad news is that WebForm won't be part of .NET framework future.

If you are in this position, there are two viable path you can take short of rewriting:

  • Migrate to MVC then eventually .NET Core. You can host WebForm and MVC at the same process. Only implement new features in MVC and slowly rewrite WebForms part of the application to MVC. In 5 or 6 years time, you will have all the functionality converted to MVC. The migration part to .NET Core from MVC is smaller and can be done efficiently.
  • Stay in .NET Framework. Stay in WebForm as long as the application continues to serve your and your customers' business needs.

In the latter option you will encounter the challenge of finding developers interested in working your system. This is a risk that you need to consider in making these types of decisions. Software stack requires a healthy ecosystem of developers and designers working in it. If your system stack is relatively modern, it makes it trivial for developers to find their community and get support for their questions. Once this ecosystem shrinks because of the diminishing number of participants, the more unattractive it becomes for the current and upcoming developers to continue to invest their time in mastering this technology.

Our default recommendation is the first option - take the bullet and invest in migration effort. The longer you postpone the decision, the riskier and the costlier it will get. Good luck!

User hostility in Android mobile games

published on 2019/05/19

One tactic that is used in mobile games over and over again is to keep the player at the bar. Not every player can spend money and buy diamonds for it. But there are other possibilities. People who watch advertisements (or videos) can earn diamonds. Since you are not supposed to farm diamonds, this is usually reduced to one or two videos. You must not give the player too much at once, because otherwise he can finish the game as fast as possible and is no longer a potential customer. Here one notices the clear difference to the PC. There are also Loot Boxes, DLCs (sometimes authorized, sometimes not) and other offers for which you should spend more money. But it is not as obvious as on a smartphone. Are the players more undemanding or just spend money faster? Unfortunately I can't answer this question here. I personally spend 0% on products on my mobile phone.

This whole article is worth reading in full even when you are not a gamer. Mobile gaming in Android is full of dirty tricks in trying to snare casual gamers to purchase additional top ups to advance in the game. This kind of tactics ruin the experience in a lot of games and sometimes get children into trouble as they keep purchasing in game items without understanding the financial implications of such items.

Refurbish, do not rebuild

published on 2019/05/12

Rather than being razed and rebuilt, with the concomitant waste of resources and baleful impact on the environment, the blocks have been refurbished by the simple expedient of adding an external layer of winter gardens and balconies. The original facades have been stripped away and the flats opened up to an intoxicating rush of light, air and views. A new armature is created for myriad activities and residents are at liberty to furnish and use the extra space in any way they choose. Balconies are decked with plants, parasols, bikes, birdcages and assorted domestic minutiae. It’s urban living as a super-scale version of Rear Window, or a giant theatre, each apartment an individual loge, concealing and revealing its private goings-on. Now totally transformed, the 16-storey slab blocks are curiously dematerialised into a shimmering, fine-grained bas-relief of polycarbonate, glass, corrugated metal and silver solar curtains, more characteristic of light industrial or greenhouse construction than housing. Against this, the random colours and forms of the plants and other bricolage assume an unusual intensity.

The Guardian

There is a lot to be learn from architecture and urban design. One of the most important idea that we can learn from these fields is about reuse and retrofit.

Well, yes. They did. They did it by making the single worst strategic mistake that any software company can make:

They decided to rewrite the code from scratch.

Joel on Software

Joel espoused the same idea back in 2000 when he warned about the danger of software rewrite.

Incrementally migrate a legacy system by gradually replacing specific pieces of functionality with new applications and services. As features from the legacy system are replaced, the new system eventually replaces all of the old system's features, strangling the old system and allowing you to decommission it.

Strangler Pattern