The Downs and Ups of Being an ACCU Member

 

I joined the ACCU about 6 years ago. At the time I was working at one of the large investment banks and was mourning the recent loss of the C/C++ Users Journal on the company’s chat system. I much prefer the paper based journals and, what with the demise of C++ Report and Windows Developer Journal in previous years too, my rucksack was getting lighter on my daily commute. Naturally the channel I posted on was about C/C++ and it was suggested that I take a look at the ACCU. Little did I know there was also a dedicated ACCU channel on that chat system too

 

If someone had asked me in an interview, before joining the ACCU, how I rated myself as a programmer, out of ten, I’d probably have gone for a 7. I got a good start to my professional career working with smart people and in a culture where continuous learning was promoted. Various journals were circulated, as were books like Code Complete and Writing Solid Code. After leaving the company to go freelance I quickly realised I missed the journals and books and so took out my own subscriptions and started to build up my own library.

 

By the time I had joined the ACCU I felt pretty confident that I knew what I was doing. I had worked with plenty of people and at a few different organisations so felt I could gauge roughly where I sat on this hypothetical “programmer scale”. My focus had always been on learning the technology as that what was interested me most – my bookshelf was mostly filled with the collective works of Jeffrey Richter. Although I had been “doing OO and C++” for the last 10 years I actually didn’t own any of the fundamental C++ texts, such as Stroustrup or Josuttis, instead favouring the Essential and Exceptional book series as a paper form of Lint.

 

And then I started going to the monthly ACCU London meetings and tagging along to the lunches. There I got to put faces to some of the names in the chat window and meet some of the other members that had graced the pages of the journals I had started reading. Up to that point most of the articles and books I had read were written by US based authors, but now I was starting to come face-to-face with these people. That was scary, and yet obviously cool at the same time. What started to become apparent was that maybe I didn’t know quite as much as perhaps I thought I did. One particular conversation stands out as a watershed moment.

 

I had just been to see Paul Grenyer do his Boiler Plating Database Resource Cleanup talk for ACCU London. As was the natural order of things, we went to the pub afterwards to chat about the talk and other stuff. I had just read Michael Feathers excellent book Working Effectively with Legacy Code and so was keen to canvas opinion. I started talking to Steve Love (who had then just taken over as editor of C Vu) and it suddenly became apparent that although I understood the mechanics of programming and the technology what I was failing to appreciate was the philosophy of it. In essence I was taking what I was reading far too literally and failing to take the time to understand many of the underlying principles. In retrospect I suspect that this is largely the result of being a self-taught programmer that was arrogant enough to “know it all” by the time they reached University. You don’t need a type-system when you’re programming in Assembler, and anything other than Assembler is “obviously” going to be too slow…

 

And then I went to my first ACCU Conference in 2008. Before going I had definitely dropped a notch or two on the scale, but what the conference did was to magnify the effects of those branch meetings and lunches ten fold. The team I was currently working in were certainly as capable a bunch of programmers as any, but they weren’t all the passionate kind. Suddenly I found myself surrounded by like-minded individuals and quite a few authors of the books on my desk. Now we’re talking scary, but oh-so awesome too. Is it any wonder I didn’t go to bed for the next 4 nights for fear of missing out on another mind-blowing revelation?

 

By the end of my first conference, I was definitely down to a 3 or even 2. No, what I realised is that The Programmer Scale is not linear – it’s exponential! There is just so much more stuff to learn. I really hope that nobody actually asks me to rate myself in an interview because I’m not sure 2 is the answer they’re looking for and they probably don’t know what the far end of the scale looks like either.

 

What anyone who’s ever read one of my reviews of the ACCU conference will have hopefully picked up on, is that everyone there is so approachable and eager to share. Yes, we all have to earn a crust, but it doesn’t feel like you’re in competition with anyone else, instead it feels like everyone there wants to advance The Cause together, where that cause is to be the best programmer we can.

 

In the intervening years I have got over my fear of asking what I previously would have thought of as a stupid question, and in fact have learnt to embrace my naivety. Yes, there is a lot of new cool technology to learn, but there are also the basics that we use every day and yet might not fully appreciate. Hearing some “respected” individuals arguing at 4 o’clock in the morning about the definition of “equality” goes a long way to boosting one’s confidence so that you don’t feel like you’re the only one who thinks the topic is a little bit trickier than the books make out.

 

Ah, yes, confidence. Some people seem to have it in spades, almost to the point where a little humility wouldn’t go a miss now and then. At the other end of the spectrum are those of us that need constant validation and reassurance that we’re heading in the right direction, or that we have a worthy contribution to make. The agile practitioners tell us that face-to-face communication is worth so much more than a requirements document, and so it is with learning. Reading books might help you learn mechanics, but I’ve found the essence only really sinks in when discussing those concepts with others.

 

As I write this my first proper article is about to be published in Overload. I started it well over 3 years ago, and even though I was pretty confident of the subject matter, I still felt uneasy about putting it forward. Instead I decided to take smaller steps, firstly by starting a blog and then by succumbing to “light pressure” from the C Vu editor and doing the write-ups for the ACCU London meets and annual conference. At the conference a couple of years ago I dipped my toe in the water and did a 5 min lightning talk which seemed to go down well. The following year I found myself hosting an ACCU London meet for 60 mins, and then doing a 90 min session at the conference a few months later. This year I’m presenting again and have started moving ideas from the “possible blog post list” to the “potential ACCU article list”.

 

After being a professional programmer for almost 20 years you’d have thought things would have settled down by now. And yet I’ve probably learnt more about programming in the last 10 years than during the first 10. I’ve certainly learnt more about myself, and look forward to learning even more about both.

 

I’m in no doubt that joining the ACCU has had a profound effect on both my career and my personality. That has only been possible because certain people put their time and effort into ensuring that the organisation continues to function and hopefully flourish. Sadly I only get to thank some of those in person once a year at the conference. Luckily though a few others I get to meet a little more regularly and two of those in particular have been instrumental in providing the reassurance I needed to get off my backside and start to explore my own potential. Perhaps it’s because they are the editors of the two ACCU publications that it gives them a license to cajole, coax and entice us into making a contribution. But you know what, that’s just what some of us need and for that, Fran & Steve, I thank you.

 

Chris Oldwood

30 January 2013

 

Bio

Chris started out as a bedroom coder in the 80s, writing assembler on 8-bit micros. These days it’s C++ and C# on Windows in big plush corporate offices. He is also the commentator for the Godmanchester Gala Day Duck Race and can be contacted via gort@cix.co.uk or @chrisoldwood.