First, I need to be clear: this isn’t about some specific bug. There is no bug being discussed here.
This is about folks who discover something that, to them, is a horrible, horrible problem, and they can’t understand why it’s not fixed immediately.
As you can probably guess, the question above is actually a composite of questions, comments, and rants: every time someone is convinced that they’re dealing with what they consider the Most Important Bug Ever and Microsoft – no, Bill Gates himself – is ignoring them.
Typically, there’s no satisfying the folks who have landed in that extreme position. I often do suggest – and it’s an honest suggestion – that they might be better served by a Mac or Linux solution, because they’re not satisfied with Microsoft and Windows.
However, for those who are interested, I’d like to go over some of the things that factor into the process of deciding which bugs get fixed and why a bug you consider important might not be one of them. And yes, I’ll also discuss why Bill Gates is not only not ignoring you, but probably has no idea that you, or the bug you care about, even exists.
Become a Patron of Ask Leo! and go ad-free!
No excuses
This isn’t about making excuses for Microsoft. They do screw up and miss important things from time to time. More often than not, it’s a case of not clearly understanding the priorities of their users, but even that is no excuse; sometimes, they just get it wrong.
This is more about trying to understand the process and the incredible complexity of the problem, and with that, gain a little bit of an understanding about why a “bug” might not get resolved in a timely fashion.
To me, part of the “no excuses for Microsoft” position is that it applies to any and all vendors. Even though I’ll use “Microsoft” in the discussion below – mostly because that’s where I have experience – the discussion applies equally well if you replace Microsoft with Apple, Mozilla, Google, Intuit, or any of a hundred other software manufacturers.
I don’t want to minimize your experience
I also don’t want to minimize or gloss over the impact of whatever it is that you’re experiencing. The “bug” or problem could indeed have a significant impact on the way that you use your computer every day.
I am taking your experience seriously – as does Microsoft, believe it or not – but I also want to be pragmatic.
Because your experience has such an impact on you, I think it’s important to understand the realistic chances of getting it addressed, and to make sure that the correct culprit is blamed.
Sometimes it’s just not a bug
I’ve been putting the word “bug” in quotes above, because sometimes it truly isn’t a bug at all. Sometimes, it really is the intended behavior.
Just because you don’t like something, doesn’t mean it’s a bug. It may annoy the heck out of you, but that doesn’t mean that it’s wrong or accidental.
Microsoft really does do research to determine the best way for things to work – lots of research, typically referred to as usability studies. They update and refine their products based in large part on the feedback they get from real people, using the proposed changes long before they ever see the light of day in public – and indeed, based on that feedback, many such changes never make it into the product.
But, there’s no pleasing everyone.
If 900 people really like a proposed user interface and 100 don’t, Microsoft will normally choose that which pleases the most. (Actually, they’ll try to get it to be more like 990/10 first, but that’s somewhat beside the point here.) If you’re one of the 100 … well, when it comes to that feature, you’re out of luck.
It’s not a bug; it’s a decision that appeals to the majority of users – a majority of which you, unfortunately, are not a part.
Sometimes it’s just not that important
There are bugs in Windows that I’m certain are well over a decade old and will never be fixed.
Why?
Because the number of people impacted by the bug, or the severity of the bug’s impact, is so small, it’s not important enough to fix, when compared with making other progress on the product.
So, let’s say that you’ve found 1,000 people who have experienced what you believe is this incredibly important bug.
The number of Windows installations exceeded 1 billion machines in 2014 (it’s actually like something over 90% of 1.5 billion desktop or laptop computers).
You have 0.0001% of Windows users experiencing what you consider to be an important problem.
Now even the fact that 1000 is actually a teeny, tiny fraction of Windows users isn’t enough to get the bug ignored – it’s just one factor.
The phrase “data loss” is another.
One of the classifications assigned to problem reports is the concept of “data loss” – meaning, “does this particular bug cause the user to lose data?” That could be as simple as a crash that causes you to lose what you were working on just now, or some other kind of failure that unexpectedly wipes out all or part of the data stored on your hard disk.
Data loss matters.
If a part of the screen isn’t re-drawn as it should be, or a mouse pointer is lost, or an information window closes unexpectedly, those are all significantly less serious than something that causes a user to actually lose data.
So even if there are thousands of people experiencing the same problem, that might be tiny compared to all of the users who are not. If the problem is mostly non-destructive, you can see that it might not get as highly prioritized as other issues – including even future product and new feature development.
Sometimes it’s not Microsoft’s bug
One of Windows’ most compelling features is its ability to be extended by third-party hardware vendors. Today’s version of Windows is able to work with hardware that hasn’t even been dreamed of yet, simply because when that hardware finally does come into existence, the manufacturer is able to write software (aka drivers) that integrate with Windows to bring support for that new device.
The key phrase there? “The manufacturer is able to write software … that integrates with Windows”.
Microsoft didn’t write, and isn’t necessarily responsible for every bit of software used by Windows to run your machine.
What that means is that some of the bugs (unfortunately, it’s occasionally “many” of the bugs) that users perceive as being in Windows aren’t in Windows at all. Those bugs are in the software that’s been added to Windows by other vendors. (And even there it can be tricky to understand who’s responsible, because hardware drivers can cause symptoms in seemingly unrelated areas – for example, display driver problems can often affect mouse functionality.)
Microsoft can absolutely pass along reports of issues with third-party software, but they don’t control how, when, or even if those bugs get resolved. They, like you, are at the mercy of those third party software authors.
This isn’t limited to drivers, by the way. There are third-party applications and add-ons that are often perceived as part of Windows, even though they are not. Their failure is often reported as a failure in a Windows component, when in fact, the fault truly does lie elsewhere.
Fixing bugs is risky and expensive
Unfortunately, fixing a bug – even a simple one – is neither simple or cheap.
Because of the incredible, unimaginable complexity of the systems that we take for granted these days, the ramifications of even the smallest bug fix are often difficult to completely predict. It’s not at all uncommon for a bug fix here to break something else over there.
Hence, a good software vendor tests even the smallest fix thoroughly.
What that means in Microsoft’s case is that all of Windows needs to be run through a complete testing cycle to make sure that nothing was broken by the fix.
Imagine what it means to test every single feature in Windows. Now imagine doing that for every different edition of Windows (Home, Pro, Ultimate, whatever). Now imagine doing that again for every edition in every language.
Now imagine trying to do all of that quickly.
The upshot is that the cost of even the simplest of fixes is surprisingly high; thus, the decision to fix a specific bug is not a simple one.
And yet, all software has bugs
There’s an old software engineering maxim that says a bug found by the customer is 10 times as expensive as one found by pre-ship testing; a bug found by pre-ship testing is 10 times as expensive as a bug found by the engineer writing the software; and a bug found by the engineer is 10 times as expensive as a bug found in the design before the software is even written.
In other words, the earlier that bugs are found, the less expensive they are to fix.
So, you can imagine that there’s a lot of pressure to fix bugs as early in the development cycle as possible. Indeed, there are untold thousands upon thousands of bugs that get fixed before the product is ever released.
And yet, some make it through regardless.
That is the nature of software development. There’s absolutely no such thing as bug-free software. Period.
It’s also the nature of the incredible complexity of the system. There are days when I’m amazed that it works at all. :-)
We want it perfect, and we want it now
All software vendors are in a no-win situation.
We complain about software that takes forever to arrive, and we complain about software that has bugs.
In the real world, those two things are directly at odds with each other.
It takes time and discipline to write and test software so it has as few bugs as possible. Conversely, software that is rushed to market because people are clamoring for it is likely to have more than the average number of bugs.
We can’t have it both ways.
Every software release – every software release, I don’t care who it’s from – is a compromise. I can pretty much guarantee you that there are engineers pleading for just a few more days to fix a few more bugs, and that there are marketing and sales people complaining that every day longer is resulting in massive market share or revenue loss.
The reality is somewhere in between. Some releases strike the right balance, but others do not.
Where does that leave you?
I’m not trying to paint a bleak picture where bugs never get fixed – they do, just not all of them.
If you encounter something that isn’t working as you expect, definitely look for solutions, and if you have the ability, report the problem if there are no solutions to be found. There’s a tremendous amount of information and resources available on the internet (of which I hope Ask Leo! can occasionally be one :-) ).
Just don’t get overly frustrated if no fix is forthcoming. And don’t immediately jump to the conclusion that it’s being totally ignored – that’s highly unlikely.
Instead, focus on finding workarounds or ways to avoid the problem. If it really is a bug that is incredibly important and impactful to you, that might even mean switching to software from some other vendor.
Oh, and about Bill…
It always causes me to scratch my head when people rail against Bill Gates for perceived issues with Microsoft or its products. I’m not sure what it is about Microsoft that even today causes people to blame Bill personally for all its faults and failings.
While he’s still on the board, Bill hasn’t worked directly at Microsoft since sometime in 2008.
And even when he did, he wasn’t writing code, and he most certainly wasn’t examining and approving or rejecting individual bug fixes in products, or making specific product design decisions.
In other words, he was never personally responsible for whatever feature it is that you don’t like, or the bug you’ve encountered.
So these days, your ire at him is completely wasted, unless you happen to object to what he’s doing with his philanthropic foundation.
Do this
Subscribe to Confident Computing! Less frustration and more confidence, solutions, answers, and tips in your inbox every week.
I'll see you there!
Suggesting people move to Mac or Linux is just a delaying tactic – eventually, they will be in this exact same “Why is Steve Jobs/Linus Torvalds/whoever ignoring this INCREDIBLY IMPORTANT problem?” situation.
Your statement about there being no bug-free software is completely true – and it should be emphasized that it is just as true for the alternative operating systems you suggest.
*P.S. I know Steve Jobs DEFINITELY doesn’t work at Apple any more, but I’ve nevertheless heard people blame him for modern design choices – the iPhone 6 bending, the camera not being flush with the frame, etc.
A couple of years ago, I gave in to my brother’s incessant bragging that Apple computers were the only ones worth SERIOUS consideration. I bit the “bullet”, scraped up enough to buy three PCs, & bought my first Apple from Best Buy. When my hard drive crashed, 6-8 months down the road (something I’d never experienced that early in the lifespans of any of my PCs), I discovered that the nearest Apple store was 40-50 miles away. I mentioned I’d backed up to an external hard drive (Thanks, Leo!) & they told me to bring it along, so they could install my backup in my new hard drive. I arrived at my 1st- ever Apple store to find it jam-packed with millennials & a noise level approaching that of a rock concert (I’m 62). Of course, the service area was at the back wall, but there was absolutely nothing to indicate that & no one approached me as I jostled my way back. I was told to add my name to “the list” & they’d announce my turn over the PA. 45 minutes later, I checked my status & was told, “Oh, it looks like we completely overlooked you!” Two hours later, I picked up the computer & external hard drive, drove home, & found out they never touched the backup! I made enough noise that Apple took the computer back & refunded my money, even though I didn’t buy it there. I returned to Best Buy; used my refund to purchase a nicer PC than I otherwise would have PLUS a Google TV, antenna, & service contract; & vowed, “Never again!”
The iron triangle of project management – You have 3 options: Fast, Good, and Cheap, and you can only pick 2. Cheap is usually one of the 2 options picked.
Ah, the bane of systems engineers everywhere. Our bottom line was “Does the software do what it was intended to do?” If no, then we have a problem we need to fix. If yes, then the problem is probably cosmetic. For instance, I despise the Gmail design for Android phones. It looks like something designed by an anime devotee. However, Gmail is still the best email package I’ve found. It does what it was intended to do. While I really would like them to fix the group addressee problem for smartphones as it does it does affect my business communications (Ads, flash sales, new products, etc.), I think I clearly fall into the .0001% of users who want this fix. I just wish they would a) respond to emails, and/or 2) come up with a work around.
This may not be for publication – but I think I did have a piece of software that Bill wrote personally. I had an S-100 bus micro computer with a Basic Interpreter from -yes – Microsoft. This was even before the Radio Shack TRS-80 for which Microsoft’s Basic Interpreter blew the socks off everything else on the market (faster by a factor of 10x I believe.) And of course that was before the IBM-PC and MS-DOS. The S-100 bus software came on a tape cassette. Boy do I wish I had bought Microsoft stock then.
Well, to be fair, Bill did work on software back in the day – it’s how Microsoft started after all. But by the time Windows was around he was busy running the company, not making little design decisions. Trivia: in my early days there I did inherit and work on code that he had written – the Basic Interpreter that was on every IBM PC. All in 8086 assembly.
I have a Toshiba external “I believe 1 terabyte” hard drive that I (I don’t know why I did it) I put in “System Reserve” and consequently lost possession of my external hard drive. I was told that I have to”take possession of it by jumping through loops”. My fault for my self-inflicted wound. I don’t understand why I have to take possession of my own external hard drive. Is there an easier way for me to get back the use of my hard drive? I have tried and tried to find a way to get to use it but I can’t get possession of it. The notice I get tells me I don’t have access to it. Please let me know what I can do about this matter. Exasperated Georgia Maples.
I don’t know what it means to put in “system reserve” so I don’t know exactly what you did – that means I don’t know how to undo it. :-(
I’d start with Disk Manager – perhaps this article: http://ask-leo.com/how_do_i_get_my_attached_drive_to_show_in_windows_explorer.html
Hey Leo, I really like your site and I look forward to your informative newsletters, but just recently I retired my last Windows machine. It wasn’t intentional, but Android and Chrome seduced me away. And yes, I do have a few recurring issues that never seem to get fixed with the Chrome browser especially. I anticipate giving Windows another chance by the end of the year when I will need to buy a gaming computer to use one of the new Virtual Reality products that are supposed to be available by then. While I’m sure that Windows 10 will be hugely better and more stable than the last, like it has been each generation, I’ll count on you to be there for the inevitable issues that will crop up. Thanks for the good work.
Very well expressed, Leo.
I think very few realise the complexities of any of PCs etc.
Many of my non-programming colleagues could not comprehend that in the vast majority of cases, devising Test Strategies for new programs and Updated/Modified programs was a much more brain-stretching procedure, than writing the fundamental programs.
Most helpful article indeed. Due to ISP issues, I have temporarily had to abandon my desktop computer in favor of my tablet, but I certainly have struggled with such issues many, many times while using Windows. Same with Word incidentally, LOL. But if there are many online complaints about an issue, perhaps they could publish a workaround or at least explain that no fix is contemplated or possible, saving users a lot of time, and, perhaps avoiding some negative PR.
Great article Leo!
And thank you for a very kind and considered wording of it.
It’s so easy to get rude when writing. You always avoid that. Thank you.
Interesting that almost 10 years after this original article was written, we can see that Microsoft (and other vendors) have gotten worse, not better. But since we are talking about Microsoft, they have bugs (and I do mean bugs) to this day that were known issues when the article was written.
So the very legitimate question remains. Why doesn’t Microsoft fix their bugs. There really is no excuse to release multiple major releases, dragging the same old known bugs along with every new release. Especially when those bugs are small and relatively easy to fix.
I think the real answer is vendors don’t care about small bugs, unless they think the bug will hurt sales. Their product team is all about new features, and trying to “get ahead” of the competition. So instead of production solid products, they rust out half-baked products before moving onto “the next big thing”. Some of the bugs — at least the big ones — get fixed along the way. But the rest are essentially ignored.