It’s 2021, which means my tech career turns 25 this year.
Back in 1995 an awesome book was published: Dynamics of Software Development by Jim McCarthy. Jim was a director on the Visual C++ team at Microsoft back when that was a big deal. The book is one of the first and best books I read as a manager of software development teams, and it has stood the test of time – I still have it on the bookshelf in my office.
Of course, I wasn’t managing a software development team in 1995. I discovered Jim’s wisdom in 1996 or 1997 when I was preparing to teach courses on the Microsoft Solutions Framework. When I opened the box that the trainer kit came in, there was a CD-ROM with videos of Jim McCarthy presenting to an internal Microsoft audience on his “rules of thumb” for reliably shipping great software. When I first watched them, it was eye-opening… almost life-changing. Although I did have a mentor at the time, I did not have a mentor like Jim.
The second time I watched the videos, it was with my whole team. Jim’s rules from these videos and his book became part of the team culture, and I’ve referred back to them many times over the decades.
Now you can too – the videos are available on YouTube:
Some of the rules may feel a bit dated if you’re currently shipping commercial software or cloud services but even the dated ones are based on fundamental and timeless truths of humans and teams of humans.
I’m going to take some time this week to re-watch these videos, and to start off the new year with this voice from years gone by. If you build software and work with humans, maybe you should too.
 Damn, that is weird to type, since I’m sure I can’t even be 25 years old yet.
 It may also be a big deal today, but to me at least it doesn’t feel quite as much.
 Not that I’ve seen my office or my bookshelf in forever, so this assertion should be taken with a grain of 2020.
 Fun fact: if you remember MSF, you’re probably old too.
 Because in those days “video” and “internet” weren’t things that went together. This may or may not have been because the bits had to walk uphill both ways in the snow.
 To the extent the team could be said to have a shared culture. We were all very young, and very inexperienced, and were figuring things out as we went along.
 Back in 1995 CI/CD wasn’t part of the industry vocabulary, and I can count on zero hands the clients I worked with before joining Microsoft who had anything resembling a daily build.