Never miss another update.

Get news from the Handmade Network and Handmade Software Foundation delivered directly to your inbox.

 

Latest News

This post has been co-authored by Abner Coimbre and Ben Visness.


On November 17, 2014, Casey Muratori went live with the first episode of Handmade Hero. The show was immediately electrifying: a game industry veteran sharing his knowledge with no coddling and no compromises. But Handmade Hero gave us more than just technical knowledge—it gave us an ethos for how to program.

10 years later, it’s clear that Handmade Hero was more than just a show—it started a movement. The Handmade community has grown to encompass thousands of people sharing their knowledge on Discord, attending conferences and meetups, shipping apps, and working to fix the mess that is modern software. In a world where most programming communities are built around a particular language or paradigm, the Handmade community is an anomaly, a place where brilliant programmers of all disciplines gather to help each other make truly great software.

This past July, we spent a week at Ben’s family cabin to reflect on the past ten years of Handmade. The key question: What should we encourage ourselves, and the community, to do for another ten?

Abner and Ben on a boat

Three Handmade hubs

First, we should review where we are now. For better or for worse, the Handmade community is under the stewardship of three separate entities:

At the time of writing, Handmade Hero is paused. Casey will share further updates down the line about whether he will continue the series or introduce a new one that better meets the educational needs of his current audience.

But the Handmade Network and Handmade Cities march on. The Handmade Network now runs three unique programming jams per year, has a thriving online community, and runs Unwind as a way of sharing the community’s knowledge. Handmade Cities has expanded to both Boston and Seattle, supports meetups across the world, and now hosts coworking groups and hangouts as well.

These are all amazing developments, but we don’t want to stop there. We want to take the Handmade community to the next level and really make a dent in the software industry, as has been our mission from the start. How do we achieve that? What can we do to scale up the Handmade movement and its impact in the world of software?

Our overarching goal is simple: we want Handmade programmers, and the software they write, to be successful. Straightforward enough. But what’s holding Handmade programmers back from that today, and what can we actually do to help them?

First we need to understand who Handmade programmers really are.

Three kinds of Handmade programmers

The boat ride up at the cabin yielded our first main conclusion: there are multiple kinds of Handmade programmers, each with different needs.

We’ve had ten years to observe and work alongside dozens, if not hundreds, of incredibly competent programmers. As we reflected on the best of the community, we noticed that they seem to fall into three major archetypes, which we are dubbing:

  1. The Entrepreneur
  2. The Researcher
  3. The Craftsperson

The Entrepreneur is someone who wants to ship Handmade software. These are programmers like Vjekoslav (creator of File Pilot), Wassimulator (creator of Cactus Image Viewer), or Nakst (creator of the Essence operating system). Their goal is to build the kind of software they know computers are capable of, and they are usually driven by the awful state of software today and motivated to create something better.

The Researcher is someone who wants to do ambitious work and share what they learn with the rest of the world, but their goal isn’t necessarily to make a product. Instead their goal is to dig deep into systems, try new ideas, and share what they learn with the rest of the world. We have a few programmers that fit this mold, such as Allen Webster, creator of Mr. 4th Lab, and BYP, who is always down some kind of interesting rabbit hole.

The Craftsperson is someone who just loves the work of engineering. Their love of their craft gives them a wide breadth of knowledge and experience, and they are less distracted by shiny new ideas and tend to be extremely productive as a result. We have many incredible craftspeople in the community, such as Reuben Dunnington (who contributed an entire libc implementation to Orca), and Skytrias, who has contributed large amounts of code to both the Odin and Orca projects.

These are broad categories and there are many community members who blur the lines. But we think these categories nonetheless describe most of the people in the Handmade community, and they inform what we can do to help them.

So how do we support Handmade programmers? Each archetype has a different set of needs:

  • Entrepreneurs need product infrastructure: websites, payment processing, licensing systems, update delivery, email support, etc. They also need labor, a network of programmers who can contribute to their projects. And of course they need marketing; it shouldn’t be too surprising that low-level programmers are usually not great at advertising.
  • Researchers need funding; at least enough to motivate them to do their research and to account for the fact that they likely won’t have a product to pay their bills. Perhaps more importantly, though, they need PR: for their research to make an impact, it needs to be published somehow, and people need to be aware of it. They also might benefit from project management: an outside voice helping them find meaningful goals and milestones that can be shared widely.
  • Craftspeople need work; this means both a supply of interesting projects to work on and compensation for their efforts. They also deserve recognition: while many craftspeople don’t want the spotlight, it’s important for their work to be properly appreciated.

There are, obviously, a lot of different needs here. We may not be able to achieve them all right away, but our overall vision for the future of Handmade is to fulfill these needs for the community.

