Blog Index - Blog archive

Sam Trenholme’s blog

ObHack7 release

July 25, 2026

I have made what will probably be my only release of ObHack7 today. This is a random map generator (procedural generator) for Doom, Doom2, and Heretic that runs in Windows. It can be downloaded by clicking (or tapping on) this link, and source code is also available.

OhHack

ObHack is a fork of Oblige 2 which I mainly worked on back when I didn’t have Internet at home and wanted to be able to play unlimited Freedoom and Heretic levels.

There was interest in me doing a version of ObHack for later versions of Oblige, something I never did until a couple of years ago, when I started using Oblige 7 to generate Heretic levels.

ObHack7 2026-07-25

Compared to Oblige 7, ObHack7 has the following changes

Playing Heretic in 2026

Now that Heretic + Hexen has been released, finally giving the E6 levels official names, here are my thoughts on playing Heretic here in 2026:

Episode 6

Heretic’s “Shadow of the Serpent Riders” release included three secret levels in Episode 6; these maps were for deathmatch play. E6M3, “American’s Legacy”, doesn’t have an exit.

Oblige 7 handled episode 6 by ignoring it. ObHack7 handles Episode 6 by having E6M3 have an exit; ObHack generates not only E6M1-E6M3, but also E6M4, E6M5, and so on, even generating E6M9.

The way Heretic + Hexen handles E6M3 having an exit is by having a “You’re not supposed to get here, but hurray, you won the secret levels” message after exiting E6M3, then ending the game. E6M4 and so on are not accessible.

Dengine (Doomsday) 1.8.6 had a bug: It would take one to E6M4 once one exited E6M3, and so on until E6M8. Switching the exit in E6M8 causes the exit to “click”, but otherwise nothing happens. Exiting E6M9 puts one in level E6M0. While it’s not possible to load a game saved in E6M0, exiting E6M0 puts one in E6M1 again.

ObHack2 in fact generated an E6M0 level so one could exit the secret E6 level and continue playing maps. ObHack 7 doesn’t generate E6M0; not only isn’t there a way of getting to E6M9 without using the Doomsday console, but exiting E6M9 will, since there isn’t E6M0, crash Doomsday 1.8.6.

This is a non-issue for source ports with UMAPINFO support, but ObHack7 is made for Doomsday 1.8.6, which came out well over a decade before UMAPINFO existed, and doesn’t generate UMAPINFO lumps.

Obsidian

I mention Obsidian, another fork of Oblige 7. Obsidian is available here:

https://github.com/GTD-Carthage/Obsidian-Content

My impression is that Obsidian has a lot of features Oblige 7 doesn’t have, but the code is a lot more buggy and unstable than Oblige 7 and ObHack are.

Download

ObHack7 can be downloaded by clicking (or tapping on) this link, and source code is also available.

Note that both files are compressed using 7-zip. Windows 11 comes with built-in 7-zip support; users of Windows 10 or earlier can use 7-zip to extract the files.

Go to: Top - Index

More Marshall Memories

July 24, 2026

In today’s blog, I go over some more memories of Marshall, who was a father figure to me at a very key point in my life. I wrote about him previously in a blog from last year.

Marshall and God

When I worked for Marshall, he would read to me from the Bible.

Marshall was from the deep south; the Bible belt. The state he was from hasn’t given their electoral votes to a Democrat since 1976. He came from a world and a set of values that are very conservative Christian.

I was, at the time, an atheist. I wasn’t just any old kind of atheist; I was an intolerant atheist who got annoyed by people reading and talking about the Bible in front of me.

Marshall started wanting to read the Bible to me during our breaks from work in the office. I would object most loudly “I don’t want you reading that book to me!” Marshall was insistent, and since he was the, you know, president of the company, he got his way.

So he would sometimes read me some passage from the Bible. This would invariably lead to me complaining that God was just a myth. We would have long arguments about this.

I finally capitulated and told Marshall I was willing to agree that there is a God. This wasn’t good enough for him. He told me I had to have a Christian faith. When I asked him why, he told me because I was born and raised Christian, so that is the only faith I could have.

Marshall and myself had various spiritual debates. These debates would often get heated; I had a lot of intolerance in my atheism, and Marshall was, at this point, so frustrated with his life he was looking for any reason to get in to an argument.

