So it was written and so it shall be. I hand these down to you to do what you will with them.

  1. Thou Shalt Learn
  2. Thou Shalt Learn Some More
  3. Remember the Code Review to Keep It Holy
  4. Understand Thy Code Base
  5. Honor Knowledge, Keep Reading Books
  6. Thou Shalt Ask for feedback
  7. Thou Shalt Be Wrong
  8. Liketh Nike, Just Do It
  9. Thou Shalt Comment
  10. Thou Shalt Not Break The Build

1. Thou Shalt Learn

Even as a senior programmer, learning is the most essential skill a programmer can have. It is the Swiss Army Knife of programmer tools. I promise you that software development will move at a faster pace than you can handle, especially the game industry. The only way to keep up is to endlessly search out new information. There WILL be new lighting techniques. There WILL be new types of shaders in the rendering pipeline. There WILL be advancements in AI. There WILL be new software and hardware effects to program into sound systems. There WILL… you see where I’m going with this? Keep up to date whether through the internet or books.

2. Thou Shalt Learn Some More

Really, I can’t stress this enough. I would have made it all ten commandments for all levels of programmers, but that would not nearly have made for as great an article. Speaking of articles, go seek out some interesting new articles!

3. Remember the Code Review to Keep It Holy

I have spoken about code reviews. I have talked about how I review code. However, this might not be reaching the entire audience. Get your code reviewed, even if by other peers with the same or less experience. Try to put as many eyes on your code as possible. Don’t have an ego and don’t be embarrassed. No one likes their code a year later. It is not a vulnerability to get your code picked apart at a review, it is a strength. As uncommon as it is, a game programmer with a deep sense of humility is a strong asset. There are enough bad egos and just as much bad code to go with it in the games industry. Don’t let your code or your career suffer. Get a critique.

4. Understand Thy Code Base

Read through it. All of it. On a larger game this can be a daunting task, but it is well worth it. Code is knowledge. What to do and what not to do is contained within. You’ll get up to speed much more quickly once you’ve seen the dirty internals.

5. Honor Knowledge, Keep Reading Books

You may have read some books in college. That’s a good start. Now it’s time to round out your collection. Have you read Effective C++ by Scott Meyers? What about The Pragmatic Programmer by Dave Thomas and Andy Hunt? Read the latest in the GPU Gems series?
There will always be new books on new topics. You can’t read them all, but you can try. Don’t limit yourself to books about your favorite topic. Grab some books about a broader topic such as architecture. Go for a book in the language of your choice. Maybe try flexing that gray matter with a book about a game system you haven’t yet worked on.

6. Thou Shalt Ask For Feedback

If your manager is not doing 1 on 1s, request them. If your peers are not reviewing your code, ask them. You should open up as many channels of feedback as possible. If you’ve ever seen Johari’s Window, you are trying to locate and improve stuff in the Blind Spot.

7. Thou Shalt Be Wrong

Don’t be afraid to be wrong. If you sit back and let the senior folks drive, you might let valuable input go ignored. However, more importantly, you might actually be wrong. Without raising the question, you go about your day thinking you should have introduced the magic bullet to fix everyone’s problems, but really you just would have had a reasonable explanation of why your idea wouldn’t, shouldn’t, and couldn’t work out. You miss 100% of the shots you don’t take, right?

8. Liketh Nike, Just Do It

I read this one in Game Developer. When you have some great idea, don’t let it get lost in the chain of command. Spend a few hours on Saturday and get it done. If it takes multiple weeks, so be it. Spend the time and get it done. That’s step one. Step two? Let everyone know how great you are!

9. Thou Shalt Comment

Get into the habit! It’s a good habit. Comments make life better. See my previous article on comments here.

10. Thou Shalt Not Break The Build

Breaking the build can be a pretty major offense at some companies. It is not hard to do, either. Check in a typo and you’ll get yelled at quick enough. It’s easy to prevent this, though.
Compile right before you submit. Don’t go spelunking through the code afterwards.
Test. Test. Test.
Not sure? Test again.
Diff your changes before submitting.
Get a code review.
Test again.

Now go out there and code! Obey these, the ten commandments, and you shall be on your way to an awesome career as a game programmer.

  • Share/Bookmark