Democratizing the Cloud

InfoQ posted a very interesting video from the ‘Democratizing the Cloud’ presentation by Erik Meijer in QCon.

Democratizing the cloud means “Make easier to program distributed applications”. He wants us to build a single tier app and publish it in multiple tiers.

He describes an IL to  JavaScript compiler (like Script#) and a MapReduce implementation for LinQ. You can then write C# code and later decide to run it in the browser, or specify a query that today executes over a SQL database but when your application is successful and is used by millions of users, scale it over a cluster of distributed applications servers using MapReduce.

Of course that we’d love to have that. 

The only element that I don’t find consistent with his vision is the ‘refactoring’ he needs to split the applications in tiers. Up to then, all the magic was performed by the compilers and runtimes, but for this one we need different code, so once the decision is made, it cannot be changed. He talks about ‘making irreversible decisions at the last responsible moment’. The problem is to agree when that moment is ;). Things like ‘code webservices as if they are stateful’ probably are a heresy for some people.

This kind of functionality has only been provided by code generation tools, where you generate multiple tiers or single tier applications from the same specification, but never at the language level.

He also has some interesting opinions on SQL and DSLs.

1 Comment

  • I found the video pretty boring. The main thing that kept on popping into my head was: Meijer is one of the most highest skilled language professors we ever had, and here he is talking about something completely not his field and why is this then interesting...

    Data consumption / routing is a totally different field than languages, and despite his extreme high level of intelligence, I couldn't help myself thinking "Stick with what you know best, Eric, and let data specialists do the work in the data field.. PLEASE". Of course, languages do have a context they're used in, but still...

    Anyway, democratizing the cloud... I don't believe in it as the next big thing. At least not on the level where it is advertised now: it's the same old story about webservices and how we will all consume them in future applications and how that will bring is all the best software we'll ever have. This story has been told for a long time now and what has effectively changed?

    The only reason big ISV's are still pushing webservices is that it is their vision how to make money after fat client apps get too good so no-one will upgrade.

Comments have been disabled for this content.