So I’ve Finished Mass Effect: Andromeda

As much as I enjoyed Maps-Fulla-Icons-Style Open World when BioWare did it for Dragon Age: Inquisition… I might be done with it. Either that or Mass Effect: Andromeda wasn’t the best venue for it, because at the end of the game I’m left feeling a sense of relief.

There was so much game in that game. So many NPCs with so many quests, so many numbers to watch increment and decrement. So many collectibles and beautiful vistas.

Too much.

You land on a planet and the map’s already full of icons. Tasks you haven’t even been told about light up as little white hexagons with inconveniently-small text with poor readability (or I’m old). No signs of where habitation is, or structures, or points of interest, or regional names. Just icons, as far as the eyes can see. I’m happy to have a direction to stretch in to find what I’m after. But giving me all of the quest locations before I get to them… I’m thinking that was a patch job on a design fault where people couldn’t find content unless there was a marker on it.

Even though there’s too much of everything, there’s too little care spent on entire swathes. For instance, if you feel you have to tell players how to skip planet-to-planet animations, maybe that’s a sign of a problem you shouldn’t have shipped?

I didn’t purchase the game until after the 1.10 update hit, which means I was able to skip the worst of the bugs, but my companions would still clip through terrain (intentionally at gravity wells, unintentionally on planet surfaces) and I still haven’t received my trophy for 100% viability on all known worlds (possibly because I hit that milestone before the final fight). And emotions on faces just… aren’t there, most of the time?

A lot of this screams “new engine disease” to me. This was BioWare’s first tangle with Frostbite 3. When you build everything from scratch, you miss the bugs you’d fixed (with hackity hacks and inelegant architectural bypasses, true) years ago. So there are bugs. Audio that doesn’t fire, or pauses for several seconds before firing. Location-based triggers that yell over a character conversation that was honestly more interesting than “We’ve arrived at that place you know we’ve arrived at because we put a notification in the top-right that says you advanced your quest by one quest unit.”

Not all of it is bugs, though. This was an evolution of the Mass Effect design, not a revolution. Open World-ing it… well, that takes care of where to stage the battles and exploration. And the battles and exploration mechanics were fun. I liked the jump-jets, the way enemies kept me on my toes, and even the car (especially on the asteroid. Whee!).

But they haven’t accounted for what to do when your conversation wheel’s empty. And it’s still a conversation wheel. And the “Chose amongst these two imperfect choices” events are still present, mostly unimproved by the “You have three seconds to chose by hitting R2 or not” quick-time-event mechanic.

On the plus side, it was gorgeous. Every direction I looked was another screenshot. The combat was solid (when enemies didn’t become trapped in the scenery). Anything that was big felt absolutely massive. You drive towards this ship in the desert and keep driving… and driving… how big the planet feels. And when find yourselves up against an Architect and ohgod-ohgod-ohgod-… until you realize it’s just a repetitive bullet sponge.

*sigh* what I wouldn’t give for “difficult” to stop meaning “has an order of magnitude more HP”.

All in all, if what you’re after in a game is more Mass Effect, this will scratch that itch satisfactorily. The set-pieces were well-crafted, the worldbuilding quite alright. I’d be happy to see more done in this world.

But maybe something smaller? Give me the trials and tribulations of a young family just out of cryo trying to make it work. Skip a generation and show me what happens with the new crop of core species having grown up knowing only Andromeda and being quite done with caring about what happened in the Milky Way. You can really lean on how Salarians have so many fewer years than even humans.

There are stories to be told here, and games to play. Tell a different one this time, maybe?



Leaving my BlackBerry Z10 for an iPhone SE


Black Friday 2017 was coming around and I was spending it repeating what I’d done many times over the course of the year: looking at smartphones.

My wife and I were then using BlackBerry Z10s: those venerable launch devices of the failed* mobile platform BlackBerry 10. These were holdovers from my time as an employee of Research in Motion (aka RIM) eventually renamed BlackBerry Ltd where I worked on the Browser Team from 2008 until 2015.

The Z10 was released in January 2013, which made our phones nearly five years old. This is an eternity for the rapidly-evolving handset hardware business. We were fine with our Z10s, but they were starting to age: batteries drained faster, free storage fell lower, and weird things like “turning off the Wi-Fi for no apparent reason” started happening with ever-increasing prominence, if not frequency.

