I meant to write about this quote last time but got sidetracked:
okay, to start, an analogy: long ago, a single person could build the best video game that existed. Adventure didn’t require 200 developers and 18 months to get out the door. as technology improved, so did expectations. Adventure was my goal. Today’s kids’ goal is fortnite. —@steveklabnik
The quote, and the thread it comes from, is about how complexity increases as a technology develops. It makes changing the system or proposing alternatives feel less approachable, because it’s more difficult to hold the entire system in your head and think through how it could be modified.
There’s lots of echoes and analogs of that idea in my relationship to programming and tech. I was able to enter web development because it was relatively approachable at the time. I’ve been able to work at small start-ups because there’s a similar dynamic at play in business, where a small entrant that is less conceptually confused can sometimes outmaneuver larger competitors. I wonder how much this approaches some sort of natural law and how much it’s a result of the systems we’ve set up. Regardless, I’m glad it is the way it is, because I like working on small stuff I can hold conceptually in my head.
Even though I believe that dynamic holds, I still get nervous about it in relation to my own work. I worry that I should have specialized more, become part of some larger project. I’d like to make things people engage with and I worry I won’t get to the level of polish or features necessary with the small experiments I run. I worry that maybe there was a place for lower-level experiments earlier on but now web/software development has grown beyond it.
Then I think about Minecraft (I also think about 100 Rabbits’ work which I should write about another time). The barriers for an indie game maker versus AAA game studios, in terms of the scope and polish they can afford, is much greater than web development, but indie studios have found a way (my impression from following game developers on Twitter is that it is a tough one). In Minecraft’s case, it became one of the biggest games of all time, while deliberately avoiding competing on graphics.
Minecraft shows the possibilities of visible seams. Anything you see built in the world, you know it would be possible to construct yourself. Any grand construction you see online, you have some idea of how you could make it. I think a lot about the repetiveness of building a wall in Minecraft, which sort of cries out for some sort of scripting programming loop solution (can you automate building a wall with Redstone, maybe?). There’s something pure about the mundane repetetiveness of it, though, it seems to bring it closer to DIY building in the real world.
Minecraft puts you in a world with a simple and universal mental model of how things are constructed (though crafting is a less elemental secondary system). I want to do something like that, but with software, and rather than keeping you in this constructed world, I want that software to open out, so you can bring in outside things and create things that can go outside. And maybe, also, the mental model I introduce in the software opens out into more general programming, and gives you a foundational mental model to build on.
Grant Custer is a designer-programmer interested in alternative interfaces.
You can see work and inspiration in progress on my Feed and my alternative interface experiments on Constraint Systems. I’m happy to talk on Twitter, email: grantcuster at gmail dot com, or Mastodon. You can see a full list of projects on my Index.