Your code actually runs on one of these, and it does not care about how abstract, elegant, or interesting your code is

I’ve been making software for nearly twenty years now. It’s amazing to reflect back on my early days and to see myself as someone just learning how to code.

The character of that experience is punctuated with moments of confusion about the structure of the software I was writing. I would often stare at the screen while my mind raced trying to think of how the various code modules I was about to write would fit together. I was, in effect, trying to solve big code organization problems before actually writing a single line of code.

Indeed, my story is…

Even if it takes more time

snowboarder in mid-air on a snowboarding course
snowboarder in mid-air on a snowboarding course
This kind of thing makes you a different person. There’s no escaping it (Image by author)

About a year ago, I received a mildly discouraging comment on one of my YouTube videos.

At the time, I had been working on my indie game and game engine for about a year. I’d made some progress, but it wasn’t totally obvious how far along I had come, so the guy writing the comment seemed justified in some way in what he was saying.

Here’s what he said:

“What’s wrong with just using a commercial game engine? I have a feeling you will have great-great-grand children before a game is ever done with this.”

Now, I don’t want to…

Contrasting the way I hire artists with the way recruiters find software talent

Adam Smith had this crazy idea that if you let people work things out amongst themselves and specialize, we will all gain from the net increase in productivity

Believe it or not, I am in the business of hiring people. I have been working on a video game project for the past six months, and it has finally gotten to a place where I can start bringing other people onto the team.

And this is a rather refreshing feeling because it’s nice to work with other people and not be totally alone on this journey. It’s also great to look over the work of these artists. I’m frankly blown away with their skill and talent, and I can only wish that I could possess such talents.

My father…

Thanks for writing this. You put it way more diplomatically than I would have, and for that reason I think your message will have more reach.

In my experience, design patterns turn otherwise brilliant engineers into drooling morons. Instead of simply solving the problem at hand, we waste precious hours debating MVVM vs MVC or maybe considering a "reactive architecture" for what probably only needs a few hundred lines of code.

Patterns often fetishize code and elevate it above problem solving, leading to all sorts of tangled messes and needless complexity.

I'll paraphrase Jonathan Blow, the famous independent game creator…

About two years ago, I was starting to get more solidly into game programming. I was doing some of it on the side, and I had been using popular game engines like Unity and Apple’s SpriteKit.

Unfortunately, none of those tools (at the time) really fit the sort of thing I was trying to make, and I never seemed to create anything that felt truly playable.

The controls would be kinda sluggish, the rendering not quite right, overall the whole experience could be described with one word: soupy.

It’s right around then that I decided I would try something different…

For almost ten years, I have held contracting and consulting jobs in the software industry, mostly calling myself an “iOS developer.” If I want to sound fancy, I’ll put the word “senior” in front of it.

This gives me the ability to say what everyone seems to want to hear, that I have “ten years of experience,” and in the special thing they think they need right now.

How couldn’t it be a fit? My “experience” and their need for someone with programming skills that apply to a specific hardware platform, seems to be the ideal match.

Except I’m bored…

I’ve always wanted to make my own games. I tried several times with off the shelf engines, but I always felt like I wasn’t learning the real way to do it.

Not only did I not quite get the proper “game feel” and result that I wanted, I also didn’t find it satisfying to more or less wave my hands and trust that the off-the-shelf engine was doing what I wanted it to (and no more than that).

Back at the end of 2014, Casey Muratori started the rather ambitious project of livestreaming himself building a professional quality video game…

A field guide to dismantling extraordinary claims and “religious” debates.

Carl Sagan. I dedicate this article to him. We need more empirically-minded people in software development or software won’t get better.

The software field is practically dripping with ideology. You can’t pick up a textbook and simply learn how to program without also hearing a slew of claims about how this particular way of doing programming is guaranteed to give you results.

On some level, you can’t blame the authors and the conference speakers for making such claims. If they can’t say their thing is useful, why would you buy their book? …

Casey spends day five answering various questions about graphics on Windows. I wanted to do something a little different. We’ve already got a great start with graphics on the Mac, but I think we could take care of another pet project of mine, getting the debugger to work inside of Xcode.

Before we start, I must apologize for the slight difference in code between the articles and the videos. When recording Youtube videos, I sometimes realize later on that I may have bitten off more than I can chew for a given session. …

Holy cow there is a ton to learn in the software world. If you wanted to, you could quit working and invent a job for yourself doing nothing but learning the latest frameworks and languages. We all instinctively know this isn’t a good use of time, and yet so many of us feel a bizarre pressure to keep up with the trends.

I’ve been thinking a lot about this lately, and it occurred to me that our field is much like pre-enlightenment history. There are many competing ideologies. We haven’t quite agreed on what the essentials are, nor how we…

Ted Bendixson

Game designer and programmer at Mooselutions LLC.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store