Blog Index

Sam Trenholme’s blog

Grab bag

July 9, 2026

Some thoughts I have had these last few days.

The Motte

I have decided to no longer contribute to The Motte. Like DailyKos and a lot of other online spaces, it has become a place where people think it’s OK to be rude to other people and not have basic respect and dignity.

Its problem is this: The Motte suffers from the “Nazi Bar” problem that Twitter (X) also suffers from. Since The Motte is an online space that allows racists and other bigots to post “reasonable” arguments, the place has become dominated by right wing shills.

People not having basic kindness and decency in anonymous forums has been a long standing issue in the technical community; Slashdot, while not being racist, had had issues with kindness two decades ago and they are prevalent to this day.

Fortunately, I have a network of friends who do have kindness, love, and decency.

The Motte’s server code

While The Motte doesn’t link to this anywhere on their website, The Motte’s server code is available online as open source software. The code is, as is typical for 2026, a lot of AI-generated slop, but the code is out there and other people are free to make their own version of “The Motte” for Reddit-style discussions.

GitHub is having issues deploying pages

It’s well known in the hacker community that GitHub has reliability issues. The issue I am dealing with is this: GitHub pages. While the servers that serve the static pages are rock solid reliable, the GitHub actions which convert Git code in to a static web page is very unreliable.

GitHub pages are OK for pages which aren’t updated very frequently, such as the MaraDNS home page or my blog archive, but they are not OK for pages which update frequently, such as my current blog.

That in mind, I will self-host my current blog, and use GitHub for the archive.

djbdns no longer compiles

With the post-C23 changes to the C specification, djbdns 1.05 (its final release) no longer even compiles. Considering that, two decades ago, djbdns advocates were well known online for being obnoxious loud mouthed people, it’s telling that not one of them is actively maintaining djbdns here in the 2020s.

I, on the other hand, am actively maintaining djbdns. My own fork of a fork of djbdns, ndjbdns, does compile, but one needs to type in this incantation to compile it:

export CC="c99 -D_DEFAULT_SOURCE"
./configure
make

The cc command these days, by default, tries to compile C23, which is a distinctly different language than the C which djbdns (and, yes, my own MaraDNS when I was starting it) was written in. The above command, for now, instructs GCC/LLVM to compile the program as if it’s using the current-for-2001 (i.e. the year the final version of djbdns came out, as well as the initial version of MaraDNS) revision of the C specification.

MaraDNS: Compiles as C23 code

I have updated MaraDNS to be C23 compatible code so it will still be able to compile should C compilers ever stop supporting the C99 specification, even though I don’t think losing C99 will be an issue: As I type this, not only do both gcc and clang support the C99 specification, they also support the C90 spec that is now some 36 years old.

The MaraDNS authoritative server, the Deadwood recursive server, as well as the Lua/Lunacy-scripted coLunacyDNS servers all compile without warning using a C23 compiler.

Lunacy standalone still emits warnings (but does compile) when compiled as a C23 program, so my next project is to have Lunacy compile without warning in a modern C23 compiler.

Go to: Older - Newer - All entries - Index