Hello, Habr.
So, we run a blog dedicated to the IBM Bluemix platform. Such an action always causes a lot of questions and the purpose of this post is to try to answer the main ones in advance, so that you do not get distracted in vain.
Why are we here?')
First of all, then, to talk about our platform and its capabilities. Offer you to try to transfer your development to it. Assess its advantages and disadvantages and share them with us and the respected Habr community. Immediately make a reservation, we are not going to reprint press releases or manuals on the use of certain functions of the platform. There are other places for this and, if necessary, we will refer to them. We are going to publish here what can really be interesting and useful for most of you. Focus on technological innovations and “goodies”. Find non-standard applications of standard technologies. Fortunately, Bluemix provides virtually unlimited opportunities for creativity.
What it is?If you have already come across a mention of IBM Bluemix, then you know that this is such a cloud platform for developing software. An astute reader will immediately ask - what kind of software? Software is different. There are desktop and mobile client applications, there are “heavy systems” working in banks, telecom operators, government agencies and other serious organizations. There are Internet services. They are all developed in different ways using different technologies, tools and processes. So for the development of what software is designed Bluemix?
Let us recall the popular phrase “Data is the oil of the 21st century” and draw the corresponding picture.

Actually, oil is raw data stored in “heavy systems” - information about weather, flights, exchange rates, and much more that we need in our daily life and work. At the other end of the pipe at the gas station we are with our client applications. And we want to take advantage of this data, presented to us in a convenient and beautiful form. However, just as it is impossible to fill the car with crude oil, despite the fact that everything necessary is contained in it, so, more often, we will not be able to immediately use the raw data. Need cleaning and recycling. We need a refinery that will make gas from oil, and from raw data stored in systems developed many years ago, something suitable for display on a smartphone screen.
Bluemix is ​​a platform for developing Internet services, which will be the very processing plant that will allow us to use all the wealth that is stored in the depths of “heavy systems”. Continuing the analogy, Bluemix contains all the necessary components and assemblies for building a plant of any complexity and for any purpose.
How does it work?Bluemix, like any self-respecting system, consists of three main parts:
Runtime is all you need to execute your code. At your request, a Linux virtual machine is deployed with an installed language environment and standard libraries, and with the help of configuration files you can deliver all the missing.
Services - just the very nodes and units. More than 100 deployed and ready to use software components and systems from various database servers to video broadcasting systems and Watson cognitive computing modules. You choose the services you need and they become available to your code, executed in runtime.
DevOps - development cycle management tools. Own git-based repository, build management, the ability to run automated tests, an online code editor. Plus a set of load testing tools. Plus, the environment for the deployment of project management and teamwork, with which you can build a full SCRUM.
Interesting? Then go to
bluemix.net . There is even more interesting.
Why do I need him?Here I want to give an example. Suppose you are a startup and your product is a new unique instant messenger. You have a business model that allows you to “pull out” all competitors from the market, there is a mobile application with such a design that you don’t want to let it go, there is a team of three developers. Things are easy - to make it all work together. And this is where the nuances begin. It is necessary to do it right away, as there probably will not be time or resources for rework. It is necessary to immediately develop and deploy the correct architecture, and then scale it in accordance with the growth in the number of users and other workloads.
Since we started talking about the messenger, we need a powerful queue management system that provides the ability to publish messages and subscribe to them, plus databases, caches, and a lot of other infrastructure software that mobile users will work with. All this wealth must be installed, configured and, do not forget, ensured by proper administration, monitoring, backups, etc.
In addition, you need to provide support for the life cycle of all the developed software and, since it is 2015, it must obviously be continuous integration. Plus load testing. Plus control of vulnerabilities. Plus, for sure, much more that you forgot about or did not even suspect at the stage of starting the project.
The question is, who will deal with all this infrastructure? You have developers who love, can and should write code. And they do not like, most likely they do not know how and, certainly, they should not be engaged in the deployment and administration of database servers. Moreover, all the costs of infrastructure support - this is an additional cost, which you, as a startup, absolutely do not need.
The answer is that the Bluemix cloud platform will do this. And you will be engaged in what brings or will bring you success - to develop your product.
What will happen next?Further there will be posts devoted to various solutions and findings of both our team and our partners. In the near future we will talk about how to use containers in Bluemix, how to organize a video broadcasting service without letting go of a cup of tea, how to build your little Snapchat using our platform for the Internet of things. And so on like that. Any ideas, suggestions? Write, look forward to.
With respect,
IBM Bluemix Team