Back in December, Bryan Cantrill wrote a pretty good article titled Open source confronts its midlife crisis. He discusses a particular problem that's started cropping up over the past year or so: companies deciding that free software/open source licenses are unfair, and modifying them so that they're no longer free/open-source.

It's the same old problem we've been seeing since the start of the Free Software movement: how can you make a profit giving your software away for free? How can you stay in business if somebody else can just take your software and resell it without giving you a cut?

There's a growing trend toward answering that question with "Change the license so they can't do that."

One particular example is the inaccurately-named Commons Clause, which is a clause you can attach to some other license; here it is in its entirety:

"Commons Clause" License Condition v1.0

The Software is provided to you by the Licensor under the License, as defined below, subject to the following condition.

Without limiting other conditions in the License, the grant of rights under the License will not include, and the License does not grant to you, the right to Sell the Software.

For purposes of the foregoing, “Sell” means practicing any or all of the rights granted to you under the License to provide to third parties, for a fee or other consideration (including without limitation fees for hosting or consulting/ support services related to the Software), a product or service whose value derives, entirely or substantially, from the functionality of the Software. Any license notice or attribution required by the License must also include this Commons Clause License Condition notice.

The Free Software Foundation has added the Commons Clause to its license list under "Nonfree Software Licenses". In its update notes, the FSF explained the move:

We added the Commons Clause to our list of nonfree licenses. Not a stand-alone license in and of itself, it is meant to be added to an existing free license to prevent using the work commercially, rendering the work nonfree. It's particularly nasty given that the name, and the fact that it is attached to pre-existing free licenses, may make it seem as if the work is still free software.

Cantrill called out other nonfree licenses too, including Confluent's Community License. Confluent's Jay Kreps objected:

We actually aren’t trying to "co-opt" the community or open source terminology. We tried really hard both in the license and in the blog post to be honest and upfront. Whether you like Confluent's license or not, you have to agree it is exceptionally permissive and the software has a pretty great community of users. How do you describe a license that lets you run, modify, fork, and redistribute the code and do virtually anything other than offer a competing SaaS offering of the product?

I describe it as "Not open source."

"Open source" is not a generic term. It doesn't just mean that you can look at a program's source code. It's a term of art, subject to the Open Source Definition. And the definition includes section 6:

6. No Discrimination Against Fields of Endeavor

The license must not restrict anyone from making use of the program in a specific field of endeavor. For example, it may not restrict the program from being used in a business, or from being used for genetic research.

I'm not a lawyer, but I'm pretty sure "a competing SaaS offering" counts as a field of endeavor.

Bruce Perens, who wrote the OSD, explains more in a blog post titled When Licenses Discriminate. It's a relatively short post, so I'm going to quote it in its entirety:

A long time ago, well-meaning people at the University of California, Berkeley created a license for their SPICE electronic simulation software that prohibited use by the Police of South Africa. This was, of course, during Apartheid.

Years later, Apartheid ended. The Police of South Africa now included Blacks and Whites with the same duties and powers. And they were still prohibited from using Berkeley SPICE. Getting the University of California to change the license, so that the software could be carried in Debian as "Free Software", was impossible at the time.

I took this example (among others) and wrote into the Open Source Definition (then the Debian Free Software Guidelines) that licenses could not discriminate against persons or groups, or against fields of endeavor.

This implements a major principle of Free Software. Freedom means Freedom for Everyone, not Freedom For People I Approve Of. Even when those folks abuse the freedom of others.

Someone recently created a license that discriminates against companies that have contracts with the U.S. Immigration and Customs Enforcement (ICE), a division of the Department of Homeland Security. Ironically, this is called "Moral Programming" or "Moral Licensing". I have to object to it on moral grounds.

I don't approve of the recent conduct of ICE under the direction of Donald Trump and his gang. Far, far from it. I am happy to say so, to participate in protests, and most importantly, I will not vote Republican in upcoming elections.

But if you insist on denying them the right to run your software in your license, please be careful not to call it Open Source or Free Software. Because your license will not comply with the Open Source Definition or the Four Freedoms of the Free Software Foundation. Which protect Freedom for everyone.

