My name is Ismael Chang Ghalimi. I build the STOIC platform. I am a stoic, and this blog is my agora.

Leaving the asymptote

Ever since we’ve started STOIC, I’ve been asking myself a very simple question:

Can we make it work?

In fact, this question encompasses two separate questions:

#1 Can we make the underlying technology work?

#2 Can we make the product usable for regular people?

For #1, I’ve largely relied on a triumvirate of trusted partners, namely Pascal, Hugues, and Jim. I might have had my doubts at some point, but I trust them enough to know that they’ll eventually figure out a way to make the technology work. And once Yves joined this little group, I knew that we had enough firepower around the table to make it work soon enough. I could not tell how long it would take to solve the most critical issues, but I knew that it would be counted in months or quarters, not years. And today, I know that we’re just a few weeks away from having something quite solid to build on top of.

Unfortunately, there was nobody I could rely on for #2. There are a lot of people within our team and outside who could tell us that things were not good enough, but nobody who could fix it for us, or even tell us in which direction we should go. On that front, we were on our own, and I would have to carry most of the load myself. Fortunately, with François and Florian on deck (later followed by Zhipeng), I had enough resources at my disposal to try quite a few ideas. And with Jacques-Alexandre keeping a watchful eye on everything we did, I had a pretty solid sounding board to check that we were going in the right direction.

But none of that was enough to convince me that we would ever make it. I’ve described this to a few people who came to our Dojo sessions by explaining that the product needed some critical mass of features to become truly effective at supporting the development of real-world applications. And while the number of required features is large (we have the largest MVP ever), it is finite. Unfortunately, the more features you add, the more complex the product becomes. This, in turn, puts you at risk of sitting on some kind of asymptotic curve (the asymptote), whereby the more features you add to make the product effective, the more complex it becomes. And you never cross the line that would make the product usable for solving real-world problems that are actually experienced by its targeted audience.

For the past 26 months, I have lived in fear of sitting on the asymptote…

Here come the solutions. While still relatively immature, this is the concept that will quickly kick us out of our asymptotic path and put us on a fast track to escape velocity (metaphor overload). After careful consideration, I am now convinced that solutions is the missing piece in our puzzle. The missing abstraction. Right between objects, which are too small, and applications, which are too large. Solutions are just right. And the reason why size matters is because it helps you solve the fundamental paradox that drove this asymptotic journey in the first place: if you want a platform to be generic-enough, its feature set becomes almost infinite. But the more features you add, the less usability you get. Therefore, you need a way to add features without reducing usability, and solutions can do that very well, much like what drivers do for an operating system.

This last metaphor is worth pondering. Indeed, one way to describe the STOIC Platform is as some kind of operating system for the business. It’s a system (rather than a platform) that provides all the building blocks for supporting the development of virtually any kind of business application (no Angry Birds 2.0, sorry). And it’s called a system rather than a framework because it does that in a deliberatley systemic way, whereby most components of the system are built on top of the system itself, which by the way is the hardest part of the exercise of putting together a working operating system (think bootstrap).

Well, today, thanks to our solutions, I think that we found the solution to our paradox.

And my fears are gone…

Time for some fun!

I’m currently doing all the paperwork to get an employment pass in Singapore. When asked what my religion is, I wrote “Stoic”. It’s more a philosophy than a religion, but it’s the best answer I could give to the question. Here is more on stoicism from Wikipedia:

Stoicism is a school of Hellenistic philosophy founded in Athens by Zeno of Citium in the early 3rd century BC. The Stoics taught that destructive emotions resulted from errors in judgment, and that a sage, or person of “moral and intellectual perfection,” would not suffer such emotions.

Stoics were concerned with the active relationship between cosmic determinism and human freedom, and the belief that it is virtuous to maintain a will (called prohairesis) that is in accord with nature. Because of this, the Stoics presented their philosophy as a way of life, and they thought that the best indication of an individual’s philosophy was not what a person said but how they behaved.

Later Stoics, such as Seneca and Epictetus, emphasized that because “virtue is sufficient for happiness,” a sage was immune to misfortune. This belief is similar to the meaning of the phrase “stoic calm,” though the phrase does not include the “radical ethical” Stoic views that only a sage can be considered truly free, and that all moral corruptions are equally vicious.

From its founding, Stoic doctrine was popular with a following in Greece and throughout the Roman Empire — including the EmperorMarcus Aurelius — until the closing of all pagan philosophy schools in AD 529 by order of the Emperor Justinian I, who perceived theirpagan character as being at odds with the Christian faith.

Fighting Software Illiteracy

Imagine a world where 99.975% of the population is illiterate.

illiterate: unable to read or write.

If you’re a cellphone subscriber, unfortunately, this is the world you live in.

If you can read or write code, you’re among the 0.025% lucky few software literate.

If you can’t, you’re part of the 99.975% who are being left out.

software illiterate: unable to read or write software code.

This is a tragedy, and it’s getting worse year over year.

But you can do something about it, so continue reading.

According to numbers recently published by Apple, there are 248,000 registered iOS developers in the U.S. While official numbers have yet to be released, it is safe to assume that the total number of iOS developers worldwide is 2 to 3 times what it is in the U.S. alone. For the sake of the argument, let’s assume that it is around 750,000.

According to CNET, there are about 500,000 iPhone apps on Apple’s App Store (700,000 when iPad apps are added in), 600,000 Android apps on Google Play, and 100,000 on the Windows Phone marketplace, leading to a total of 1.4M apps. And if we add apps for smaller platforms like BlackBerry and Symbian, we reach a grand total of about 1.5 million apps. Taking into consideration the fact that the number of developers is roughly equal to the number of apps, as is the case in the iOS ecosystem (750,000 developers for 700,000 apps), we can safely assume that there are about 1.5 million mobile developers today.

At first glance, 1.5 million developers might seem a lot, but it’s actually tiny when compared to the number of mobile subscriptions. According to the International Telecommunication Union, there were 6 billion mobile subscriptions at the end of 2011, and about 1 billion of them were for smartphones (Source: mobiThinking). Today, only 0.15% of all smartphone users could develop a mobile application. And that number drops down to 0.025% if you include all mobile subscriptions. In the mobile world we live in, the Software Illiteracy Rate is 99.975%.

And things are actually getting worse. A lot worse.

According to the Computer Industry Almanac, there were 1.6 billion PCs in use around the world in 2011. And if we believe the rather conservative estimates computed by DZone, there might be as many as 43 million developers in the world. This translates to a 2.687% Software Literacy Rate in the PC world, which is 107.5 times higher than the Software Literacy Rate in the mobile world. In other words, when transitioning from the PC era to the mobile era, our Software Literacy Rate actually dropped by two orders of magnitude.

“Houston, we have a problem.”

Granted, the community of mobile developers is growing rapidly. According to World of Apple, there were only 125,000 registered iPhone developers worldwide back in 2009. If the total number today is around 750,000 as assumed above, this suggests a yearly growth rate of about 82%. But even if we manage to sustain that rate for a while, it will take close to 8 years to get back to the 2.687% Software Literacy Rate that we enjoy in the PC world today. And 97.3% illiteracy is nothing to be proud of…

Shirley Anita St. Hill Chisholm believed that “literacy is democracy’s basic ingredient.” As“software is eating the world” (Cf. Marc Andreessen), our very democracy is threatened by a rapidly dropping Software Illiteracy Rate. While improvements to our education system would certainly be a step in the right direction, they will be slow and incremental only. For more dramatic change, we need to rethink the way software applications are developed, and create tools for the 99.975%. This is what STOIC is all about, and we need your help to make it happen.

Spread the word!