simeonGriggs.dev

It feels pointless because it's easy

Cheat codes ruin video games. Friction and value are inseparable.

View in Sanity Studio

Last year, I signed up for a 100k ultramarathon in Scotland, mostly because I didn't have anything else scheduled that weekend. That's not the ideal mindset for such a task, but it did help motivate my training for the few weeks leading up to it.

The event started at midnight, and the first half of the course, which was completed in the dark, was almost entirely unmarked, with no discernible trail, and sent runners through mud, rivers, and bushes. It was the most mentally draining few hours of running I've ever experienced, and made the back half an absolute slog.

I spent most of the ~16 hours it took me to complete the course thinking about quitting. In the end, my main motivation for finishing was to finish what I had started. That was all the motivation I could muster.

That race medal is hung up with all my others. The majority of events I've completed, I look back fondly on. That one I do not. The event was awful but the challenge was memorable. I learned a lot in the process.

That there is no cheat code or shortcuts to athletic performance is one of my favourite things about the challenge of endurance training.

Anyone with a dogged determination to finish what they started and an appetite for relentless improvement will make it.

Meanwhile, the exact opposite has happened to my profession.

Cheat codes

Growing up, we had a Nintendo. I somehow got a Game Genie. I think a friend from school gave it to me, I literally have no idea how it came into my possession—or how it worked—but it felt like an object from another world.

When booting up a game, you would be presented with a screen to input some codes that alter its rules.

At first, the thrill of being able to cheat at literally any game that you own feels amazing. But soon enough, when you can fast-track your way to the end with unlimited lives and ammunition, it not only removes the challenge but also the fun of playing the game in the first place.

It enabled you to both finish and ruin the fun of playing a game.

Taking the stairs

Around the same time, I was learning how to code. I first learned HTML by studying web pages and making my own at home. We didn't have the internet at home yet, so I had to download source code and images while at the library, transfer them to floppy disks, and study them in my own time.

I had limited access to tools (paid software) and resources (fast home internet), and that friction was a forcing function to make the most of my time.

Years later, after a few years as a graphic designer, I launched out on my own and started selling websites to customers.

First, using Textpattern because its templating language was so similar to HTML. Later, I used WordPress because it was increasingly the industry standard. Then, learning build tools and the command line thanks to the Roots stack of WordPress development tools. I took Wes Bos' JavaScript 30 course to finally get my head around how to add interactivity. Eventually I spent weeks with the Tailwind docs open so I'd never have to write CSS again. Brute-forced a Gatsby template to start selling "Jamstack" sites to customers with Sanity as the CMS while also learning React.

Each step on my career path has been incremental, with friction required as part of the leveling-up process. Using and learning the code as a means to an end—selling solutions.

Code cheats

And so, AI.

The career progression staircase hasn't been replaced with an escalator—but a rocket ship. We (experienced, career developers) and beginners now have the developer career Game Genie.

Cheat codes to shortcut any challenge or development, and a way to skip to the end. A way to input some tokens before you even start playing and gain a historically "unfair advantage."

Over the past year, I've tried all the AI tools, used them everyday for my work, and adapted my own opinions and behaviors.

Like most folks, I've also coded plenty of half-baked apps that "work" and are soon abandoned because they have accumulated no value to me. There was no friction involved in creating them, so I have no sunk cost.

Without AI tooling, I likely would never have even built that POC. If I had, I'd like to imagine the time invested in getting to that stage would have generated enough perceived value in my mind to finish it.

AI tooling is the fastest way to discover you weren't actually interested in that side project.

It's wild that AI tooling makes anything possible, but it can also suck the fun out of the process of playing the game.

In search of friction

All that's left is to find where the challenges are now. It can't be found where it's been the last few decades—learning syntax.

"How the API works" was something you once had to learn, and time spent learning that added to the internal measure of your own value. You could then resell that value. Those days seem gone.

What was difficult has now been made easy. The job is finding what's still difficult and operating there. Finding new ways to uncover value through friction. That won't be "writing code," but as always it will be selling solutions to problems.

It feels scary because the previously obvious problem space has been eliminated overnight—along with the inward measure of your own value.

There are so many problems to solve.

Anyone with a dogged determination to finish what they started and an appetite for relentless improvement will make it.