Second-Class Citizens

published: 2019-06-20


Webkinz, eleven years on

April 26, 2008. The birthday party mere days before my eighth birthday. First grade- or maybe second; I can’t keep track of time- girls sitting in my living room upstairs, opening presents, having a good time.

One of them gave me a little blue hippo for some online game I’d never heard of before. And when all the girls left and the dread of writing all those thank-you notes settled into my chest, I sat down with my parents and signed up with the little code in the tag affixed to the hippo’s paw.

Webkinz is a standard game geared for little kids where you can adopt a pet and decorate a house and play shoddy Flash games to earn in-game currency. What separated it from the other dime-a-dozen MMORPGs for kids at the time I joined, however, was the fact that you had to buy a physical stuffed animal in order to receive a code to join, and that you had to keep buying these at least once a year to keep your account alive. If you couldn't afford to buy one in time, or simply forgot, then your account was deactivated and placed in a short waiting period before it was permanently deleted. Because of the forced paywall, the servers could afford to stay open, and so there was only one tier of membership. A few years in, and the company introduced “Deluxe” accounts, which at the time only meant a fancy gold hat you could put on your virtual pet and access to a separate store and a few extra social features. Not that it mattered much to me, since I could play all the games I wanted, and whatever exclusive items I wanted I could scam out of the Deluxe players in the trading rooms with a little bit of effort. Some of those items, like a kimono and a tornado in a pot and a few vehicles, still sit scattered around my inventory and my house to this day.

Somewhere along the way, probably with my transition into middle school, I forgot about the whole place. Desperately sought to make my own online game with my nonexistent coding skills, and failed every time. My stuffed animals got packed away into a storage box when we moved houses, and stayed forgotten. It must have been the summer after I graduated from high school, then, that I remembered that Webkinz existed, and logged in to find that I had been demoted to a free tier.

Oh yeah, there was a free tier! And the “normal” tier was now a standard membership, and Deluxe members still got to strut around with their exclusive items and unwarranted self-importance like they always had. And half of the wallpapers in my house were gone, deleted long after they were “retired” to make space in the shop for the new Deluxe-only items along with most of the items in those rooms. And a good two-thirds of the arcade games I used to spend hours upon hours playing were paywalled, and my privileges to KinzChat Plus, which was the free-for-all typing mode in the social areas instead of stringing together pre-made sentences, were revoked. My house, once a thematic wonderland with a little school and a massive kitchen and bedrooms for each pet sorted by species and theme, was a barren wasteland.

And there were more changes that had happened in my absence. There was a mayor now where once it had been a lawless and free land, a creepy chipmunk lady whose eyes drilled into my soul. The old “Things To Do” menu with its purple tab and eye-blinding golden text was now a grid of icons a la an iPad home screen. The hamster maze section, which was notable for requiring Unity instead of the standard Flash Player that the rest of the site used, had long since been shuttered. Badges for quests littered the left side of the screen. There was always another damn quest to do.

But my pets seemed no worse for the wait, and they had removed the obnoxious logout games that always plagued us children when we needed to quickly exit for whatever our parents were yelling at us to do, so it wasn't all doom and gloom.

Given that I now had my credit card on me, I caved in and bought a year of Deluxe. I put the golden hat on my pet. I booted Ferin Live (because my current distro, Devuan, doesn’t play well with Flash Player) and played all the arcade games I had played as a child and rolled into KinzChat Plus to see who I could scam rare items out of next.

It wasn’t nearly as satisfying as I’d hoped. Everything ran as if I were playing on a potato, despite the fact that I vividly remember everything being fast as hell back when I played on my grandma’s old computer running Windows ME. All my brothers and cousins were still stuck on the free tier, if they could even remember their logins at all. I couldn’t invite anybody over to my house like in days of old, and I couldn’t play the multiplayer arcade games behind a Deluxe paywall with them. I had become the first-class citizen I had resented so harshly as a child.

But 360 days remain in my subscription, since it’s billed yearly, so while my time remains, I’ll probably be working on FOSS clones of the games with what little Python and GB Studio experience I know. Using my privilege of financial freedom for other’s benefit, for no altruistic reason than it makes me feel good inside.

And it'll save me money too, when my subscription runs out.


The fediverse is burning down

Tusky banned Gab! The sky is falling!

In all seriousness, the drama roiling through the fediverse at the time of writing is Gab’s announcement to switch to the Mastodon backend for sustainability purposes and to enable federation. Tusky, one of the popular fediverse apps, decided to take the initiative of removing the in-app capability to sign in to several instances arbitrarily deemed as “white nationalist” havens and rickrolling whose who still attempted to do so. While their intentions are noble- I certainly don’t want to make it easier on hateful identitarians- what gets blocked and what stays available to use in the app was seized by the developer instead of staying in the hands of the instance admins like it has always been before now.

But in both instances, there has been little an individual user can do. The average user doesn't know how to operate Git, or compile an Android app. If their admin defederates from a certain instance, and a significant enough portion of their friends were on said instance, they have little recourse but to jump ship onto another instance with a more lenient federation policy. Or if an instance goes down, whether without warning or with, or if said user gets banned with no opportunity to appeal… If you don’t have your own instance on the fediverse, you’re essentially a second-class citizen. And to get into the first-class requires jumping two walls: the inherent paywall of renting a VPS or buying a Raspberry Pi, and the technical wall of actually installing, configuring, and maintaining their instance software of choice. There are new spam domains and new porn spammers and new harassers every day. Can you put in the time every day to ward them off? Can you put aside the money every month to keep your instance online? Can you keep the users on your instance in the legal white zone?

