We build what we love (or "how to save us from an x86-only world")
We, software creators, work on what we love.
Of course, we also work on our day jobs, on products we are told to build, with the tools we are told to use. We have to.
But we also work on stuff we like with the tools we choose. We play.
And this is, often, the very best of our work.
Insufficiently advanced technology
In the past couple years, we have seen the development of an astonishing variety of interesting microprocessors. I am not talking about the latest x86 processors, mind you, as they are not particularly exciting (that "cloud" thingie excepted, perhaps). Just about every desktop computer or laptop around us employs an x86, often to drive much more powerful (and elegant) processors that have this lesser roles because... they are not x86s. And because they can't run Windows. Or Flash.
We can see a future in those interesting processors. Both POWER7 and Niagara 3 are amazing machines. We can't, however, see far into their future. These processors are being deployed on servers, often on remote datacenters we never get to visit, to run applications other servers like them already run. They are in the dark realm of legacy.
Running those apps is an important job, don't get me wrong. I like my airline tickets and my hotel reservations properly booked.
But this is the last step towards extinction. When all you run is software developed for your granddaddy, you are pretty much a doomed architecture. You may live long on life support, like zSeries mainframes (also amazingly cool boxes) and COBOL (nah... not so cool, at least not now), but even them will eventually be mothballed. Let's face it: how many new customers they have? How many companies that run x86 servers decided to buy their first POWER or SPARC box in the last year? How many applications that run only (or, at least, better) on non-x86 boxes were developed in the last couple years?
Extinction is a very sad event. It is sad when it's an invertebrate species (perhaps less so when it's a nasty virus), but it's also sad when it's a technology. We have seen this with moon rockets: if we are to get there again, we must, more or less, start from scratch. We just can't build a Saturn V anymore. Soon enough, we won't remember what made SPARC, MIPS, POWER or Alpha special just like most of us never heard of a Transputer or many of us who think Windows XP Professional x64 Edition was the first 64-bit OS (clue: I played a lot with a 64-bit box in the mid-90s and I was 30 years late).
A bleak future
Nobody with enough knowledge to emit an intelligent opinion likes a PC. It's a kludge: a matrioshka of each and every IBM desktop computer down to an IBM PC 5150. Your Core i7 processor powers on thinking it's an 8086 and quite probably goes on initializing its ISA bus, the serial ports, timers... It's nightmarish. If I were such a processor, I would jettison my heat-sink and die the hot death of inefficient power dissipation. You can probably run PC-DOS natively on them (in fact, Dell sells boxes with FreeDOS for those clever enough not to pay the Microsoft tax).
And that's where we are headed to. If nothing happens, 10 years from now that's all you will be able to buy. A wicked fast kludge.
AE101 - Avoiding Extinction 101
If these notable architectures are to survive - and survive they should - we will need computers we can play with. Computers we can love and use in our everyday lives, not remote boxes in datacenters we deploy our legacy applications to. We need to run our Gnomes and Firefoxes on them. We need desktops. We need workstations based on these chips. We need to be able to run their OSs not only to host our legacy applications, but also the apps we would like to build that are unreasonable to build on a desktop PC. Free and open-source software provide an important, smooth, migration path between different architectures. For those who forgot a couple years ago Macs ran on PowerPCs the same OS they run now, it's proof enough to see Gnome running on ARM-based gigantophones and smartbooks. It works and it works well.
And provides a safe bridge.
I am writing this for two reasons. The first is that I like diversity. Diversity and selection are the tools of evolution, Unfortunately network effects have robbed us of the first. Network effects naturally favour the majority and should be limited if we want true evolution. It's effects are felt on desktop computers mostly because of non-portable 3rd party software. The same is happening with smartphones, with ARM on iPhoneOS duelling Android for survival. Diversity should be reintroduced in our environment whenever it starts to falter. In order to maintain diversity, I want other chip architectures to succeed. I want POWER and SPARC, but I also want new architectures to be developed. I want neural networks and reconfigurable coprocessors. The less dependent we are on the x86 binary architecture, the easier it is to make that happen.
The second reason is far more selfish. I want one such box for me.
I want to have one such box. More important: I want the best software developers to have them (since I am not one of them, my power to effect change is very limited). I want them using those machines every day for everything they use computers for. I want them to love those machines and to play with them. I want to leverage this love and turn it into change.
Because we need them playing unrestrained by the legacy technologies that cripple today's PCs and binds them to roles that were obsolete decades ago.
We need our best people inventing the future.
I have no idea of what could come out of this, as much as my ancestors who walked their way out of the Middle East into Europe armed with little more than sticks had no way to imagine we could one day send people to the Moon.
Evolution needs a kick. Let's kick it.
An important note: with luck, this article will start an interesting discussion here. The site is minimalistic, but the folks who hang around there are great.