There's another license that's been getting some attention lately: MongoDB's Server Side Public License. It's based on the GNU Affero General Public License (which in turn is based on the GNU General Public License), but it makes a significant change. Here's Section 13 of the Affero GPL:

13. Remote Network Interaction; Use with the GNU General Public License.

Notwithstanding any other provision of this License, if you modify the Program, your modified version must prominently offer all users interacting with it remotely through a computer network (if your version supports such interaction) an opportunity to receive the Corresponding Source of your version by providing access to the Corresponding Source from a network server at no charge, through some standard or customary means of facilitating copying of software. This Corresponding Source shall include the Corresponding Source for any work covered by version 3 of the GNU General Public License that is incorporated pursuant to the following paragraph.

Notwithstanding any other provision of this License, you have permission to link or combine any covered work with a work licensed under version 3 of the GNU General Public License into a single combined work, and to convey the resulting work. The terms of this License will continue to apply to the part which is the covered work, but the work with which it is combined will remain governed by version 3 of the GNU General Public License.

Here's the modified version in the SSPL:

13. Offering the Program as a Service.

If you make the functionality of the Program or a modified version available to third parties as a service, you must make the Service Source Code available via network download to everyone at no charge, under the terms of this License. Making the functionality of the Program or modified version available to third parties as a service includes, without limitation, enabling third parties to interact with the functionality of the Program or modified version remotely through a computer network, offering a service the value of which entirely or primarily derives from the value of the Program or modified version, or offering a service that accomplishes for users the primary purpose of the Program or modified version.

"Service Source Code" means the Corresponding Source for the Program or the modified version, and the Corresponding Source for all programs that you use to make the Program or modified version available as a service, including, without limitation, management software, user interfaces, application program interfaces, automation software, monitoring software, backup software, storage software and hosting software, all such that a user could run an instance of the service using the Service Source Code you make available.

That's some pretty dry legalese, but if you've made it this far, I suppose you're interested in reading about technical differences in free software licenses. So here goes:

If you take a program that's licensed under the Affero GPL, modify it, and make that modified version available to run over a network, you have to license your modified version under the Affero GPL.

Whereas under the SSPL, if you use MongoDB as part of a service package you offer to third parties, you have to release the entire package under the SSPL.

While MongoDB is couching this in the language of the GPL and copyleft, its goal seems more inline with the Commons Clause. It doesn't actually expect anyone to use MongoDB as part of a package and then release the entire software stack under the SSPL; it expects the terms of the SSPL to be so onerous that companies just pay MongoDB to license the software without the SSPL.

What's the point of all this?

It gets back to that earlier question: how do you make money on software you give away for free?

One of the traditional answers to that question has been that you charge for support. That was the idea behind MongoDB: they'd give the software away for free, but charge for support.

That may have been a viable business strategy a decade ago, but the market has changed. More and more companies are choosing not to run their own servers on-site, but instead to use Amazon Web Services. And that disrupts the traditional "pay for service" model -- because now companies are using MongoDB, and they're paying for service, but they're not paying MongoDB for service, they're paying Amazon for it.

Clearly the bean-counters at MongoDB saw this as a problem, and so they wrote a license that they hoped would force Amazon to pay them to continue using their software.

It didn't work. Amazon responded by creating a competing database format called DocumentDB. As soon as Amazon announced the project, MongoDB's stock dropped nearly 15 points. Whoops.

Meanwhile, neither the Free Software Foundation nor the Open Source Initiative has reached an official verdict yet on whether the SSPL is a free/open-source license, but it's under review, and Bruce Perens has his doubts.

First of all, he notes that it almost certainly violates the FSF's copyright on the AGPL; just because it's a license that allows redistribution of modified versions of software doesn't mean that it allows redistribution of modified versions of the text of the license.

The issue of the license text being infringing of FSF's copyright needs to be addressed. I doubt FSF is going to give permission for this use of their text. There is a possible 17 USC 102(b) argument, but most sources (Nimmer, Adams) disagree, and I don't know of any case law. This might require a full rewrite, and IMO OSI would face a risk of being a contributory infringer simply by hosting a copy of the current text on their site. The legal ambiguity of that might be sufficient reason for rejection.

