It’s not a brand-new stuff, but if you haven’t read “A Conversation with Alan Kay” article in the “ACM Queue”, I strongly advise you to read it. Alan Kay is a godfather of OOP and GUI, and the creator of Smalltalk language. Now he’s evolving his ideas by developing Squeak programming language and environment.

Here are some excerpts from the article, I hope you’ll swallow the bait.

If you look at software today, through the lens of the history of engineering, it’s certainly engineering of a sort—but it’s the kind of engineering that people without the concept of the arch did. Most software today is very much like an Egyptian pyramid with millions of bricks piled on top of each other, with no structural integrity, but just done by brute force and thousands of slaves.

It’s not that people are completely stupid, but if there’s a big idea and you have deadlines and you have expedience and you have competitors, very likely what you’ll do is take a low-pass filter on that idea and implement one part of it and miss what has to be done next. […]
Sun Microsystems had the right people to make Java into a first-class language, and I believe it was the Sun marketing people who rushed the thing out before it should have gotten out. They made it impossible for the Sun software people to do what needed to be done.

The thing we liked least about Java was the way it was implemented. It had this old idea, which has never worked, of having a set of paper specs, having to implement the VM (virtual machine) to the paper specs, and then having benchmarks that try to validate what you’ve just implemented—and that has never resulted in a completely compatible system.

The technique that we had for Smalltalk was to write the VM in itself, so there’s a Smalltalk simulator of the VM that was essentially the only specification of the VM. […]

The result is that this system today, called Squeak, runs identically on more than two dozen platforms. Java does not do that.