Skip Navigation

Handmade Network, BSC and finding actual places to learn

First post on awful.systems. TechTakes seemed the most relevant place to post this but it has some overlap with (or at least a request for) NotAwfulTech. I have been sitting on this write-up for some time but recent events turbocharged of my feelings.

TL;DR: The influencerization of tech culture has impaired my ability to properly learn tech stuff from anything other than honest-to-god books.

First, some context: In 2014, game developer Casey Muratori started the project "Handmade Hero": a complete video game, written from scratch, one livestream at a time. As of 2023 (after 667 episodes) the project is on hiatus and will probably not be picked up again. In the wake of Handmade Hero, two organizations were created by fans of the series. The first, Handmade Network, is a place for like-minded people to advertise and discuss their "from scratch" projects and is the main hub of the community. The second one, Handmade Cities, hosts conferences and meetups a few times a year. A notable one of these conferences takes place every year in Seattle.

The "Handmade Community" can be best described by those it seeks to emulate. Muratori and his friend Jonathan Blow frequently decry the state of modern software. Performance has gone down the drain, developers no longer know how the machine behaves, ... The community's manifesto makes it clear they see the problem with individual developers, not the broader culture in which they operate. Don't worry about systemic issues, just use struct-of-arrays instead of array-of-structs. That being said, systems that are allowed to be criticized are universities for not teaching decent programming in a computer science curriculum, thereby cheating their students.

This became very clear in the aftermath of Handmade Seattle 2024. After a keynote by Andrew Kelley, the creator of Zig, the community imploded. Kelley mildly talked about systemic issues. For example, not everyone has the available free time and capital to spend on multiple hobby projects outside of work. As a response to this talk (and other issues), Handmade Network split from Handmade Cities. But where should the community circlejerk continue now?

Enter BSC, the Better Software Conference. Under the tagline "Software is getting worse. We're here to make it better.", an invite-only conference took place last July. The list of speakers made it clear this was a fresh start for "real" conferences in the Handmade community. Most of the talks are available on YouTube, with many gushing comments on "information density", being a "breath of fresh air" and "excellent talks". I disagree. Talks were too long, the math talk contained horrible pedagogy, Q&A was extremely circlejerk-y, some talks presented funky new ideas that apparently have been known for decades (thanks to the few YouTube comments that pointed me to actual resources).

The conference page tries its best to be vague, but two of the three organizers were also speakers. Unsurprisingly, they retweet Curtis Yarvin and decry the state of western civilization. In the wake of the Charlie Kirk shooting, Ryan Fleury (BSC speaker, community darling and self-professed libertarian) started spreading the expected takes on free speech. Jonathan Blow (not explicitly part of the community but an honorary member and idol) is known for his opinion of women in tech and antivax takes. Muratori himself never explicitly talks politics, but at a minimum he doesn't mind being in a nazi-bar made from scratch.

And these are the people being recommended to me. I used to be able to search for concepts to learn and find high-quality videos of people drawing diagrams on paper and filming it with a potato camera. Now I have to scroll through ten videos of ThePrimeagen declaring his switch from Rust to Zig to Go to Odin. Or scroll through a blog post by someone using garbage collectors to make an ancap joke about inefficient governments. Everyone spends more time bashing other people/languages/software than actually explaining concepts and tradeoffs. Especially since becoming a parent, the advice "Just watch Handmade Hero. The first 30 episodes will do." rings extremely hollow. Taking that advice would mean dedicating all of my free time during several months to that and that alone. If these people have families to take care of, it is obvious someone is making it possible for them to spend their time on this.

With this and DHH going full mask-off I am not sure I feel like I can have a place in tech anymore. Discussions on technology are excuses for dick-measuring and insulting people only to later claim that actually you are Dutch and it is in your culture to be an asshole.

Where are the places to discuss the systemic issues in tech and have non-judgemental discussions on solving problems? For the first part, this place has been pleasant to lurk for the past years. For the second part, I'm not so sure.

In the meantime, I will just keep reading Knuth a page at a time. And cuddle with my family.

11 comments
  • There isn't a way to solve problems without some value judgements. As long as there are Algol descendants and a lineage of C, there will be people with more machismo than awareness of systems, and they will always be patrician and sadistic in their language-design philosophy. Even left-leaning folks like Kelley (Zig) or DeVault (Hare) are not reasonable language designers; they might not be social conservatives but they aren't interested in advancing the art of programming. Zig's explicitly an attempt to iterate on C and C++ without giving up their core unsafety, while Hare is explicitly trying to travel decades back in time to fit onto a 1.41MiB floppy disk.

    I'd recommend stepping outside of the Algol world for a little bit. Hare, Rust, Zig, Go, and Odin have — at least to me, and to a few other PLT folks — the same semantics; they're all built on C++'s memory model and fully inherit its unsafety. (Yes, safe Rust is a safe subset; no, most production Rust is not safe Rust.) Instead, deliberately force yourself to use a Smalltalk, a Forth, a Lisp, an ML, or a Prolog; solve one or two problems in them over a period of about one month per language. This is the only way to understand the computer without the lens of Algol. Also, consider learning a deliberately unpleasant language like Brainfuck or Thue to give yourself an alien toy model to prevent yourself from getting mind-locked over the industry's concerns. If you like reading papers, I'd suggest exactly one paper to cure Algol sickness, the Galois theory of algorithms.

    Discussions on technology are excuses for dick-measuring and insulting people only to later claim that actually you are Dutch and it is in your culture to be an asshole.

    This is your call. Personally I've found that I can be blunt with evidence and technical claims while empathizing with the difficulty of understanding those claims, and this still allows for fruitful technical discussions. (Also, I have the free time to be vindictive, to paraphrase Yet Another Apolitical Programmer.) I've found that GvR (Python, Dutch) doesn't really understand most of the criticisms I've brought to the table, even when I wrote them up for the Python core team, and that the design-by-committee process left multiple Python committee members with a deep contempt for anybody who actually has to use their language. I've also found that "Ginger" Bill (Odin, British) is completely unable to have a discussion on this basis as he is too busy negging, sapping, and otherwise playing rhetorical tricks in order to get his way. Unrelated: I also found that DeVault (American) was willing to be less of a sex pest when threatened with a ban, which is a useful trick for moderators to know; in general, being harsh-but-fair to DeVault seems to have pushed him further and further to leftism and public decency over time.

    Also, sometimes people get removed from their communities! Walter Bright (D, American) was kicked out of the wider D community for generally having shitty politics in all arenas of life; the catalyst was likely some particularly transphobic remarks made a few years ago. Similarly, if Blow's Jai actually had anything interesting to contribute besides the soa and aos keywords then there would already be open-source knockoffs because Blow livestreams so many bigoted takes; arguably Odin is a Jai clone.

11 comments