I got the opportunity to go to Øredev last week. Thanks to Martin Stenlund, the CEO at the consultancy Diversify where I work, I got a full three day pass. I’ll try to summarise here what I found most valuable.
There were a couple of talks about Agile and how to bring Agile forward that I found very refreshing. They kind of go below the surface, the process, method and so on and look at the underlying values that can empower us if we only let them. There was the Mob Programming talk by Woody Zuill and also Implementing Programmer Anarchy by Fred George. Both of them focused on what can happen when you let the team get the jobb done and get out of the way. As Zuill put it it’s not about making great software, it’s about creating an environment where great software is inevitable. Much of this is about competence, both from the business side and from the programmers side. If either is not advanced enough to work in this way it will fail. But we can still strive to educate each other and our self to become knowledgeable enough to work like this. If you have the opportunity I warmly recommend you to see the talk by Fred George, it has unfortunately not been published online yet. You can see the Mob Programming talk here.
The most surprising talk I attended was a talk on performance testing by Scott Barber. The reason I was surprised was that I had planned to go to see a different talk, about Netflix architecture, but went to the wrong room. I think that was a strike on luck, the talk was an enlightenment on how we can do performance better, and much easier. What I brought with me was the thought that performance testing is something that should be done from the very start to the very end on every level. Scott pushed it as far as down to the unit level. Measure how long each operation takes by logging start and end time. You can then use the data to quickly pinpoint where and when a bottleneck was introduced. My first though when he said this was to write a new JUnit runner which logs start end end time for each test. This can be applied on all levels where JUnit is the test framework, which in Java is almost everywhere. If you have the opportunity to see this guys talk it’s worth the time. He is a good presenter with a very strong and contagious passion for performance.
I of cause watched Adam Petersen Tornhill’s talk Code as a Crime scene. He puts forward an interesting argument on how to track bug hotspots, places in dire need of fixing, using forensic physiology. What it really boils down to is to look at what changes the most at the same time, and has the most code in it. This is probably the place which will have the most issues. He also introduces a tool he has written which will help do the investigation by analysing SCM history. It’s available at Github. There is more to it then this and the talk is available online so please do watch it.
The last session I will mention here was J.B Rainsberger’s talk Extrem Personal Finance. In his talk he goes through how he managed to become fanacially independent without winning the lottery. What stuck with me was a method to calculate how much of my life I spend to be able to do something. As an example he mentions that his habitual coffee on the way to work cost him 23 minutes of his life each morning. Was it worth it? It is also well worth a watch and available online.
There was of cause several other good sessions. Some I missed and some I saw. But above are the sessions that have had the most impact on me and which will stick with me. All in all it was a very good conference and I am very grateful that I had the opportunity to go.