We were past due for a change.

The BlackBerry Z10 is a small device (by today’s standards) so there were few acceptable choices from the current crop of phones with the correct form factor. Also at this level of concern were security, privacy, and how long it would be sent supporting software updates. The iPhone SE was recommended to me by a dev who sits next to me at my coworking space.

It seemed ideal: excellent support, world-class design, the first platform to get apps, and it kept Google’s data collection to apps instead of bleeding it through the entire phone.
So on Black Friday I bought into That Other Fruit Company at their most affordable pricepoint.

And I hated it.

First off, it had a voicemail indicator that never went away.

Secondly, the mail app showed at most six emails on one screen.

Third, I had to use separate apps to track email, calendar, BlackBerry Messenger, phone calls, SMS.

Fourth, its text-selection capabilities and fine cursor control were horrible.

Fifth, I couldn’t set a non-Safari default browser which meant I was copy-pasting URLs from emails to Firefox multiple times a day. (Something went wrong with the share framework so I couldn’t even “share” the URL to Firefox. Focus worked, though.)

Sixth, there as no way to get my messages and calendar to show on my desktop outside of GMail.

Seventh, and fatally, the WiFi would cut out whenever the screen turned off.

To be fair, the WiFi thing was a hardware fault, the voicemail thing is a problem with my carrier account that they still haven’t resolved, and I was likely going to hate it no matters what it did.

Apple was the enemy for so long I don’t think I could’ve given it a fair shake if the hardware were perfect and my carrier had spent any of its millions of dollars on improving its infrastructure so an empty voice mailbox would read as empty to new phones.

I returned the iPhones, my wife’s untouched. I had given it a week, and it was clear to me that I wasn’t going to be happy with even the smallest and most affordable iDevice.

This was unfair. The thing took amazing photos exactly when I asked it to. Its browser scrolled almost as well as the BlackBerry 10 Browser. It did what it was asked with quiet efficiency.

But it wasn’t as good as it needed to have been to overcome my apparently-still-strong anti-Apple bias. So back they went.

Luckily, there was nothing immediately forcing us to make a decision, so we could ride our Z10s into the dirt if we wanted. My wife expressed that she was going to be unhappy to switch to any new device in equal measure, so it didn’t really matter which one.

Also, she was happy to stick to her tried-and-trusted Z10. She had it configured just the way she liked it.

So that’s the story of my unsuccessful attempt to leave my BlackBerry Z10 for an iPhone SE. May it help you in your search for acceptable personal computing appliances amongst the garbage the resident duopoly have left us.


The Mystery of the Lloydminster McDonald’s

On our way back from a lovely family afternoon out at the local streetcar museum, we hit up a McDonald’s for a quick bit of dinner on our way home. There we found a new promotion:IMG_20171209_185212.jpg

So far so blah.

But then I looked closer:


I’m upgrading my phone shortly, so hopefully you won’t have to suffer such poor-quality images in the future. But for now, allow me to transcribe:

“Not valid with any other offer. At participating McDonald’s restaurants in Ontario, Quebec, Atlantic Canada, Alberta, Northwest Territories and Lloydminster, SK.”

First: What is Atlantic Canada? I know it’s a colloquial designation for the four Eastern provinces (New Brunswick, Prince Edward Island, Nova Scotia, and Newfoundland and Labrador), but I didn’t expect to see it referenced in legalese at the bottom of promotional copy. Apparently the term is semi-legitimate, as there is an official arm of the federal government called the Atlantic Canada Opportunities Agency/Agence de promotion √©conomique du Canada atlantique. Neat.

Second: Oh good, Quebec gets the promotion, too. Quebec gets left out of many things advertised to the whole of Canada because of stricter laws governing gambling (including sweepstakes. Tim Hortons has to bend over backwards to make Roll Up the Rim To Win work there) and advertising (especially to children).

Third: What did Manitoba, Saskatchewan, British Columbia, and the other two territories (Yukon and Nunavut) do to be left out? Nunavut seems obvious: there are no McDonald’s restaurants there. But there’s at least two golden arches in Whitehorse, and scads in Manitoba, Saskatchewan, and BC. Must be some sort of legal something.

