Really, really big systems coming by 2027
Less porn, more work
It'll be the size of the internet in California, but of far less use. Parts of it already exist - we just don't know it yet. Oh, and we're going to need to re-think programming languages and design to deliver it.
No, it's not Microsoft's next Windows operating system, but the world's first Ultra Large System (ULS), which'll function like a city - always evolving and not stopping - that will debut within the next 20 years.
That's according to IBM distinguished engineer Richard Gabriel speaking at the recent QCon conference in San Francisco, California.
Of course, some might argue, we already have one ULS - the internet. Or that systems such as Google, Amazon or eBay with their massive server farms and multiple processes, can be considered ULS.
These don't match Gabriel's definition of "large". Gabriel, who specializes in architecture, design and implementation of "extraordinarily" large, self-sustaining systems, said the first ULS will be "beyond human comprehension because it's so large". Or put in more concrete terms: it would be like every single person on the planet today writing two and a half pages of Java code.
Another important difference with the internet is you "go there to cheat on your homework or read porn - these are subsets. ULS is distinct, in that it does a coherent set of things. It's the size of the internet in California, but [it's] doing less stuff."
The size and constant motion will mean "changes will have to be made while it's running. Everything is going to be failing continually, so there's no such thing as perfection or reliability." There goes the so-called "datacenter of the future" then.
Also, the ULS concept must be approached using modularity, because building such a thing from both a technological or project perspective is beyond the comprehension or the abilities of one person or one group - even today's distributed, open source projects, which Gabriel called "too small".
According to Gabriel, modularity will need to re-thought along the lines of biological organs, like the liver, that "have transparency and allow self sustaining."
Languages will also need to change, by focusing on abstraction. "One of the things we need to do is re-think the way programming language people think about software. Today it's about how the software talks to a complier. But there are other things outside the complier. We need to think of programs as abstracted, isolated things.
"Anyone alive in 1958 could understand the programming languages we have today. Physicists would be surprised by what we know in physics today. That's bad."®