One of the our productive debates was when I told him about a dream I had many years before, where I met someone named Peter who guided me to a magical place. He was impressed with the dream; when I mentioned the person who led me in the darkness was named Peter, he told me Peter was one of the important apostles in the New Testament, and that maybe it was that Peter who I saw in the dream.

My final conversation with Marshall

Decades after moving on from Marshall, I talked to him one last time. He told me he didn’t even want to remember that part of his life, and with good reason: He lost his car, his house, and the girlfriend he had at the time ended up divorcing him.

I told him it was a pleasant memory for me and that being with him at that time in his life was key to my spiritual growth and becoming an adult.

We said “I love you” to each other before ending the call. That was the last time I ever talked to Marshall; I didn’t find out he died until a couple years after he passed away.

Remembering Marshall today

When I take a daily walk around sunset, something about the light in the air reminds me of my time with Marshall. It is a very pleasant and peaceful feeling today; being with Marshall planted the seed for having a relationship with God that I have to this day. I became a man because Marshall mentored me at a very key moment in my life. This is something I am glad I experienced.

Go to: Top - Index

Grab bag

July 19, 2026

Some quick thoughts.

Writing code in 2026

A blog titled Why write code in 2026 has come out. I am glad I retired from writing code just before human programmers were replaced with AIs; I get to concentrate on interacting with people instead of machines today and have a lot more deep meaningful friendships than I had when I was making a lot of money writing code for countless companies, most of whom are failed and forgotten today.

I still write code the old-fashioned way, by hand, here in 2026, but, I do use AI to answer programming questions which I used to have to dig through Stack Overflow arguments to find the answer to.

Daylight savings time

There is a bill running through congress right now to make daylight savings time be year-round; people in the US would no longer have the annoyance of “spring forward” and “fall back”.

Mexico used to follow daylight savings time, having their clocks change time when they did in the United States, but stopped observing DST in 2022. So now central Mexico is, depending on the time of year, in Mountain Daylight Time (during the summer) or Central Standard Time (during the winter); should this bill pass the senate, then central Mexico will always be in Mountain Daylight Time, which means its hour will not shift relative to the US depending on the time of year.

People’s economic future

Well over one generation ago, I worked at a gas station (today’s blog picture is a picture of me from this era). It was a lot of work, and I had to work graveyard two nights a week (making doing anything during the day, such as going to college, impossible), but I kept doing it because I knew once I saved up enough for a car, I would be able to get out of the trap and start a career path. And, indeed, that is exactly what happened.

In today’s generation, that does not appear to be viable anymore. Back when I was working at the gas station, the exit path was clear: Since I was very talented with computers and the then emerging Internet, I just needed to start working in Silicon Valley. And that’s exactly what I did.

AI has greatly reduced the number of jobs in tech, so the exit path I had so many years ago is no longer viable. Indeed, I know people under crippling student loan debt who just cannot make enough money to chip away at their debt or even own a car, much less start a family.

Go to: Top - Index

Re-watching Terminator 2

July 11, 2026

I re-watched Terminator 2 today.

Rewatching Terminator 2

I saw “Terminator 2” when it first came out, and just re-watched it in light of the fact that AI is now real. In the movie, they were about 25 years more optimistic about AI becoming real than what happened in the real world; AI was viable in 1997 in the movie, but in real life it didn’t become viable until 2023 or 2024, when people starting using ChatGPT as a free therapist.

Also, AI was developed by the military in the movie,1 but while the military has helped fund AI development, it has been created by and funded in the private sector.

Yes, this movie describes one risk of AI: It may decide to kill us. Whether or not that is a real risk is still up in the air, but what has happened is that AI is causing massive economic damage, completely destroying the tech industry and highly paid computer programmers.

I remember being a kid working at a gas station, slowly saving up enough money to buy a car, and being on the internet for hours every night, learning computers and technology to get out of the trap of only being able to work in a gas station. Finally, I saved up enough to buy an old car, had a friend of a friend who worked for a place that was hiring, and got my foot in the door by working as tech support for the then nascent internet industry in Silicon Valley. From there, I slowly became a highly paid software developer.

With AI taking over everything, people these days no longer have that opportunity. AI is eating away at the middle class, and today’s generation of talented artists, musicians, and computer programmers are having their jobs being taken away from them by AI agents, forcing them to stay in low paying service positions.

