ITQ Recently became Pivotal partner (link: http://itq.nl/itq-becomes-pivotal-partner/). Pivotal is a VMware spin-off which focuses on turning ideas into running software quicker.
They offer different products and services to help customers do that. But the product I want to focus on in this post is Pivotal Cloud foundry.
What is Cloud Foundry?
The Cloud Foundry website states: “Cloud Foundry is the industry standard cloud application platform that abstracts away infrastructure so you can focus on app innovation”
In other words: Cloud Foundry is a platform which enables developers to focus on code that adds actual business value and getting that code into production in the shortest time possible.
I give a bit more details on what the Cloud Foundry platform looks like on my personal blog (link: http://www.automate-it.today/what-is-cloud-foundry/).
For now I’d like to dig into the why a bit more.
Why Cloud Foundry?
As stated above, there are two main reasons to use Cloud Foundry:
- Let your developers focus on software that adds business value
- Get from idea to software in production in the shortest time possible
As for the first reason: We know from experience that in a lot of companies developers are spending loads of time building and maintaining docker containers
or even complete do-it-yourself application platforms. If you want to read first hand experiences from someone who did build a diy platform check out this blog: https://content.pivotal.io/blog/5-confessions-of-a-platform-builder
The point here is that when you start building a platform yourself you’re going to spent a lot of engineering effort on just the platform.
While I believe every company should focus is engineering efforts there where business value is created.
The difficulty is that developers love building their own stuff. After all that’s what they do. So as long as they not provided with a proper platform they’ll just go the diy route.
If your company employ developers you’ve probably seen this already. Developers don’t want to wait forever for new virtual machines to be deployed so they just order a few big ones, install docker and deploy their software that way.
That’s how it usually starts out: “let me run docker containers somewhere”. But just running containers is not enough. The containers have to be build, orchestrated, monitored and data needs to be stored somewhere.
So one day somebody writes a piece of code to orchestrate containers. The next day he writes some monitoring code and before you know it that one developer is doing nothing else that just developing a platform instead of delivering business software.
I think I made my point clear: Developers should focus on business value, not on building a platform, dealing with containers or requesting virtual machines.
Cloud Foundry can be installed in under a day and after that your developers can just type “cf push” and their code will be running on the platform.
Then the second reason: In the current highly digitized world it is key to be able to try out new ideas quickly.
So you want to be able to go from idea to running code in a very short time. The way Cloud Foundry achieves this is by offering code deployment and data services in a self service fashion.
The developers does not need the IT department to deploy new code. he Simply types “cf push” and the code is deployed for him, using the data services his application needs.
Of course the organization needs to support this way of working. I won’t go into the people and process side of the story here but you might ant to implement a DevOps way of working to optimize software delivery and operation.
Part of the DevOps way of working is CI/CD (Continuous integration/ Continuous Deployment).
CI/CD basically means that once a developers has pushed code into the code repository and automated process takes over. This process is called a pipeline.
A pipeline builds the software, runs units tests, integration tests and if everything is successful it deploys the code to production.
Pivotal created its own CI tool as part of the Cloud Foundry ecosystem. It is called Concourse. you can read a bit more about concourse here: (link: http://www.automate-it.today/what-is-concourse-ci/)
Cloud Foundry will help you focus on business value and at the same time help you being a more agile business.
From a technical perspective (I’m a techie after all): Cloud Foundry is pretty cool technology which not only offers a lot to developers but also to the operators of the platform.
As to why ITQ is involved in Cloud Foundry: We want to provide the best solutions to problems our customers are experiencing. And currently deploying code fast is one of the biggest challenges. We believe Cloud Foundry can help solve this.