One topic that is causing quite a bit of talk and controversy is BlueMix. I am surprised by the number of people who are well aware of BlueMix, yet have no idea about the power and strategic implications of BlueMix for the long term. For many people, it was either second hand knowledge that they had heard from somebody, or just initial reactions to the slideware that they had seen. Many people have only seen the (now infamous) Twilio BlueMix demo.
That demo is really good at showing one thing – how can I get changes and new functionality developed and deployed into the market quickly. It shows the raw speed with which you can use DevOps services, and composable applications, to bring functionality quickly to your customers or stakeholders. Unfortunately, it is a short demo, and so some of the more strategic implications of the platform have not been properly presented or understood. I have my own BlueMix demo, which I show YOU how to set up and run for yourself. My demo is very “geek focused”, and tends to focus on the development tools and the usage by developers. So my demo is pretty limited too. What is really needed is some plain talk on what strategic advantages the BlueMix platform can give to an organization.
Here’s my quick list of strategic capabilities that BlueMix can give an organization:
- The ability to rapidly build custom applications that use common services and interfaces. The components available to a user of BlueMix for constructing their application range from a variety of development tools, from an IDE, to testing tools, to automated deployment tools. This allows development teams to use the tools that fit the project, rather than a “one size fits none” approach to having a common development infrastructure.
- It also allows a team to use business services, to provide an application services like location services, mobile capabilities, database storage services, “big data” services, and a host of other things. A close look at the available services shows a mix of open source services, IBM services, and other vendor services. These are exposed via stable API’s that an application can interact with.
- This means that rather than selling products, capability providers will be selling metered capabilities. You make your service available on the BlueMix platform, and the application development teams use what they want, and pay for what they use. This is similar to water and electricity usage in a house. You may indirectly pay for the supporting infrastructure, but you are billed based on the amount of resource that you use. Using this analogy, our current perpetual licensing would be like charging a home owner for their first five years of electricity usage when they bought the house.
- This will (hopefully) create an API economy, where service providers expose their API’s, and the market decides which are most useful/applicable. It might be a good time to buy the www.apitracker.com domain name, because this space could quickly explode.
- The ability to quickly build and deploy, in an automated manner, makes huge economic sense for some organizations. Why? Many development shops struggle with maintaining development, testing, and production environments. They build out QA environments that do not match their production environments, due to the excessive hardware cost and configuration complexity. Why buy all of that hardware when it sits idle 60, 70 or even 80% of the time? With BlueMix, applications can be deployed to development and test environments in the cloud, scaled to appropriate levels (the cloud is elastic, you can add resources), used for testing and evaluation, and then DESTROYED. When it is needed again, it is merely a simple automatic reprovision and redeploy in the BlueMix environment. You only pay for what you actually use (notice a trend here?), and the not for idle hardware.
- You also have the ability to easily scale your deployments. Is your app popular? Is that popularity causing you headaches because now the server is overloaded and performance stinks? Just twist a dial, and deploy additional server instances. Did you over-allocate servers, or memory, or CPU resources? Then twist a dial and scale your application down. You only pay for the resources that you use.
- Many organizations currently use virtualized environments to do this, but this environment is unwieldly and requires constant manual intervention. BlueMix is based on CloudFoundry and OpenStack, which means that deployment patterns and automations are portable. This gives customers flexibility, and avoids vendor lock in.
- The underlying technologies are based on open standards (like OSLC, HEAT, etc.), so the entire stack is flexible, allowing you to use different technologies without having to do a large “rip and replace” effort.
BlueMix is a young product, and it’s capabilities are being expanded as we speak. Having BlueMix as a PLATFORM (hence the whole PaaS moniker, or Platform as a Service), means that as new technologies and new business needs arise, services can be developed and then provided to the organizations running on BlueMix. This “API Economy”, or store of services, can be compared to a kitchen. BlueMix is the basic plumbing, electricity, and structure. DevOps services (which provides development tooling and deployment automation) can be seen as a stove. The basic environment in the buildpacks can be thought of as the sink. There is the potential to buy a new stove, or change the sink. You might choose to use something other than DevOps services, or a different buildpack, but it will have some impact on your meal. You look into the pantry, and choose the ingredients (services) that you will use to prepare your meal. You may follow a recipe (the project templates), or you might just whip something up yourself (who needs a recipe for a grilled cheese sandwich?). You then prepare your ingredients (providing the custom code to bring elements together) using utensils (the Orion IDE), and your stove and sink. Once the whole process is complete, you have your meal (a finished application). The only difference is that BlueMix gives you a “magic plate multiplier”, which allows you to cook for one, yet feed one hundred by scaling the size and number of deployment instances.
(Note: IBM seems obsessed with food lately, check out the Watson Food Truck.)
The analogy may not be the greatest, but it does help illustrate what BlueMix does, and it does all of this on the cloud. Everything is done on the cloud. No clients. No plugins. No extensions. Just a browser and an active account.