Monday night saw me attend the ALT.NET beers evening that Sebastien organises. I really like rooms of clever people; it gives a really useful cross-pollination of ideas - I’ve found that the people that come to these sorts of things are uniformly more interested in doing a really good jobat their chosen profession - they really want to sharpen their axe (I have a wood-cutter analogy going on at the moment, which I may blog about in some time). The topic for the evening was chosen (on time!) by consensus - during the hour or so that people were mingling and chatting and drinking (nice bar!), there was a scratchboard of ideas slowly accumulating near the door; at 7.30 we got together and voted on which ones we wanted to hear about. The top three were then picked, and another vote - this time, a person could only vote for one thing.

The topic chosen? SOLID principles. I won’t go into what they are; you can find that at the other end of the link. It was also me taking notes (though Seb and I really must have words about the cruel thing he’s done to his MacBook Air…). The format of the discussion was park bench - three people agree to start off, and answer questions from the floor (the first of which, predictably, was “what’s SOLID stand for?” ;-) ). The people not on the bench are only allowed to ask questions - if they have more to say (or can’t think how to say it so it’s not phrased as a question…!), they need to go up and sit on the bench and say their parts from there. This ensures that there’s a healthy mix of viewpoints swapping, changing, and being expressed. It was a lively discussion, and held quite strongly on-topic for most of the hour before wandering a bit towards software as a craft, and into a philosophical question of “…well, what’re we like? maybe we’re not likeany other profession…”.

I enjoyed myself a lot; I think it’s essential to get a wider perspective of life in my profession than my IDE and my office, and over the last year or so that I’ve been going to events like these, I feel like I’ve learned exponentially as a result. Partly concrete “how do I do that” type things, partly it’s reassuring to know that everyone has problems with legacy code - but largely, it’s an exercise in thinking. I’ve developed insights into things that I just wouldn’t ever have really thought about before, until this catalyst.

Someone even fondly mentioned Structure and Interpretation of Computer Programs in a fond tone yet in the context of JavaScript; I remember the nickname we had for Scheme at university, “death by parentheses”, but looking back, that was possibly one of the most useful three month courses I’ve ever done, since it taught me principles and how to apply them, and how to choosewhat to do, rather than learning by rote.

So; useful evening. I highly recommend such events!

(I’ll come back and update this with a link to the notes once Seb publishes them to the altnetpedia site)