This Isn’t an Article about Board Games, I Promise
There’s a popular game called Sagrada, where players create stain-glass windows with beautiful colored dice. Sagrada combines features that I love in board gaming: drafting from a public pool, tile laying, and dice manipulation. Yet, I hate Sagrada. I find the game overly restrictive, too dependent on luck, and frustrating. I also despise the rulebook. My friends and I would search through the rules for clarification of some elements, only to say “screw it” and guess what the rule was supposed to be. My friends agree. No one in my group enjoyed playing this game, and when I tried to give it one last chance, one of my friends left to complete some chores. Apparently, washing dishes is more fun than Sagrada.
Yet, others love Sagrada. Some even prefer it to Azul, another popular pretty-pattern-making game. The game has sold well enough to receive four expansions, a legacy1 version, and a slot in the board games section of Barnes & Noble. I can’t think of any other game with such a split between my gaming group and the general public. Sure, we’ve played divisive games that some of us love and some of us hate. We’ve also brought games to the table, hated them, and found that tons of people online hate them as well.
What makes Sagrada different? I have a hypothesis. No one has really played Sagrada. Many different Sagradas exist, and we all choose one of them during our play sessions. Some Sagradas master the balance of luck, tension, and fulfillment, while others feel like a glitched Sudoku board. How can there be multiple Sagradas? Let’s look at the rulebook:
Give each player 2 random Window Pattern Cards and 1 Window Frame Player Board. Each player selects 1 of the 4 Window Patterns to play (front or back), the other card isn't used. +Note: Windows have varying difficulty from level 3 (easiest) to 6 (hardest) as indicated near the name. Difficult windows give more Favor Tokens
[…]
Shuffle all of the Tool Cards and place 3 face up in the center of the play area.
[…]
Shuffle all of the Public Objective cards (Blue die on the back) and place 3 face up.
Don’t worry about the difference between “Windows,” “Tool Cards,” and “Public Objective” cards, for now, just remember that they represent items that can dramatically change one’s play experience.
You’ve reached the math quiz session of the article. How many versions of Sagrada can one play? The game comes with 12 windows, 12 tool cards, and 10 public objective cards. A given player’s game includes 1 window, 3 tool cards, and 3 public objective cards.
That’s 12 windows, 220 combinations of tool cards, and 120 combinations of public objectives. Multiply that together and we have over 316k versions of Sagrada. That’s just the base box, by the way. I’m not counting any of the modules in the four expansions!
My theory, then, is that my friend and I have played annoying versions of the game, while Sagrada’s fans have found an enjoyable iteration. Let’s assume I’ve played 10 three-player games of Sagrada. That still amounts to only 30 of the 316k possible non-expansion versions, and we’ve played most of our games with at least one expansion module!
I don’t oppose modularity. I see the appeal of offering hundreds of unique plays in a single box. Here’s my frustration: I shouldn’t have to design your game. Sagrada’s rulebook doesn’t state “For your first games, we recommend the following setups” or “for more experienced players, we recommend using tool cards 3, 7, and 14 alongside Windows 8-12.” The game just throws all the options at the player and forces us to find an enjoyable combination. Maybe, if I played Sagrada a bit more, I would find the version that fit my group’s tastes. If I did, though, I’d expect designer credit on the game.
Millenium Blades, a sort of meta-TCG board game, receives a lot more plays in my group, and it features much more complexity than Sagrada. It also features this:
First Game Setup
For your first game of Millennium Blades, we recommend these sets, and that you play without Character Powers: Expansion: Fists of Steel, Obari as Hell, Rubber Ducky Maid Crusaders R, 1001 Nights, Gno-Man’s Land. Premium: Cards Magica, AD 2400, Clockwork Empire, Pandora’s Box Opened. Master: Symphony of Destruction, Galactic Caboose, 006 Plus One. Fusion Promo: Legend of Final Badass, Princess Blade, Elemental Dragon Lords. Prize Sup
You can ignore what all this means for now. The point is, the game’s designers designed the game! I don’t need to finish the design for them.
Software
Before reading this section, I recommend watching this video from the Onion, entitled “Sony Releases New Stupid Piece of Shit that Doesn't Fucking Work.” Honestly, it probably renders the rest of this article unnecessary.
My inspiration for this piece came from Freddie deBoer's article about Zipcar. I don't want to demand both a video and reading assignment, so I'll summarize that piece here. Zipcar is an app that seeks to replace traditional rental car companies like Hertz and Enterprise. The non-App companies check their cars for quality and have physical offices for in-person assistance. Zipcar, is, well, a stupid piece of shit that doesn't fucking work. At Hertz, one finds flesh-and-blood humans responsible for the function of the operation. If the customer runs into a problem, the old guard offers a person who can help you out and, ideally, solve the problem. At Zipcar, that’s your job.
About a year ago back, I decided I should try to learn some data engineering. For the uninitiated, data engineers create the datasets that analysts need. After asking some people at my current company, I figured out that understanding Kubernetes and Docker would help me qualify for a data engineering position. The pandemic provided me with a lot of free time, so I thought I’d download them and follow the tutorials.
I’ll spare you the details, but this didn’t go well. It didn’t work with my computer, so I needed to install a VM. The VM didn’t work, so I needed to change a bunch of settings. Then the VM worked but Kubernetes gave me a strange error message. I resolved that one through Googling, only to find another one. I read Stack Overflow, an FAQ, and numerous poorly formatted message boards. I tried to create my own Stack Overflow post, but it got rejected for containing the wrong tags or not providing enough detail or whatever. I found my way to those YouTube videos with 85 views, and even those didn’t resolve the incomprehensible error message. As anyone with an obscure tech problem knows, if a 17-year-old Indian can’t solve the issue, there’s no hope for you. After spending most of my weekend on trial and error, Igave up and decided to leave it for another time.
To this day, I have never figured out how to download Kubernetes. Though it’s “free” according to some definitions of the word, it might as well cost a trillion dollars for me. That’s the big caveat of free or open-source software. If you can’t figure out how to download or make your own changes to the code, it’s un-free and closed source as a Microsoft Office.
Having an M.A. in economics, I can hear a defense of this negative experience in the back of my head. Klaus, 10 years ago, no one could use Kubernetes. Let’s say you’re not a total moron and it really is that hard to get it to function. Imagine that only 20% of desired users can figure the thing out. That’s still 20% more than 10 years ago! That’s a Pareto Improvement! Everyone is at least as well off as they would be in the non-Kubernetes universe.
To some extent, that point makes sense. I’m not a doom-and-gloom, everything-is-terrible sort of guy, but I am an animal with feelings. I’m not making an economic argument in this article. Rather, there’s a certain feeling of powerlessness and helplessness in software that I don’t get from products in the physical world. Economic growth is wonderful, but we also need some space for feelings.
When I bought an air fryer from Target, I felt some understanding that I bought a finished product. If it didn’t function as intended, the blame ought to fall on the manufacturer or retailer. Sure, maybe they would drag their feet on a return, but, again, I’m not talking about economics. Rather, I’m saying I wouldn’t feel a personal burden to make the air fryer work. There’s no expectation that I bring home a pile of metal and plastic and head to the Target Community or the air frying section on Stack Overflow to put the thing together. I’m the consumer. I don’t make the product. Of course, there are items like furniture that require customer assembly. Even then, there exists some understanding that, if I follow the directions, the item I intended to buy will exist in my home. Kubernetes can’t offer that. I followed the instructions on their website, and the stupid piece of shit didn’t fucking work.
I’ve experienced this with other free software as well, though I’ve often been able to resolve the issues. I’ve written TensorFlow code in PyCharm, both of which are open-source software. Still, I’ve had a lot of difficulty getting TensorFlow to work properly, and sometimes it finds new ways to glitch out.
As with the Sagrada, it feels like software designers offer a general idea, while it’s my job to apply the design to the specifics that make the product actually works. Unlike some silly dice game though, I get the feeling that I’m doing something wrong when it’s not functioning. It’s my job to scroll through the pages of the community. It’s my job to parse a baffling error message. It’s my job to alter obscure settings on my PC. And it’s just a job I’d like to quit.
“Legacy” games are extended versions where a game is replayed with alterations over multiple sessions.
I feel your frustration, Klaus.
My coding career began in the mid-70s, and continued until I sold my business and retired with a nice bank account. Early on I learned that free programs were worth every penny I didn't spend.
To this day I am constantly being exposed to shitty software written by programmers who have never shadowed the audience for whom the next great piece of shit software would be used.
My programming career started by computerizing the news room of a newspaper in Bangor, ME.
At the time I was the business editor and knew how the reporters, editors, and layout folks worked.
By the end of the 70s I knew the people I interviewed made a lot more salary than I.
Which lead me to a use my computer skills as an entry into the new world of "personal" computers being used in Boston for business use.
Did well for a couple of years but consulting work became repetitious, so I decided to start a computer services company in my home town of Bangor, ME.
It was my first try at running a small company, and within a few years it came apparent that I had a lot to learn. Short story long, my little company never really made a profit.
As the saying goes, third time can be the charm.
My business mentor was the president of the local hydro electric company.
His company provided almost all the electricity to folks in central and northern Maine. He had tutored me about what business leaders want to read, and thus made me a better reporter and editor.
Already in my mid 30s, I decided to create a company that developed software for the maritime, naval, and coast guard facilities in the U.S. as well as Canada and a few EU organizations.
I approached my mentor once again, and this time he suggested that I start small. Create a program that would provide off shore navigators a quick way to get an accurate celestial "fix."
His advice grew to adding more modules to my first celestial navigation application. Then he suggested I add a module to calculate tide and current tables for a mariner's position.
Each step up the ladder of applications attracted a larger audience. Finally, I and my collaborator worked on adding a module that would do for mariners what would eventually become common in cars and trucks.
People wanted to see their vessel in real time on a digital chart as they moved among the many hazards mariners face.
Thus the little company created using the advice of my mentor became the first Windows based program that was useful to an entire industry, including large commercial ships, the U.S. and Canadian navies, the U.S. Coast Guard, and tens of thousands of people who enjoyed cruising the east and the west coasts.
The most important thing I learned was to create a product that was based on things I already knew, and thus had knowledge of how people would use my software.
In other words, my mentor trained me to listen to my customers and stop listening to the evil devil on my shoulder that gave me bad advice.
I thoroughly enjoyed reading your essay, Klause. Thank you.
I can't tell you how many times I've tried out new tools only to run into the "no one has resolved this particular error" paradigm. I can usually muscle my way through but there have been a few I couldn't resolve that stopped me in my tracks. Such a waste of time.
The alt version of this is when you are able to succeed. I've rescued my computer twice from viruses by being able to dig down and find out what the viruses had attacked (using tools of course). This, too, was time consuming but at least I won the round and saved my production environment. And then immediately installed better security software. Lesson learned.