Skip to main content

Gaming is essential

I have written a lot about programming tricks and managing programmers here, but when I talk to people looking to learn programming there's some things I always emphasize to them.  The first of which is that programming is hard.

You're using all of your brain

In a world where nuclear physics and rocketry are discussed to lighten the mood, it should be obvious (but it isn't) that your brain is being pushed to it's limit.  I've mentioned it before, but it bears repeating that there are programmers who have gone crazy.  Your brain simply isn't designed to think this way 100% of the time.

You need to relax

That's why I always talk about finding ways to relax.  I tell programmers who work for me to get away from their computer during lunch.  If they're exhausted, I tell them to go take a nap.  I do it myself sometimes.  It's not a weakness.  Most of what we do is not on a keyboard but in our head, and your head doesn't turn off when you sleep, it defrags.  When you're thinking of other things your brain is exploring areas of memory that you may not realize contain the solution to your problem.  Programmers are working 24/7, so I don't think twice about taking them away from the code during the 8 hours that we've decided to pay them.

So I'm a gamer

I take gaming seriously.  I have a high performance Republic of Gamers Laptop.  My office has 4 4k tvs and an xbox on each.  Even my day-to-day work laptop is designed for gaming.  I find that by making my entertainment as easy to get and as immersive as possible means that I require less of it to relax my mind when I need to.  But there's more to it than that.  Identifying as a gamer tends to mean you're going to be a good programmer in my experience.  It means you're creative, good at puzzles, and unwilling to give up when things get tough.  As an example, Disney just put it's corporate IT into an office that can only be described as a geek paradise.   The walls are covered with Marvel characters painted by actual marvel artists.  The internet may not know it, but I do because I've spent the last few months working in this office.   It's beautiful and I'm not allowed to share pictures sadly.  The point is that these things (gaming, comics, cartoons) have always been a sign of geeks.  It's part of our culture.  To be honest, in an interview I'd put more weight on them than any arbitrary question they answered.

But gaming most of all

Because I know that they have a way to decompress after a hard day.  Because I know that they are interested in the end result of all this programming when things are said and done.  Because I know what a massive impact gaming has had on my life.  Gaming is essential.  There's nothing more important I can suggest to a new programmer than that.  Be a gamer.

Gaming isn't just about video games either.  I have a sad addiction to a MUD; I play MTG, and D&D. I enjoy taking apart source code, creating video game playing software, and even building my own games.  But the truth is that the same things that drive me to game drive me to do other things, like building custom electronics around my home, and experimenting with the latest languages and libraries.

It's about problem solving

Because, as I've emphasized in my last few posts about interviewing programmers, the most important skill for any programmer, regardless of their platform or level of programming knowledge, is problem solving.  In order to finish a video game, you need the dedication to keep trying, and the ability to figure out the right things to try.  When everything is said and done.  No matter what you code, that skill is used EVERY DAY.  I solve problems.  I program a little, but even when I'm working on my own stuff, most of my time is spent figuring out what went wrong and fixing it.


  1. I agree. Sometimes when programming, I just want to scream.
    It's good to take a nap/play a game once in a while.

  2. I think that you hit on an important part of any field; to pursue diverse interests and never stagnate. I agree that cetain kinds of gamers can develop the skills you talk of in this article, however some one who focuses their off time on a hobby of any sort would be beneficial for the same reasons. I do not believe gaming offers someyhing unique as a hobby over any other choice.
    Regardless, your article was interesting and an enjoyable read. It certainly brings up some valid points like that of a programmer's 24/7 problem solving tasks.


Post a Comment

Popular posts from this blog

Teams and Complexity

Let's pretend you're a car mechanic (I don't know, maybe you are).  But you don't work at some shop in town, you work at a bigtime auto-maker onsite at the factory.  You help build cars from scratch.  You work with a lot of other car mechanics, and various engineers of different levels.  If we were looking at the 1910s, you might be working for Henry Ford on one of the first ever assembly lines.  Either way, you have a specific part of the car you're responsible for.  Your skills probably extend beyond that, and you might work on a different part of the car each day as your manager moves you around to keep the factory efficient.

One of your coworkers, Bob, is a superb engineer.  He is very good at building cars, far better than you, and he does it faster than everyone else.  Your boss really likes him.  You often get stuck after him in the assembly line, so you know exactly what sorts of things he does.  He's not sloppy, but he likes to do things his way.  He w…

Managing Programmers

Working with other programmers is tricky.  That said, it's nothing compared to the job of managing programmers.  One of my favorite quotes about Perl is that (paraphrased) "a Perl developer is like a rockstar.  Now imaging having a bunch of rockstars in one room together and you will understand why you don't want an entire team of Perl developers."  It's not about Perl here though. What's important to understand is that any developer worth his salt is going to be like a rockstar.  And yes, there are a lot of professional developers out there who aren't worth their salt, but that's for another post another day.  Rockstar may not be the right term here, but think of it this way.  These guys are smart.  They may not be geniuses, but there's going to be things that they know that you don't and probably never will.

I've seen it more than once and it's not going to make some Product Managers happy, but I'm going to state a fact, an eleph…

Managing Developers is HARD

I've been a software dev for a long time.  I've also been running my own software company for a few years now.  This is important information because of why I do these things.  I am a sofware developer because I love learning.  I slack off when doing a job that bores me, and software development always has something new to experience which keeps me excited and interested.  Why start a software company then?  That puts me in the role of manager rather than developer.  The truth is simple.  I've worked for a lot of companies, and I don't see any of them doing a great job of managing their software development.  That's not to say none of them have done a good job, but no one out there seems to be doing a great job.

How are they different?
A lot of companies get this part right.  Software developers are different from other employees.  The distinction is important in the same way it's important to acknowledge that an insurance agent is different from a construction…