The Challenge
Perfection is not achieved when there is nothing left to add, but when there is nothing left to take away.
Progress should not make us less capable
This time, I will not use OS benchmarks to discuss the virtues of code efficiency.
"There is nothing a mere scientist can say that will stand against the flood of a hundred million dollars. But there is one quality that cannot be purchased in this way - and that is reliability. The price of reliability is the pursuit of the utmost simplicity. It is a price which the very rich find most hard to pay."
(Sir Charles Antony Richard Hoare)
28 years ago, the MS-DOS marketshare created a rich ecosystem with myriads of applications and add-ons such as GUIs or DOS Extenders (to use all the available memory - Windows still does not do it today).
But all the companies making these products disappeared as Microsoft nested MS-DOS into MS-Windows, an OS pre-installed on all new PCs - leaving little room for the more capable DR-DOS/GEM (today, the same goes with Linux).
Many refused to pay more for a slower and less capable OS. But their cooperation was not required: PC vendors pre-installed Windows on all new PCs. Even if you used DR-DOS (now Linux), you had (and still have) to pay Microsoft for each new machine.
18 years ago, the MS-Windows marketshare created a rich ecosystem with products to process text, make calculations, store or present data, surf the web, host web sites, send emails, view pictures, play videos/music, burn CDs, compress-transmit-synchronize-encrypt-backup-defragment files and disks, run firewalls, share desktops remotely, develop programs, etc.
But all the companies making these products disappeared or were dwarfed as Microsoft bought these tools to bundle them with Windows, pre-installed on all new PCs - leaving little room for this other kind of business which has (a) to find clients and (b) to convince them to pay again for redundant products.
As Microsoft's revenues climbed, countless software vendors went belly-up: their products crashed or became obsolete faster than developers could cope with the mutant Windows APIs tunnelled via the 'Windows security' patch-fury.
Asked how small software companies could compete on products bundled with Windows, Bob Herbold (Microsoft chief operating officer) told Bloomberg News: "They can either fight a losing battle, sell out to Microsoft or a larger company or not go into business to begin with."
Without challengers, you can say good-bye to any real innovation: incumbents do not disrupt their own established lines of business.
Today, end-users have lost the choice, myriads of developers have lost their job - and we are told that this is the 'unstoppable march of progress'.
So, what's the Challenge?
It is just about making it easy and fun to program again - like 30 years ago. This can only be done with a new lean platform, where developers and users will not have to suffer the flaws of too much ambition - and too little capabilities.
Today's level of inefficiency is unsustainable. Tough times require better tools.