When I was in college, I played a MUD called SillyMUD, which was in turn a derivative of DikuMud, which was written by Sebastian Hammer, Michael Seifert, Hans Henrik Stærfeldt, Tom Madsen, and Katja Nyboe. I happened to mention it to one of my kids, who expressed interest in seeing/playing it.
I found an old source code archive of it, and it turns out it was distributed under an open source-style license. Unfortunately, it doesn't even compile as-is, and as I recall there were several scalability and memory bugs present in the codebase even when I played it.
Therefore, I decided that I would undertake gradually refactoring the thing into shape and perhaps modernizing some of the technology choices in the process, while chronicling it here on the blog to capture it for educational purposes as an example.
The posts in this series so far are:
- Remaining Compilation Errors
- A Lesson About Compiler Warnings
- Cleaning Up the Warnings
- Unit Tests
- Understanding a Function With Tests
- Fixing the Rest of the Compiler Warnings
- Adding autotools
- Continuous Integration
More to come!