📧 The LCTHW Weekly Update #2
The LCTHW Weekly Update #2
Hello, Zed here with this week's status for learncodethehardway.com. This week I've found a bunch of resources to anyone looking to get into game dev, found an amazing game called Moonring, have started two new gaming projects, and started a new course on Regex.
You can read this email at:
https://learncodethehardway.com/emails/10-lcthw-weekly-update-2/
Turing's Tarpit is Working, Mostly
My first dumb game Turing's Tarpit is working wellenough that I'm using it to code on my other games as well. During the live streams I turn it on and it makes fun of me while I code. It's also a very handy build tool on its own. It's nice to just save and have it build everything then give me an audio cue on build failure.
One of the fun things I did is make a bunch of "action poses" for the different build states like this one for build failed:
Installing it is currently a nightmare so next steps will probably be making a real installer for platforms and then putting it somewhere for download.
You can view the code for Turing's Tarpit here:
https://git.learnjsthehardway.com/learn-code-the-hard-way/turings-tarpit
Learn Regex the Hard Way
I've had so many requests for this that I decided to create a quick short-course on regular expressions (regex). Just like the C++ course it's free to read with $5 to cover the videos (when they're available).
I also think I may turn this course into my original idea of a "parsing" course, or maybe a compiler course, so consider this a secret "pre-order" for a much larger course.
You can checkout the current progress of Learn Regex the Hard Way here:
https://learncodethehardway.com/courses/learn-regex-the-hard-way/
It's free to read, and there's currently 5 exercises with 12 planned.
Making a Roguelike Game on Twitch
I've started working on a Roguelike game live on Twitch as my next game. This is turning out to be an amazing study in various algorithms. These style of games let you focus on the algorithms because it's text-based graphic style is easy to work with, but the 2d space gives lots of room for algorithms.
You can view the code so far at my roguish git repo:
https://git.learnjsthehardway.com/learn-code-the-hard-way/roguish
And you can watch me work on it live almost every day at 4pm on twitch.tv/zedashaw.
I Made a Desktop Restreamer
I use an external recording device called an ATEM Mini, which is pretty good but it had a significant design flaw. The ATEM has the ability to record at max 1080p quality, but if you stream it will only record at the stream's bitrate. To fix this I needed a way to stream at max quality, but restream it at the lower quality for the streaming service.
I managed to hack up a couple bash/powershell scripts and then used those to make a simple desktop restreamer:
https://git.learnjsthehardway.com/learn-code-the-hard-way/distributary
It's early stages, but the eventual goal is to allow you to restream directly from your computer to multiple services at different rates. This is also a simple C++ example if you are looking for some code to study.
Moonring Is Amazing
While researching various roguelike games I came across this game Moonring. It is free, available on Steam, and it's amazing. If you remember playing Ultima II or any Rogue game then you must play this. The graphics are very retro but the actual game, sound, and style is very modern. The Steam reviews of Moonring sit at Overwhelimingly positive too.
This game is written with Love2d and is an excellent demo of what you can make with that game engine.
Bring Me Your Trash Data
Related to Learn Regex the Hard Way is another short-course I want to make about cleaning and converting trash data. To do this I'll need publicly available garbage data.
If you know of a source of awful data then hit reply and drop me links. The data should be publicly available and I'll most likely need to make a copy of the data in case it gets taken down.
Super Useful Links For You
Here's a bunch of things I've found during the week that might end up solving a huge problem or are interesting:
- Public.Work is a website of public domain photos, drawings, and paintings you can use. If you're looking for images to use this is a great resource.
- BBC Sound Effects these are free to use for non-commercial use, however the UK copyright law says that many recordings made before 1974 are public domain, so a lot of these are free to use. Sadly they don't flag which ones are, but if you try to buy public domain ones they aren't available for sale.
- Roguebasin BSP Description This is the algorithm I'm using in my rogue game for dungeon generation. This is a good exercise in algorithms if you're looking for something to learn.
- Dijkstra Maps Visualized Another great article about Dijkstra Maps, which is an algorithm I'm using for quite a lot in the rogue game.
- NYC MTA Data Challenge If you're looking for data sets to cut your teeth on then the MTA has a data challenge, and it's not restricted to code. You can also make art based on the data.
- Raylib project creator Raylib is a great cross platform game dev library and now there's a nice project creator to help you get started quicker.
- Restreamer My solution is fun if you're curious how restreaming works, but if you need a solution that will work 24/7 and is already very good then check this one out. Downside: Does NOT work on anything but Linux...for no reason at all.
Have a Great Week
As usual, I hope you have a great week. If you have tips on awesome things I should check out just hit reply.
More emails we've sent.
📧 Art Guy Summer 25% Ends Soon
Art Guy Summer Sale Ends Soon -- 25% All Courses
📧 A Brutally Honest Critique of Blender Thus Far
A Brutally Honest Critique of Blender Thus Far
📧 Art Guy Summer Week 1 Review
My first week of Art Guy Summer: Learning blender and re-discovering pastels.
📧 25% Off 2026 Summer Sale
Announcing my 25% off Summer Sale for July.