This could end up being more rambly than normal, so I’ll cut to the chase: there’s a few things I’d like you to do:
- Go to https://miraheze.org
- On the top right, you’ll see a green button with a gift icon labeled “Donate!” Click on it.
- Follow the instructions, and make a modest donation (e.g. $10 is truly appreciated; $20 will probably be appreciated more)
Since most folks that I know haven’t heard of Miraheze (and probably aren’t sure how to pronounce it), I’m not entirely going to blame you for not racing to donate. I might be quietly judging you, but I won’t be blaming you. 😉 Seriously, though, if you’re willing to trust me and donate to Miraheze, you don’t need to read the rest of this.
Why am I doing asking you to donate to Miraheze? Well, it’s a lo-o-o-n-n-ng story, full of tangents. That story goes back to 1994…
election-methods, The Perl Journal, and Debian (1994-2000)
Back in 1994, I became very frustrated with how our election system worked. I participated in the “elections-reform” mailing list hosted by Center for Voting and Democracy (now known as FairVote), and before long (in 1996), I started a mailing list where we could discuss election method alternatives (the election-methods mailing list), and writing software to implement alternative electoral methods. The Perl script that I wrote to implement several Condorcet methods got noticed by Jon Orwant, who had just started publishing the The Perl Journal. Soon, the script and my commentary were published in Volume 1, Issue 3: “Perl, Politics, and Pairwise Voting: Perl as the Activist’s Friend“
I had big plans for the Perl script (and pairwise voting), but the immediate problem I was trying to solve was for the election-methods mailing list. A lot of the back-and-forth discussion on that mailing list was talking about examples of single-winner elections that could go poorly because three or more candidates participated. Manually calculating the result of the examples was hard, so many of us wrote software to make computing the examples simpler. My little script helped achieve some of my big goals; it brought a lot of attention to alternative ways of voting and counting the ballots. Soon members of the election-methods mailing list were working with online communities like the Debian software development community on their method for choosing their project leader (see the February 2000 threads on debian-vote mailing list).
Electorama.com goes live (2003)
A few years later, “blogs” were becoming a big thing, and discussions started moving off of mailing lists and into the comment sections of popular blogs. In 2003, it seemed a blog could channel some of the momentum of the very-active election-methods mailing list for a wider audience. Inspired by sites like Slashdot and Kuro5hin, I created “Electorama!”, and used the site as my election blogging site. Here’s an April 2003 snapshot of electorama.com (courtesy of the Wayback Machine).
Visitors to that April 2003 Electorama snapshot may notice a couple things:
- That top story that day: “If Debian used Instant Runoff…“. A determined reader can read that link, but most others will probably prefer the 2019 restoration of that story.
- The left column included a recent changes feed of the “Voting Systems project” from the nascent Wikipedia project. I was trying to get the incredibly knowledgeable membership of the election-methods list to share their knowledge on Wikipedia. This was more successful than I anticipated…
Electowiki and Electowidget
Two years later (in 2005): sites like Slashdot and Kuro5hin were getting eclipsed by newer social media sites like Digg and Myspace. Old paper encyclopedias like Britannica and World Book were struggling to gain traction online. Encyclopedia Britannica (the most well-established encyclopedia prior to 2005) was in good company with its online struggle; even software juggernaut Microsoft was also struggling with Encarta (their attempt at a digital encyclopedia). Wikipedia was transforming from a niche “encyclopedia that anyone can edit” to a mainstream encyclopedia that anyone can edit, and standards were becoming stricter.
By 2005, members of the election-methods list were tremendously helpful contributing information to Wikipedia, honing articles by prescient thinkers from long ago (like Ramon Llull, Marquis de Condorcet, and Lewis Carroll) and more recent work (that is unquestionably notable) by folks like Maurice Duverger, Kenneth Arrow, and Steven Brams. But they were also furiously documenting contemporary work that arguably wasn’t notable yet, some of which was work by members of the election-methods list. So, in early 2005, longtime Wikipedian Dan Keshet worked with me to set up MediaWiki at wiki.electorama.com, calling it “Electowiki”.
Late in 2005, I started the “Electowidget” project, which modernized my modest Perl script from 1996. I wanted to offer all of these brilliant researchers on the election-methods list a place to collaborate on sophisticated example elections, and to collaboratively analyze real-world elections. Plus, I discovered I really liked working with the MediaWiki community and the software they created.
Electoral reform matures while I orbit MediaWiki (2006-2018)
Over the next few years, many folks from the election-methods list (and elsewhere) were contributing to Electowiki, and some were using Electowidget. I administered Electowiki for the next few years, writing scripts to delete thousands of counterfeit user accounts, and looking for effective tools for spam prevention in an escalating race with site vandals.
I would have many opportunities to volunteer with and work professionally with MediaWiki and the Wikipedia/Wikimedia community over these years. I went to Wikimania 2006 in Cambridge, and in the session I led, we agreed to start the mediawiki-enterprise mailing list.
Shortly after Wikimania, Philip Rosedale convinced me to join Linden Lab (the creators of Second Life) and a few months after I joined, we released the source code for the Second Life client software (the “viewer”). We launched with a public instance of MediaWiki (which is still running today at wiki.secondlife.com). Managing MediaWiki was a small part of my job at Linden Lab, but my hobby of administering and customizing Electowiki meshed well with the fraction of my Second Life job responsibilities involving wiki.secondlife.com. My Electowiki hobby helped me (more or less) keep up with eight upgrades to MediaWiki that were released during my three years at Linden Lab (versions 1.8 to 1.15)
I left Linden late in 2009, and resumed more serious work on Electowidget. Electowidget processed election definitions written in JSON, so I kept refining jsonwidget as a tool for structure. I also became quite interested in working with Wikimedia Foundation, submitting a patch or two and managing Wikimedia’s participation in GSoC 2010. I was hired to help manage the group of engineering staff that became known as “Platform Engineering“.
To stay connected with software development while I was doing management work at Wikimedia Foundation I wrote the JsonData extension for MediaWiki to edit JSON in a controlled way. This built off of my work on jsonwidget, which in turn built on my Electowidget work. My JSON schema handling code from JsonData was incorporated into some of Wikimedia’s data analytics tooling.
The Center for Election Science emerged as an important force. They facilitated interviews with living legends like Kenneth Arrow (before he died in 2017) and Steven Brams. They were able to help Fargo, North Dakota switch to approval voting. In 2019, they’re doing quite well with their current focus on the city of St. Louis, helping activists there get a similar measure on the ballot. A recent poll found a wide majority of St. Louis voters support approval voting.
Electowiki and Miraheze (2018-now)
(…and the move from wiki.electorama.com to electowiki.org)
As I focused more on MediaWiki (and Wikipedia) I found myself less able to keep up with Electowiki. The spamming countermeasures I had put in place were brittle, and made it almost impossible to register for Electowiki (and even made it difficult for me to add new users). In 2016 (when I was still at WMF), I became interested in Markdown better interoperability between MediaWiki and other wikis. It seemed that GitHub-managed static site generators like Jekyll and Hugo might be the future of wikis, with tools like Pandoc to facilitate migration. I was keeping an eye out for a great MediaWiki host, but was becoming skeptical that one existed. I had big plans to completely change the technology powering Electowiki, but it wasn’t entirely my call.
One prospective editor (User:Psephomancy) became impatient enough with my big plans, and decided to migrate the data over to a dedicated MediaWiki host: Miraheze. I was initially a bit alarmed, but I was very pleasantly surprised by Miraheze. Not only did Miraheze have a robust and reasonably simple user signup process, they also offered some of the more complicated MediaWiki extensions like VisualEditor. I really enjoy working with a VisualEditor-enabled MediaWiki. The editing community is starting to gain momentum as well.
My activity in the Miraheze community was noticed, and soon, I found myself in conversations with Miraheze’s User:Owen about the possibility of joining the board of the new UK-based nonprofit named “Miraheze Limited” (formed in November 2019). I had been really impressed with Miraheze over the past year, and I’m eager to help out. At the December 20th board meeting, they formally agreed to invite me to the board. We’re in the process of finalizing things for an effective January 1, 2020 start.
Donating to Miraheze
And that’s why I’m suggesting a donation to Miraheze. Hosting MediaWiki is hard, and these folks are good at it. They frequently update to the latest version, and they don’t charge anyone anything for it. They’ve relied on donations for the past four years for operational expenses. But now, they’re forming a proper non-profit, and they’re putting together a proper board, and working to make this thing sustainable. I’m excited to help them out. And I hope you are too. You don’t need to volunteer for the board or anything, but maybe just put some change in the tip jar. Thanks!