And that brings us to the titular mystery: Why, of all of Saskatchewan, is Lloydminster spared? Is it the one city where there’s competition? Is it to do with that urban legend about an older burger restaurant in Western Canada someplace that was called McDonald’s first? Is it because it’s licensed under a special food services employer contract that….


It’s because Lloydminster Saskatchewan is here:


It straddles the border between the provinces Alberta and Saskatchewan. Alberta has the McDonald’s promotion. Saskatachewan doesn’t. Lloydminster, AB has two McDonald’s restaurants. Lloydminster, SK has one. It would be unfair to deny the Albertan restaurants the promotion, and unfair to exclude the Saskatechewanian restaurant. So what is McDonald’s to do?

They have to add a rider on their promotion to all corners of the Great White North that proclaims that there is one city (barely) in Saskatchewan in which you can partake of a five dollar meal deal.


Another Stay of Execution for Firefox Users on Windows XP


Firefox users who are on Windows XP now have until August 28, 2018 to upgrade their machines. In the grand Internet tradition I will explore this by pretending someone is asking me questions.


The last Firefox release supporting Windows XP is Firefox ESR 52. Previously Firefox ESR 52 was set to end-of-life on or around May of 2018 after the next ESR, Firefox ESR 59, had been released and stabilized. Now, with an email to the Enterprise, Dev Platform, Firefox Dev, and Mobile Firefox Dev mailing lists, :Sylvestre has announced that the next ESR will be Firefox ESR 60, which extends the Firefox ESR 52 end-of-life to August 28, 2018.

No, not “Why did it change,” Why should anyone still care about Windows XP? Hasn’t it been out-of-service for a decade or something?

Not quite a decade, but the last release of Windows XP was over nine years ago, and even Microsoft’s extended support tapped out nearly four years ago.

But as to why we should care… well, Windows XP is still a large-ish portion of the Firefox user base. I don’t have public numbers in front of me, but you can see the effect the Windows XP Firefox population numbers had on the Firefox Hardware Report when we diverted them to ESR this past March. At that time they were nearly 8.5% of all Firefox users. That was more than all versions of Mac Firefox users.

Also, it’s possible that these users may be some of the most vulnerable of the Internet’s users. They deserve our thought.

Oh, okay, fine. If they matter so much, why aren’t we supporting them forever?

As you can see from the same Firefox Hardware Report, the number of Windows XP Firefox users was in steady decline. At some point our desire and capability to support this population of users can no longer match up with our desire to ship the best experience to the most users.

Given the slope of the decline in the weeks leading up to when we migrated Windows XP Firefox users to Firefox ESR, we ought to be getting pretty close to zero. We hate to remove support from any users, but there was a real cost to supporting Windows XP.

For instance, the time between the ESR branch being cut and the first Windows XP-breaking change was a mere six days. And it wasn’t on purpose, we were just fixing something somewhere in Gecko in a way that Windows XP didn’t like.

So who are we going to drop support for next?

I don’t know of any plans to drop support for any Operating Systems in the near future. I expect we’ll drop support for older compilers in our usual manner, but not OSs.

That pretty much sums it up.

If you have any questions about Firefox ESR 60, please check out the Firefox ESR FAQ.


Data Science is Hard: What’s in a Dashboard

The data is fake, don’t get excited.

Firefox Quantum is here! Please do give it a go. We have been working really hard on it for quite some time, now. We’re very proud of what we’ve achieved.

To show Mozillians how the release is progressing, and show off a little about what cool things we can learn from the data Telemetry collects, we’ve built a few internal dashboards. The Data Team dashboard shows new user count, uptake, usage, install success, pages visited, and session hours (as seen above, with faked data). If you visit one of our Mozilla Offices, you may see it on the big monitors in the common areas.

The dashboard doesn’t look like much: six plots and a little writing. What’s the big deal?

Well, doing things right involved quite a lot more than just one person whipping something together overnight:

1. Meetings for this dashboard started on Hallowe’en, two weeks before launch. Each meeting had between eight and fourteen attendees and ran for its full half-hour allotment each time.

