A few weeks ago I listened to Mike Shea talk about running a Ravenloft “funnel” for Halloween. And around the same time one of the players in my newly started Drakkenheim campaign had written up an elaborate backstory which had his character escaping from Drakkenheim as the meteor hit the city. As with peanut butter and chocolate, these two should go together quite well.
So first I need a way to generate a bunch of level 0 A5E characters. I have done some searching, but have not found anything yet. I may end up writing a tool, stay tuned.
I will do more research but it seems that it would go like this: have a pile of pregenerated characters, hand out one to each player. Roll initiative, the entire thing will be done in rounds (much like Shadowdark).
I am still trying to decide if I should have just one giant table, or split it apart into a table of encounters and a table of scenery. I am leaning towards the former in the interests of simplicity: one roll each round. But regardless, roll d100 plus the number of rounds played. The encounter table will be laid out to escalate, more difficult encounters are located at the end of the table, which will obviously go well past 100. Paint the scene, and run the encounter.
If a character dies, the player will grab a new one, and play proceeds.
Lather, Rinse, Repeat.
I was thinking of various ways to track progress towards a goal, but I have concluded the best way to do this is to set a real world timer. When that timer goes off, finish the current encounter, you have reached the city gates and have gotten to safety! You could measure the “success” of the game by counting how many rounds it took, the body count, or how many rounds each character survived.
I have a spreadsheet I am using to collect ideas for the encounter table. Suggestions welcome!
So I just ran into a piece of code which looked something like this
request = http.request(someurl)
if (request.status == 200)
{
mystuff = request.body.foo
}
I showed this to my wife, who knows almost nothing about code. She said “what if it gets a status other than 200?” Despite the fact that her one and only coding class was in high school and she barely remembers it, she has managed to do better than the veteran who wrote that code! I responded, “Well, at least they are checking for the status rather than blindly proceeding!” I should not have said that. Fifteen minutes later, in the same file, I ran into code which was like this:
request = http.request(someurl)
mystuff = request.body.foo
Larry Niven once said “That’s the thing about people who think they hate computers … What they really hate is lousy programmers.”
So after finishing Cory Doctorow’s book I have been thinking about all the enshittified platforms I have been entangled with and how to reduce my dependence on them. Then I start thinking about how they tricked me into these situations. And then I thought about the OGL debacle, and how badly WotC mishandled things with respect to “monetizing” the brand. It seems like the enshittification playbook has been demonstrated repeatedly, so it was a colossal failure on the part of management there.
Here’s the way it should have gone:
[Since I started writing this, I heard an owner of a game shop pointing out that the digital bundles are a total rugpull against them. If most people will want to get access to the books on D&D Beyond, why buy them separately? The only reason you would go to the game shop is to get the special covers. This is some late-stage enshittification: “…abuse those business customers to claw back all the value for themselves.” Good job!]
I am not sure if “OneD&D” complicates this picture or not. I think the key for rolling that out is to ensure the platform works equally well for 5th and 6th edition, and then just put the new books up for sale. Make it easy to switch over, and, for now, make it easy to stay with 5th edition. Make sure to keep the revenue flowing for 5th edition. It would be tempting to force people to the new edition, but you do want to make sure the effort to switch to the new edition is really trivial (once the requisite amount of money has been spent). But which edition is in use is kind of irrelevant as long as the monthly membership fees keep flowing.
Before the OGL Debacle, I was on the verge of buying a source book bundle and a paid membership on D&D Beyond. I was even reading the playtests packets for the next edition. If they had followed the above strategy, instead of burning a whole lot of goodwill, I would have been fully committed to the platform as they rolled out the above strategy. At some point I may have caught on, but by the time I did, the switching costs would have been quite high and I may have begrudgingly stuck with it, as I am doing right now with Amazon and Google. And even if I did work up the gumption to cancel my subscription, I would have been virtually alone. And where could I have gone? Without the OGL debacle, there would have been far fewer alternatives, there wouldn’t have been Project Black Flag or C7D20, and maybe Level Up A5E would have dried up.
So it is really mind-boggling that they blundered to the degree they did, especially since several of the executives at Hasbro came from Microsoft which is the pioneer of building tech monopolies. Had they been patient and careful, they could have dominated the entire industry.
Trying to think like an evil genius has made me feel kind of dirty. I think I’ll go take a shower and get back to planning my Level Up A5E campaign.
The topics I have discussed here over the years have veered around wildly according to my interests at that time, but, despite my domain name, I haven’t mentioned veganism in 8 years. Why not? Don’t get your hopes up! I have not become a born-again meat eater.
I didn’t even notice that the 23rd anniversary of me becoming vegan passed last month. After being vegan for that long it has kind of melted into the background. Even the day-to-day struggles of living in a world hostile to vegans has become mundane and routine.
When I first became vegan, I bought a bunch of cookbooks and learned how to cook, because there were few alternatives. I generally avoided going out to restaurants, because I was tired of the laborious process of explaining what veganism is and what I do or don’t eat and then having to send food back because they covered it with cheese. “No, I do not eat chicken… or fish… or cheese. No, I don’t miss it.” At that time, finding vegan food in the mainstream grocery stores was quite difficult (aside from fruit and veggies), and I would have to do most of my shopping at health food stores. And, even then, there were many things which had no vegan analogs (e.g. cheese).
But all this has changed. In my experience, being vegan has become easier than ever. I believe much of this can be attributed to the larger population of vegans. When I became vegan, the estimates were that less than 1% of the US population was vegan, but now it is over 3% (with some estimates as high as 10%, though that seems doubtful). While that doesn’t seem like much, it has more than tripled, and is now enough to swing an election.
So nowadays, if I need to find a restaurant, I just bring up Happy Cow and, most of the time, I can find something nearby. And if not, most people at least know what veganism is, and there are far fewer questions. And almost every mainstream grocery store has most vegan items I may want.
When I first became vegan I was a bit strident about it; I wanted everyone to become vegan. I still feel strongly that everyone should be vegan, but I don’t try to talk people into it anymore. In addition to the normal mellowing that happens as one ages, I think there’s an element of resignation. For all the people I have talked to over the years, I don’t know of a single person has ever become vegan as a result. The only person who is vegan because of me is my daughter, and she has never known anything else in her life.
So, I’m not going to put much effort into telling you why you should be vegan. You should! And the reasons are obvious. But I doubt anything I say will change your mind.
But, on the other hand, I do still have a number of photos in the suicide food category, and as soon as I come up with snarky descriptions I will post them.
When I watched Enola Holmes with my daughter, I really liked the protaganist breaking the fourth wall and talking directly to the audience. And I had a thought: What if someone ran an actual play D&D campaign with the same mechanism?
When I am listening to actual play podcasts, I often hear the players create an unexpected situation, sometimes I can even hear a sigh or some other reaction from the DM that indicates they didn’t expect it either. It would be really instructive in those cases to have the DM stop, turn to the audience and talk about the situation and what they are thinking about doing in reaction.
Anybody who has run a game knows what it is like to have players make unexpected choices. For example, in a recent game I had a player approach a person in a tavern, and rather than ask questions, simply punched him. OK, I didn’t expect that, and I don’t want a full bar fight, mainly due to the time it would take. The NPC had some magic at hand, so he makes a “suggestion”: “why don’t you just sit down and have a drink?”. The character makes his save, which I didn’t expect as it was a high DC. So I have another, well armed, patron step in and make it clear that a fight would not end well. Or should I have let the full bar fight happen? While a one-way soliloquy would not have helped my current situation, but it would have helped other DMs into the thoughts running through my head as a desperately tried to cope with the situation. Being a DM can be a lonely thing at times, and at least seeing others deal with the unexpected would be comforting.
I briefly thought about doing such a podcast myself, but then I think better of it given that I have no experience with audio recording, I have a really annoying sounding voice, and I don’t think my current group would be interested in being recorded. But if someone out there does this, let me know.
[I started writing this in 2016 and unearthed it amongst some old drafts. But 6 years have only intensified my feelings here, so here it is updated and finished]
I’m sure you’ve all heard the statement from Arthur C. Clark that “Any sufficiently advanced technology is indistinguishable from magic.” But I had an exchange which convinced me of a variation of that: “Any suffciently hyped technology is indistinguishable from religion.”
The case in point was a discussion with someone who seemed to think that Git was the only version control system which had checkin hooks. And after informing him that every modern version control system, indeed, every one of them I’ve used in the last two decades, has such things (in one way or another), he repeated the same thing later on in the conversation, as if unable to process this new piece of information which contradicted established dogma.
Another interaction was with someone who asserted that Git was “more secure”. When I questioned him as to exactly how it is more secure, we was unable to articulate anything meaningful. Then I pointed out that is was trivial to forge checkins (and even demonstrated it in front of him by doing a checkin in his name), but this didn’t phase him, and he returned, mindlessly, to his original point.
I have nothing against Git on the whole, I use it myself every day. I have minor gripes with it, mainly having to do with the arcane, counter-intuitive interface (like this). But my biggest gripe is the religious fervor with which it is hyped, the irrational one-size-fits-all, Maslow’s Hammer weilding, be-all and end-all, the perfect final pinacle of version control. For ever and ever. Amen!
There have been many “religious wars” in the software world over the years. Long ago I defected to the Emacs camp, so I know it well. But with all of those wars, there were always competing technologies; differing views on how to approach a problem. But in this case, there is only one left, all others have been shouted down into irrelevancy. At the time of Git’s ascendance, I was managing at least 6 different version control systems, and I thought this would just be one more to add to the mix. But I was mystified as my team was quickly sidelined as everyone mindlessly rushed to Git.
I am a believer in using the right tool for the right job, and Git is certainly the right tool in a lot of cases, but not every problem is a nail. Sometimes you need different tools.
I notice that I wrote about this earlier, but I am now taking the long view of this: every ascendant technology eventually declines as the next shiny thing attracts everyone’s attention. I look forward to the day something new comes along and pushes Git to the sidelines.
This is an index of static pages, which, unlike posts, are likely to be slowly updated over time, or are for general reference.
So I create numerous SVN replicas and since it takes several steps to do this, I have it automated all the icky bits in a script. Usually it worked fine, but this time, the whole thing mysteriously fails with this:
svn: E165001: Revprop change blocked by pre-revprop-change hook (exit code 255) with no output.
Let’s translate “with no output”: “somewhere along the line a programmer neglected to detect and/or issue an error message”. A fatal error never fails with no output unless someone, somewhere, screwed up the error handling code.
So I run the propset command manually… works fine. I run it with the debugger… all is well, but the propset command fails. I run the propset command in another window… works fine. Now, from in the debugger I run the propset with strace. Buried in the output I find this:
18704 chdir(".") = -1 EACCES (Permission denied)
18704 exit_group(-1) = ?
Sure enough! I had su’ed to the repository owner id, but my personal home directory was locked up:
$ ls
ls: cannot open directory .: Permission denied
One thing to note is that there is no attempt to issue an error message between the chdir() and the exit_group()! I wonder which would cost more: the programmer adding one line of code to issue an error message, or me spending half an hour figuring out this problem?
I should have known better.
I wrote previously about my experience getting legal threats from TSR (and wrote more details later on, though DM David has an excellent post from a wider perspective). That experience caused me to abandon D&D and for the next few years my group played FUDGE. I had hoped that many others would follow my lead, but since I am neither articulate nor charismatic, that came to nothing and this was all forgotten.
When I rediscovered D&D 20+ years later, the old TSR (They Sue Regularly) was long gone and it seemed the new stewards of the brand would be better behaved. I had briefly looked at alternative systems like Pathfinder, OSR, or even returning back to FUDGE. But the fact that WotC had put 3rd and 5th editions under the OGL, convinced me to stick with D&D, that I could trust them again. By late 2022, I was on the verge of getting a full D&D Beyond subscription and spending hundreds of dollars on a bundle of books on there and commit fully to using all the “official” tools.
We all know what happened next. They say that history doesn’t repeat, but it does rhyme. This time, rather than threatening a handful of hobbyists running ftp sites in their spare time, they threatened actual companies with nullifying their business model. So unlike last time when the “resistance” consisted of a few guys on a USENET newsgroup complaining, this time it was a large scale revolt, to the point that several companies vowed to cut ties with the OGL by building their own systems and licenses.
But given my experiences, I saw the OGL as a positive thing: a way to draw a clear line between what you could and couldn’t put in your own D&D related work. Even though where they drew that line was very generous to themselves and the whole thing was on very shaky legal ground. But it was still a known line, and as long as you followed their rules you, theoretically, had little to fear. Had the OGL existed in 1994, my ftp site would have continued running relatively unmolested. But I never would have predicted that they would attempt to revoke the OGL, thus turning a tool which enabled a vast expansion in the D&D market into a cudgel with which to threaten the entire community unless we paid their ransom.
I have long said that any organization which exists for long enough will eventually forget their original purpose. The TSR which sent me a threatening email was 20 years removed from the gaming enthusiasts putting together pamphlets in Gary’s basement, and 10 years removed from the founder even being at the company. It was no longer about the game, it was now about protecting potentially profitable turf. Or to put it in more modern terms “the brand is really under monetised. Of course, there was no way for me to know at the time, but this company was now circling the drain towards its demise three years hence; so I now also see those threats as an act of desperation to somehow right a sinking ship. WotC seems to be following that same process, forgetting who they were to pursue greater monetization.
As George W. Bush said “fool me once, shame on… shame on you. Fool me… you can’t get fooled again.”
So, I’m done being fooled… where to from here?
As Mike Shea has pointed out, once we own the books we can play the games forevermore without any interference from WotC. We own the game. This is true, up to a point…
But there is D&D Beyond. It is telling, given events 8 months later, that on the Mastering Dungeons podcast (21-Apr-2022) they expressed relief when Hasbro acquired D&D Beyond. There was a fear, before that, that WotC could pull the license and everything they had done on D&D Beyond would be useless or gone. So, it seemed, in that moment, that the acquisition would guarantee that D&D Beyond would no longer suffer that fate.
At the moment all of my D&D is played online, and the siren song of D&D Beyond is quite powerful. The online character sheets make life a lot easier, and being able to search for rules and spells is a huge time saver. But it is a company town, a walled garden. You can only get WotC products in there and you have to pay a significant amount of money for the illusory ownership of source books. You do not really own anything, it can be changed out from under you at any time. What will happen when 6th edition comes out? How long do you think they will let you continue playing 5th edition? What are the odds that 3rd party content (other than Critical Role) is ever allowed within their walls? Everything there is temporary and trapped within their enclosure. While the platform is not yet enshittified, the lack of interoperability means the only barrier is how much goodwill they are willing to burn for more monetization. The OGL fiasco shows that they are quite willing to burn a lot of goodwill. (For more on this general issue, read Cory Doctorow’s latest book, The Internet Con).
They have shown that they cannot be trusted.
So I want to avoid the siren song of D&D Beyond, and the best way to do that, and at the same time to support independent creators who were most harmed by the OGL fiasco, is to use a different system. But which one? I know there are many systems other that D&D, but I like D&D and I am an old man and have limited bandwidth for learning new systems. Especially to learn it sufficiently well to feel confident running games. So that leaves me with one of the 5e variants which have popped up lately. At the moment, Level Up Advanced 5th Edition seems like the most complete at this point, though I am keeping an eye on Tales of the Valiant. I am going to try out the former in my next campaign, perhaps something else in the next one.
The main puzzle is how to replace D&D Beyond. We are fortunate this happened before they rolled out a virtual tabletop, as I have already committed to Owlbear Rodeo. Having the rules and such available online is already there at https://a5e.tools. But the character sheets are the problem. They need to be online, as I like to review the characters before each session (as per the first of eight steps of lazy rpg prep), it seems the only immediate option is to share form-fillable PDFs. I guess I’ll start there. Stay tuned.
Sometime in 1997 I played my last D&D game. We were still playing AD&D first edition, as we had when we started about 13 years earlier. We had avoided 2nd edition as it just seemed like TSR was trying to sell us more books which we really didn’t need, and there didn’t seem to be enough improvements to justify the cost. Due to the events I related in a some previous posts, I stopped paying attention to what TSR was doing, and was unaware of what happened to company and the game for the next 20 years.
When I finally came back I was shocked to see it was now up to a fifth edition! I had heard references to the Edition Wars, but it seemed that a lot of the controversy was dying down. I had thought about just returning to first edition, since that is what I knew. That might have happened if all my D&D books hadn’t vanished in the intervening years. But since I had to start fresh, I decided to settle on 5th edition and started reading the rule books and listening to actual play podcasts.
I finally started playing the game in 2020 (thanks to the pandemic) and I have been pleased with 5th edition. It felt very familiar, the basics of the game were about the same, with a number of key fixes. When I played AD&D I remember thinking how some of the rules made no sense or that they were a bolted-on afterthought and I am glad to see most of those went away. I always thought the lack of a skill system was a problem, but the homebrew solutions I remember seeing were hopelesly complicated. Often in our games, we would just come up with some arbitrary number and roll a dice against it, but that never felt right. But I think the way 5th edition dealt with it was simple enough, but allowed most non-combat actions to be decided in a logical way.
All in all, I am really glad I missed the Edition Wars. Though I have been fascinated to learn about all this in retrospect, one of my favorites is The Editon Wars podcast Also the Plot Points Podcast has been reading the 1st edition DMG aloud and the commentary has shed a lot of light onto the weird corners of the original game.
I can see why people got so attached to their particular editions of the game, but if there is another Edition War, I may, once again, be AWOL. I plan to focus on getting together with my friends and playing the game. That’s what really matters.
My first attempt at DM’ing was The Keep on the Borderlands. I was probably about 16 years old and we bordered on being murderhobos. Even so, I was troubled when I hit this passage:
Of course, the players marched in and started killing kobolds. We had a brief discussion about how to deal with the young ones, and we soon decided that since their race was inherently evil, killing them was not a problem. But it always bothered me. To the point that I remember that moment vividly over 3 decades later.
A while back I saw discussions on Twitter about “inherently evil races”, and I immediately knew what they were talking about; I was right back in those kobold caves. This discussions even made it onto NPR.
Looking at the various threads on Twitter and Reddit and there are quite a variety of reactions. I am honestly confused by the controversy here. I don’t think anybody is saying there can’t be evil in the world, or that you can’t have evil Orcs or Drow. But when you see a Drow you can’t just assume they are evil and kill them without thought; you’re going to have to find out first. It may well be that the bulk of their culture encourages evil behavior, but there are always exceptions. You might even have to role play an interaction with them to find out where they stand before rolling for initiative.
It is good to see this discussion take place. As with so many discussions on the internet it generated much more heat than light. But for me, it was comforting to see so many others troubled by situations like the one above. At least I am not alone, and there are many others ready to change this.
So now when I role play the goblins in Cragmaw Cave (for example), I think about why they are there and what their individual motivations are. They are not mindless automatons who will fight to the last; they may flee, surrender, beg for mercy, etc. And if the characters persist in mindless slaughter, there could be consequences to that: they could miss out on key clues, or they could gain a reputation as genocidal maniacs. The goblins may react in greater force to them next time knowing this. They could spark an even larger human-goblin war, which could have even more consequences for the characters.
And if you don’t like that, and you just want old-fashioned inherently evil races, you can do that at your own table, just don’t expect to have a lot of company.
I was introduced to both computers and Dungeons and Dragons around the same time. I did not even see a computer until I got to high school, and soon after I could be found in the computer lab every day after school playing a number of role playing games including Temple of Apshai, Akalabeth, and, Ultima II. I got my own computer not long after and was able to spend way too much time playing those games and others including Ultima III and SunDog. Note that I am only mentioning role-playing games.
I also started playing D&D around this time and it was clear that those games all owed a lot to D&D, in fact the basic mechanics of the games all clearly were derived in some ways from D&D mechanics. The one problem with D&D is that you can only play as often as everyone in the group can play, which was weekly to monthly through the years I played. The advantage of a computer game is that you can fire it up at any time, and play at your convenience. As a result, I began a long search for the holy grail of an immersive game which could be as fun as D&D.
Once in college, I was introduced to Unix and many games including a number of roguelike games like Rogue, Nethack, Omega and a few others I forget. A friend of mine set up AberMUD on a spare machine and I dabbled in that. As GUIs developed I played Crossfire and others of the sort. Years later I tried playing Neverwinter Nights, dabbled in Runescape, Second Life, Vendetta Online, and Neverwinter.
I spent a lot of time on these games in the times I couldn’t play D&D. But thinking back, for all the time I spent on each, I never once thought after a D&D session, “Wow! That was a waste of time”. But most of my time on various video games was usually followed some level of regret, of time wasted. Whenever I play D&D with my friends I have always come away happier than when I started and never a touch of regret. Why is that?
I remember someone jokingly saying that tabletop role playing games were “a bunch of numbers theory disguising itself as a game”. But really this is more true of the computerized versions. The bare mechanics of tabletop roleplaying games were transplanted into the computer, but the actual role playing, the human spirit, the creativity, was left behind. There is no “role playing”, even when there are actual choices to be made, the mechanics are always foremost in any decision. There is a satisfaction to choosing the optimal build, and making all the right choices and getting the higest score. With a computer, the choices are, perforce, limited, such that it is always a railroad. The number of tracks can be greatly increased, but in the end you are on a track, with countless options out of the question.
I know this is an unpopular opinion, which is why this story has sat half-finished for at least 5 years. If my step-son ever locates this story, he will write a lengthy critique explaining how wrong I am, and I am certain he is not alone. So it was comforting to find, at the end of chapter 6 of Joseph Laycock’s fantastic book Dangerous Games a few pages on this very subject, declaring “These are not characters in any narative sense, but collections of attributes and numbers. … in most computerized role-playing games, playing a character does not entail articulating and reflecting on the world, but is really an exercise in arithmetic as the player seeks to advance through a prewritten narrative by manipulating the mathematical representations of fantasy elements provided within the game.”
While I am certain the state of the art has improved greatly over any of the games I have mentioned above. And with recent advances in AI, it is only a matter of time before the game play will become more sandbox than railroad. However, as the years have gone on I have realized the holy grail I was searching for is illusory. What I crave isn’t the bare mechanics of a game, but rather the creativity and camaraderie of a group of friends sitting around the table weaving a story. Or perhaps the holy grail was not illusory, but rather, it was in my hands the whole time.
“The band, Elwood, the band!”
“The band? The band. The band!”
It was the last day of my senior year of high school. Since seniors finished school a week earlier than everyone else, my final project in auto shop had to be evaulated. My partner and I had done a partial rebuild of a Vega engine. Mr. P. came over with his handtruck and other hardware for starting engines. He hooked up the jumper cables and tried to start it. Nothing, it was turning over, but never firing. But he kept trying until, finally, a gout of flame jumped several feet out of the carburetor towards the ceiling. Mr. P. jumped back (as we all did), recomposed himself, realigned his ridiculous comb-over, quietly unhooked the jumper cables, said “you pass” without making eye contact and walked away. I’m sure my partner was able to get the engine going in the next week, since he actually knew what he was doing.
I don’t remember much else about the day, but after the last bell, walked out the front doors right to my father’s pickup, who was waiting for me. Everything had been packed the night before. We immediately started driving south. I wanted to be as far away from there as I could. I wanted a clean break. By the time the graduation ceremony rolled around I was in Los Angeles; the cap and gown in my closet would never be worn, and I would have no further contact with anyone from high school, except…
A few weeks later, I drove to Portland and met up with Lance and Chris to play Dungeons and Dragons. We started playing D&D several years earlier and had played regularily ever since, and with only a short break for my trip and time for Lance to move to Portland, we resumed where right where we left off and kept on for 12 more years. But then big changes in all of our lives brought it to and end and all those distractions caused us all to forget.
I didn’t really think of the importance of those two friends or of Dungeons and Dragons for many years. When you are young you don’t think about such things. But when a chance occurrence 20 years later made me think of Dungeons and Dragons, I tried to get back in contact.
I located Chris in 2019 and when the pandemic started the next year we started playing online, with his sister and kids joining in.
All through this I struggled to find Lance, every phone number I found did not work, the addresses were all out of date. But early this year my searching turned up a new address, so as I had done with every other address I found, I sent a letter. In the midst of a Father’s day get-together my phone rang. Some random 503 number, probably junk. But instead, a vaguely familiar voice asked for me by name. It was Lance! It is hard to express how happy I was.
So these two were the only friends from my childhood who I stayed in contact with, and I credit that to Dungeons and Dragons. At the time, I think we all just thought of it as a game, something to spend our Saturday afternoon doing to avoid homework. But now I see it was the glue that kept us getting together on a regular basis for all those years, and it helped us build a relationship that was deep enough that after a 20 year hiatus, we were able to just pick up where we left off.
Mike Shea wrote a touching article entitled Playing D&D Can Save Your Life which all of us middle aged men should read. And then pick up the phone and call that old friend you lost touch with. Get together regularly, and maybe an ongoing game would be just the thing to ensure you keep it up. It may save your life.
[Disclaimer and credit: I do not remember where I first heard about the brush turkey, but I suspect it was Douglas Adams during a book signing for his book Last Chance to See. The details of the brush turkey are exaggerated and maybe even wrong, but this is to serve a narrative purpose, so any zoologists can sit down, this parable isn’t for you.]
The brushturkey is very prone to boredom. Every time she lays an egg, she thinks to herself, “sitting on these eggs for several weeks is going to be really boring. There has to be a better way. I have an idea! I will build a compost pile on top of the eggs, and that will keep the eggs warm and I can go have fun.” She gets up and runs all over the place gathering organic matter and piles it up on top of the clutch of eggs. She has to gather quite a bit in order to get the temperature high enough to incubate the eggs. But finally she finished! Now she can relax!
After a while she thinks: “I better double check the temperature.” She sticks her head into the pile. “That feels too cool, let me gather more material”. She runs around gathering more material to add to the pile.
A few hours later she checks again. “Oh, no! It’s too hot, I’ll have to take some of the material off”. More running around.
She repeats this, constantly running around adding and removing material from the pile to keep the temperature just right. Day in and day out for several weeks.
Those with ears, let them hear!
As a programmer the urge to automate tasks is constant. However, there are many times when the effort of automating the task may be far greater than just doing the task manually. Let’s say you have a task which takes you 15 minutes, but with some automation you could reduce that to 5. So you spend a day writing a program to do the automation. But you only do that task twice a month. It will take years to break even.
You would have been better off sitting on that egg!
I had a whole bunch of error message screenshots saved and as I was looking through, I realized two things: first, even though there are only 2 dozen of them I don’t know if I have the energy to compose witty comments about each without becoming entirely demoralized. Secondly, I began to notice some themes. Therefore, I am going to take all the error messages I have and roughly categorize them. Since there is often overlap I am going to present it as a table, a sort of bingo card, indicating the categorization.
The first category I call “Sorry, not sorry”: inauthentic apologies for things that the author of the error message is likely responsible for in the first place.
The next category I call “Funny, not funny”: instead of giving inauthentic apologies for our screw up, we will try to distract from it with a “cute” saying (“aw, snap”) or a frowny face icon. I am not laughing, just stop.
The next category is what I call “helpfully not helpful”: the error message gives some excess, though unhelpful, detail with the error message. You still don’t know what went wrong but you spent twice as long reading the verbiage. Also useless suggestions like “try again later” or “retry” fall into this bucket.
The category “dunno” covers most of these errors: I don’t know what happened (even though I am coding an exception block), so I will just feign ignorance. It’s best when these are in passive voice, and extra credit for using the word “something” in the error.
The next category, which rarely comes up, is when there are clues as to what went wrong. I myself have (unintentionally) written errors like this with code like this:
warn "Error: unable to open file $file\n";
Of course, if $file is blank you get:
Error: unable to open file
Someone with some coding experience may pick up that a filename belonged there. Putting quotes around the file would have at least given a hint that I got an empty filename (and failed to sanitize my inputs). Note: I never said I was blameless in this error message hall of shame.
Here we go:
error | notsorry | notfunny | nothelp | dunno | clues |
---|---|---|---|---|---|
![]() |
x | x | x | x | |
![]() |
x | x | |||
![]() |
x | x | |||
![]() |
x | x | |||
![]() |
x | x | |||
![]() |
x | ||||
![]() |
x | x | |||
![]() |
x | x | x | ||
![]() |
x | x | |||
![]() |
x | ||||
![]() |
x | x | |||
![]() |
x | ||||
![]() |
x | x | |||
![]() |
x | x | |||
![]() |
x | x | |||
![]() |
x | x | |||
![]() |
x | x | |||
![]() |
x | x | |||
![]() |
x | x | x | x | |
![]() |
x | x | |||
![]() |
x | ||||
![]() |
x |
How many of those have you seen? Perhaps I should have a giveaway for the first person to have personally seen every single one. I don’t know what sort of prize it would be. Maybe we could sit down and share some whiskey… I feel like I need it after looking at all those.
Some of my early career was spent working on Sun workstations and servers. Way back then they had the slogan “The Network is the Computer”. Clearly, that slogan is the old wine in the new bottle labeled “Cloud”, but that’s another story. As I sit looking at an hourglass or a spinning “progress” icon, I realize that the original slogan was incomplete, the full version is:
“The Network is the Computer… and that’s why it sucks so bad.”
Though, to be fair, the network is not the problem, as such. The problem is the way it is used. Specifically, the apparent pervasive assumption amongst programmers that all network operations have zero latency, infinite bandwidth, and are 100% reliable.
Over the last several years I have noticed a common topic which comes up whenever I talk with my father. He always mentions about how there was another shooting, and how bad the crime is in the city. After he repeated this enough I began to wonder what was going on. Whenever I visit, everything seems as good or better than it ever was (though the homeless problem is worse than ever). I did a bit of digging and found that the crime rates have been declining for years as they have most everywhere in the country.
So what is going on here? Here is my theory: TV news. He has been watching more TV news in recent years and the steady drumbeat of stories about crime and tragedy gives the impression of a unfolding disaster. I have heard it said that the plural of anecdote is not data, but the plural of scary anecdote is fear.
Imagine a TV station which, every night, on the news aired a story about someone who was struck by lightning. Someone killed! Next night, a person injured and in the hospital near death! Next night, a person who was struck years ago and still suffers. Next night, a person killed when a struck tree exploded. Next night, a person whose dog was struck in the dog park. And so on. Each one accompanied with grisly photographs and footage. After enough of this many people would be scared to ever go outside. And that advertisement for a portable Faraday Cage starts to look like a good idea.
But, as we all know, this fear is utterly irrational and not backed up by the data: only 270 people are struck by lightning in the US each year, and only 27 of them die. Furthermore, that death rate has been on the decline since records have been kept (1940).
But TV news lives for the lurid anecdote, the horrifying footage, the eyewitness stories, etc. That keeps the ratings up. And creates a lot of fear of the wrong things. Even when they give numbers it is one or two numbers which is not very useful. For example, if I told you that the stock market fell 350 points, you might think you need to panic, but then if I tell you that the current number is 27,691, then you would know that is a tiny percentage, and likely a normal fluctuation. But if I give you a chart showing the stock market numbers over the last year or two you could actually make an informed decision based on long-term trends. But that won’t keep their ratings up.
This sort of thing is also what gets people elected, the current incarnation of the Republican party has taken this to the most cynical extreme as stated by Newt Gingrich when he was challenged with actual data:
“The average American, I will bet you this morning, does not think that crime is down, does not think that we are safer. People feel more threatened. As a political candidate, I’ll go with what people feel.”
In other words, screw facts, data, logic, and rational discourse, if I can whip up enough fear I can get myself elected. The dreams of the founding fathers trampled in the name of winning.