taking joy in human unreason Tue, 13 Aug 2019 05:36:53 +0000 en-US hourly 1 Nuremberg: Day 1 (Monday) Wed, 19 Dec 2018 23:26:07 +0000 Continue reading Nuremberg: Day 1 (Monday) ]]> (Note: it’s looking like I’m going to be a day or two behind on each of these. That’s not the worst, I guess.)


  1. Get checked in at the apartment
  2. Get food
  3. Walk around and see some stuff

A pretty chill agenda, brought on by the fatigue of travel and wanting to ease ourselves in a bit.

I teased this in the last post:

A small stand with German instructions for (maybe) how to flatten a wrinkled public transit ticket.
Oh, fuck. How does public transit work?

I wish I had a picture of what Google’s live translation made of that photo, but it was garbage. Something about wrinkles. Translating now based off of that picture reveals that we should have had our train tickets stamped for validation. Oops.

But we made it!

We were too early to fully check in at the apartment, so we made our way there and dropped off our luggage (remember, my luggage was lost/en route). 

Dante sitting in the window seat of a tram in Nuremberg.
Dante and I took a tram after the subway! Please don’t ask how long it took us to be sure of where the big-ass tram station was.


A tower at the city wall.
A few of these towers have been visible on our walks through the city.


A view of the city from near our apartment, showing a cloudy sky, a major road, and some commercial buildings.
A view from near our apartment.

(It’s not really very cold here–mid 30s (F), maybe–for which I’m quite glad. Scarf, coat, and gloves are serving me well, although I wish for my hat in the evenings.) 

Then were right back out in the gorgeous streets of Nürnberg. 

Two pedestrian entrances and a car entrance to the old city.
Two pedestrian entrances and a car entrance to the old city.


The small road between the main Nuremberg wall and the wall against the road.
A view down into the space between the walls of Nuremberg.

Aside: an early thing we noticed about Nuremberg, presumably in part due to the season: there are lots of bakeries/dessert places/stalls at the Christmas market/etc.

The storefront and interior cabinets of a baker of some sort.
Random bakery in Nuremberg.

After dropping off bags, the first order of business was lunch. I was so tired and hungry that I had no eye for all the sweets. Dante wanted a burger, so we stopped by Kuhmuhne Burger Bar, which offered the fanciness I was looking for with the classics Dante wanted.

I didn’t drink, but I was quite curious about the gins on this menu that I hadn’t heard of.

Moorgin aus Kolbermoor certainly sounds German, right? Is there a gin culture here?

So I got a fancy burger. Heads up: as of this writing almost every food picture is partially eaten, because I’m not a food-picture-taker very often in normal life.

A very messy half eaten burger from Kuhmuhne Burger Bar.
Um, can we be glad for a moment that I ordered well done? Yikes.

Apparently the custom here is to eat burgers with a fork a knife, which suited this one very well. I might carry this practice on when I have a messy burger back in the States.

We wandered…

A construction site in Nuremberg
Look, when you work for a construction company, you start to notice sites wherever you go.

And wandered some more…

A promotional photo for a music group called Letz-Zep.
Dante: “Do you think they mean Led Zeppelin?”

And saw lots of cool old buildings…

A narrow street in Nuremberg that's lined with three story buildings.
I love the architecture and the curvature and the stone roads…


A large stone building at the corner of an intersection.
A rather majestic corner building, in my opinion.


An old, stately building on a major thoroughfare in Nuremberg.
I can’t resist an old building on a random street, especially in Nuremberg. Believe it or not, I’m sparing you some.

Eventually, we ended up at the Christmas Market:

A view of the Christmas Market in Nuremberg from just outside.
Our initial view of the Christmas Market. Browsing time!


View down an alley, showing more Christmas Market stalls.
The market fills nooks and crannies of the area.


A view of Schöner Brunnen in the main Nuremberg square.
Schöner Brunnen is a fountain in the main square where the Market is held.


Early evening picture of some Christmas Market stalls.
Now we’re kinda in the Market…

See how dark and dim things were? It was, like, 16:00. The weather has been generally dreary, but sunset is clearly earlier than home.

A row of storefronts in Nuremberg, with focus on the cartoonish decorations above the doors.
Aren’t those little decorations adorbs?


Lit trees and market stalls with a large building (likely a church) in the background.
The backdrop of the (I think) church is just gorgeous.


A large, old building with a string of lights reading "Market der Partnerstadte".
One more entrance to the Market, but look at that gorgeous building!


A tall round/faceted building, possibly part of a church.
Hey, I took pictures of everything today. Don’t expect me to know what these buildings are.


