Baking Bacon

You need a Silpat nonstick cooking mat, a baking tray, an oven and tongs. Turn the oven up to 400, but you don’t need to let it finish preheating; this starts from cold. Silpat goes on the tray, bacon goes on the Silpat and it all goes in the oven for 20 to 25 minutes.

No other interaction, no stirring, no splatter, no mess. Pull out the tray when it’s as crispy as you like; I prefer crispy bacon so I aim for the 25 minute mark, but there’s room for debate here. Pick the bacon up and shake off any excess fat, plate your evenly cooked, perfect-all-the-way-across bacon, done. Cleanup is incredibly easy, just pour the grease out and rinse the Silpat and tray with hot water.

This has really revolutionized my bacon-having experience. You should try it.

Memetic Diversity

On my subway ride home last night two elderly Chinese ladies were sitting across from me having an animated conversation I couldn’t understand a word of, when one of them suddenly ended a sentence with “… like a boss.”

The conversation paused, as the other just lifted her eyebrows and nodded appreciatively.

The moment passed; they started back into it, and I stepped off the train shortly afterwards.

It was beautiful, truly.

Besides The Photo And The Memory

After explaining the death of a neighbor’s cat to Maya, every conversation we have can now get incredibly heavy without the least bit of advance warning.

“Dad, I want eggs for breakfast.”
“Ok, Maya, how do you ask for things?”
“Please can I have eggs for breakfast please?”
“Sure. We can make scrambled eggs.”
“Ok. Dad, are you going to die?”
“Eventually. Hopefully not soon, but eventually everyone dies. That’s why we have to be kind to each other with the time we have.”
“Can I have ketchup?”
“Maya.”
“Please can I have ketchup with breakfast please please?”
“Certainly.”
“Is mom going to die?”

It’s honestly like having a cartoon piano land on your mood four times a day.

Genuflecting To Fools

Guys guys great news: it turns out that panicky superstitious people who deliberately misinterpret their shallow understanding of an incredibly narrow slice of a foreign culture they’re otherwise completely disinterested in aren’t reliable predictors of anything at all ever.

Who saw that coming, right?

I like to imagine that for months now somewhere in the Yucatan peninsula people have been saying “Oh shit, man! The white people’s calendar ends on December 31st!!” and then howling with laughter, because somehow it’s hilarious every time.

Reading Glasses

I’ll level with you: I’m not very good at reading code.

I had an interview the other day that featured the dreaded read-this-code segment that’s inevitable in modernity, and reading somebody else’s Python without context, with a regex or two thrown in for kicks… I know there are people who can do that really well, but man, I’m not one of them.

To try and atone for how that went, I’ve written a thing I’ve been meaning to get done for a while, a kind of high-level analysis tool for Git repositories that will be able to give you some suggestions based on historical commit information. It’s called gitcoach, and it’s over on github if you’re interested.

The idea is that it takes look at a project’s whole commit history to see what files tend to get modified at the same time and then looks at what you’re working on now; if you’re working on some file Foo, gitcoach can tell that hey, historically anyone who’s had to change Foo has also changed Bar 92% of the time, and Baz 80% of the time. So, no guarantees, but I suggest you look at those too.

There’s more you can do with that data, perhaps obviously – the nice thing about the general idea is that whenever I mention it to somebody, they think of some other thing you can do with that data that I hadn’t even considered.

So that’s something.

It’s not a finished product – there’s some known bugs and missing features listed in the README, and some others I’m sure that I don’t see yet. But there it is, and hopefully it will be useful for people trying to find their way around a big or new projects.

Sorry about the regex question, dude.

Coffee Infused Bourbon

I’ve had this in the queue for a while, not sure why it didn’t get put up. Well, here it is.

Get a bottle of a good bourbon. I’m partial to Woodford Reserve, myself, but there’s clearly room for disagreement here. But if I said “good bourbon” and you thought “Wild Turkey” or “Jim Beam”, then good Lord, son. No. Turn off your computer, pack your bags and move out of the fraternity immediately. It’s time. Leave your sweatpants, jerseys and sportball caps behind; they are the things of children, and you know in your heart that you are no longer that child. Today is a new day; go forth, young man, and bro no more.

Once you’ve worked that whole life-change process through and secured the bourbon, get some really good whole-bean coffee.

As above, there’s room for disagreement. And likewise if you thought “Starbucks” then you’re due for a second spiritual-growth vision-quest where you come back knowing the difference between the bouquet of a fine wine and whatever’s left of a burning sneaker after you’ve put it out by pissing on it. You’ll have to work out the specifics there yourself but you get the idea. Just get it done.