The Handmade awakening

Those are the tangible needs, but before going further, we should actually cover programmers’ emotional needs as well. It may sound strange, but this is actually an issue of growing importance for the community. (This realization came after some post-boat-ride Chocovine.)

At the heart of the issue is an awakening that nearly all Handmade programmers experience. Abner experienced it when he took his job at NASA. Ben experienced it when he read Casey’s article about compression-oriented programming. There are hundreds of Handmade programmers with a similar story, where they have a realization, an awakening, about what programming really is.

We started out as children writing programs for fun. We loved programming and loved making computers do amazing things. But then we went to school, and the joy of programming was slowly drained away. We were taught that it was foolish to write programs yourself, and that you should instead use the library or the game engine that someone smarter had written. We were taught about inheritance hierarchies and design patterns and hundreds of other useless concepts that obscure what the program is actually doing. And when we asked “why”, we were again told that it’s just how things work. Trust the experts. This is how software is made.

Then we found Handmade. We discovered that programming could be fun again. We discovered that there were programmers out there who cared about their craft. We discovered that all the fluff we were taught in school was only making things worse, and that if we instead learned how computers actually worked, a whole new world of programming would open up for us.

The obvious corollary, though, is that the software industry is a disaster. It seems too absurd to be true—surely there must be a good reason why so many programmers install is-number from npm. Surely there must be a reason for a to-do list to use 500MB of memory. Surely so many smart programmers couldn’t be wrong! And yet they are.

Ten years into their programming journey, many Handmade programmers face a crisis. They have grown so much as programmers, and learned so much about how things work, that they can’t stomach working in the industry any more. The thought of installing hundreds of dependencies and slapping together a React app is too much to bear. The money may be good, but if the work isn’t fulfilling, they can’t do it.

The need to fix the software industry is clearer than ever. It’s not enough to just show programmers the way. We need to change the status quo.

How to support their needs

How does one change the status quo? The only way is to fill the software industry with the kind of software we want to see.

To that end, the Handmade Network team is in the process of creating the Handmade Software Foundation, a 501(c)(6) nonprofit organization whose goal is to sustain the development of Handmade software and Handmade programmers. The needs of entrepreneurs, researchers, and craftspeople are varied, but we think we can make a big impact with just a few key people. One designer can offer their services to many entrepreneurs’ Handmade products. One “project manager” can meet regularly with the authors of official foundation projects, and one writer can help with a variety of blog posts, documentation sites, and grant proposals. And foundation projects can be an amazing source of work for the Handmade craftspeople who are looking for meaningful work. It will take some time to get going, but we think there’s huge potential as an “incubator” of sorts for all kinds of Handmade projects.

Meanwhile, Handmade Cities is all about growing the in-person events, with a focus on connecting programming in real life. We host two main conferences: Handmade Boston in the summer for masterclasses and Handmade Seattle in the fall, which is our flagship event with talks, demos and even a job fair. We also run monthly meetups around the world with trusted hosts, plus bi-weekly co-working sessions and weekly hangouts. All of this builds on the idea that real change in the software world comes from in-person connections with like-minded people.

Over the years, Handmade events have proven to find people new jobs, co-founders, lifelong friends, and even romantic partners. Our conferences are an anchor to the Handmade community and a platform for pushing forward programming projects.

How programmers can support us

The Handmade Software Foundation is still getting off the ground, and the process will take a fair amount longer. The Handmade Network team already spent a year waiting for the IRS to review a previous application, only for it to be rejected, and the entire process to start over. The end result will be worth it, but these things unfortunately take time. In the meantime, we encourage you to sign up for the email newsletter, and to start participating in the community. We look forward to scaling up Foundation activities in the coming years, and if you find this exciting, please feel free to ping Ben on Discord (bvisness) or send him an email at [email protected].

Handmade Cities, however, is already an active company run by Abner. All Handmade events are 100% indie, meaning Abner doesn’t take any sponsorship deals: he is funded by individuals like yourself. Organizing is his full-time career for the last couple of years which pays significantly less than any traditional programming job, so the best way to support Abner is throwing five bucks his way or getting tickets for the conferences. If you need to get a hold of Abner, ping him on Discord (abnercoimbre) or send him an email at [email protected].

The first 10 years of Handmade have had more of an impact on our lives than we ever could have imagined. We’re both so proud of everything the community has already accomplished, how many people it’s impacted, and the software it has produced. We are all better programmers, and better people, because Casey decided back in 2014 to share his knowledge and his ethos with the world.

We couldn’t be more excited about the next 10 years.

-Abner and Ben

Abner and Ben overlooking the city of Minneapolis