One segment of an old church.
Okay, this is definitely a church. 😀 There will be a lot of pictures of this in various lights.


The belltower of the major church we see a lot of on this trip.
The belltower of the church we’ll pass by… a lot. It’s very noisy.


A statue of Albrecht Dürer in Nuremberg.
Aaayy, this dude is kinda a big deal around here. Statue, house, restaurant.

We after our little Market perimeter walk, we headed to the apartment. Our host was wonderful and had put up with my uncertain arrival time (courtesy of luggage shenanigans), our early arrival time, our inability to open German doors, and my phone sending double messages in AirBnb.

A partially eaten cookie in the palm of my hand.
My host bakes! Linzer is sold in pie shape at the farmers market in Charlotte. The cookie form is tasty.

That night was spent in the apartment, relaxing until my luggage arrived. Bad news for this blog, though: I left the power cable to my Surface at home. Being on a phone makes these much more difficult to put together. WordPress… ain’t serving me perfectly well. 

Teaser for Day 2:

The long hallway of a former monastery that is incorporated into the Nuremberg National Museum.
How do you feel about monasteries? Because I think they’re pretty cool in this context.

Nuremberg: Day 0 (Travel) Tue, 18 Dec 2018 08:40:18 +0000 Continue reading Nuremberg: Day 0 (Travel) ]]> Travel day was only slightly Home Alone-esque. I got most of the way to the airport before realizing I didn’t have my passport. Luckily, it’s a 15-20 minute drive, but we only had a bit over an hour once we got through security.

…I like being at airports early. Sue me. Better to chill at the gate than chill at home and have to do the backpack run through the airport.

Anyway, the new (?) United wing of the Charlotte-Douglas airport has added some cool digital mural art that we ogled:

The flights themselves were pretty easy. Charlotte to DC ran late, DC to Zurich was smooth. Dante’s joy at being on a plane as large as the trans-Atlantic one was adorable.

I’m not immune to that joy, but my mind is definitely more on the logistics (especially since Dulles is boring and cramped): is there anything I should grab from my case before it’s checked? Do I really want to drink more water on this flight? The layover in Zurich is short–can I get the gate info yet to see how much we’ll need to hustle? I don’t know any German and Dante is less inclined to be… urgent/focused/assertive than I am. How long will it take for us to find our shared stride?

I’d planned to sleep the entirety of the DC to Zurich flight, and in fact took a prescription sleeping pill to do just that. Unfortunately, I got woken up twice to be asked about shitty airplane food and goddamn ice-cream, and missed the window of this drug’s best effectiveness. Monday is going to be a little rough if I’m working off of 2.5 hours of drugged sleep. I don’t have to drive, but there’s a lot to juggle.

So I’m writing the bulk of this over the middle of the ocean, half hoping that a little rant will help me clear my mind enough to go back to sleep. 😇 Welcome to my burning-eyed internal monologue.

A view of the wing, sky, and the map view on the screen on the back of the seat as we approach Zurich.
Approaching Zurich. No, it’s not my artsiest photo, but I wasn’t in the window seat. ^_^

The flight from Zurich to Nuremberg was easy and short.

Planes around us as we park in Zurich (I think).
Planes around us as we park in Zurich (I think).

We got our passports stamped in Zurich, not in Nuremberg, but we did go through a “nothing to declare” tunnel upon arrival in Nuremberg… Honestly, I don’t understand customs stuff enough to remember/know why I didn’t get stamped in Nuremberg. Or, since I got stamped in Zurich, why I don’t have a stamp from Munich since we stopped there on the way to Russia in 2014.

Maybe it’s country by country, but I like collecting stamps. Is this how Pokémon players feel?

Anywho. They made me check my bag in DC, and said bag didn’t make it to Nuremberg.

Sad times. Unwashed times. Worried times.

Dante Avery standing in front of two German billboards in the Nuremberg airport.
Waiting for my bag with Dante in Nuremberg.

The lost and found person was nice, and the whole process seemed routine without seeming like they didn’t give a fuck. And! when my luggage arrived on the next flight from Zurich–turns out my layover there was probably just too short–they even delivered it to my apartment!

Do they do that in the US? I was worried I’d have to get back out to the airport to pick it up.

So by the end of day 1 (which happened while waiting for said luggage), I have clothes and toiletries and other home comforts.

Preview of day 1:

A small stand with German instructions for (maybe) how to flatten a wrinkled public transit ticket.
Oh, fuck. How does public transit work?

]]> 1
Nuremberg: Day -1 Sun, 16 Dec 2018 06:25:55 +0000 ]]> Dante and I are flying out to Nuremberg for Christmas in about 13 hours! I’m ready for it, but today (Saturday) was shenanigans:

  1. Swapping out my cable modem caused over an hour of downtime with multiple customer service calls.
  2. United Airlines removed a segment of my return flight with no notification, meaning we would have gotten back to Newark on Christmas Eve with no way to get to Charlotte.
  3. United’s carry-on bag policy is one inch smaller in width than my (new!) bag. I don’t really mind checking a bag (it’ll be free), but I worked hard to not overpack and be carry-on only, dammit!

In far cooler news: I’m going to Germany for Christmas. It’s Dante’s first time leaving the country, and my first time in Germany. I’m so excited. It’s 2018, and I’m excitedly printing directions Just. In. Case.

I have a plan for getting photos and updates out on this trip: photos will be compiled here daily with whatever notes and thoughts I have. I don’t promise anything extensive in terms of reflections, since I’ll want to be more in the moment with Dante, but I do want to circulate photos, which I largely failed to do in my previous travels. 
Travel videos will be posted over on, then embedded here in my daily posts.

So! Follow me here via RSSMastodonFacebook, or the blog’s ActivityPub stream (this is new to me, but searching for on Mastodon brought it up). 

Wish me fun and good luck!

Migrating G Suite to Gmail Mon, 12 Nov 2018 02:10:58 +0000 Continue reading Migrating G Suite to Gmail ]]>

Have Google Home and a G Suite account and wish your calendar was accessible? Good luck waiting for Google (2+ years) or messing around with external services to bridge the gap. 

An alternative is to switch back to Gmail and get it to send/receive using your personalized domain. Ugh. Unfortunately, Google seems to be sticking to the idea that G Suite is now for businesses, not personal use, so there are a few things G Suite users are being denied.

I have a Google Apps for Domains account (now G Suite) for, and have for years. A lot of stuff to tied to it–OAuth, Hangouts history, voice personalization, keyboard personalization, etc. I wanted to move as much as I could to my (even older) gmail account.

I really, really liked Christopher Hamilton’s “Migrate G Suite account to a Personal Google Account“, and it got me 85% of the way to completion. Definitely follow that. There are some places where things were different for me or I found solutions that original author didn’t. This post is an extension of Hamilton’s, not a replacement.


The original article mentions going away for a couple of hours while email imported. Eight years of not-pruned-enough email took a couple of days, so beware. Start the import early if you have tens of thousands of emails, and work on all the other parts of the conversion while it’s happening.

Also, clean up your damn email as it’s migrating into Gmail. Just delete all that shit under “Promotions”–you can’t use a 2015 coupon from your local nursery anymore.

DNS/Domain registration

This domain isn’t registered or hosted through Google Domains, so this step from the guide didn’t line up. Instead, my hosting provider has MX records for G Suite. Once all emails have finished importing to your Gmail account and you’re ready to flip the switch, reset your MX records and email hosting to defaults with your hosting provider (presumably that they host your email), and forward all emails to your Gmail address.

Chrome settings

Bookmarks are easy (although I moved my bookmarks to a self-hosted Shaarli instance when I switched to Brave on my phone), but I couldn’t find a way to migrate history, extensions, etc. I had about 65 tabs open, and I just went one by one and closed ’em or moved them into my new Chrome profile that syncs to the Gmail address. Bai, settings.

I store very few passwords in Chrome–mostly those for stuff that logs me out approximately every 10 seconds anyway (*looks at*). Everything goes into 1Password, including sites using OAuth. I continue to recommend Nathan’s excellent piece, “On Digital Identity, Technology Dependents, and Death“, although I’d do things a little differently these days with 1Password’s online service.


One of my biggest concerns was whether people could IM me at my “good” email address, and the answer is “yes”.

Unfortunately, if they already had a conversation with my “good” address, they can’t start a new one that reaches my Gmail account. Even if they archive the old one, a new one goes to the old G Suite account. Hangouts also doesn’t seem to be updating the email address on that old account, so no one is getting the clever joke in it.

Le sigh. I love Hangouts. I was also really bummed to not be able to migrate my history smoothly, as Chats can’t be forwarded like emails. I used Google Takeouts to get a JSON download of my Hangouts chats (500 MB of text!), but I’m not sure what I want to do with it.

It’s not very immediately readable/searchable, so I’m toying with tools like hangouts-reader to get a different format. I may very well write a command line parser to side-step the issue of browser memory. 

In short, Hangouts is something of a trash fire. This and Google Play are the primary reasons I even need to stay logged in as the G Suite user.

YouTube channel

You can, if you wish, download and re-upload all your videos. You’d lose view counts, URLs, comments, etc. 

Or you can follow a merry path to change the ownership of your channel. Assuming you’re a normal casual YouTube user rather than someone who knows that “Brand Accounts” are even a thing, follow links from that support page to create a Brand Account, move your channel to it, then transfer ownership to your Gmail account. I then migrated the channel to my Gmail account directly, but you could also just keep the Brand Account and enjoy the flexibility it provides. (I was just sick of having so many things with the same profile image floating around.)

It turns out that subscriptions are tied to your channel, not your account, so my 235 subscriptions followed along like little ducklings, although I lost statuses of what I had watched. (This was an open question on the original article.) 

Google Fit

Nope. Couldn’t find a way to do it. I just let my Gmail create a Fit account, then shifted all my app connections to point to the new account. MyFitnessPal and my scale app have the most important information anyway. (Also, can we talk about this new design that makes it near-impossible to have a damn step goal?!)

Google Play, Google Books

Nope. Can’t migrate any of it. Anything that might be considered a “purchase”–even if it’s free or you uploaded it, in the case of a book–is pretty locked down. I understand the security aspect of that, but I’m still sad. I have an export of my book notes/marks anyway.


In case you aren’t sure what “OAuth” is, it’s when you log in using the “Sign in with Google” or “Sign in with Facebook” buttons instead of a username and password. It’s a great way to avoid being on the list of folks with exposed passwords, since you don’t give every rando web developer a password. It’s unfortunate when you decide that Facebook is the devil or that you need to change Google accounts.

In addition to the original article’s note to check the “connected applications” list, also leverage your third party password manager of choice for anything you’ve marked as using OAuth instead of an actual password.

Lastly, if you keep your G Suite account open with a changed email address (e.g., to make your main email address available, OAuth connections on that G Suite account still work. You’ll just login to Google with that fake address. You probably have to keep the G Suite account around for Google Play anyway, so it’s not the end of the world.

A Note on Google Takeout

A suggestion you’ll see all over the place is to use Google Takeout — that sounds great, but a lot of those exports can’t be re-imported. That’s not a migration, that’s an archive, and they even call it that. If you’re willing to go into a hunt for a conversion tool (like I mentioned for Hangouts), then feel free, but don’t get your hopes up about anything Google-provided.

Did I miss anything?

I think the original article plus this one makes for a pretty complete picture, but there are plenty of Google services that I don’t use and probably haven’t heard of.

Eight years of G Suite entrenchment is tough to work through, so don’t take this on casually, folks.

]]> 2
2017 Gardening Round Up Tue, 20 Mar 2018 20:00:24 +0000 Continue reading 2017 Gardening Round Up ]]> Huh… How have I not posted on my recent gardening work at all? In fact, I haven’t posted about gardening since 2011, which is, like, forever ago and very different from what I’m doing now. Here’s a little insight into what I did last year, and I’ll do a follow-up on how I’m kicking off 2018.

Early spring 2017 Mammillaria zeilmanniana, flowering.
Early spring 2017 Mammillaria zeilmanniana, flowering.

Last year, I expanded from the single saguaro I mentioned in 2011 (who has been through some shit, I tell you) to a pretty sweet cactus/succulent garden for a newbie. Anything I bought directly was targeted to be able to handle USDA Zone 7 winter living at least–I have some great books to help with this–but I ended up with a bunch of stuff straight out of Mexico and Arizona that need much more coddling.

The season went well!

  • My first loss was a cactus that died to a fungus it probably had before I got it (the autopsy is graphically documented on cactiguide).
  • I had to perform surgery on my saguaro to remove some rot.
  • One of my pricklies suffered a bit of rot during hurricane season, but recovered.
  • I lost a little one, maybe due to rot? at the end of the season.
  • I lost one just a few weeks ago to mealy bugs or something that got in as a result of them (I haven’t autopsied it yet).

Out of 25 or so plants of interest, that ain’t bad.

It might sound strange, but the fact that my first loss was due to something that wasn’t my fault kept me from abandoning the garden. Everyone, everyone says that noobs will overwater their cacti and kill them. And yeah, I did eventually struggle with that.

But if my first death had been a cactus I carefully put in no organic soil whatsoever for moisture control and photographed meticulously to check for issues and did a ton of research on before even purchasing… I would have been really bummed. What else could I have done, if I had already done the best I could? With no experience to draw on yet, I wouldn’t have known what factors to change. The fungus was a good way for the first to go.

Opuntia phaeacantha "Dark Knight", early 2017 season.
Opuntia phaeacantha “Dark Knight”, early 2017 season.

I took a lot of pictures. With the slow-growing nature of cacti, the surprisingly fast growth of the succulents, and the uncertainty of whether any of these plants would live, I wanted to see how they were doing. That helped me catch a lot the above issues early (except for the mealy bugs).

I was sending a rude number of pictures over Google Hangouts, so I started an Instagram account for select photos. (You can now also see those if you follow me on Mastodon.) I have a ton more weekly photos just stored away, though, stored by plant and taken from the same angles so I can check growth.

With the right soil mixture, these plants generally don’t need any attention but once a week, which suits my schedule very well. I’ve churned through more conventional plants this season, too: rosemary, catnip, dill, a false cypress, a few other things probably… all lived and died due to my irregularity in care of them. The cacti and succulents suffered a bit at times, but that mostly meant I probably didn’t get maximum growth out them.

Summer 2017 cactus garden additions.
Summer 2017 cactus garden additions.

There were a few particularly tricky parts in the year, though:

In late May and June, Charlotte got a total of about 12 inches of rainfall. Phoenix, Arizona gets about 8 inches per year. Twelve inches felt like a deluge even as someone living here. Except for the prickly pears, my cacti are planted in pure pumice (no soil/organics) due to the quantity of rainfall we get here, but all that rain meant I wasn’t adding fertilizer (needed for pumice-only growing), so growth stagnated and I worried about rot constantly.

Early fall brought a hurricane pretty close to Charlotte, NC, and the winds were violent enough that I needed to bring all the little ones in, and the rain heavy enough that I needed to bring anything that could get waterlogged indoors. That was a mess.

My house, taken over by my garden.

Gollum Jade cutting
One of the original gollum jade cuttings I received in spring 2017.

As winter approached, I needed to get them all somewhere stable. My research suggests that all my cacti and many/most/all? of the succulents want to be dry in the winter. The cacti want no water.

For the plants I bought directly that were Zone 3-7, I bought a cold frame, put some flat stones under it, and set all  those plants in there. The temperature wasn’t hugely raised by the cold frame except on sunny says, but they were kept dry.

The rest… came indoors. Gregory was a champ, because this was just a few weeks after the hysterectomy, so I couldn’t lift even the medium-sized pots. From early November until just this past weekend, I had about 15 plants inside on a coffee table right under one of the two windows in my apartment. All the succulents had to come indoors, and several cacti.

Gollum Jade Early Spring 2018
Gollum Jade, early spring 2018 after a loooong winter indoors.

Luckily, my cats were pretty disinterested in them, because they’re all poisonous to them.

Despite the fact that “Zone 7” doesn’t sound far off from “Zone 9” (e.g., Phoenix, AZ), our last frost is traditionally late March/early April, I think. Hell, we just got snow last week (mid-March), even though it didn’t stick. So my most fragile cacti are still indoors, even though I’ve finally kicked the succulents outside.

With those outside, my winter impulse buys incorporated, and some new stuff about to be shipped to me (some storefronts wait until your zone is ready for planting), it’s time to kick off 2018. Plans, details, and pictures up next.

If you want to see my day-to-day pictures, Instagram or Mastodon are the ways to go.

Ye Olde Tentacles – “The Majesty of Colors” Remastered Fri, 02 Mar 2018 06:13:46 +0000 Continue reading Ye Olde Tentacles – “The Majesty of Colors” Remastered ]]> You would think that with all the sites I run, the podcast, and my day job as a web developer that I wouldn’t get worked up about things like game releases, but… yeah.

So first, the deets. We’ve been working on remastering Greg’s 2008 Flash game “(I Fell in Love With) The Majesty of Colors” for a while now—since 2016. (See our post “Crashing and Burning on Multiple Projects” for the gist of why a 450 hr project can take two people over a year.)

…I kinda like it. ^_^ I won’t forget the first time I played it on my Surface and used my finger to drag down a balloon. It felt tangible in a way that using a mouse to play the Flash game didn’t. Regardless of anything else about this effort, I’m convinced we did right by the game and by players in what we developed.

I’m also very stressed about it. In my 44-hours-after-launch bourbon-fueled relaxation, you’re going to learn a bit of why.

Greg gives their take on this on their blog, but charging money for a short game requires some… internal fortitude. It was something we decided early on, then kinda forgot about, then were faced with stating to the world (at times person by person by person…) “Yes, we’re charging money for a game you will finish in less than an hour. And it’s more than $0.99.”

It’s been a while since I’ve written on this blog at length about my current thoughts and philosophies, but if you follow me on social media or chill with me in meatspace, this will probably not be a surprising sentiment to hear from me: fuck capitalism and fuck the dissonance and internal churn one suffers when asking for money for a service or a good.

It arises from a godawful tangle of ethical fantasizing and economic ignorance (“Well, geez, what would an ethical economy even be?”) and performative guilt (“Hey, sorry folks, I know it’s just a game haha… ha. “) and actual guilt (“Well, if I have a day job, do I really need…?”).

So there’s the money aspect. I don’t have any damn answers. I’ve considered getting an MBA both for the very practical knowledge of how running a business in a capitalist society works and for the knowledge of the systems of economics, which I know aren’t simple, even as I chant “fuck capitalism”. But MBAs are so entrenched in that system that I’m not sure schools can even be bothered to teach it with a critical eye.

The second thing that’s very stressful about releasing this game into the wild is how truly released it is. In the last ~8 years of web development, I rarely actually deploy a site manually, and I rarely can’t fix a mistake within a couple of hours. A website is right at my fingertips, on a server I or my company controls. I might have to wait for an automated build to run or for a manager to approve it, but those are 10-30 minutes at most.

It’s funny to think of my panic about a AWS SSL issue on Granny Squares that took me a couple of hours to work through a few weeks ago when it literally takes a minimum of 12+ hours to build, deploy, and get a new iOS build approved and out into the hands of players… hoping they upgrade promptly.

Y’all. We launched with a silent (to the user) error. A little null reference happening on every frame in some scenarios that we missed due to reasons that have already been thoroughly captured and analyzed in a retrospective, thank you, but were causing Sentry to log about 1,000 errors per player on a given playthrough. (I’m so, so, sorry, Sentry folks. We love you.)

We launched with it because we didn’t have time to make it through another review cycle with Steam or Apple when we found it. Users weren’t impacted. We’d announced the date. It was over a year later than we thought it would be. This thing had to go.

The next night—after I’d spent 4 hours on a deployment at work, mind you—we regression tested the hell of out the fix (lesson learned) and went live.

…Which meant that Steam went live. …And then Android. But iOS wasn’t done building/deploying, so that finished overnight and was then sent for review. was delayed because we wanted to sign our Mac code properly. By about midday (so over 12 hours later), all platforms had the update available.

This isn’t (only) to whine about mobile platforms, but about the fact that even 12 hours after that I can’t guarantee that everyone is running 1.2.1-59.

That’s stressful. Turns out that even someone who can let a web app languish for years without updates still wants an iron grip on release processes. Damn.

There’s a lot of joy out there about this game, and it’s heartwarming to experience it. I actually teared up when I saw that we were the final game Konstantinos posted on Warp Door today before moving on from games journalism entirely. Like… damn.

As a relative newbie to the game dev industry (especially among the Flash game crowd), it feels like everyone around me has already mastered the practice of having thick skin regarding player feedback. I don’t mean criticism like “Maybe the time for games like this has passed. Let’s have a discussion about eras and shit.”

I mean, for example, “Your game is ugly”. Like… well. Hrm. Okay.

The way we’re taught to process feedback like that is to find a way to not respect the person’s opinion in general so that we don’t need to care about that feedback. “Well, you don’t understand aesthetics.” or “What do you know about game design anyway?” or “You’re a right-winger, so I question your general taste.”

That flies in the face of a lot of things I believe in, both as an advocate for user experiences and as an advocate for being actively compassionate. (I say that, but I do engage in that behavior in some arenas! It’s not cool.)

Maybe I’ll end up being our March topic for Audacious Compassion,  but I will find a way to not feel like the happy responses need to comfort me about the displeased responses.

It just might take a few days… and I might forget it all before we next release a game.

(Tonight’s bourbons were Evan Williams 1783 and Knob Creek Rye. In sequence, not mixed—I’m not a monster.)

]]> 1
Long-awaited Granny Squares Design Going Live Tue, 17 Oct 2017 19:24:54 +0000 Continue reading Long-awaited Granny Squares Design Going Live ]]> Years, folks. Years. That weird fabric texture background is finally going away.

Ever since I’ve thrown myself full-tilt at Future Proof Games, I’ve let my older side projects run as they are with no updates from me unless something was catastrophically wrong.

A lot has changed on the web since Granny Square Colors got a major update from me, though: tablets and smartphones are even more popular among the GSC user base, Internet Explorer isn’t the worst thing to develop for anymore, and I’m a way better architect and coder than I was a handful of years ago.

I’ve been collecting user requests and my own desires for the site/app for all these years, though, despite my outward neglect of the site. These are all sorted into tidy little releases and scoped out moderately well (i.e., I generally know what I want each feature to do and look like).

The first of these sets ended up being a huge effort by virtue of how long it’s been since my last update of the site: the backend framework and all libraries need a major upgrade, then the new design needs to be applied.

Techie folks will know how bad it is when I say this roll-out will be an almost entirely manual process instead of simply leveraging the nice automation I have built out for normal updates.

Anyway, it’s doable and I will do it, but the site will go down for the duration of the upgrade. I’ll do it the weekend of October 20-22, 2017. There’ll be a maintenance page up, and I can be reached on Mastodon (yup, that’s a thing I’m doing) or Twitter with any questions or concerns.

Audacious Compassion: a Podcast About… That Wed, 20 Sep 2017 19:00:23 +0000 Continue reading Audacious Compassion: a Podcast About… That ]]> Did y’all know I’m the co-host of a podcast?

Audacious Compassion” is a monthly podcast I record with MacGregor in which we take listener questions about ways they’re having trouble being compassionate in everyday life. Much like in our game design, we hope to enable and inspire not just general compassion, but compassion when it’s hard, when it takes audacity to enact.

Topics have included a co-parent being demanding about parenting when they aren’t around, dealing with Islamophobic colleagues, and times when someone seems to be trying to provoke you into a argument.

We’ve been doing it since August 2016, but we’re struggling to get new prompts from users. I don’t know if our marketing is just insufficient or if the podcast isn’t very good. I’ll be sad if it’s the latter, but would welcome the feedback!

If you haven’t listened to it yet, give it a go! If you like the concept, submit your woes to (anonymously, if you like) and find us on Twitter and Facebook and help spread the word.

(“Two posts in one month?!” you ask. Don’t get sick of me yet. I’ll try to pace myself without disappearing entirely for 10 months.)

(Besides, if you feel abandoned, imagine how my Animal Crossing: New Leaf characters feel. Every single one of those jerks chastised me.)

My Alien Baby Tue, 19 Sep 2017 02:14:12 +0000 Continue reading My Alien Baby ]]> Bet you never thought you’d read “my” and “baby” in the same sentence unless a plant or a cat was involved, huh?

Well, this ain’t a baby I want, either.

Content warning: below the cut is medical and biological talk, including descriptions of physical pain (but no pictures). Also, NSFW language, which honestly shouldn’t be a surprise around here.

If you don’t want to read all this unpleasant stuff, here’s the short version: I’m having a hysterectomy on October 10, and this is a welcome event.

Back in February, I was minding my own business one evening when I had a sudden, massive womb cramp. It persisted for many minutes, which might make it a contraction instead of a cramp; I don’t know.

It was awful. I immediately went lightheaded with dim vision, sweating, and nausea. Beyond the general cramp, it felt like someone was grabbing my cervix and pulling up.

I crawled out of the bathroom and laid on my nicely cold concrete floor until the lightheadedness passed enough for me to check whether my IUD had fallen out. Nope. But my cervix hurt, and folks, that pain is a mindfuck for me.

I got in to see a gynecologist within a few days. Not my gyno, who was unavailable (and soon after left the practice), but a rando who could fit me in ASAP. He said everything seemed fine and had no explanation other than to schedule an ultrasound for a week later.

Fuuuuuuck. My cervix continued to hurt.

The ultrasound a week later revealed a large fibroid. Like… large. They thought it was my uterus initially. It clocked in at a nice 10 cm (slightly bigger than a softball), and in my bathroom episode, it had pushed my IUD down out of place. The IUD had to go, which proved somewhat difficult after over a week of it lodged down in my cervix, but the pain eased up within a couple days of that visit.

In that visit, though, we discussed options for the fibroid. Despite the IUD shove, I hadn’t been showing symptoms of a big fibroid up to that point. I didn’t need another form of birth control, so no hassle there. We discussed some surgical and radiological options (it was already too big for one surgical option) and he suggested a wait-and-see approach for a six month period.

Over the course of those six months, I had four more massive cramp episodes, a few more minor ones, my periods got really heavy, I started staying nauseated, my bladder started being squished, and my tummy kept getting bigger (and getting in the way very uncomfortably).

