Open source as the basis of enterprise

Open source as the basis of enterprise

We think of Enterprise organisations as closed societies, working in isolation in pursuit of the advantage over their competitors. It might come as a surprise then to think about how much Open Source software is used within even the largest and most secretive companies around the world. Open Source is free in the sense that it doesn't cost anything, but also free in the sense that you are free to use and modify it — and so are your competitors. So why are companies using, and often working, to improve tools that their competitors will also have access to?

The real answer is that these are just tools; it's what you do with those tools that matters. Having the right tools enables innovation. Enterprise Architect roles are now more about understanding how to combine and orchestrate these best-of-breed Open Source tools to solve the next problems than about building large software applications from scratch. When code has been running for a while without bugs we call it "hardened" code — it's been tested in the wild. Picking Open Source components gives you exactly that: Others are helping to kick the tyre's.

One example I've been in contact with recently is the Apache OpenWhisk project. It's an open source project providing a FaaS (Functions-as-a-Service) platform, with contributors from various organisations. This open source project is used as the basis of the IBM Cloud Functions product, and it being Open Source benefits both IBM and the users of the platform. It benefits IBM because the product has contributors from other places, with other use cases, who come together to keep building and improving the platform. It benefits the users because the platform is more awesome as a result of the input of all those various contributors — but also because they can choose whether they want to run the product themselves. Users might prototype on Apache OpenWhisk and then deploy to IBM Cloud, or vice versa. (I've seen both.)  They might decide that one of those options is the right one, only to realise they need to change tack a year down the line. At that point, they can quickly choose again.

By building excellent common tools, we're opening the door for developers to use those tools to innovate and build the applications of the future.