Moving From Doing to Managing

5 years ago, I went from being a “doer” (ie, a programmer), to being a manager. This was not an easy transition. I suspect some people find this transition easier than others, but I think most everyone who makes the leap struggles in some way. If you’ve recently (or maybe not so recently) made this move, you may find an article by Dave Gray helpful. It’s entitled “The craftsman-to-manager paradox”. Dave defines the paradox as this:

As you move into management, the very things that made you effective as a craftsman are now deadly threats to your success as a manager. Your independence and self-reliance, which was an asset, is now a liability.

This is 100% correct, and I’ve seen it happen more than once; both to myself, and to the others around me who were promoted from the rank and file.

The article also includes a list he calls Ten Communication Commandments for Managers.

Number 8 is one of the things I struggled with the most:

Don’t avoid difficult conversations. As a manager it’s your job to initiate them when necessary.

I have often put off having those conversations, naively hoping that the issue would resolve itself. It never did, and putting it off only made things worse.

The other 9 items are equally valuable to anyone in a leadership position.

Another point to be made though, which Dave neglects to mention, is that great doers aren’t always great managers. It’s two completely different skillsets. I’ve more than once seen someone who was a really great developer/server administrator/router jockey get promoted into a supervisory position and then fail miserably. This isn’t a reflection on the individual, it’s more the fault of the person who promoted them. It isn’t that leadership and management skills can’t be learned, it’s just that some people just don’t have the aptitude (or often the desire) to do the job well.


KEXP is an amazing radio station out of Seattle, that simulcasts online. They don’t play much in the way of mainstream stuff, but if your tastes run more towards the eclectic/alternative, you’ll enjoy it. They also have an impressive collection of live performances, and now even have a podcast that highlights artists you may not have heard of.

Check it out, you won’t regret it.

Speed Up Firefox

Firefox has seemed sluggish on my Ubuntu installation, which I attributed to my aging 1.1Ghz PIII, and rather limited memory (512MB). In a fit of frustration, I googled for “speed up Firefox” and came up with some good tweaks to the config that made a huge difference. If you are a Firefox user, you owe it to yourself to check this out.

Link 1 - This is a good start, and if you do nothing else, make these changes.

Link 2

  • This is a little more in-depth. It contains the same basic tweaks as the first article, plus several others. It also has the tweaks grouped by whether you have a fast/slow computer and a fast/slow connection.

Hope this helps.

Links for 8/27

MySQL Cheat Sheet - Commonly used MySQL commands, all in one convenient HTML page.

Explaining TDD to a non-techie

  • Great way to explain Test Driven Development.

Programming Language Inventor or Serial Killer? - I’m really surprised (or perhaps frightened) at how wrong I was on this quiz.

Why’s (Poignant) Guide to Ruby - Yeah, this is an oldie, but a goodie. This is chapter 3, the best (and funniest) introduction I’ve seen to the Ruby programming language yet.

Five things you didn’t know you could do with Ruby - Includes things like “Process Satellite Images and Meteorological Data”. Not a lot of practical information, but interesting to see what people are using Ruby for.

MS Security Response

I’m not a huge fan of MS, but there’s a fascinating article at eWeek on how Microsoft responds to threats (particularly this last worm).
It’s an interesting insight into how good MS has gotten at responding to this stuff.

Color for Coders

If you’re design challenged (like me), you need all the help you can get. I stumbled upon a good article that explains color theory, with links to sites that implement various kinds of color schemes (complementary, monochromatic, etc).


Python vs Ruby

Ian Bicking (a python developer I have a great deal of respect for) has a good comparison of Python and Ruby, focusing on the things that are unique to dynamic languages.