And in the same post, he suggests it might violate sections 6 and 9 of the OSD. I've already quoted #6; here's the text of #9:

9. License Must Not Restrict Other Software

The license must not place restrictions on other software that is distributed along with the licensed software. For example, the license must not insist that all other programs distributed on the same medium must be open-source software.

And here's what Perens has to say about the SSPL:

I am most concerned with the second paragraph of section 13, and its conflict with OSD #9 and #6. The definition of how those pieces are coupled needs to be tighter. Management software, backup software, etc. may be used as part of the offering of a service, but they don't create a derivative work, nor are they combined into the same program. So, we get a restriction on works that are simply aggregated together (#9) or a restriction on use of the program if the data is backed up using a non-Open-Source backup program (#6).

In a later post, and with deep apologies, Perens backs off the Section 9 claims and states that the SSPL violates the spirit of Section 9, but not the letter.

The OSD terms were not written for software-as-a-service. OSD #9 very clearly states

The license must not place restrictions on other software that is *distributed* along with the licensed software. For example, the license must not insist that all other programs *distributed on the same medium* must be open-source software.

Since software-as-a-service software is not distributed, OSD #9 doesn't apply. Sorry. The document was written for another time and I could not predict today's conditions.

Regardless, even if it doesn't violate #9, it would nonetheless appear to violate #6. At any rate, Red Hat and its community version, Fedora, think so; they've rejected the SSPL and will be removing MongoDB from their software repositories. The Debian maintainers don't even think a strict analysis of the Debian Free Software Guidelines is necessary; it clearly violates the spirit of the DFSG, and that's good enough for exclusion from Debian.

Here's the thing: a change in license can kill a project. XFree86 was a much more essential package than MongoDB, and its owners made a much more minor change to its license. But that was enough to completely destroy the project. A previous version, with the old license, was forked as X.Org, and within a matter of months every Linux and BSD release had switched.

MongoDB is well along that path. The company has since introduced SSPL v2 in the hopes that it will prove more acceptable than v1, but MongoDB itself is still published under v1.

Maybe v2 will prove more acceptable. Maybe MongoDB won't end up like XFree86 and it'll end up like, say, KDE instead -- a project which initially used a nonfree license but then switched to a free license and continues to be widely used. Those are MongoDB's options: make your license acceptable to the free/open-source community, or fade into irrelevance as everybody switches to a fork. Time will tell which path MongoDB ultimately takes -- and what impact that has on the rest of this new crop of projects trying to pass off proprietary licenses as free ones.

I finally got around to seeing Spider-Man: Into the Spider-Verse.

...actually, I saw it like a month ago, and that's when I wrote this post. But then I got some kind of flu or something and I'm only now just getting around to posting it. But hey, now it's timely, because it is now Academy Award winner for Best Animated Feature Spider-Man: Into the Spider-Verse. Anyway:

I finally got around to seeing Spider-Man: Into the Spider-Verse. And it blew me away.

Mothra on Brontoforumus described it as the best comic-book movie he'd ever seen. When I read that comment, I assumed he meant the best movie based on a comic. Now that I've seen it, I'm thinking he must have meant the movie that best translated the medium of comics onto the screen.

I'm inclined to agree. It does some really cool shit with comic-style layouts (like the new DuckTales opening titles, if they were two hours long). Where movies like Persepolis and Sin City are straight off the page, Spider-Verse adapts the page itself. In a funny way, I think the movie makes a good defense of Ang Lee's Hulk -- because you can watch Spider-Verse and see that this is what Lee was trying to do with those splitscreen tricks. He couldn't quite stick the landing, but I've always thought it was a fascinating approach -- and Spider-Verse takes those ideas and makes them work.

Plus, after 35 years of "Biff! Pow! Comics aren't just for kids anymore!" headlines, it's nice to see a movie that's finally unselfconscious enough to put sound effects up on the screen.

