I didn’t plan this to be the first blog post in my brand new blog, but it’s something I had in mind for quite a long time and I’ve just stumbled across Scott Hanselman’s great Microsoft killed my Pappy post. It’s a 2 months old post (ages in Internet times) at the time I’m writing this, and I don’t want my response to come too late.
Scott discusses the issue but doesn’t quite get there to what, I think, is the most important thing that pisses off people about Microsoft.
The Bad Microsoft and the Good Microsoft
Dear reader, feel free to skip the next few paragraphs because they start pessimistic, then get optimistic, but they are only the background to the whole point of this post. Jump to “Continue reading from here to get the point of my post”.
I’m not anti Microsoft, neither I’m a Microsoft fan boy (OK, according to what I do on my day job and after hours, you can generally define me as a Microsoft-stack developer). I like the versatile line of products that .NET has become today and I feel quite comfortable and confident with it. I live in the professional world of software development, keep being updated with all the relevant resources, hear the preaching about all the cool and agile things you can do with Linux / Python / Ruby / Scala… you name it. Today, Microsoft does offer a strong alternative. I don’t feel that I compromise agility, performance or robustness by sticking to this stack (some will call it a comfort zone; maybe – but a justifiable one).
Having said that, there are still some major sins Microsoft made. I think that the root of all of them is too good marketing. I’ll go over a few points really quickly because I want to get to the point of this post and I’m not there yet.
- Microsoft excels in conquering markets and convincing people (developers, consumers and businesses) that its products are trustable, even when their first versions are, more often than not, unripe.
- Microsoft introduces new frameworks using lots of bells & whistles and then abandons them.
- Microsoft educates developers to stay within the Microsoft sandbox throughout their stack (a thing which has definitely changed, a lot thanks to Scott Hanselman, which is not shy to use, god help us, Chrome browser and Google search engine in his presentations and blog posts).
And one of the greatest sins – Web Forms (which was used to be simply called ASP.NET before everyone realized that it’s not the same layer). Oh boy, I could write an entire post just about Web Forms and how it took away at least 4 years of sweat & tears out of my career along with a big hole in the pocket. It was just so wrong. We could all have stayed safely with Classic ASP until .NET became more mature and certainly until .NET MVC came out.
But I’ll leave all these aside, because as Scott said in his post:
This “generational technology pain” seems to persist long after the root causes have died. Do I hate Japan for World War II? My 6 year old wanted to know this as he’s learning world history. I said, “No, we’re cool with Japan. We’ve done some good stuff together.” And he was like, “Cool.”
and
But now, I’ve been here pushing open source and the open web for over 5 years and things are VERY different.
and
Moreover, I think that Microsoft is very aware of perceptions and is actively trying to counter them by actually being open. I’d say we’re more concerned than a Google or Apple about how folks perceive us.
Scott, you brought, and still bring, so many good things to the table, and I really admire you. You push the Microsoft spirit forward and make paradigm shifts every single day. Thanks to you and to other smart people at Microsoft, and thanks to the fresh air Satya brings in as the CEO, I really hope Microsoft is now stepping in the right direction, which is:
- Evolve and maintain its core products, but embrace standards instead of inventing proprietary ones, sticking to them and try to realign the world accordingly.
- Be more agile at pushing updates to software and packages instead of accumulating them to cycles of 2-5 years between major versions.
- Open source some of its products. Yes, finally – open source products at Microsoft. I didn’t believe these words would ever exist in one sentence.
Here is the BUT and the point of this post – hope you’ve survived till now!
Those who skipped before – Continue reading from here to get the actual point of my post
But,
There is one very big blunder that Microsoft did, which still lives with us today and unfortunately it’s going to stay around for the next year or two.
You guessed it – the mess up that’s called Internet Explorer 8.
Wait a second, you might ask: Why just IE 8 ? What’s so great about 6, 7, 9 and 10 that you build your argument around IE 8?
The reason is that IE 6 and IE 7 are so bad that all these novice users and grandpas can’t browse so many sites with them anymore. Nature powers force them to upgrade to a more updated version of IE or change a browser (I’m not mentioning China which is a whole different story). IE 9 and IE 10 auto-update themselves by default, and IE 11 is finally quite good, standards compliant and even passes the Acid 3 test. Not perfect though, but quite good.
But from some reason I couldn’t figure out (and it’s not just me), if you use Windows XP you can’t upgrade IE beyond version 8. You can upgrade Windows itself but that’s not always feasible. There is a whole heap of reasons why people can’t or don’t know or don’t want to upgrade from Windows XP and these reasons may be completely legitimate. There is always the option to change to a different browser, but many people don’t know how to do it (many people don’t even know which browser they’re using).
I understand that the OS has tight relation to IE (a big ancient sin on its own) and that makes things harder, but damn it – can’t you put the engineering efforts and do that? Heck, you can also be brave and push an update to IE 8 that disables it altogether. A page that replaces the blank/default one that says something like :
“Your browser is quite old now, you can either upgrade to Windows 7 / 8.1 and enjoy the latest IE, or use these browsers (links to other modern browsers come here)”.
Also, don’t tell me you can’t do that because of Windows XP End of Support, because you can and you have done such things.
Generations of web developers have been crying and suffering by the need to support IE 8. A good friend of mine must even support IE 7 till today and I feel very sorry for him. The thing is, because Microsoft’s marketing is so good, and because IE dominated the market for so long, many novice users are not even aware that they have the option to change. These end users continue to suffer (without realizing it sometimes); developers continue to suffer investing all these hours wrestling with HTML and CSS rules trying to make IE 8 behave; organizations continue to suffer paying a fortune for all these endless efforts, JavaScript frameworks contain a whole heap of extra kung fu code just for IE which makes web traffic slower, etc.
Do it, correct the blunder, show us you really care
If there’s one single gift Microsoft can give to its consumers (end users as well as developers), that gift would be unlocking the ability to install Internet Explorer Latest on Windows XP and pushing automatic upgrades via Windows Update.
By the way – you don’t even have to actually “touch” Windows XP, as you probably wouldn’t want according to the End of Support scheme, because this unlocking will happen on Internet Explorer Setup level, and the most you would need to do with regards to Windows XP itself is to push this update via Windows Update. Of course, power users and IT admins will always have the option to mute these updates, but the vast majority of users will just wake up one day and, voilà – have IE 11 (or any later version) without doing anything.
UPDATE
OK, I’ve got some responses that suggest it would be unrealistic, at this point of time (post End of Support for Windows XP), to push this change and give users one more reason to stick with Windows XP and not upgrade. I can understand that, although it’s something Microsoft should have done 2 years ago. I guess a more practical solution is to actively shut down IE 8, as I described before.