It seems like every five minutes, you come across yet another installer which fails to install certain components, another .NET application that throws up an unhandled or semi-unhandled error message, a web site whose links are broken or whose JavaScript doesn't work with the most recent IE, popular apps and Flash games that freeze on occasion, etc. Time and again you come across programs that, though they work most of the time, you will come across occasional serious errors with them, wherein they are either dead in the water or close to it.

I remember seeing a lot of glitches back in the NES days, but since around the early- to mid-90's, major video games seem to have been mostly free of things like this. I know there are exceptions, but basically unless you are really trying to perform some sort of hack you read about online, you just don't see any issues with them freezing, throwing unhandled exceptions, or doing anything else like that. At worst it tends to be tiny, momentary graphical anomalies that don't really matter.

In other words, major video games seem to be built to a much higher standard in reliability than most other things out there, aside from development software, despite the fact that they tend to be very large and complex pieces of software - often written in C++, no less. You just do not have the same sorts of problems with them that you do with software in other fields.

Why? How? I know this could just be a result of quality control, plus just using programmers who were at the top of their class, but I've grown doubtful of this. To me, it seems like even these measures would not ensure consistently more reliable software in situations in which it should be much less reliable. Are people really just doing their jobs that much better, or is there something more to the picture here (such as a business practice or a development technique that these companies tend to employ)?

I know that this isn't the most scientific question out there, but I still want to make sure I'm not just missing something. Thanks.

  • \$\begingroup\$ You really get this impression? I find bugs, glitches and poorly coded segments in most games I come across. I don't have any statistics but I would say it's just the way errors/glitches get rubbed into your face in browsers, that gives you that impression. On the other hand computer games etc. are a lot more complex and require more skilled developers. Javascript etc. has a way broader audience so it wouldn't surprise me to find a lot of mistakes by less experienced people. \$\endgroup\$
    – user22553
    Dec 5 '13 at 19:53
  • 1
    \$\begingroup\$ Are you specifically looking at console games? If so, being in a closed environment would mitigate a lot of potential for errors. Otherwise I don't agree with your premise that "you just do not have the same sorts of problems" \$\endgroup\$
    – WildWeazel
    Dec 5 '13 at 20:05
  • \$\begingroup\$ How do you qualify "major" video games? Are games major only if they are on consoles or are published by a very large company? I would postulate that console programming has a very high barrier to entry (buying rights to the SDK). Therefore it is more likely a console game comes from a company that has resource to spend on quality testing. This is not a perfect explanation though. \$\endgroup\$
    – user32959
    Dec 5 '13 at 20:08
  • \$\begingroup\$ I don't know about you but I save VERY FREQUENTLY when playing Skyrim on the PS3 because it has a nasty habit of freezing up on me. And that's not the only game. I think your perception of being reliable is wrong. \$\endgroup\$
    – Dunk
    Dec 5 '13 at 20:49
  • \$\begingroup\$ In fact, here's a current discussion on the unreliability of major game titles: reddit.com/r/Games/comments/1s8e16/… \$\endgroup\$
    – WildWeazel
    Dec 6 '13 at 16:36

If console only, you have far less hardware related issues, since your pool of supported devices is minimal. With a PC, every last component can be made by someone else. So the list of potential compatibility issues is near endless. The newer Windows platforms have tried to standardize drivers a bit, but that doesn't really change the overall idea I'm trying to portray.

Another part is due to manpower. A AAA game has multiple programmers with the single job as fixing bugs. Now, granted, there are more hands in the pot and thus more room for minor bugs than if a small indie team is coding, but the indie team won't likely have the same amount of programming resources.

Yet another part is QA. There are some excellent Quality Assurance departments/companies out there that can find bugs for the bug programmers. An indie team isn't going to have this, beyond perhaps a beta test. And sadly, non-QA minded people are generally horrible at feedback that is useful in fixing a bug, or sometimes even finding it. I'd probably say that most non-AAA games, even ones that aren't technically considered indie, fall under poor QA availability.

And last but not least, money. The above parts are dependent on money. Small teams are less likely to have the cash to throw around to buy hardware to test with, experienced bug fixers, and quality testers. Not to mention that their actual core programming skills might be lackluster, depending on the scenario/company.

I suppose I should also mention that many AAA titles don't do a lot of innovation in their designs. I'm not really sure that prevents bugs, but it can definitely feel like the game is more polished when all aspects work in a familiar fashion.


Not the answer you're looking for? Browse other questions tagged .