This doc wasn’t great at providing information or support in the meantime. Weeks to return online messages; responses to phone and digital messages having an “well, obviously” tone to them. I didn’t expect to have a single other major cramp episode—I thought that was due to the IUD. To have multiple? Oof. To ask “OMGWTFHALP?” and get a terse answer of “That’s just degeneration. Take ibu,” is toeing unacceptable.

My ultrasounds in August revealed a 14 cm fibroid that stretched from cervix to navel and could be felt by pressing on my tummy. It was 5.5 times the volume of my uterus.

Fuuuuuuck. This alien baby had to go.

(How big is 14 cm, you ask? Take a look at these fruits, although mine is not really spherical, also having a diameter of 12 cm in another direction.)

This doc—who is now definitely not my gyno of choice—went through the surgical and radiological options again, except this time, I’d done my own research (you best believe I was inspired to research while I was writhing in bed, unable to breathe those four times). This doc was real hesitant on the option I wanted: a hysterectomy. It was the standard “You’re young” and “What if you meet someone later” spiel that has kept me from being able to have a permanent birth control surgery for the last 14 years.

After a lot of back and forth and some too-vaguely answered questions, I come away with another “Don’t give me an answer today. Just think about it,” from this doctor and the news that if I want a hysterectomy, it should be a bikini cut hysterectomy, which has a 6 week recovery time.

That was a big bummer. Robotic methods have such great recovery times, but for a fibroid that size, they can’t pull it through my vagina and it’s a cancer risk to “morcellate” it (shred it and pull it out of small incisions).

(Please do not go search the internet for what a “morcellator” looks like.)

Add to this that things were very hectic and stressful at work, and the idea of a 6 week leave barely 6 months into my new job had me legitimately pausing. But other methods that remove just the fibroid don’t guarantee that I won’t have another growth in the approximately 20 years I have until I hit menopause.

This doctor was decidedly bad at answering basic questions like, “I work a desk job and can work at home. How much leave do I actually need to take?” That’s a basic-ass question. He did suggest, however, that I get a second opinion.

After asking my physiologically similar friends for good gyno recommendations (since I needed a real one anyway), I took my radiology report to a nice, clear, concise doctor who said, “Look. Even if you accepted the cancer risk for a laproscopic hysterectomy, the robots have to be able to see at the navel incision point, and this is just too big. Do you want kids? No? A bikini cut hysterectomy is really the best option.”

Now, I should make clear that I wanted a hysterectomy, and I told her I was leaning that way. I double-checked my research on the flaws of the other methods and got way more complete answers from her than the other doc. She understood what it meant to live alone with pets and take care of them post-surgery, and clearly explained why I couldn’t just hop back into working from home a week after surgery.

After an exam and some blood work to make sure I hadn’t bled away every red blood cell in my body over the last few months, my surgery got scheduled: bright and early on October 10, I go under the knife. It honestly can’t come soon enough—I feel like hot garbage all the time if I’m not on a serious painkiller.

I’m nervous. This is a much more major surgery than the shoulder surgery. Not only am I losing an organ, but it’s open surgery (the shoulder was laproscopic).

I’m also excited. No more pain, no more periods, no more pregnancy concerns, no more fibroids, no more cantaloupe belly. I don’t expect recovery to be easy or painless at all, but I’m keeping my eye on the long-term outcome.

]]> 5
Exploit: Zero Day “Headless Swarm” Landing December 1 Tue, 22 Nov 2016 16:30:23 +0000 Continue reading Exploit: Zero Day “Headless Swarm” Landing December 1 ]]> So we’ve been working on Exploit: Zero Day for a couple of years now, but I haven’t talked nearly enough about it here. It’s a web-based cyberthriller puzzle game where you play as a hacktivist, uncovering and battling against oppression and exploitation.

*innocent whistle* Totally not the sort of game I’d want to make or play, no…

It’s been in closed alpha for a while, but we’re ready to offer a prelude season of paid story: “Headless Swarm”. For details on the plotline and how it relates to the continued free alpha access, check out the announcement blog post over at FPG.

This is… nerve-wracking. This is only the second game I’ve released commercially. This is maybe the 4th or 5th time I’ve tried to interact with the press on a major news push. We’ll also be taking payments directly on Exploit: Zero Day‘s site, so I have worries about the technicalities and accounting aspects of payment processors, sales tax collection and reporting, sufficiently raucous error reporting, etc.

We’ve got this, though. I’ll feel better when we have (hopefully positive) feedback on the “Headless Swarm” story itself. I won’t mind the occasional (!) 03:00 alert or the hours of emails back and forth with the accountant when it’s for something cool I made.

(And what’s cooler than investigating a drone hacking at the prompting of a strange person named Kilroy-sama?)