Monday, back at the "regular job" after a couple of very exciting days at the Developer Summit 2007 conference in Stockholm - and time for my first blog post, who would have thought... Well, Jimmy Nilsson must have had some hope left. Still after one and a half year of nagging - he does this in a very nice and supportive way I must add - he hadn't given up on me.
And now I have something to write about too: I gave my first "official" talk at the conference, Learning from Legacy it was called. A very exciting experience; thanks Conerstone/Josefin for giving me the opportunity! Talking/writing to other people really helps me strucuring my thoughts and is a great way to explore a topic.
When I first came up with the idea for the presentation I though it would be about techniques for testing legacy code; as described in Michael Feather's excellent book Working Effectively with Legacy Code (I'm linking to ObjectMentor's site since there are many other goodies there). But instead the presentation turned out to be more about design in general, and the social stuff: how we organize, learn, and act when doing software developement and (so called) "maintenence". At least that's my view of it. The attendees watching my 30 slides of Python code might have thought differently ;-) I really did save most of the technical stuff for the workshop I held the next day.
After the presentation I had a really interesting talk to Peter Tallungs. He'd been giving the same message years ago (as I understood it), referring to it as "Aktiv systemförvaltning". It's really funny how I thought I'd be talking about things people "never" talk about, and then there is both Peter, and the presenter after me, Mimmi Sundin, who were talking about software maintenance. Though my starting point was in code and Mimmi did not show any code at all, I believe we had very much the same message!
But of course there was much more than "legacy stuff" on the conference. Unfortunately I missed the first day, and the second day my focus on other peoples presentations might not have been 100%. But I saw Niclas Nilsson's key note Dynamic Languages for Statically Typed Minds, which was very good, and again made me appreciate the fact that I actually get to do Python on my everyday project. I remember this guy at Chalmers (school of technology) who was starting to use Java for his numerical analysis software in 1996, and how he said it was something like 20 times slower than C++ (or whatever the alternative was), but that it would become fast enough soon. I must admit I didn't really believe that he knew what he was doing; why would the choice of programming language be so important? Now Java has become the new COBOL and it's time (I hope) for Ruby, Python, etc, to become viable alternatives in more peoples eyes. But on the other hand, I know programmers who insist on using C++ because Java is too slow...
Feel that there are lots of topics in this post I should penetrate, but that has to be in another post. Jimmy, please keep nagging!