So, this week I attended to QCon-SP.
The conference was great (congratulations everyone ), but, I thought it would be nice to do an overview.
So, the top subjects were Microservices and Docker. A lot of Big Data too, but I like the Microservices thing more, so I didn’t follow the Big Data track.
We saw a lot of company culture too, and, believe it or not, it was strongly related to Microservices.
Let me explain.
Basically, they defend small teams (5-8 people), each team owning one or more Microservices. The team is responsible for both develop and deploy those services, basically, the teams are multidisciplinary. The teams, not the people.
Also, a real Microservice should be independent. Microservices sharing the same database are not Microservices.
The philosophy behind Microservices is based on Unix Philosophy:
Of course you probably won’t do that from day-1 in your new startup. You don’t even know if it will work, and, Microservices add a little of complexity you might not want to pay now.
About this, two quotes by @randyshoup:
"To improve is to change; to be perfect is to change often" #qconsp— Carlos A. Becker (@caarlos0) March 25, 2015
"if you don't end up regretting your early technology decisions, you probably over-engineered" #qconsp— Carlos A. Becker (@caarlos0) March 25, 2015
And, as expected, Docker seems to be now the pop thing to use to deploy Microservices. Even Microsoft is working on it.
There is a lot of cool things that you can do with it right now, and there will probably be more soon, like running desktop softwares inside a Docker container and freezing user space to turn on a Docker container in a “warm” state - which seems nice if you think about JVM JIT, for example.
I wish I had attended to the Docker tutorial by Jerome, but, unfortunately, that was not possible. There were very little practical stuff about Docker in talks and keynotes, but they were nice anyway.
See you next year!