Open-sourcing infrastructure

People contribute code to open source projects in many languages. Many of these projects are tools or modules that started out as internal development that became good enough (and generic enough) that it could be exposed as an open source project.

There are some tradeoffs to opening up your code to the world, such as getting free patches at the expense of having to spend time merging pull requests. But generally the number one benefit is ‘street cred’, both for the company and for the individual developers.

But the majority of the open source projects are either the code for a specific product or some other executable piece of software (libraries, frameworks, plug-ins, etc.). But how about other parts of a stack that can also be codified? With the increased popularity of tools such as Chef and Puppet a lot of companies are managing their systems through a set of scripts that use a DSL defined by the specific framework. This is what it’s known as Infrastructure as code.

This is an exploratory thought, but what if we combine both ideas? Open up our Chef or Puppet implementations of common infrastructure. Enough organizations use a Node.js installation, an Apache server or a Mongo database to benefit from a generic implementation that can be fine-tuned or managed as the needs change. Yes, all these can be installed easily, but not necessarily in a consistent manner across the board. Versions or configurations can vary from one instance to the other.

Github already has many repositories with puppet code, so this is not a new idea, but it just needs a name. I would call it open-sourcing infrastructure.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: