Have you ever heard the joke, "I went to a fight, and a hockey game broke out"? I've always found that hilarious, because (a) I never fought anyone when I played, not even my brothers; but (b) when I got stranded in a place where there are no rinks, I ended up filling the gap by getting into martial arts. š
But with @leebase talking up how AI is helping speed up his work so much (and btw dude, kudos, that is awesome), I got to thinking... how much faster could it make me? And more importantly, would the quality of the code be as good as what I would write myself? I have to find out. So tonight, I'm standing up to the big goon from Big Tech. I want to see, how much better would I do with AI on my team?
The challenge: Coding a C64 game
It's been way, WAY too long since I coded a new game. Oh, I've made many attempts - a sequel to Darkest Hour, an outer-space-themed game for my Star Trek loving best friend, and numerous shorter VIC-20 title (one of which I did actually finish, kinda, only to lose the source code for and never bother to rebuild - it wasn't that great).
First period: design
Of course, I'm more a knights-&-castles nerd than a space-ships-&-aliens nerd, so a few games with magic and stuff are also lying around my code folder. But every time I come up with a story I like enough, I always end up scrapping it because I want to use that idea in my writing (lol).
So, the first thing I'm gonna do is design the game. I plan to write a very generic plot - "save the princess from an evil wizard" or something like that, and focus on the game mechanics more than story. I will see how long it takes for me to fully flesh out game mechanics that sound like they'd actually be fun to play. Then, I'll give that same generic plot to an AI - no, to a couple - and time how long it takes for each AI to come up with a comparable design doc. Shortest time to a design I'd actually want to code wins.
Second period: It's code time!
I'll code the first level. Then I'll have the AI code the same first level. Shortest time to complete level 1 wins.
Third period: Time to play hard, and leave it all on the ice!
Like the end of any hockey game, the clock is ticking. I'll code for 3 hours, or until the game is done. Then, I'll do it again with AI. First to finish the game (unlikely for either), or whoever is the furthest along, wins.
Some notes
- I'll be signing up for the free version of GitHub Co-pilot, cuz this is just for the funzos and cuz it's the only free AI I know that you can share files with and all that. I use it at work, so I'm familiar with it.
- Obviously, I plan to give this a fair shake - same game, same tools (cl65 compiler/GNU Make), same build target (Commodore 64), same tests as close as possible.
- But I also want the quality of the code to be as good as what I would write. Maybe the style would be different, but all the essentials (comments, error-checks, etc.) will be the same. That way, I can help rule out my main concern that with AI, "speed is better, code quality is worse".
- When it's the AI's turn to write the code... it's the AI's turn to write the code. I'll be doing like Lee, not touching the code myself (apart from maybe copy/pasting files, since co-pilot can't do that on its own). If I see errors, I won't fix'em - I'll explain to the AI how to do it.
- On a lighter and funnier note, that pic is not of me. I mean, it's close enough that it may as well be (lol), but that gag pic was AI-generated. So no matter who wins this "hockey fight" with AI, I will say this: AI is much better at creating cool graphics than I will ever be. My graphic design skills are 16-bit at best, but this really looks like a has-been hockey player actually squaring off with a flippin' robot on the ice! š¤£
Now I'm describing this in fun light terms, because I honestly expect the results would be different from one coder to the next. To some, like my vibe-coding bud who uses AI to create apps, it's a game changer. Just like me with graphics, it's an "AI can do things I don't way better than me". But I'm just curious, as someone who does code, how much will it really help? I'm excited to find out.