Personally, I’m partial to a lightly-roasted north-African coffee; they tend to have a complex, floral flavor to them that I think offsets the rich, buttery taste of Woodford Reserve very nicely. If you’re partial to a bourbon with a brighter or sweeter taste, a Bulleit for example, they’ll pair well with something more robust that’s been roasted mid to dark. Experiment, is my advice; there’s lots here to love, and much science to be done to refine it.

The process is:

  • Measure out a little over half of a cup of coffee beans and a full cup of bourbon.
  • Pour the coffee beans directly back into the bottle, topping the bottle back off from the cup of bourbon.
  • Close the bottle back up and put it in a cool, dark cupboard.
  • Drink the leftover bourbon.

You’ll need to wait at least four or five days for that to properly infuse, maybe as much as a week, and don’t rush it; you’ll only be cheating your newly-grown-up-with-a-refined-palate-that-deserves-better self – but take it from me, you’ll be happy you did.

I Believe These Two Have Never Been Seen In The Same Room

And thus it came to pass that in the last moments of the end times, as the worshippers of the Ancient Ones gazed on His final ascension from the depths, that their minds were broken and spirits shattered in those last moments before they were consumed as great Cthulhu approached them, Gangnam style.

Solidarity For A Few Minutes If Everyone’s OK With That Maybe I Guess

Just to set the mood, here’s a bit Matt Taibbi wrote about the ability of the American left get themselves organized, specifically with respect to the anti-war protests in 2007:

“The post-sixties dogma that everyone’s viewpoint is legitimate, everyone‘s choice about anything (lifestyle, gender, ethnicity, even class) is valid, that’s now so totally ingrained that at every single meeting, every time some yutz gets up and starts rambling about anything, no matter how ridiculous, no one ever tells him to shut the fuck up. Next thing you know, you’ve got guys on stilts wearing mime makeup and Cat-in-the-Hat striped top-hats leading a half-million people at an anti-war rally. Why is that guy there? Because no one told him that war is a matter of life and death and that he should leave his fucking stilts at home.”

A week ago, in response to the short-lived and possibly illegal Respect Democracy get-Rob-Ford-reelected site, I put up RespectTheLaw.ca. I publicized it with two tweets, it got a few thousand views and sort of made the rounds, at least as far as the small pond of Toronto-politics-on-Twitter is concerned.

The “Respect Democracy” site was completely obscured – it was difficult, intentionally, to figure out who is behind it or what the information is being collected for. I built Respect The Law with just one breadcrumb in it, one more than none, deliberately put my email address at the top of the source. Links to source material but no other pages, affiliations or policy statements, again deliberately.

It didn’t take long for people, via Twitter and email, to ask me to confirm it was me, which I did. But then a surprising thing happened – I got a lot, indeed quite a lot, of pushback from people asking me what my usage and data retention policies are, and accusing me in pretty stark language of being an enemy of democracy. “You either believe in accountability and transparency, or you don’t” said one poorly-nuanced commenter, they were not alone.

The most interesting thing about this is that all, not some or most but 100%, of the criticism I’ve received for the effort has come from self-described “leftists”. And these weren’t polite requests for information or gentle suggestions, my goodness no: these were repeated assertions that I wasn’t taking data integrity, transparency and accountability seriously, and was consequently a bad person.

Well then.

On the one hand, that is absolutely a legitimate concern. I did not tell anyone who I am, how I intended to use that data, or how it was stored. That’s absolutely true.

On the other hand: honestly, put a fucking sock in it.

I’m a straight-up socialist. Not a liberal or left-leaning, but an actual socialist. We live in one of the richest societies in the world; our schools and libraries should be palaces. Our hospitals should be the envy of the entire planet. Our boulevards and public buildings should be towering edifices of stone and steel that we’ll be proud to pass down to our great-grandchildren along with clean air and clean water, freely and equally accessible to all of us. And I’m increasingly convinced that the reason so many people call themselves “centrists” now is that calling yourself a “leftist” is a license for every unshaven pinhead with a Che shirt you cross paths with to explain to you, in granular, inclusive detail, how you’re doing it wrong.

I suspect I’m going to go back to that myself, if only to save myself the hours in the day. You know what’s way, way more important to me than the “progressive” label? Making some fucking progress. So next time you see somebody trying to move the world a little closer to the way you both think it should be, but you disagree with their approach? Put a lid on it and let them work. The political right by and large gets this, and consequently they can get a lot accomplished. The left, us, well. Not so much.

