This week, our Free Culture Book Club plays/reads The Command Line Murders and SQL Murder Mystery.

A drawing of a person with their back towards us, dressed in a trench coat and slouch hat, examining a "murder board"

To give this series some sense of organization, I present some basic facts without much in the way of context.

This should go without saying—even though I plan to repeat it with every Book Club installment—but Content Advisories do not suggest any sort of judgment on my part, only topics that come up in the work that I noticed and might benefit from a particular mood or head space for certain audiences. I provide it to help you make a decision, rather than a decision in and of itself.

The Command Line Murders, SQL Murder Mystery

The first describes the basics.

There’s been a murder in Terminal City, and TCPD needs your help.

To figure out whodunit, you need access to a command line.

Once you’re ready, clone this repo, or download it as a zip file.

Open a Terminal, go to the location of the files, and start by reading the file ‘instructions’.

The latter takes a slightly different approach to its introduction.

There’s been a Murder in SQL City! The SQL Murder Mystery is designed to be both a self-directed lesson to learn SQL concepts and commands and a fun game for experienced SQL users to solve an intriguing crime.

A crime has taken place and the detective needs your help. The detective gave you the crime scene report, but you somehow lost it. You vaguely remember that the crime was a ​murder​ that occurred sometime on ​Jan.15, 2018​ and that it took place in ​SQL City. Start by retrieving the corresponding crime scene report from the police department’s database.

In both cases, you come into the case after the investigation, using—or developing—the skills that you need to connect information provided by officer investigations and data provided by various organizations. We cover them together, partly because neither take too long to complete, and because you’ll find some common references between the two mysteries.

What Works Well?

While these lack enough of a narrative to fit together well as mystery stories, I think that they both do mostly hold up both as games and instructional exercises. Aspiring detectives need to learn a bit of each system on their own, but can otherwise get through the data in a reasonable way. They provide some challenge, but not enough that someone without the desired experience should worry about giving either a try.

Both games/puzzles/exercises, despite their short lengths, have decent writing. And SQL Murder Mystery even has a couple of nice surprises, for those who make their way through the entire puzzle.

Speaking of the short lengths, while it hasn’t happened yet, I appreciate that these exercises have plenty of room for expansion. Specifically, someone could come along and add more murders to the database. I could make this a complaint that we don’t have it yet, but I feel like staying upbeat for this…

What Works…Less Well?

I felt like the terminal game could have used more instructional guidance than suggesting that we take a look around. Personally, I feel comfortable at the command line, and had already solved the SQL problem, finding them in the opposite order, so I should have had all the advantages, but didn’t know that no clues would relate to some other case, despite the large files. However, I hesitated on jumping in, because I didn’t want to accidentally discover something from “another case.” It seems like they could have handled this better by separating clues by case numbers or something similar, or straight-out telling the “detective” in the instructions that only one case exists.

Reading through the non-case data turns up an unfortunate variety of off-color jokes, cynical quotes, and exclusionary programming comments. In many cases, these quote copyrighted sources. While most people should never see this, it feels like an unfortunate way of “rewarding” inquisitive players/students.

It also seems problematic that neither game seems to have anything to say about mass surveillance. Regardless of whether we blame the public or private sector for it, our detectives have access to member lists of many organizations, Facebook check-ins, and gym data. We got a ton of irrelevant data, meaning that the police departments didn’t get a straightforward warrant. And while this could show the dangers of such a regime—you could find the culprits based on association, rather than following leads—but the game doesn’t have an opinion on that.

I should also briefly point out that it doesn’t thrill me that Facebook gets a prominent mention, here. Long-time readers already know that mixing real brands with Free Culture works always makes me a bit nervous, but it seems especially odd here, where they could have replaced it with a Free Software social network and used a real data format…or made something new up, like they did with the cities and gyms.


Both games/exercises have a repository hosted on GitHub, and at least occasionally review issues and pull requests.

What’s Adaptable?

While I don’t generally condone pronouncing SQL like the English word sequel—at least one company produced a database project called “Sequel,” so I don’t like introducing that possible confusion, since I used to teach a database course, where both might come up in conversation—but here, “Sequel City” and “Terminal City” sound like locations that could exist, while I find “SQL City” far less probable. The Get Fit Now works well as the name of a gym chain.

Less plausible? I suppose that the Museum of Bash History and TCSU—presumably, Terminal City State University—could theoretically exist, but they feel more like jokes than anything else.

We also have the killers, who I won’t name to avoid people using this post to cheat themselves out of learning something.


In a week, we’ll go for another non-English story, this time Asuwa River Eito’s Redmine, splitting it into two halves, starting from the prologue (Kickoff) to chapter 3 (Red Wind Across the Grasslands). If you hit Feedback (starting with Since then), you’ve gone too far.

While we wait for that, what did everybody else think about The Command Line Murders and SQL Murder Mystery?

Credits: The header image(s) are the game header images, under the same license as the respective games.