Last week I’ve been at Budapest and attended to the CraftConf 2015.
And now I will share my impressions with you: was it worth the money, what was talked about and some general thoughts.
First of all let me tell you that this conference was sould-out. All tickets were gone by the middle of March. So I thought this would be a great event with a possibility of networking and knowledge sharing among attendees.
The conference started with a Day 0 workshop day. There I’ve been to Russ Miles’ “Embracing Change: Building Adaptable Software with Events” workshop.
The organizers told us that Russ Miles cannot manage to come to Budapest so David Dawson will replace him. He is the co-author of the workshop so would not have been so embarrassing — but at the end Russ Miles could make it. And we could “embrace the change” too.
As the title ready the main idea was to create applications which are ready for changes. The nice idea behind it is that changeable and for change prepared components are one of the building blocks in reactive programming. And to be honest I am curious about reactive programming so this is why I’ve joined this workshop.
Well, finding the place was not the easiest thing because there were no information signs out there where to go and the security guy did not tell exactly where to go. So I went through the building and ended up at another security guy who was pissed off that I did not have an entrance card — and how could I get to him without it.
After that I’ve find the right way — but it was not easy.
Later on the signs appeared. Probably more of us did not find the room so the organizers thought to let them appear.
Beverages were fine, I could take a small breakfast of coffee and coke.
And now about the workshop itself. I think it was a good choice to attend this workshop. We learned a new perspective of architecture with the life preserver diagram. With this you have to organize your components and decide which are core and which are integration. You can read more about the diagram and the idea behind it here.
I will not go into a deep detail about what we have learned and done. It would fill a whole article or a series of articles. But the main idea behind the workshop was to have a look at the piece of software we are developing in another way: to see which components change together — and which change groups communicate with each other. If you can do this, you can identify where you should abstract the communication between these groups to leverage cohesion. And to do this here you can introduce events.
However using events is not really the tight coupled meaning of fire up an event asynchronously and let some listeners work on them. Sometimes asynchronous work is not what you need. For example user input validation or storing some mission-critical data in the database. These events have to be worked on synchronously. And events can be passed along as messages in message handling protocols (like ActiveMQ or RabbitMQ) or as simple JSON data. It is design option how you handle your inter-component events.
There were several meetups on the Day 0 in the late afternoon where speakers of the conference gave little talks about their topics for free — in various locations of Budapest. I thought about to join the “full stack” meetup although there were some about Python and functional programming too — but the description of those wasn’t from interest to me.
However I could not get enough sleep the previous night so I went back to my room to get some sleep. Which at the end wasn’t such a bad idea because the speakers I wanted to see at the meetup held the same talk at the conference too.
Naturally this can be disappointing for those who attend the conference and go to the meetup too because you might want to hear new things and not the same talk twice.
But those meetups were organized for those who could not manage to attend the conference. This is a good idea because there are a lot of developers outside who cannot attend the conference but would like to get the same benefits as we who could listen to the speakers two days long.
The first main conference day. The schedule wasn’t so bad but I’ve had some talks I would have listened to but they were parallel with other sessions.
For this is the Ustream TV replay a good thing. Every session was streamed live to be available for those who could not attend the conference. And of course for those who were there but have had another more interesting talk parallel to another. In this case we can replay these talks.
The best thing was in my opinion that Grady Booch could make it too to the conference — through a live stream from Maui at 3 a.m.
I do not know what to write more about. The talks speak for themselves. I could tell you what were the talks I listened to but I would rather say that Dan North and Alf Rehn (the last two speakers in the main room on Day 1) were the best. Entertaining and sharing good ideas.
At the evening there was a nice happening at the event location with 600 liters of beer (which I have to say is kinda few because there were 1300 people, every one had 4 coupons on beer and if you multiply this up — even with 0.2 liter beer pro glass you end up with beer for only 750 people).
This day was the same as previously — with some raffles of the sponsors. The sad thing is that I did not win books from O’Reilly nor an iPad Air nor an Amazon gift card. I could have used those books well in my personal development but now I have to buy them 🙂
The talks were on this day a bit less impressive — or I was just tired. But to be honest the last keynote speaker told us about why most of the startups fuck up but he was not so well entertaining me and it was starting to get late in the evening.
Nevertheless day two had good talks too. Mostly based on microservices but if you looked carefully you could escape the hype.
The video stream-recordings of some talks are available here. Some speakers did not allow to publish their talks — what I really find a pity because Alf Rehn delivered such a good performance that it is a must-see for everyone.
The Várkert Bazár was a really good choice for the event. It had place for 1300 people, the view was perfect — and the weather too. The food had some problems in my eyes: it was Italian both days. If you are in Rome you should eat like Romans. In Hungary you should eat like Hungarians. There should have be a mix of foods because only pasta or only risotto can be boring. So I hope next year there will be more flavours at lunch. And in the late-afternoon break more cookies.
But I have to admit that the breakfast was simply superb. And that there was a wide variety of fruit.
It was a nice conference in a nice location. However I have to tell you that conferences tend to make developers go home and try out everything they’ve heard about without thinking. And this is not the best approach. Microservices are good — but do not let fool yourself by this year’s buzzword: only implement microservices if you know what you are doing — and of course if you need microservices.
For me I have taken some good impressions home and new points-of-view to look at software I am developing. I’ve taken notes on what to change, what I should try to change and what I can come up with some good example applications for you to read about.
But the key takeaway from the conference was for me:
Never stop learning and improve yourself because you can always get better. And bats. Bats are everywhere.