eddology • by edd dumbill

Open source web frameworks have been a big driver of web productivity in the last 5 years, and having them cloud-hosted “out of the box” is highly desirable for most people. But is there a downside?

In one sense, frameworks are endangered by a cloud future. We’re slowly moving to a platform-oriented cloud (PaaS), as opposed to a virtualized infrastructure one (IaaS). In this future we’ll be using platform-as-a-service solutions such as Amazon’s DynamoDB or Google’s App Engine. In this world, the databases and frameworks will run out of the box. But where will the new open source frameworks come from? With little opportunity for development in the broader ecosystem, few will have the incentive to improve or create new frameworks.

We should be as be wary of cloud “platform-as-a-service” as much as the closed world promoted by iOS. By abstracting away the moving parts of the operating system, platform-as-a-service offerings lock out many inventors from improving and innovating—except perhaps, for on top of the platform, which they have no control over.

On the shoulders of standards

Standards and open source are both the safeguards of freedom and the catalyst to innovation. In the mobile world, having Android be open source is already proving beneficial for diversity and innovation.

We’re living in a world built on the innovation made possible by open standards and open source. The standardized IBM PC gave birth to many new businesses and technologies, the most influential among these being Windows and Linux. On the internet, open standards have been crucial. Web frameworks such as Django and Ruby on Rails just wouldn’t have happened without the web and Linux.

In order to preserve a strong software future for web development, we need to take care that our cloud infrastructure is open. Projects such as OpenStack are leading the way in this.

The bargain of convenience

How does this tie into offerings such as Google’s AppEngine? On the one hand, AppEngine is marvelously progressive. Why bother with the troubles of virtualized physical machines, load balancing and so on, when the platform can do it for you? But on the other hand, we’re always trading off freedom for convenience.

That’s not, on the face of it, a bad thing, except when it turns out to be a bad trade—and you don’t always know when that’ll be. If you don’t control the platform on top of which you’re innovating, you’re at the mercy of its owners changing the rules of the game without reference to you.

It’s in the long-term interests of the industry to keep all the layers of the stack open, so we can continue to innovate on them and try different approaches.

Even if your cloud provider is the smartest company in the world with the best record on uptime, security and redundancy, it’s not always enough. Control, or even merely the illusion of it, matters. One reason that EC2 is a wildly popular cloud hosting platform is because of the control developers get—even if the resulting architectures end up all looking much the same.

Open source is our guarantee

When developing services that run in the cloud, you really do need to be careful not just about technical issues, but about those of direction and control. The IBM PC was changed slowly and relatively predictably. There aren’t the same restrictions or guarantees for software platforms.

You may be thinking “so, you’re saying I should make my life less convenient so as to protect the interests of the following generation?” However great this sounds, we know from life this doesn’t happen very often, and exceeding rarely in business.

Fortunately, competition comes to our aid. We’ve seen repeatedly that open source is a powerful weapon in the hands of a competitor. If you commoditize your opponent’s platform, they have nowhere to go.

The advantages of open source in giving developers control, fostering innovation and seeding ecosystems mean that it is here to stay. There will be several open source Google AppEngines in the future, and who knows, perhaps even from Google themselves.

So for now, recognize that open source is far from obsoleted by the cloud. It’s more important than ever. As long as there’s open source, there’s a place for innovation in our industry.

Blog comments powered by Disqus