The impending crisis that is Windows XP and IE 8
troyhunt.com
troyhunt.com
Support it or piss off your userbase. That's your call.
In our case, becaues we're a corporate provider, 65% of our userbase is on IE8 still and will be for the forseeable future.
Do we have a problem? No.
Why? Because we're not fickle when it comes to technology. We're not obsessed with the latest thing. We're not going to throw this policy away and it's not a crisis.
Compatibility is something which people have stopped valuing, which is bad.
As you have rightly pointed out in your case supporting IE8 is very very important.
For others, not important.
The fact that your last few lines seem to, in your opinion from what I can tell, place you in the "right" regarding this issue seems a bit hypocritical given your first two lines.
To each their own, the market (and an XP EOL next year) should eventually kill off IE8.
We still have a lot of corporate users on windows XP with no sign of them upgrading any time soon. Why? They don't need to - they're not on the public internet and everything they already do still works. There is little value in them changing. Their windows 7 upgrade is scheduled as an incremental step around 2015 but only on hardware failures.
We have had success with Chrome Frame but some IT departments are still resistant to even this because they are afraid their IE 6 active X specific web apps will stop working. Even if they don't, it's just something they don't want to think about, and Microsoft aren't providing a corporate IT dept transition for IE 6 to HTML5 etc.
However, the resistance is usually budgetary and apathy related rather than for any technical reason. They are thinking about it, but it's still cheaper to keep your old stuff than update it, even if it is old.
> Compatibility is something which people have stopped valuing, which is bad.
OK, test your website in Netscape 4.
So? Ten years is nothing. There's no good reason for your site to not work in it.
There is the famous saying, "If it ain't broken don't fix it" and another "Move forward", compatibility I feel is the link between the two, moving forward while not breaking anything.
So yes it is very important.
Some cool examples:
[o]You can still design a fully functional website using the basic html markup and it will still render finely on a Netscape 4.
[o]You can still make Doom play on the latest Windows.
[o]You can still get one of the oldest linux programs such as DC Calc or Roff to work with the lastest Ubuntu.
If you don't test in NS4, you don't take it seriously, either.
That aside, your site should mostly look like crap in Netscape 4, but it should work. That was the whole point of using an open technology like HTML.
So now comes jQuery 2 and now what? Maybe you don't use it, but just replace it with any library you use in your environment.
This comes from somebody doing C++ on VS 2008 on Windows XP, so I feel your pain. I just think it's not a very feasible stance to take. I've held out on XP for as long as I could, but I'm not sure how long I'll be able to last.
(although, to be honest, I haven't found any real compatibility issues yet; of course I'm not using IE any more so that probably shields me from most issues. I did have one problem a few weeks ago with a Windows 2000 server not being able to run recent Firefox versions, but I guess Win2k is really deprecated by now ;) )
We deploy desktop apps (via ClickOnce / direct) as well as web applications, so we're supposedly in the same mire, however they still "just work". They don't suddenly stop working one day. Youre entire toolchain is fine. Just keep it in a VM.
We only just killed a desktop app deployed on Windows NT4 which was thrown together with VC++ 6. I have the VM running now as I'm porting it to .Net 4 (C# this time).
I would have thought submitting a bug fix to jQuery might have been less work.
By that time we had our own wrapper API that fixed all the jQuery bugs so we just took the guts out and replaced then with our own.
There's one big reason why IE9 isn't available on XP, and it's commercial rather than technical. Microsoft know that businesses don't have many reasons to upgrade from XP (at least not before 2014), and they're trying to force them. I manage a few standardised XP desktops and it's going to take some work before we can upgrade them to Windows 7. If IE9/IE10 was available for XP then I'd have upgraded already.
The really upgrade-averse businesses are still on IE6/IE7, but that's not really what the article is discussing.
Am I missing something fundamental here?
Sure, you could use suitable abstractions from the start, but why bother for an OS that's not supported anymore? Other browsers went that way, because they often run on multiple OSes, but you probably wouldn't expect a Linux version of IE anytime soon either.
My current feeling is that it's not worth the bother and you'd be better installing full Chrome and hiding IE unless you also need the compatibility for internal apps.
We have limited resources, therefore we stay focused on our area of expertise and stick to standards (zero flash/java/silverlight to minimise support area and odds of yet another thing possibly going wrong), develop edge (HTML5, CSS3, responsive...) first, and have fallbacks for less compliant browsers (e.g IE9), and possibly block access to part or entirety of our products to old browsers, while clearly informing the user as to why he should live with it or get on board, and that he can use Chrome Frame to not change anything to his habits but raise the "features" bar (most of the resistance comes from ivory tower project managers and BOFH sysadmins, while users mostly don't care or agree). This is, for us, the only viable solution in the long term.
Chrome Frame fit the bill nicely. You include a tag in your HTTP header to request Chrome Frame. If it hasn't been installed then IE8 renders the page. The nice thing is the site self-selects that it wants Chrome Frame so your legacy sites continue to get IE8. Even better, your users are still launching IE so you don't have the support hassle of this site requires this browser while this other site requires this other browser.
Meanwhile this gives us an opportunity to modernize our legacy web applications. Chrome Frame has been a great solution for us.
* Semantic HTML5 tags (<nav>, <article> etc.)
* Media Queries
* Flex Layout
* CSS Transforms (2D and 3D)
* CSS Transitions
* SVG
* Geolocation
* Canvas
* HTML5 Video
* HTML5 Audio
* Rounded corners
* Multiple backgrounds in CSS
* Web Sockets
* Web Workers
--- These are are from memory, I haven't taken the time to look these up so correct me if I have anything wrong.
I'm not suggesting that the features are not nice, but to be honest, we can do without if we need to support it.
It's lightweight-ness makes it the best choice for a VM guest as well as its small post install size.
Windows XP post installation base size is 1.5GB, Windows 7's is 15GB -- this makes XP more suitable for image deployed environments.
The fact is, the main reason that he wants people to upgrade to IE10 is to reduce the support and maintenance burdens of supporting old browsers with weird javascript and rendering bugs. The heading is, after all "Old technology is wasting everyone’s time and money". The solution I put to everyone is to stop supporting IE8 and install Firefox. You can even deploy it via Active Directory and update it via Group Policy, AFAIK.
So the simple solution is to switch to something like Firefox. Or you could continue to support IE8. It's really not ideal to do both, which you'll need to do if you have Windows 7 or above given you will almost certainly have IE9 or above on these installs.
So in many cases they have to _add_ Firefox, they can't simply replace IE. That means even more user training (what, they've installed a second internet with a fox on it? Which should I use??), so the more tempting option is to just sit it out and wait, because they know that they will have to upgrade to Win7 or Win8 next year anyway if they still want security fixes.
Second, installing FF or Chrome is not viable only if you're an IT drone or similar.
(blah blah corporate policy blah blah)
But of course FF is to blame as well when they came with that upgrade plan of theirs (of several frequent versions)
a. purchase new hardware for the latest OS from Microsoft,
b. Get all the OS images ready to deploy,
c. Train staff to use all the new applications that have changed UIs due to older versions of the software not working well on the new OS.
Not only this, but as I've said ad nauseum, development costs should reduce when you use something that is updated as often to the latest standard as Chrome and Firefox.
In each case you have a problem: those who use ActiveX will eventually find a total lack of support and updates for these apps, and those apps that rely on non-standard behaviour risk getting broken in even minor updates. Not to mention there will come a time when Microsoft will completely stop supporting the browser version the app is relying on, even for security updates.
As has been pointed out by someone else, Firefox has special long term updates for corporations in restricted environments, so it's not a huge concern in terms of lots of updates being applied every few months.
[1] http://portableapps.com/apps/internet/firefox_portable
(edited to add forgotten link)
The ROI isn't really on the end user, it's on those who develop apps and must maintain them.
Incidentally, for many web apps there are indeed minimal system requirements: must do CSS correctly, must follow DOM event model correctly, must render pages in a standards compliant manner, etc.
The whole "standards compliant" is now just something Web devs tell each other. Browser vendor prefix usage is at an all-time high. Devs are routinely targeting features added by browsers from draft specifications (because that never turns out to be bad). And "standards compliant" seems to always mean the latest standard, which naturally precludes any device that predates that portion of the standard. CSS 1, 2, and 2.1 are all standards too.
Oh, and my question about the consumer is given the choice between having no access at all or geolocation and drop shadows, I'm guessing almost all would rather just be able to access the site. I can't see much coming out of all this browser innovation that normal people care about or would ever ask for.
There are many corporate environments that fully control their desktop and don't allow chrome or IE.
There are some major applications that work only in IE.
As soon as I install Chrome frame, I can now use all my old legacy custom web apps that were built by my trusty 2005 ASP3 dev team (half of whom unfortunately have died of lung cancer or liver disease since then). And all new web apps pretty much invariably use the meta tag for Chrome Frame, I can continue using whatever site I want.
The IT team just has to spend the 2 hours, 2 days, or 2 months to figure out how to roll out the update. No matter how much time they spend, it will be worth it in the long run. Now we don't have to upgrade from XP for another 10 years.
and what about os-level security updates?
Well, actually it doesn't. As per the lead developer of the Chrome (when last time I was defending XP):
If I want an easy life, Linux is here, it is much faster, much easier to use with tiled windows managers like dwm (much less clicks & mouse movements). More tools to use, much easier to update with package manager like pacman. Windows seem like trash for me to drag human kind down a lot.
Minor quibble - the Compaq iPaq had supplanted the Palm offerings as the "cutting edge" with colour, great sound quality and a lot of (admittedly battery emptying) performance. I was writing code for both platforms in that year.
What's the best way the FOSS community can take advantage of this situation to gain market share?