2. In addition there were several one-off meetings: with Comms (internal and external) to make sure we weren’t putting our foot in our mouth, with Data ops to make sure we weren’t depending on datasets that would go down at the wrong moment, with other teams with other dashboards to make sure we weren’t stealing anyone’s thunder, and with SVPs and C-levels to make sure we had a final sign-off.

3. Outside of meetings we spent hours and hours on dashboard design and development, query construction and review, discussion after discussion after discussion…

4. To say nothing of all the bikeshedding.

It’s hard to do things right. It’s hard to do even the simplest things, sometimes. But that’s the job. And Mozilla seems to be pretty good at it.

One last plug: if you want to nudge these graphs a little higher, download and install and use and enjoy the new Firefox Quantum. And maybe encourage others to do the same?


So I’ve Finished I Am Setsuna

Well, my wife did. As such I can’t comment to much on how the game feels with controller in-hand. But I do feel I can comment just fine on its systems and story, setting and sound.

First, is it just me that finds it distracting how close the title is to “I am a satsuma“? Just me? Okay.

I Am Setsuna is a New JRPG in the Old Style released in February of 2016 (which is positively recent compared to the rest of the games I usually play). Being “in the Old Style” means no voiced dialog, a fixed overhead camera, lots of numbers that max out at 99 or 255, and a certain aesthetic. The specific target of this love letter is Chrono Trigger from which I Am Setsuna borrows:

  • A silent protagonist
  • No random encounters on a small overworld
  • Monsters roam on the same screen you fight them on
  • Magic elements
  • Some spell and technique names
  • Some musical riffs
  • Some place and character names

Some of these decisions are homage, some pastiche, and some are mistakes.

The silent protagonist was a mistake. I am used to silent protagonists being used to increase immersion by reducing the number of ways the character might react in a way that disagrees with the role the player thought they were playing (the ‘RP’ in JRPG). However, no matter how silent Half-Life’s Gordon Freeman is, he still has to shoot aliens and rescue civillians and whack headcrabs as the story and mechanics require. Through narrative and mechanics the player can still feel a disconnect from their character.

Gordon Freeman gets around it by doing only what the player would do in his place. I, too, would crack headcrabs with a crowbar if they jumped at me. Chrono from Chrono Trigger gets around it the same way. I, too, would save the world and its timelines from an extraterrestrial and existential threat.

I Am Setsuna cold opens (this is funny because the game is set in a worldwide, never-ending Winter) on your character being exposited at during a tutorial objective where you are paid, handsomely. Then a mysterious man (named “Mysterious Man”) asks you to take a morally-reprehensible job: kill an 18-year-old woman named Setsuna.

Not only do you have no means of refusing the task (even to be immediately overruled in a false choice), due to the protagonist being silent you have no idea if you care.

Role-playing is a two-way street. There’s agency where the player imposes their will on the character, and there’s acting where the character shapes the role the player plays.

In Dragon Age: Origins I can chose to kill or spare a chief antagonist. I have agency to chose. However, when provided the choice I need to consider what actions my character has taken (a feedback loop of my past agency) to ensure I play a consistent role. I act accordingly.

I Am Setsuna just ignores it. It turns out, hours and hours later, that this inciting incident isn’t as central as you originally thought it was… but it seems really important at the beginning. They smash-cut from your assassination order straight to a FFVI mode-7-inspired opening sequence over which the credits roll.

There are plenty of things to like in I Am Setsuna. The Momentum battle system where you get power-ups the longer you stand still and let enemies wail on you is a nice risk/reward balance. The solitary piano music is a setting- and thematically-appropriate sparse and cold choice. The characters are fleshed out and have decent relationships. The areas are remarkably varied for all being snow-bound. The subplots along the way do an excellent job of illustrating the central themes of death, sacrifice, and what is evil.

However none of these come without caveats. The risk/reward Momentum system has an inconsistent and fuzzy timing trigger. The piano background fails to sound bombastic and epic when it shouldn’t have even tried. The characters rely heavily on type and cliche. The areas are populated by varieties of just a handful of monster species. The subplots are often just retreads of more interesting stories told more engagingly by others.

It is a pretty, wonderful, flawed game. I look forward to seeing whether they can tighten things up a bit more with their next effort early next year.