The conference was organised at the beautiful venue of The Bálna
located in the centre of Budapest close to all main sightseeing.
Internet was fast and reliable for everybody, catering was perfect and there was always something to eat and electric plugs everywhere.
That made the conference even more awesome than just all the various talks.
Main topic of the conference was software craftsmanship. As it's stated on conference website:
CRAFT is about software craftsmanship, which tools, methods, practices should be part of the toolbox of a modern developer and company,
and it is a compass on new technologies, trends. You can learn from the best speakers and practitioners in our community.
It was not only focused on specific programming language, technique or technology. It was general enough for all kinds
of people - front end developers, back end developers, designers, infrastructure administrators, etc.
Still there were some significant topics that were mentioned in multiple talks.
Simon Hildrew@sihil mentioned how they are doing continuous delivery and released new version of
The guardian to production in 6 minutes during the talk. They went from bash scripts to Scala scripts
to Riff Raff - internal tool in Scala that handles release process.
She mentioned that logic shouldn't be placed to places, where it's not testable (f.e. message queues or database).
Her silver bullet was microservice architecture, which was also mentioned in multiple talks. It solves most of the problems
of monolithic applications. It has also some pitfalls like increased configuration and release complexity or hard testing and monitoring.
Basic principles of evolutionary architecture mentioned were:
use last responsible moment for evolutionary architecture - don't burden with a stuff that you don't know
architect for evolvability
Postel's law - be conservative in messages you send out, but be liberal in what you accept
architect for testability - don't put logic to places where it's hard to test (database or message queue)
Stas Zvinyatskovsky@staszv talked about continuous delivery in Yahoo.
One of the most interesting statements was that deploy does not have to be the same as release. They usually deploy code in advance.
Keep it few days and then release the feature using feature switches.
For successful continuous delivery, you should build CD pipeline in advance of project development launch and it should
be built by most senior engineers. That will make many things easier and faster.
Organizations which design systems ... are constrained to produce designs which are copies of the communication structures of these organizations
Conway's law was frequently repeated topic in various talks.
It was mentioned by Rachel and Michael Feathers dedicating the whole talk only to this subject.
Wim Godden@wimgtr had an interesting presentation about new philosophy of caching.
His team is working on a new module for Nginx which is
capable to replace Varnish with smarter solution and improve the performance. Whole project should be released as Open Source during October 2014.
We found out a lot of areas where we can improve our development department. Continuous integration and microservices are one of our biggest
technological projects for upcoming year which we will focus on. It'll help us to speed up and improve development and hopefully
simplify all our applications. These changes won't be easy, but we are glad that we could take a lesson from this conference and we know
what we can expect during implementation of these changes.