And the plot -- somehow, a movie that's packed with heroes, villains, and parallel dimensions manages to feel lean and tight. I think part of that is that the script (by Phil Lord and Rodney Rothman) knows who to focus on (Miles > Peter > Gwen > the rest; Kingpin > Prowler > Doc Ock > the rest). It also trusts the audience: not only do Lord and Rothman trust that they don't need to explain who Doc Ock is; they trust that the very idea of a bunch of different versions of Spider-Man from parallel universes is a fit premise for a kids' movie.

They're right.

I took my seven-year-old nephew to see it. He didn't have any problem understanding the many-worlds premise. Granted, it's not the first time he's seen a superhero multiverse; both the 2003 and 2012 versions of the Teenage Mutant Ninja Turtles teamed up with the 1987 versions at one time or another. But the point is, this is a kids' movie that treats kids like they're smart.

In my previous post, I shared some memories of my old friend, Alex "Kazz" McDougall, in the wake of his recent death. I will share more about him in this post, and I will open once again by linking to the National Suicide Prevention Lifeline at 1-800-273-8255. If you or a loved one are having suicidal thoughts, please, please call that number.

I wrote a post last week, examining the reasons why I still keep all my old stuff up here on this website -- even the stuff that's regrettable, embarrassing, or offensive. I gave a list of reasons, or maybe excuses, for why I don't just delete it.

Now I know another reason: because a day may come when someone is gone, and this is what we have to remember them by.

Kazz made this:

You do not want it.

That is an MS Paint mashup of a video game reference and an inside joke. As ephemera go, it doesn't get any more ephemeral than that.

And now I look at it and I tear up. Because my friend made it, and I know that he will never make anything else again.

Sometimes you can't know what things will matter. The silliest, most inconsequential thing could mean everything someday.

Kazz was a major contributor to KateStory XIII and XIV (with a few posts to follow in XV and one-offs in XVII and XVIII). Those posts aren't all gold; there's some puerile look-at-me-being-edgy stuff in there. (Not as much as XII with its Hitler and bestiality jokes, but up there.) But some of them are. He gave us a new hero in hardboiled detective Gok Tinnik. He fleshed out Janey's backstory. And, when it all started to get too overwrought, he blew the whole thing up with magic pirates.

Kazz made things. He wrote, he drew, he made videos. I'd like to hang on to those memories, those things that my friend did -- or, at least, I'd like to hang on to some of them.

I can't recommend looking at the recent videos on his YouTube channel. They are videos of a man who is not well, a man who I can scarcely recognize. They are not the way I want to remember my friend.

But here's the oldest video in his feed, a video from happier times, from 2006, a time when YouTube was young -- and, god damn, I can't look at it without thinking "so were we":

That's Kazz. Kazz the goofball; Kazz the oddball. Kazz just as I remember him.

His videos, his pictures, his writing -- these have become a precious, all-too-finite resource. I'd like to find more of them, and share more of them. I've got some old hard drives to go through, some old threads on fossilized.brontoforum.us, and we'll see if I can coax archive.org into giving up any gems from the old Pyoko days.

These mementos -- they will never be the man. The man is gone. Those of us who knew him are shattered. We will each do the best we can to pick up the pieces, in our own way. My way is to be a packrat, to save everything, to try and look back to the old days for comfort. My way is to remember.

And I will never forget him. He was one-of-a-kind.

I knew a guy named Alex McDougall. But everyone just called him Kazz. Even when we met him in person.

If you knew Kazz too -- and, if you're reading this blog, there's a good chance you did -- then you know what this post is going to be about.

Kazz struggled with substance abuse and mental illness. And last weekend he took his own life.

I'm heartbroken. If you knew Kazz, I'm sure you are too.

So the first thing I'm going to do is talk about the National Suicide Prevention Lifeline. If you have suicidal thoughts, please call 1-800-273-8255 and get help. I don't know who you are out there reading this right now. I just know that Kazz was somebody special, that the world was a better place with him in it, and whoever you are, there are people who feel the same way about you. Hell, there are total strangers, people who have never even met you, who feel that way about you, and they're on the other end of that phone call.

Pass that along to anybody who you think needs to hear it.

And now I'm going to talk about Kazz.

