If anyone is a muse or inspiration for this website it’s Julia Evans, a programmer, writer, zine maker, and natural born teacher. I’ve been reading her blog for years, have bought her zines, and have recommended her writing to anyone who would listen.
Recently Evans1 published a post that has stuck in my head: Get better at programming by learning how things work. The piece was full of useful advice but the thing that really got me was the breadth and depth of examples of things to get better at and how accessible those things are these days.
The post mentions querying databases, web front-end programming, OpenGL graphics programming, networking, Linux user permissions, and more. If you have a laptop capable of running Docker and Unreal then you can try that list for free at your leisure. It makes me wonder if we’re in a golden age of programming.
There are three trends that are enabling this golden age: Containers (and really, that means Docker), free tiers for cloud infrastructure, and development tools being essentially free.
Any programming language or platform worth its salt has been containerised and probably registered in DockerHub. You can get Hello World in Rust or the base install of a LMS you want to play with going in a single command. It’s incredibly difficult to overstate how great that is. There are basically no consequences to deciding to experiment with something. All the friction is gone. Before containers installing something like Ruby on your Mac ran the risk of breaking existing stuff and required hours of googling to get things running just right. That’s all just gone. You don’t have to break your computer to try out something new.
Free tiers remove the friction of trying something in a more production-like environment. You can experiment with build chains, infrastructure-as-code, different kinds of data stores, large data stores, whatever either free or very cheaply. And there are several providers to choose from, too.
The GNU C compiler has always been free. So, now, is Visual Studio. And Unity, Unreal & Godot for game programming. Visual Studio Code’s plugins and integrations keep getting better and better. Again, the friction to try something, to see if it’s for you, is basically gone.
So yes, I do think we’re in a golden age of programming. There are tools available for whatever thing you want to tackle at whatever level of difficulty you prefer. And there are great people like Julia Evans who will help you get better, if that’s what you want.
1 I never know how to refer to people I’ve never met. Is Evans too cold? Is Julia too familiar?