I’ve added a usage policy page to the site, clearly visible before user data goes in.

Thanks for your feedback.

Fifteen Minutes Of Forever

Well, that certainly took off, didn’t it?

I’ve had some pretty mixed feelings this week; putting a ton of time and effort into a startup that doesn’t take off and then seeing a tiny little side project blow up has had me quietly making Scumbag Internet ragefaces, but I suppose if Internet Fame was going to find me, I’m happy it’s for doing something I’m proud of. Sure beats falling down an escalator on Youtube and then being Youtube Escalator Guy forever.

Here’s a video of the introduction to WindWaker running in Dolphin, with my pronoun patch applied.

So anyway, that Windwaker mod? Huge, and kind of all over the place. The first wave of web coverage started with Hackaday, followed quickly by an unfortunately-titled Ars Technica article before metastasizing to Metafilter, Kotaku, Joystiq, and a bunch of international sites I can almost but not quite read.

One Dutch site declared, “Vader hackt computerspel dochter om van hoofdpersonage vrouw te maken”. I have no idea what that means but if I try to say it in English it reads “Vader hacked computerspells doctor on van hoofed-personage vroom to making”, and how awesome is that? (Update! It’s actually Belgian, my mistake.)

Funny anecdote: I looked all over the place for software that would record from a segment of my screen and capture the audio coming out of my speakers. Quicktime, incomprehensibly, will do video but only record from the microphone or line-in but not audio-out. After trying a bunch of free/trialware that was all garbage, I had one of those embarrassing “self, you’ve been stupid” moments-of-clarity and solved the problem by plugging a male-male headphone cable into both jacks on the Mac. Man, solving software problems with hardware: so gauche.

Dear Quicktime devs: that’s right, I’ve added a missing feature to your software with a copper wire. “Plaatsvervangende schaamte“, speaking of awesome Dutch words, roughly means “transposed shame”; embarrassment you’re feeling on behalf of somebody too oblivious to feel it themselves. I’m feeling plaatsvervangende schaamte right now, and I’m looking at you.

So, a couple of general points, mostly random notes or observations I’ve made in the last week and a half or so.

  • First and foremost: thanks for the positive press and lots of public and private messages of support. There’s been quite a bit of interest in this, and I’ve taken those opportunities to to talk about how women are treated by the video game industry and gamer culture, and how I think things need to change. I doubt I’ll get a podium like this one very often, and I’m glad I feel like I’ve done the right thing with it.
  • If you want to try it out but all that stuff about hashes and patches in the original post was offputting, one commenter has got a thing that will make it much easier for you, for which I’m grateful. Thanks, Daniel!
  • Boy, trying to do anything progressive on the ‘net sure brings out the cranks, doesn’t it? I suppose there’s always going to be somebody out there with the time to tell you you suck, saying “FAIL” and fantasizing about murdering your family while yelling at you to google Ron Paul, especially if you’ve got the temerity to suggest that women should have an equal voice in the world and maybe aren’t property. Brendan Behan once said that “Critics are like eunuchs in a harem: they know how it’s done, they’ve seen it done every day, but they’re unable to do it themselves”, and while I don’t agree with that every day, that sentence has definitely been rattling around my head for the last two weeks.

    But the ‘net’s usual cadre of reactionary neanderthals aside, a number of white dudes have suggested that this was somehow unnecessary because there are plenty of strong female role models in video games, citing Samus Aran and Lara Croft, and leaving me shaking my head. Truly, those people haven’t been paying attention or can’t read, two problems that may be reinforcing each other; neither of those characters are in games suitable for a child, and both of them have been horribly mistreated in the most recent editions of their franchise, for the most patronizing, misogynist reasons imaginable. So dudes, while you’re making a strong argument there, it’s not at all the one you think you’re making.

    In any case: there were fewer death threats than I expected, but not none. Way to stay in character, purse-dogs of the Internet.

  • Etherpad – and presumably any collaborative text editor, but specifically Etherpad – is so much better than doing interviews over the phone. A bit slower, a bit clunkier if you’re not a touch-typist maybe, but being able to actually have both sides of the interview collaborate, be able to walk away for a few moments without breaking anything, and having something you both have a record of and can cut and paste? So good, and outweighing the alternatives by quite a bit.
  • Even if it still has tremendous reach we all suspect old media is doomed, right? Well, funny story about that, you can sort of tell how doomed various segments of the media are by how they try to get in touch with you. I was interviewed by a couple of people, and how people got in touch with me was informative:
    • Lukas Blakk at Geek Feminism found me on IRC and proposed doing the interview in Etherpad right away. Ok, you’ve got me. I’m in.
    • A number of people who found the article scrolled down to the Contact page, and found me through that. That’s cool, that works; when Skype got a little choppy we could switch to Etherpad, and it worked out well.
    • A smaller number of people – some independent journalists, some larger media organizations – googled me, found Bespoke I/O and contacted me through that; some of those people used Skype or otherwise on voice recordings of their interviews, which is OK even if it seems like a lot of retyping.
    • Nobody’s tried to fax me yet, but two people saw the article and then looked me up in the phone book and left a message on my land line. Doomed, guys. Doooooooooooooooooomed.
  • We all kind of know URL shorteners are bullshit, but you really don’t find out just how bad they are for small shops and the Web in general until you’re trying to learn things from your referrer logs. No joke, URL shorteners are a straight-up theft of knowledge. In fact, I’m wondering if being able to hoard all that redirect info for themselves is the specific reason that Twitter has decided to tell their entire ecosystem to go die in a fire. As an aside, it is such a shame to watch them blow another opportunity – “Become Infrastructure” – that most startups would cut off an arm for, but hey, that’s Twitter. Maybe everything that new guy learned at MySpace will be able to help them hahaha *sob*.
  • It seems a little churlish to complain about media rights, given the nature of the project, but my Flickr feed is flagged “All Rights Reserved”. Among larger media outlets NBC News, Der Spiegel, Huffington Post, Buzz60 and the Toronto Star were noteworthy for actually asking for reprint permission, as were a handful of smaller blogs. Precisely zero of the big-name techblogs – Ars Technica, Kotaku, Jezebel, Joystiq, any of them – bothered to ask.
  • Oh, Today Show… closing out with “Oh, the things a Pop will do for his princess”, really? Go say that in an empty room; listen to the echo. That’s the sound of your being part of the problem.
  • Nobody cares about Google+. For real; I have evidence. Ever heard of Plurk? Yeah, neither have I, and maybe this is some sort of unexpected sampling bias, but Plurk’s numbers destroyed Google+ as far as my referrer logs are concerned. Google actually does run a vibrant, engaging and competitive social network, but it’s called Google Reader.

