05/04/2017

Developer Appreciation Week: How Work Has Made Me More Understanding of MMO Devs


It's Developer Appreciation Week, and if you don't know what that is, Rav lays it all out in detail here. I've actually been meaning to take part in this for ages, but this time around it has come at a particularly convenient time for me as I've been bouncing around ideas for a post that fits the theme quite well.

You see, in the past year I've really developed an appreciation for the difficulties that MMO devs struggle with in terms of balancing new content with bug fixes, and just generally keeping an MMO running smoothly. This is due to things that I've seen happen at my place of work, even though my job has nothing to do with gaming at all.

You see, I work for an online business that sells opticals (glasses and sunglasses). Seems quite different from running a video game, right? Well yes, in the sense that we do deliver an actual physical product by the end of the day. But our entire image rests on our online presence, and before customers get to actually hold their purchase in their hands, it goes through several steps of electronic processing in our back-end system as well, as stock levels get updated and so on.

Even though that seems a lot more straightforward than managing a whole virtual world, I've been astounded by the amount of work it takes, and just how many things can go wrong. I don't work in tech myself, but we have an open-plan office and my department is right next to IT, so one can't help... overhearing certain things. Not to mention that we do our own share of bug reporting.

For example, our website was originally built something like a decade ago by the guy who started the whole business... and who isn't with the company any longer, so tech has been spending a fair bit of time cleaning up code that only made sense to the founder himself and generally been trying to understand how certain systems were set up. I'm sure that's also true for more than one MMO that's getting long in the tooth by now.

Then there are the constant small bugs. Like that certain page updates lose their header if you hit save first instead of hitting publish right away. Or orders getting stuck at a certain point in processing. Or customers sometimes being told that their payment failed even though it succeeded. Everyone is aware of them, but there just isn't enough time in the day to fix them all, considering how many other things take priority. People have just learned to hit publish right away. Orders getting stuck is bad, but you can always get customer services to manually kick them onto the next stage, and that solves the immediate problem, right? Problems with payments are really bad, but if it only happens occasionally and it's not immediately obvious what the issue is, IT can only waste so much time on randomly fiddling around with attempts to reproduce the problem - again, customer service can patch things up until there is a larger sample size to draw conclusions from.

These are things I always think of now when I encounter a long-standing and annoying bug in SWTOR. Is it annoying? Yes. But is it actually game-breaking for a sufficiently large number of people? Probably not... And I'd like to imagine that somewhere at Bioware, someone is also aware of that bug and wishes they had time to fix it or knew what exactly caused it to at least make fixing it faster and easier. But in a business with limited resources that has to prioritise things we can't always get what we want.

You'd think that if you "just" have a website to sell things, you shouldn't need that much tech to keep it running, right? But no, we too have our equivalents of "content patches", when the business decides that the product pages need redoing to entice more customers into buying or wants to add extra payment options to the checkout. None of these things implement themselves, so these projects constantly vie with attention for things like bug fixes. Until you have those days when something suddenly breaks down completely (e.g. the website doesn't work) and everyone needs to drop what they're doing anyway because that problem needs fixing more urgently than anything else. I imagine that's what things are like at Bioware when a server collapses or a major exploit gets discovered.

Basically, what I've learned in the past year in particular, is that even something that looks relatively straightforward on the surface can hide a multitude of moving parts underneath, which require a lot of maintenance and are in constant danger of breaking. I imagine that this is multiplied tenfold when you're not just dealing with a website and an order system, but with a whole virtual world with dozens of interconnected systems.

I appreciate that the devs at Bioware work hard every day to keep things running while also adding new content to keep us all interested. I firmly believe that they're genuinely trying to do their best, but sometimes there are only so many hours in a day. Just keep up the good work.

7 comments :

  1. I really enjoyed this post, Shin. Everyone who has to wrestle with a retail system will now think of Bioware. Okay, I will, but it's also truth.

    ReplyDelete
  2. As a gamedev myself, this post is filled with so much truth and insight into the process.

    "And I'd like to imagine that somewhere at Bioware, someone is also aware of that bug and wishes they had time to fix it"
    ~ This is so, so, so true. I can almost guarantee that there are many bugs that ARE on a developer's radar, but they couldn't fix because risk, time, etc. You have to ship eventually; there's no waiting for perfect. But I can also guarantee the devs hate shipping bugs and are probably harsher on themselves than many on the internet are about that sort of thing.

    ReplyDelete
  3. A really great article, Shin. I guess as we grow up and experience how businesses work ourselves we get more understanding for why things go as they go in practice rather than how we'd expect them to be in theory. Which is why young people tend to more strongly condemn faults in games, I suspect.

    You did a great job illustrating how those processes actually go!

    ReplyDelete
    Replies
    1. Increased life experience in general is indeed great for developing empathy. But I really hadn't realised how messy IT was until I sat next to them!

      Delete
  4. Something I harp on constantly on the forums, that obvious is different from economically fixable

    ReplyDelete
  5. Managing a website is a lot of work, I handled the webdesign of a Skyrim fansite for two years and there was always something to do. You can't just leave it there forever.

    ReplyDelete