Tusky’s decision, coupled with Sunbeam City’s implosion after the admin accounced that they were stepping down and that the instance would potentially be shutting down if they couldn’t find a suitable replacement for the administration and ownership, has thrown the fediverse into roil. Either you’re all for setting a precedent and showing future corporations with bully money that it is possible for you to selectively silence others, or you’re full of hatred for minorities and need to die.

It’s the same damn discourse every single damn time! Censorship, censorship, censorship. Instance admins can block each other, drawing party lines, and you better be on the side that has clout behind it, or else you’re cancelled. What are you supposed to do if you’re just a run-of-the-mill user? What if you’re just sharecropping your little patch of online land, chilling with your friends, and then everything goes up in flames because the admin got in a fight with one of these app developers and now you’re on a “cancelled” instance? Telling people to start their own instance is neither viable nor considerate for the aforementioned reasons. And jumping from instance to instance is tiring. Nobody expects a Twitter or a Facebook user to constantly be switching profiles or accounts, getting everyone to refollow them, starting their account over from scratch every time drama flares up…

I was a second-class citizen for a while, jumping from instance to instance as one does, and then I “ascended” to the first class when I set up a Misskey instance about two weeks ago. I even wrote a little tutorial on how to accomplish that, since most of the documentation is in Japanese, and what little has been translated into English is spotty at best if you’re not already well-versed in systems administration. It was, to put it in the simplest of terms, not worth it. There is nobody on the fediverse worth talking to. All the cliques have long since formed, and gods above help you if you ever decide to go against any of their party lines. What kind of person would willingly stay in an environment where they can so easily be painted with the same stroke as legitimate hate groups, and then search engines pick up on this, sear the paint into your skin near forever? At least in pubnixes, you have the opportunity for private resolution before everything blows up public.


What are we to do?

Clearly the server-client model has failed us, for there is no reason why potentially thousands of people should be affected by the whims of one person, and there is especially no reason why anybody should be at the mercy of another just because they do not have the money or the skills to stake out their own little piece of whatever network they’re using. This throws out the fediverse- really, anything on the clearnet, since the server-client model is the very backbone of the modern Internet.

This leaves peer-to-peer services like Freenet, Dat, and ZeroNet. I can’t recommend Freenet since, by design, you don’t have granular control over which files you’re seeding, which means you could be complicit in hosting disgusting materials like child pornography without your knowledge or consent. Dat and ZeroNet, however, let you choose on a site-by-site basis what you want to seed.

Both Dat and ZeroNet are well-suited for hosting static websites, so I have a mirror on both (EDIT 2020-04-07: the Dat mirror is dead, lmao). ZeroNet requires JavaScript to be enabled in the browser, which might be a privacy nightmare for some, but one can go into the data folder for each website and see all the source files for each website, so it’s not that big of a deal if one’s running a sufficiently up-to-date browser. Dat doesn’t require JavaScript, but the Beaker Browser, the easiest way to access the Dat network, doesn’t support extensions last time I checked. (This could be worked around with the Dat extension for Firefox, but it requires some command line trickery to get it to work properly, and you won’t have access to all of Beaker Browser’s features.)

Neither are completely free from paywalls, however. Dat allows you to use an existing domain name to point to a Dat share, which means, if you already have a domain, you don’t have to buy another one. ZeroNet requires you to purchase a special Namecoin domain on the Namecoin blockchain if you want a fancy domain that doesn’t look like spaghetti and you can’t run vanitygen for some reason. And if you want to keep your site seeded when your computer is off, and you don’t have a bunch of friends to help you seed it for free… you’re back to being a second-class citizen. Going the Dat path, you could use Hashbase to seed your website, but that requires registration, and free accounts can only go up to a hundred megabytes of storage. And if Hashbase decides they don’t like your site, they have full freedom to shut it down and stop seeding whatever it is you were hosting. ZeroNet has some user-run proxies that can be used as a seeding peer, most of which disable site deletion on the user side, and the admins don’t seem too interested in pruning sites from all the “this site you are seeding is on a blacklist” messages that popped up when I last used one.

ZeroNet has a few glaring advantages suitable for would-like-to-not-be second-class citizens, though, and one’s that, in case you ever do get your own server, it’s exponentially easier to use it as an extra peer. You download the same bundle as you would use on a computer, rename a plugin directory to enable it, and then pass a few extra command line flags. Dat, on the other hand, requires up-to-date Node.js packages and use of their special process manager. The second is that, if you’re switching machines or distrohopping, taking your ZeroNet data with you is as simple as copying the “ZeroBundle” folder wherever you downloaded and extracted it onto the new computer. Beaker Browser requires that you hunt for its data folder. On Linux, I know it’s in “~/.config/Beaker Browser”, but I have absolutely no idea where it might be hiding on Windows or Mac.

This peer-to-peer strategy can be extrapolated onto other non-website networking things, like Syncthing for files and DecSync for calendars and contacts and RSS, but non-social things are separate issues to be dealt with separately.

Ultimately, it doesn’t matter which one you pick. It doesn’t matter if you even pick one that I haven’t considered! Just, please, leave yourself a backdoor out of the server-client model. Take some initiative for once in your life! If nobody does anything about it, then of course ZeroNet and Dat and all the others are going to seem empty.

Empty and cold and sterile, just like the corporations you were supposed to be fleeing!

This garden is yours to cultivate!


CC BY-NC-SA 4.0 © Vane Vander