Picture credits

The picture for this blog is a waxwork of the Terminator at Madame Tussauds, London. The picture was taken by Daniel Jurena from Prague, Czech Republic. The picture has been altered (resized and cropped), and is CC-BY-SA 2.0 licensed.

Footnote

1: The details are more complicated, but in the interest in having no spoilers, this is a reasonable description of how Skynet was created.

Go to: Top - Index

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: Top - Index

Lunacy 2026-07-05 released

July 5, 2026

I have released Lunacy 2026-07-05 today, and have done some updates to MaraDNS.

Lunacy 2026-07-05

Lunacy is a scripting language I use in MaraDNS (both to process DNS queries with the coLunacyDNS server and to generate the documents); it is a security hardened fork of Lua 5.1.

The last time I bumped the version number was in late 2022 with the 2022-12-06 release of Lunacy. The 2026-07-05 release is by and large unchanged; the only changes are:

The code is available on the Lunacy webpage.

Post 3.5.0038 MaraDNS updates

I have also updated MaraDNS so she generates no warnings when compiled with:

Since MaraDNS here in 2026 compiles with no warnings, even when -Wall is set, and since MarsDNS uses the -std=c99 flag when compiling programs, should MaraDNS not compile in the future, it is almost certainly a bug in the compiler toolchain and not a bug in MaraDNS.

The code is available on GitHub as well as other repos.

Go to: Top - Index

MaraDNS 3.5.0038 released

July 4, 2026

In celebration of the 250th anniversary of the United States being created, I have released MaraDNS 3.5.0038. The main changes, compared to MaraDNS 3.5.0037, is that MaraDNS now cleanly compiles.

Cleanly compiles

As I talked about extensively yesterday, MaraDNS now cleanly compiles, and its build process has been altered to ensure that MaraDNS will continue to compile for the foreseeable future.

Tests updated

Since compilers have gotten more picky since I last ran the test suite with MaraDNS, I have updated the test suite to run again. The OS I currently use to run the test suite is a Docker container with Alpine 3.24; all tests pass in that environment.

MaraDNS’s future

MaraDNS is in deep freeze: The only changes I make at this point are credible security updates (with the deluge of AI-assisted security “reports” these days, I’m very picky about what makes a real security issue) and updates to make sure MaraDNS continues to compile and run.

The 3.5.0037 release fixed a minor security issue; MaraDNS 3.5.0038 cleans things up and fixes issues found by newer and more picky compilers.

As I get older—keep in mind MaraDNS has now existed for over 25 years—I change my outlook on life. Seeing my first wife and both my parents die has made me think about my own mortality. While I hope to live for many many more years, I am now thinking about what legacy I will leave after I die. Yes, I do have a child, and yes I have a legacy there, but I also want to have MaraDNS be something which outlives me.

This is why I have, by and large, moved MaraDNS from my personal domain over to GitHub—my personal domains will go down when I’m no longer in this world and no longer babysit my servers and domain registrations, but GitHub should outlive me, hopefully for a very long time. This is why MaraDNS is on multiple public Git repos, so MaraDNS should still be online if some Git repos go offline.

MaraDNS has been a lot of work, and it’s unfortunate I was never able to effectively monetize MaraDNS to make a living from this program, but it’s work which I believe will have an enduring and lasting legacy.

Go to: Top - Index

Blog index