I'd known Kazz since 2002, a time when people still used messageboards, and "Internet celebrity" meant guys like Scott Sharkey. Sharkey had a community built around him, in the #finalfight IRC channel; one of the admins there, who went by Terra in those days and goes by Maou in these ones, started a messageboard at boards.pyoko.org.

Kazz signed up in the early days. He posted a GIF called Man Gun. It was a bipedal horse, holding a gun that fired men instead of bullets. I believe the gun said "MAN GUN" on the side.

He started a thread called "Pretend It's a Restaurant" (subtitle: "Pretending is fun!").

We didn't know what to make of this guy at first. He wasn't always funny. But he was always weird. Off-kilter.

In time, he and I became friends. Though anyone who remembers those days will tell you that sometimes, we had a funny way of showing it.

Kazz and I fought, a lot, over trivial nonsense that I mostly don't even remember. We were a couple of opinionated, egotistical guys in our early twenties, and we pushed each other's buttons -- sometimes by accident, and sometimes on purpose. We weren't always friendly -- but we were always friends. When push came to shove, we had each other's backs. We gave each other plenty of shit, but if anyone else gave one of us shit, the other one would come to his defense.

We'd joke about it, too; about how we were always at loggerheads. Remember when The Colbert Report first started, and there was a recurring segment with the On-Notice Board? There was a fan site at the time that allowed you to make your own On-Notice Board. Here are a couple of iterations of mine:

  • Sega, You're On Notice
  • Cardboard, You're On Notice
    Erin knows what she did.

Anyway, we outgrew all that nonsense by our mid-twenties.

In fact, I'm pretty sure I remember our last fight. Not the fight itself; I have no idea what it was about. But how it ended.

It was 2007. I don't remember the particular details; we were mad at each other about some damn thing or another again. Arc, who was the guy in charge of the Pyoko boards at the time, said he'd had enough, and laid down the law: we were no longer allowed to speak to each other, or even mention each other, or he would ban us.

To this day I don't know if that was administrative overreach or a deft bit of psychology. But it wasn't long before Kazz was IMing me with, essentially, "Can you believe this shit? Who does Arc think he is?"

Arc united us -- against him. We never fought again.

Anyway, that rule went by the wayside when Sharkey quit the Pyoko boards and started a new messageboard (then called the Worst Forums Ever, now called Brontoforumus). He kicked it off with this banner:

Hail the Heroes of the Revolution!

That's Sharkey on the left, me in the middle, and Kazz on the right.

I'd like to say that Sharkey chose the two of us because we were such valued leaders in the community, but the truth is, as best I recall, he chose us because we'd posted recent photos that made good reference for the whole Communist propaganda poster motif he was going for: Kazz with his head raised, looking at something off in the distance, and me with facial hair of the sort every Communist propaganda poster needs. (Kazz and I did end up being pretty much the two guys running WFE for awhile after that, though.)

We all met once, the three of us, Sharkey and Kazz and me. It was in the summer of 2004; a bunch of the Pyoko gang gathered in San Diego.

The most memorable moment of that trip -- to me, anyway -- is that Kazz kicked a beer can into the back of my head.

I told the story on the Pyoko boards at the time, and maybe someday I'll be able to find that post on archive.org. In the meantime, here's how I remember it fourteen years later:

We'd been looking for a karaoke bar -- Terra's idea -- and had utterly failed to find one. We were walking through the parking lot of a non-karaoke bar, and I heard my friend Jon (not a member of the Pyoko boards, but a San Diego native we'd invited along) call out "Thad, look out!"

I didn't have time to turn my head before a half-empty can of Keystone collided with it.

I turned around and tried to read the riot act to whoever had done that -- my exact words were "What the fuck is wrong with you people?" -- but you can only have so much success chewing somebody out when you're trying not to laugh. It was funny, God damn it, and I knew it.

Kazz later explained that he'd seen the half-empty beer can on the ground and had the bright idea that he would kick it up into the air and it would get beer on everyone. He had not, of course, meant to kick it into the back of my head; there's no way he could have done that on purpose.

I referenced that event in the fifteenth (and, it's probably fair to say fourteen years later, final) installment of The Mighty Trinity, which ends with Kazz showing up to kick a beer can into a monster's head.

Kazz showing up to kick a beer can into a monster's head
Monster art shamelessly cribbed from Mike and Laura Allred's Madman.
I chose the monster in part because of its name, Thad Reno.

Kazz himself did not contribute anything to that particular story, except the stick figure body that I affixed his head to. It was part of a cartoon he drew called "Meat Man", after he ate chili that was too spicy for him.

I'm pretty sure I've got the full Meat Man drawing saved somewhere, but I haven't been able to find it yet. I think I'm going to need to do some excavation in some old hard drives. I want to save whatever I can of my friend's work.

I think that's a topic for next time. I think I've rambled enough for one post -- but I've still got more to say about Kazz.

I had always hoped that he would come out of all this okay, and someday we would see each other again and I would buy him a Coke and we would laugh about the old days -- the good times, the bad times, the what-the-hell-were-we-thinking times.

Sometimes, life deals you a soul-crushing disappointment. Knowing that Kazz will never get the chance to sit down and laugh about the old days, not with me and not with anyone else -- it's a hard, hard thing to take.

There's a line from Watership Down that's been bouncing through my head: "My heart has joined the Thousand, for my friend stopped running today."

I don't know if Kazz was a Watership Down fan. I do, however, know that he was a Flight of the Conchords fan, and so if he were with us today, he'd probably respond with, "Women love that sensitive nautical shit."

Goodbye, old friend.

I've been listening to Jeremy Parish's interview with Robert Woodhead, the co-creator of Wizardry. It's a great interview and recommended.

I think about Wizardry sometimes. I first played it on the Mac.

If you pull up the original Wizardry on archive.org, or if you go looking for screenshots, here's the kind of thing you can expect to see:

Wizardry for Mac with lineart dungeon graphics
Via Hardcore Gaming 101, which has a great comparison of the various editions of the game.

You can get more detailed maze graphics by maximizing the window, but at 512x342 that comes at the cost of having to move other windows on top of each other to fit:

Wizardry for Mac with detailed dungeon graphics
I took this screenshot myself.

Of course, if you want to get fancy, you can try emulating a later version of MacOS with a higher resolution, and then you'll have plenty of room. Like these madmen here:

At any rate, I've gone back and tried some of the other versions of Wizardry, but I still think the Mac version is the best, with its GUI and its more detailed graphics. It's not perfect -- look how small the maze window is, even at its larger size; and why does the Castle window need to be visible when you're in the maze? -- but the game is well-suited for a point-and-click, drag-and-drop interface.

The first five Wizardry games aren't currently sold for modern systems, but GOG and Steam both sell Wizardry 6 bundled with DOSbox. So why not sell the Mac versions of the earlier games and bundle them with Mini vMac? I guess I'm not sure what the legality is of distributing old versions of the MacOS; they might need a license from Apple in addition to getting one from whatever company owns Wizardry these days.

I've also often wondered why nobody's ever remade the original Wizardry for modern computers, taking the Mac version as a base and adding quality-of-life improvements. The closest thing I've ever seen is a Japanese remake of the first three games called Wizardry: Llylgamyn Saga that was released for Windows (as well as PlayStation and Saturn) in 1998.

Wizardry: Llylgamyn Saga for Windows
Via Hardcore Gaming 101

Llylgamyn Saga is not quite what I'm talking about; I tried it a few years back and my impression was that it was a Windows port of a console game and its interface felt like it. It simply didn't handle as smoothly with a mouse as the Mac version.

What I'd like to see? Remake the original game. Use touchscreen devices as the primary platform. Copy Etrian Odyssey's mechanic of using the touchscreen to map the dungeon as you go, the way we had to use graph paper in the old days.

Etrian Odyssey Untold 2
Etrian Odyssey Untold 2
Via Jeremy Parish -- him again! -- at USgamer

Using half a phone screen wouldn't be so different from EO using the DS/3DS touchscreen. The biggest immediate hurdle I can think of is fat fingers: Etrian Odyssey is designed for a stylus; drawing with a finger would mean the grid squares would have to be larger. Pinch-to-zoom would be a good idea, or just a toggle to zoom the map in or out. Build to accommodate different resolutions; there's no reason a tablet user should be stuck with a map that's sized for a phone. Of course you could hide the map during combat, menu navigation, in town -- anywhere where it's not necessary. Use a point-and-click, drag-and-drop interface similar to the Mac version; when you go into town, you can drag-and-drop characters between the active party and the reserves.

Add some modern quality-of-life improvements, too. Obviously the weapons shop should behave like it would in a modern RPG: compare a highlighted weapon to the weapon a character currently has equipped. (If it'll fit onscreen, show how it compares to the weapons every character has equipped.)

And allow users to toggle the oldschool rules. Let them play with original inscrutable spell names, or with simple, plain-English ones. Allow them to disable characters aging on a class change, or the possibility of a teleport spell going wrong and permakilling the entire party. Hell, allow a mode where players can navigate through the maps they've made and point to the square they want to teleport to, or even set waypoints so they don't have to do that every time. Maybe even allow them the option of seeing monsters, treasure chests, and other points of interest before walking into them.

Once you've rebuilt the first game in this new engine, it wouldn't be hard to do the second and third. 4-7 would require more work but would be possible. Probably not 8, as it abandons the grid format in favor of free movement.

Hell, open it up. Since I'm dreaming anyway, I might as well say open-source the whole thing -- but failing that, at least release a level editor.

Maybe the best way to go about this would be for a fan group to start by creating a game that's Wizardry-like but noninfringing -- similar D&D-style rules, similar generic fantasy races, classes, and monsters, but different maps, spells, enemy behaviors, etc. -- and then, once they've released a finished game, make an offer to whoever it is who owns the Wizardry copyrights these days to port the original games to the new engine.

A man can dream.

Yesterday I told the story of this site's tagline -- previously Now Works on Phones! and now Uncle Thad's Propaganda Bubble.

Then it occurred to me that it's been awhile since I told the story of the text that appears right above it -- the story of why this site is called corporate-sellout.com.

The year was, as best I can recall, 2001. It was my first year in college. I was chatting online with an old friend from high school, who was attending a different school and was in her second year. She told me that, after spending her first year undeclared, she'd finally decided on a major: English.

I was taken aback by this: what kind of a job can you get with an English major? As far as I was concerned, the purpose of a degree was to get a good job and make good money. I told my friend, with the certainty of an 18-year-old college freshman, that she was making a mistake. That I love writing too, but I'd made a pragmatic choice instead and chosen a degree in computer science -- which would surely lead to a six-figure income someday.

She responded, "It sounds to me like I'm studying to be an artist and you're studying to be a corporate sellout."

I remembered that conversation a few years later, when it came time to finally give this website its own domain name.

And I remembered it in 2013, when I was working as a temp on the web design team at GoDaddy, and I ran into my old friend in the breakroom. She was a supervisor in another department.

English degree, compsci degree -- we'd both wound up working in the same office.

And she was senior to me.

Aside from changing my photo at the top of the homepage, I've also changed the site's tagline.

The previous tagline, "Now works on phones!" was a double entendre (of the non-sexy kind): at the time I wrote it, I had not only just converted the site over to mobile-friendly design, but I was also (briefly) working a temp job where I was setting up a new phone system. Now works on phones, geddit?

The new tagline is Uncle Thad's Propaganda Bubble.

See, the other week, some guy in the Techdirt comments said this to me:

BTW: keep pushing your web-site because proves that you make your own propaganda bubble and only read what agree with

Now, I never would have seen the post at all, thanks to my Hide Techdirt Comments script. But another poster responded to that post and quoted it. So, quick side note: please don't quote the trolls; I've blocked them for a reason, and that reason is that I do not want to see what they are saying.

That aside, though, I kind of loved the "propaganda bubble" comment -- not least because, at the time the troll accused me of using my website as a propaganda bubble, I had written a total of four posts in all of 2018, and all four of them were lengthy, digressive posts about how much I like "Weird Al" Yankovic.

Mandatory Fun album cover
Does this look like propaganda to you?

Now, the troll actually did accidentally stumble onto something resembling a point: I am posting to this blog more these days, and, as I noted last week, that's specifically because I want to spend less time dealing with assholes.

Assholes being the keyword, of course. Not people who disagree with me. I've got no problem engaging with people who disagree with me; I do it all the time. But, much as trolls like to bleat "You're only calling me a troll because I disagree with you!", there is, of course, a difference.

As part of my policy of updating the photo at the top of the homepage at least once a decade, I've updated the photo at the top of the homepage. It's cropped from this one:

Thad, Jim, David

That's me on the left. I grew a beard again. So for those of you who read this site for the Shaving tag and have spent the past nine months awaiting my next shaving post with bated breath, I'm afraid I'm going to have to disappoint you.

I don't usually dress that fancily. I am dressed fancily because I am at a wedding in that photograph. Specifically, Jim's wedding. Jim is the guy in the middle, and David (right) and I went to his wedding a few weeks back.

The three of us went to NAU together. I see David a few times a year, but hadn't seen Jim in years; it was nice to have a chance to catch up. Nice wedding, nice vacation, and his new wife Liz is a lovely person as well.

If you want some idea of the kind of wild party animals the three of us were in college, I leave you with this: when David and I introduced ourselves to Jim's mom, her response was, "Oh. Mystery Science Theater 3000."

I've spent the past week and a half softmodding my Wii U and ripping my library to it.

There are a few reasons for this -- the primary one being that the copy of Breath of the Wild that I bought used worked for about the first ten hours of the game and then quit reading.

Another reason is, it'll be nice to be able to put all my discs in a box somewhere and get some shelf space back.

The guide at wiiu.guide is a great walkthrough for softmodding your Wii U. But there are a few details I had to figure out myself, and I'm going to share them here.

First of all, here's the hardware I used:

A 1TB Western Digital Elements USB3 hard drive. This is excessive; I have 11 games installed on it and they only take up about 90 GB of space. However, I happened to have it lying around unused (I'd bought it for my grandma as a backup drive and discovered, when I went over to her house, that she already had a backup drive), so that's what I went with.

A 64GB Sandisk microSD card with SD adapter.

Here are a few things I discovered along the way:

It's probably a good idea to repartition and reformat the SD card before you get started. I found that mine had a few MB of unpartitioned space at the beginning, and I got an error with the NAND backup program saying it wasn't a FAT32 disk.

Also, make sure the FS type is C. That's FAT32. I used mkdosfs and wound up with 7 (ExFAT).

Something to note about the hard drive: I didn't need the Y-connector that wiiu.guide recommends, but I did need to plug it into one of the USB ports on the back of the console (I went with the top one). When I plugged it into one of the front USB ports, it would frequently hang on long file copies. When I plugged it into the top back port, it worked fine.

Copy all your save data before you rip any games. By this I mean, as soon as you format the hard drive to Wii U format, go into Wii Settings and Data Management, and copy all your save data. (It's safer to copy it than to move it; if you want to delete it from your NAND, wait until you've made sure it works first. A NAND backup and SaveMii backups are probably a good idea too, just to make sure you don't lose anything.)

This is totally counterintuitive, but here's how it works: save data on the NAND works for disc games (and, presumably, games stored on the NAND, though I haven't verified this), but games installed on the hard drive will completely ignore it. If you've got Breath of the Wild installed on your hard drive, and a saved game and a few gigs of updates installed on the NAND, then when you fire up Breath of the Wild it will behave as if it's being run for the first time. It will try to download updates, and start you out at the beginning. If you want a game that's installed on your hard drive to see your updates and your saves, then they have to be stored on the hard drive too, not the NAND.

And, even more counterintuitively, you have to copy the saves first. If you install the game on your hard drive and then copy the save data over, the save data will overwrite the game on the hard drive and you'll have to reinstall it. But if you copy the save data and then install the game, the game won't overwrite the save; the save will still be there and the first time you run the game off the hard drive, all your save data, updates, and DLC will be there, ready to go.

Hope that helps somebody. It would have saved me a lot of extra hours if I'd known that stuff before I started instead of having to figure it out for myself.