Is Docker new iPhone?
Human side of IT in Business environment
iPhone changed way we use and develop our apps on smartphones. Is docker changing classical Business IT environment in same way?
1. What has changed?
iPhone changed user experience and showed that technology can be easy to use and still provide the functionality to an average user. The most important thing regarding this experience was that you didn´t need to know how to use feature phone, the experience was tailored so that everybody with basic understanding of concepts could operate iPhone. Phone was just a tool to run applications that could make your life easier.
When iPhone entered the market, even if you were a developer, it changed your life. You didn´t had to worry about how things were done 20 years ago or how to setup the environment, your only job was to develop something that people will buy. For that reason you needed to understand people and it has finally moved one part of IT in “human” direction. App development was born, but IT in the business industry still resisted.
2. Business as usual
IT industry is still somewhat inaccessible to new comers, which is not good. Most of the time engineers spend learning the tools and in this dynamic industry your whole career is just learning how to use new “hammer”. It is a good situation if you just need to learn new things, but more than often you need to learn 20 or more-year-old bugs or “functionalities” to make something work. It is laughable how little time you spend thinking about end-user.
Even on user side, there are still widely used applications which are difficult to use and you need to possess a specific knowledge to know how to use it. IT industry is very much self-involved and often IT systems are their own reason for being, the service that they provide is less important.
When I was younger, I was Linux enthusiast and I was thinking how cool it was to possess knowledge which only a handful of people possess, another argument was, that this gives you a greater control over your system.
But let´s apply this principle to cars. When you buy a car, do you want to be able to control every parameter and customize everything or do you want it to be driven easily without too much tinkering? Do you really want to use a manual choke or drive a car without power steering?
So, let’s say that you are engineer or developer that has an idea for new business application, what are typical building blocks that you need? For our purpose let´s say we need OS, DB and web server. To start with implementing your idea, you would need to know how to set-up OS, install and configure web server and data base. During this process, you would likely encounter a lot of issues, known and unknown before you can even begin implementing your idea. For fun let´s say that you are Java developer, then you also need to set up your environment, which may or may not cause problems with other parts of your system.
3. Brave new world
When I had chance to work with Docker for the first time I was sceptic because it seemed too easy and too human. For me it represents “iPhone philosophy” in Business IT environment. Let´s see our case in Docker, what do I need to know to start working? Do I need to know how to install and configure DB? No, you just need to download containers and run them. You can focus on important part, which is making something with your tools and not worrying about them.
I also like using Kitematic for ultimate point and click experience. It is not iPhone experience yet, but I have a good feeling about the course that was set and I hope that Docker (or any other tool) finally moves us into the future. Maybe one day a prerequisite for being an IT professional will be an understanding of human beings and not the understanding of 20-year-old systems.
P.S.
It is not only Docker that is making IT more human, whole *aaS offering is making IT easier for everyone.