A lot of people have asked me if I’m going to do this again with some other game, and I started last week saying that it depended on what my daughter wanted and which way her interests went. The amount of pushback I got for it though, the threats and hate mail, have certainly helped me make up my mind.

Definitely, yes.

Flip All The Pronouns

On A Certain Island

Maya and I have been playing through Windwaker together; she likes sailing, scary birds and remembering to be brave, rescuing her little brother and finding out what’s happening to Medli and her dragon boat.

She’s the hero of the story, of course.

It’s annoying and awkward, to put it mildly, having to do gender-translation on the fly when Maya asks me to read what it says on the screen. You can pick your character’s name, of course – I always stick with Link, being a traditionalist – but all of the dialog insists that Link is a boy, and there’s apparently nothing to be done about it.

Well, there wasn’t anything to be done about it, certainly not anything easy, but as you might imagine I’m not having my daughter growing up thinking girls don’t get to be the hero and rescue their little brothers.

This isn’t particularly user-friendly; you’ll need to download the Dolphin emulator and find a Windwaker .GCM, the Gamecube disk image with this SHA-1 hash:

Original: 6b5f06c10d50ebb4099cded88217eb71e5bfbb4a

and then you’ll need to figure out how to use xdelta3 to apply a binary patch to that image.

This patch.

When you’re done the resulting disk image will have the following SHA-1 hash:

Result: 6a480ffd8ecb6c254f65c0eb8e0538f7b30cfaa7

… and all the dialog will now refer to Link as a young woman, rather than as a young man.

I think I’ve gotten this right – this was all done directly on the original disk image with a hex editor, so all the changes needed to be the same byte-for-byte length, in-place. I haven’t had time to play through the whole game to test it yet, and some of the constructions aren’t perfect. I’ve borrowed Donaldson’s “Swordmain” coinage to replace “Swordsman”, for example, and there’s lots of “milady” replacing “my lad” and “master”, because I couldn’t find a better way to rewrite them in exactly the amount of space allotted. If you come up with something better, I’m all ears.

I’m going to audit it shortly, and may update this post to reflect that. For now, though, here you go.

FemLink or you’re doing it wrong.