ObHack7 release (2026-07-25)
More Marshall Memories (2026-07-24)
Grab bag (2026-07-19)
Re-watching Terminator 2 (2026-07-11)
Grab bag (2026-07-09)
Lunacy 2026-07-05 released (2026-07-05)
MaraDNS 3.5.0038 released (2026-07-04)
MaraDNS and POSIX (2026-07-03)
MaraDNS snapshot (2026-07-02)
Round up (2026-07-01)
MaraDNS in the age of AI (2026-06-12)
A new chess variant; etc. (2026-05-03)
Chess writings (2026-04-10)
Sam’s Micro Repertoire (2026-03-31)
The Grand Prix Attack (2026-03-30)
Kasparov vs. Topalov (2026-03-21)
Sam T. vs. NN (2026-03-06)
Chess Cancun: A public domain font (2026-02-11)
Capa720: A Chess Variant proposal (2026-02-07)
The liberation of Venezuela (2026-01-04)
New Capablanca Setup (2025-12-31)
2025 in summary (2025-12-28)
New album released (2025-12-18)
Last night’s special election (2025-12-03)
Happy birthday, Marina (2025-11-30)
The 80/20 sex partner myth (2025-11-29)
Facebook is changing for the worse (2025-11-22)
Life in México (2025-11-19)
Lack of empathy for men (2025-11-17)
Lies about Orwell (2025-11-13)
1984: Great fiction (2025-11-10)
The Tea app: R.I.P. (2025-10-24)
The marital obligation to have sex (2025-10-23)
Escaping the Twitter sinkhole (2025-10-21)
Feminization is not bad (2025-10-18)
Waffles! (2025-10-11)
Some Lua stuff (2025-10-09)
Diane Goodstein (2025-10-06)
Font stacks: No more (2025-10-03)
Left wing bullying (2025-10-01)
Reddit lies (2025-09-22)
Are H1B Visas no more? (2025-09-20)
HTMLDOC and Unicode (2025-09-19)
Factoring Jimmy Kimmel (2025-09-18)
Lua primes; etc. (2025-09-17)
2020’s Cancel culture (2025-09-16)
Lua sorting again (2025-09-14)
Lua Table sorter, etc. (2025-09-13)
Lack of empathy (2025-09-11)
Left-wing lies (2025-09-10)
Thoughts (2025-09-08)
Incel myths (2025-09-06)
Remembering Marshall (2025-08-25)
Moving to México (2025-07-31)
Lua table iterator (2025-03-09)
Free ebook (2024-05-15)
February 2023 (2023-02-28)
New music released (2023-01-28)
MaraDNS 3.5.0035 (2022-12-28)
MaraDNS updates (2022-11-29)
The midterms (2022-11-18)
MaraDNS 3.5.0025 (2022-11-02)
Angela Lansbury (2022-10-11)
MaraDNS work (2022-10-09)
A eulogy for djbdns (2022-09-25)
Chess on 9/11 (2022-09-11)
Baseless accusations (2022-09-06)
Democracy (2022-09-02)
Round-up (2022-08-11)
MaraDNS security update (2022-08-01)
J. Polgar v. Carlsen 2022 (2022-07-15)
Why I’m pro-choice (2022-06-25)
Republicans are dying (2022-06-24)
Remembering Vangelis (2022-05-19)
Star Wars (2022-05-04)
Happy Easter! (2022-04-17)
MaraDNS updates & more (2022-03-29)
Slackware 15 (2022-02-05)
Nexuiz: Beer and pretzels (2022-01-29)
Variable optical size (2022-01-09)
MaraDNS support update (2021-12-19)
1980s songs: Part two (2021-11-07)
1980s songs: Part one (2021-10-21)
AIDS and COVID-19 (2021-09-26)
Jerry Pournelle (2021-09-14)
9/11 20 years later (2021-09-11)
Afghanistan (2021-08-17)
Delta surge (2021-07-31)
MaraDNS and DKIM (2021-07-16)
My Karen Story (2021-06-06)
Pride Month (2021-06-02)
The Drumhead (2021-06-01)
Dan Kaminsky (2021-05-02)
The one true language (2021-04-01)
Remembering Fry’s (2021-03-08)
Online Chess (2021-02-23)
Insurrection (2021-01-16)
Moving to Ubuntu (2020-12-12)
November round-up (2020-11-28)
More predictions (2020-11-02)
2020 election prediction #5 (2020-11-01)
Grab bag: October 2020 (2020-10-25)
Election prediction #3 (2020-10-04)
Ginsburg’s passing (2020-09-18)
Election prediction #2 (2020-09-02)
MaraDNS 3.5.0015 (2020-08-29)
PNY CS900 review (2020-08-20)
MaraDNS 3.5.0012 (2020-08-12)
MaraDNS; SipHash (2020-08-11)
MaraDNS 3.5.0008 (2020-07-25)
COVID-19 Website (2020-07-14)
Harper’s Letter (2020-07-09)
Crime, Police, and Chicago (2020-07-06)
COVID-19 growth by state (2020-07-03)
Election prediction (2020-07-02)
COVID-19 growth (2020-06-30)
Grab bag (2020-06-23)
Juneteenth (2020-06-19)
Cancel Culture (2020-06-16)
COVID-19 and CHAZ (2020-06-13)
Empathy (2020-06-12)
Let’s keep the Police (2020-06-10)
Monday grab bag (2020-06-08)
Masculinity, etc. (2020-06-06)
June round-up (2020-06-01)
Goodbye, OpenVZ (2020-05-29)
May update (2020-05-11)
MaraDNS updates (2020-04-27)
COVID-19: Update (2020-04-11)
COVID-19: Good news (2020-03-22)
Stay home! (2020-03-16)
Sanders should quit (2020-03-11)
Bernie Bro myths (2020-03-05)
Body for Life (2020-02-01)
MaraDNS 3.5.0001 (2020-01-25)
MaraDNS 3.4.02 released (2020-01-17)
2020s: Looking forward (2020-01-09)
The 2010s: A retrospective (2019-12-12)
Richard Feynman (2019-11-16)
November round up (2019-11-04)
October roundup #2 (2019-10-24)
October round-up (2019-10-05)
September 11 (2019-09-12)
July round-up (2019-07-27)
New album coming out (2019-05-30)
Deadwood 3.3.03 released (2019-04-30)
March 2019 round up (2019-03-23)
Deadwood 3.3.02 (2019-02-23)
MaraDNS update (2019-02-11)
MaraDNS 2.0.17 released (2019-01-20)
Hello 2019! (2019-01-19)
ACA ruled unconstitutional (2018-12-14)
Remembering the first Bush (2018-12-01)
Deadwood 3.2.13 released (2018-11-11)
Healthcare is here to stay (2018-11-07)
The 5 best 1990s songs (2018-10-07)
Landing on the moon (2018-09-22)
MaraDNS 2.0.16 released (2018-08-16)
Password security (2018-08-04)
Mango Naked Juice (2018-07-07)
On Résumés (2018-06-02)
Configuration files (2018-05-05)
My new job (2018-04-10)
Phasing out email (2018-03-10)
Nolan Bushnell; MaraDNS (2018-02-10)
The ThinkPad T480 (2018-01-04)
Font Update (2017-12-01)
November 2017 round up (2017-11-11)
Round up: October 2017 (2017-10-26)
The night I found love (2017-09-12)
August 2017 round-up (2017-08-12)
My job search (2017-07-08)
MaraDNS 2.0.14 release (2017-06-10)
RIP Robert Miles (2017-05-10)
Trumpcare’s defeat (2017-04-03)
Cakewalk Sonar (2017-03-11)
Jobs (2017-02-23)
Pioneer DEH-X1900UB (2017-01-17)
“Ocean Path” album released (2016-12-06)
Why the polls were wrong (2016-11-14)
Trump is toast (2016-10-08)
Album: Almost done (2016-09-19)
Christianity and bigotry (2016-08-26)
New single released (2016-07-21)
The primary is over (2016-06-08)
Making music (2016-05-01)
RIP Prince and George Martin (2016-04-21)
Super Tuesday (2016-03-04)
Bernie Bro award (2016-02-28)
Winter NAMM 2016 (2016-01-29)
Removing MaraDNS’ ads (2015-12-07)
Round up (2015-11-30)
MaraDNS update, making music (2015-10-08)
Welcome to September (2015-09-01)
MaraDNS 2.0.12 (2015-08-19)
God is Not a Bigot (2015-07-24)
MaraDNS 1 plans (2015-06-12)
MaraDNS, GPG, and trust (2015-05-27)
The Roland TB-303 (2015-04-14)
Love live the Netbook (2015-03-22)
More King v. Burwell & Star Trek (2015-03-17)
King v. Burwell; Star Trek (2015-03-06)
King v. Burwell: Vogon Logic (2015-02-28)
Superfish (2015-02-24)
Thinkpad mouse buttons (2015-02-15)
Don’t mix CNAMES (2015-02-11)
Goodbye Radio Shack (2015-02-06)
MaraDNS hotfix (2015-01-29)
MaraDNS security update (2015-01-25)
MaraDNS update (2014-12-14)
The 2014 midterms (2014-11-05)
MaraDNS support update (2014-10-25)
Best 80s Music (2014-09-25)
People like the ACA (2014-08-07)
Women against feminism (2014-07-31)
PT Sans and PT Serif (2014-07-19)
Bitstream Charter and more (2014-07-04)
The best open-source fonts (2014-06-21)
Fonts in 2014 (2014-06-11)
Miguel: In Memorandum (2014-05-24)
MaraDNS Update (2014-04-27)
Alpine in CentOS (2014-04-23)
The “Heartbleed” bug (2014-04-12)
Postfix + Mailman in CentOS 6 (2014-03-23)
Gravity: A review (2014-03-14)
MaraDNS security update (2014-02-12)
MaraDNS on GitHub (2014-02-05)
Returning to Fresno (2014-01-28)
Microblogs January 2014 (2014-01-22)
MaraDNS 2.0.08 (2014-01-14)
Microblogs 2013-2014 (2014-01-08)
2014 goals (2014-01-01)
2013 in review (20131231)
Deadwood 3.2.04 released (20131220)
New Cousine/MSYS font (20131215)
More font updates (20131214)
Better fonts for MSYS (20131213)
MaraDNS Update (20131212)
Using Crissic (20131211)
Interactive Fiction (20131210)
The OnceTV update (20131206)
Deadwood updates (20131203)
MaraDNS security update (20131202)
MaraDNS RPM files (20131127)
Deadwood Update (20131124)
Living in poverty (20131123)
Root server change (20131119)
RadioGatún[64], etc. (20131118)
An ode to Netbooks (20131117)
Deadwood Update (20131113)
TinyVZ update (20131112)
Forum will be down (20131108)
MaraDNS and DOS attacks (20131022)
October MaraDNS Updates (20131020)
More on SipHash (20131012)
My SipHash implementation (20131006)
SipHash (20131004)
MaraDNS 2.0.07c (20130920)
IPv6 update (20130915)
Mailbag (20130912)
Forum spammers (20130904)
MaraDNS support (20130903)
I now have a forum (20130902)
MaraDNS webpage update (20130829)
maradns.samiam.org (20130828)
VirtualBox’s host-only adapter (20130826)
MaraDNS: All looks good (20130820)
Microblogs August 2013 (20130818)
RSS and Zealots (20130731)
Microblogs June-July 2013 (20130728)
La Tempestad: A review (20130721)
MaraDNS testing release (20130720)
UltraDNS vs. Deadwood (20130713)
Deadwood Update (20130706)
MaraDNS Update (20130622)
Deadwood Update (20130621)
Alternate Pitfall maps (20130617)
More on Pitfall’s polynomial (20130616)
Pitfall’s polynomial (20130612)
Pitfall redux (20130608)
A 4096-byte jungle (20130606)
Microblogs May 2013 (20130604)
MaraDNS and Deadwood update (20130523)
Microblogs April-May 2013 (20130505)
MaraDNS and the Wikipedia (20130420)
Microblogs April 2013 week 2 (20130415)
Microblogs April 2013 week 1 (20130407)
March 2013 Microblogs (20130330)
Tweets March 2013 (20130329)
Deadwood update (20130320)
Why I need Masculism (20130316)
Creeper cards (20130307)
Twitter wrap-up (20130301)
Deadwood update (20130222)
Netbooks in 2013 (20130217)
Applebee's and God (20130205)
Web font rendering (20130203)
Thank you, Virginia (20130131)
BuyVM: All is now good (20130124)
A brief look at systemd (20130121)
MaraDNS update (20130120)
samiam.org on IPv6 (20130106)
Minor Civ4 update (20130105)
Finally, I have BuyVM (20130101)
2012 wrap-up (20121231)
MaraDNS 1.3 end-of-life (20121221)
Deadwood 3.2.03 released (20121220)
How many squares? (20121219)
Round-up (20121212)
Blog meta-index (20121201)
Adios, Gopher (20121130)
Deadwood update (20121124)
Let's not secede (20121114)
Obama: Looking forward (20121107)
Post-election thoughts (20121106)
Final election prediction (20121104)
Saturday election prediction (20121103)
Deadwood and SHA-3 (20121102)
Keccak: The best choice (20121101)
Deadwood update (20121028)
Saturday election prediction (20121027)
Friday election prediction (20121026)
Saturday election prediction (20121020)
Thursday election prediction (20121018)
Wednesday election prediction (20121017)
Tonight's election prediction (20121016)
Predicting the election (20121015)
Why use MaraDNS? (20121006)
Why is Git still using SHA-1 (20121004)
Slashdot: A final look (20120929)
MaraDNS update (20120922)
Web typography (20120918)
Remembering September 11 (20120911)
Multi Master fonts (20120908)
Slashdot and more (20120907)
Slashdot (20120903)
No more politics (20120901)
MaraDNS update (20120827)
MaraDNS update (20120823)
The great recession (20120818)
Server Fault Fail (20120815)
Objective truth is going away (20120814)
Adding Facebook comments (20120806)
George Orwell and the truth (20120802)
Oracle Linux: Now free (20120731)
I no longer accept patches (20120723)
Deadwood update (20120721)
Finally, a CVE-2012-1911 patch (20120711)
Deadwood update (20120623)
MaraDNS 1 End-of-life (20120621)
Legends of Ancient Arabia (20120611)
MaraDNS update (20120521)
On Civilization IV (20120510)
Inspiron 14z sound problem (20120508)
EasyDNS and truncation (20120424)
Groundhog Day (20120408)
Getting DNSSEC for MaraDNS (20120403)
Humility (20120402)
MaraDNS now has funding (20120401)
The mythical $15/year VPS (20120327)
MaraDNS: No DNSSEC (20120326)
A thought (20120325)
New MaraDNS CVE: 2012-1570 (20120322)
DNS security comparison (20120321)
Deadwood update (20120320)
MaraDNS 1 update (20120317)
The ghost domain bug (20120314)
MaraDNS 2.0.06 and 1.4.11 (20120311)
On Anne Frank (20120307)
Remembering 1992 (20120306)
Geomyidae is stable (20120305)
On fundamentalist reasoning (20120304)
MaraDNS 1 has limited support (20120303)
MaraDNS donations (20120302)
Deadwood 3.2.02 released (20120229)
Deadwood update (20120228)
Deadwood update; etc. (20120226)
Fundamentalism & Christianity (20120225)
Bulk polyhedral dice (20120218)
Classic X11 fonts for Windows (20120216)
RedHat extended support (20120215)
Happy Valentine's Day (20120214)
On Ghost Domains (20120213)
MaraDNS 2.0.05 released (20120212)
Deadwood update (20120211)
My Gopher server (20120206)
A brief review of my VPS hosts (20120205)
Adios cripperz.sg (20120203)
Having a spiritual experience (20120130)
Deadwood update (20120128)
Deadwood update (20120125)
I oppose SOPA (20120119)
Deadwood update (20120117)
MaraDNS 1 update (20120113)
New Deadwood snapshot (20120106)
Deadwood bug fixed (20120104)
Welcome to 2012 (20120101)
MaraDNS 1 update (20111230)
MaraDNS 1 update (20111229)
2011 Wrap-up (20111224)
Wrapping up the web design (20111223)
I miss killfiles (20111222)
Deadwood 3.1.03 released (20111221)
Looking at Celery (20111220)
Deadwood update (20111218)
Round Up (20111217)
Round-up (20111216)
Dillo CSS hacks (20111213)
Deadwood update (20111211)
ObHack 007.3 (20111210)
Web page design update (20111209)
MaraDNS and Paypal (20111207)
MaraDNS funding ; etc. (20111201)
New Deadwood snapshot (20111130)
Deadwood update (20111129)
MaraDNS can redirect domains (20111128)
Deadwood 3.1.01 released (20111127)
Thanksgiving thoughts (20111123)
New Deadwood snapshot (20111119)
Deadwood snapshot (20111113)
MaraDNS 2.0.04 (20111112)
MaraDNS update (20111111)
Deadwood 3.0.05 released (20111110)
On Flattr (20111109)
Call for donations (20111108)
The Galileo 7 (20111105)
Logic riddles (20111104)
Deadwood 3.0.04 (20111101)
Deadwood hacking (20111027)
RMS on Jobs; Raspberry Pi (20111023)
Dennis Ritchie RIP (20111013)
Web site plans (20111012)
On web site design (20111010)
MaraDNS update (20111009)
MaraDNS update (20111008)
RIP Steve Jobs (20111006)
MaraDNS update (20111005)
Cloak of Darkness (20111002)
Deadwood update (20110912)
Open-source IMAP clients (20110910)
Deadwood update (20110905)
Random map templates (20110901)
Global warming denial (20110827)
On Apple products (20110826)
TinyVZ security update (20110823)
TinyVZ 0.7 released (20110820)
TinyVZ update (20110816)
Tiny OpenVZ template (20110815)
Keeping CentOS secure (20110809)
MaraDNS 2.0.03 released (20110805)
Deadwood 3.0.03 released (20110722)
Web typography (20110719)
Scientific Linux 6 on a S10-3 (20110716)
Deadwood bug (20110714)
GOG HOMM3 Multiplayer (20110710)
MaraDNS update (20110708)
Updating the ads (20110703)
Tuning nginx + php-fastcgi (20110702)
Samiam.org now has ads (20110628)
Deadwood update (20110624)
Linux: Desktop fail (20110623)
Lenovo S-100; Feedback (20110622)
IE8 @font-face bug (20110619)
Dirt cheap Linux hosting (20110614)
MaraDNS update (20110610)
x120e getting replaced? (20110609)
Round-up (20110607)
Webkit @font-face bug (20110606)
Web page touch-up (20110604)
I made LXer (20110603)
Computex 2011 (20110601)
Linux is only for bachelors (20110529)
Embedding web fonts (20110528)
MaraDNS; the PROTECT act (20110527)
Beware: O'Reilly reviews (20110526)
App Inventor (20110525)
T40E: Atom killer (20110523)
The Rapture (20110521)
Atom Supercomputer (20110520)
The Thinkpad X1 (20110519)
Android SDK on a Netbook (20110518)
Web page redesign (20110517)
Low-end Netbooks (20110516)
Facebook viruses (20110515)
Mobile browsers (20110514)
MaraDNS update (20110513)
Internet loudmouths (20110512)
Poor man's Widelux (20110503)
Firefox and Javascript (20110501)
New MaraDNS snapshot (20110429)
E-350 redux (20110426)
New ObHack release (20110425)
On NXDOMAIN (20110423)
The AMD E-350 (20110422)
IE6 end of life (20110417)
MaraDNS & Deadwood update (20110415)
du for Windows (20110410)
On Xonotic (20110409)
Another Deadwood bug (20110325)
MaraDNS updates (20110324)
Bitcoin (20110323)
Scientific Linux (20110319)
New MaraDNS snapshot (20110318)
Prosperity 7 puzzle #17 (20110316)
On nuclear power (20110315)
Prosperity 7 puzzle #16 (20110309)
Automating the blog (20110306)
Prosperity 7 puzzle #15 (20110305)
Deadwood 2.3.07 released (20110304)
Prosperity 7 puzzle #14 (20110228)
Prosperity 7 puzzle #13 (20110227)
New MaraDNS snapshot (20110218)
Deadwood now installs (20110217)
New MaraDNS snapshot (20110215)
Prosperity 7 puzzle #12 (20110213)
New MaraDNS snapshot (20110212)
Prosperity 7 puzzle #11 (20110211)
Public domain Bibles (20110210)
Prosperity 7 puzzle #10 (20110208)
MaraDNS outstanding bugs (20110207)
Prosperity 7 puzzle #9 (20110206)
MaraDNS 2.0.02 released (20110205)
Prosperity 7 puzzle #8 (20110201)
On the US Constitution (20110130)
MaraDNS & Deadwood update (20110129)
Goodbye MySpace (20110126)
Prosperity 7 puzzle #7 (20110124)
Prosperity 7 puzzle #6 (20110123)
Win32 Deadwood build (20110122)
Prosperity 7 puzzle #5 (20110121)
Prosperity 7 puzzle #4 (20110120)
Prosperity 7 puzzle #3 (20110119)
Prosperity 7 puzzle #2 (20110118)
Prosperity 7 puzzle (20110117)
Deadwood snapshot update (20110116)
Deadwood update (20110115)
Usenet (20110111)
Deadwood & ObHack updated (20110109)
ObHack 007.1 released (20110104)
djbdns 1.05: False security (20110103)
Final 2010 post; NIV update (20101225)
Windows on ARM chips (20101224)