And while I agree with the article that IE9 is still very lacking, I also just went through making the application I'm working on IE9 compliant including rounded corners and shadows plus some CSS transformations. Here's the steps I had to do:
1) don't load IE specific CSS hacks
2) don't load IE specific JS hacks
there was no step 3.
So if you are not using all the latest and greatest features in HTML5, but try using the essentials, you will get a very good experience while trying to make stuff work in IE9: The features it has seem to work correctly for a change and it has enough features to be useful in many webapps.
Of course it's still far away from being cutting-edge in feature support, but at least the usual crap of "try to open an existing website in a new IE version: see barely any page rendered until you add a ton of hacks" has gone.
Now, if IE9 would actually run on the (still) most-used operating system (Windows XP), I would be really happy as I could tell people to get a very good experience by just upgrading their browsers (as opposed to switching browser brand).
Yea, it is unlikely any more rendering modes are needed, because IE9's standard mode finally deserves the name.
The Number constructor is supposed to call ToNumber on its parameter, which is supposed to return NaN if it can't parse StringNumericLiterals, which would be the case with "".
num = ToNumber(param)
num = 0
if (param != undefined)
num = ToInteger(param)
num = 0
They need to implement strict js mode in IE9. That mode really set some good rules on some weird js behaviors.
Firstly, neither IE 9 nor Firefox 4 has been released, and neither HTML5 nor CSS3 is a standard, nor will either be for several years at a minimum. The entire argument in this post boils down to not liking one experimental piece of software over another because the author's personal preferences for experimental features are not supported.
Secondly, when it comes to performance, IE has been getting better with every version while Firefox has been getting worse. If you want to talk about modern browsers in a useful way, instead of about bleeding edge features that no-one will be using on mainstream web sites for a while anyway, consider that Firefox is the only one of the major browsers that does not handle each tab independently, leading to obvious performance and security problems.
Thirdly, the trend for Google and now apparently Mozilla to release updates every few weeks is not necessarily a good thing. The major advantage is supposedly that it allows browsers to develop faster, but as any Linux advocate can tell you, it's no good having a great platform if no-one is building great stuff on top of it. For developers, automated updates every few weeks are often unhelpful, because you're always trying to test against a moving target. When you have to deal with inconvenient realities like contracts and customer approvals on major projects, it's now almost impossible to include testing against Chrome and soon Firefox because you don't even have a stable version to use as a basis for tests. I have no problem with pushing security patches more regularly, but they shouldn't be changing functionality and obviously Microsoft does this for IE anyway.
Maybe I'm just weird, but I consider issues like performance, reliability, and having a stable foundation to build on to be far more important than supporting your own browser's take on some hypothetical future "standard", which is just IE vs. Netscape all over again. On that basis, IE is currently the only one of the big three that is actually going in the right direction. It's just a shame they're not providing it on XP.
and your continuous dismissal of new web technology as "hypothetical / experimental" and talking about when html5 will become a w3c standard shows a complete lack of understanding as to how the web + browser development works to an extent that its really hard to not see irony in this comment calling the OP a troll
I respectfully disgaree. New Chrome releases have broken both cosmetics (rounded corners, just as the CSS3 version was starting to take off) and basic functionality (H.264 support for the HTML5 video element is disappearing in about five weeks, even though it's there and basically working today, as far as I can tell for purely political reasons).
h264 was a conscious choice, nothing "broke", I dont know which rounded corner issue you are referring to, it certainly isnt "broken" and remember you are referring to features which do not yet exist in any release of ie
> h264 was a conscious choice, nothing "broke"
That depends on whether you're the start-up pushing a video-based service and trying to make use of the HTML5 video tag, doesn't it?
It used to work. In the near future, it won't. To most of us, that's a pretty good definition of "broken".
IE has a large market share, that has absolutely no correlation to its quality as a piece of software, web developers have to make their stuff work in ie because of its market share, lots of large web apps* either degrade or do not work in internet explorer even with the tremendous amount of extra effort required to develop for it comparatively to firefox + chrome
* Google Wave didnt support ie, offline gmail support is firefox only? google drawings didnt work in ie last time I checked, I am sure maps degrades in parts as well
I think you're making my point for me with the rest of your post: if you read it back, you'll see that you repeatedly contradict yourself about what does and doesn't work across different browsers, not just for IE but for Firefox vs. Chrome as well.
If you point is that we should just be happy with the web that ie6 supports then sure we wouldnt need to put up with fairly minor differences between firefox / chrome.
Personally I think we are still at an early stage of realising how computing can benefit our lives, for the last 5 years ie has been significantly slowing that progress down, hopefully recent signs continue to show that this progress will happen even if we need to drag ie along the way.
1. Benchmarks aren't real world applications. I don't care if it takes 1s rather than 0.5s to run 1,000,000 operations, if all I ever need to do is run 5 of them.
2. The post you linked to is well over two years old. The entire web development world looked very different back then, and the possibilities of using JS and web apps for more serious work were in their infancy. At that point, Chrome did have a decisive advantage over all other browsers (not just IE) in JS execution speed, but of course that's just after Google had incorporated their new JS engine but before any of the more recent Firefox improvements and certainly not taking into account today's imminent releases like IE9.
3. I don't know what all those numbers are meant to mean, because there is no methodology information in the post you linked to. Charts and numbers without context prove nothing, rather like the "infographics" in the original article we're discussing here.
4. Even if you insist on using benchmarks, more recent ones (e.g., those highlighting jQuery 1.5 performance in some navigation features, published a few days ago) have IE9 still slower than other browsers, but more like a factor of 2-5 slower than the orders of magnitude it was just a few years ago. If they carry on improving at the rate they have been since IE7 -- keeping in mind that this seems to be one of their goals, and that the important context here is whether the IE team is following a healthy path for the future rather than whether they are better right now -- then we can expect IE10 to be directly competitive with the engines in other browsers.
As an aside, those few jQuery figures are a great example of the difference between real world usage and synthetic benchmarks. jQuery is a reasonably reputable bit of software, and the difference in performance in some basic document navigation tools -- hardly high-level code, but a step up from built-in JS/DOM functionality -- was as wide between jQuery 1.4.4 and jQuery 1.5 as it was between various pairs of browsers they tested.
> If you point is that we should just be happy with the web that ie6 supports
I've never said anything like that, anywhere in this discussion.
As it happens, I do think the latest HTML5/CSS3 features tend to be more about trend-setting than actually making web development more useful. If you want to make it useful, fire the guy at the W3C who thinks CSS shouldn't have tools like named constants and arithmetic, which web developers have been asking for since forever, and which everyone from programmers to those working in DTP considers entry level.
> Personally I think we are still at an early stage of realising how computing can benefit our lives, for the last 5 years ie has been significantly slowing that progress down,
How is that, exactly? IE has made a small impact in the speed of development of web sites. As we've seen, with competition to drive the market, Microsoft can still develop new browsers, they just chose not to for several years after IE6.
In any case, your point seems to assume that browsers are the only significant means for computers to benefit our lives, which is just crazy. If you want a disruptive technology, look at the iPhone: in just a few years, it has redefined the entire markets of both mobile computing and telecommunications, to the point where it's difficult to find any recent mobile phone that doesn't have a high-res touchscreen or any mobile platform that doesn't support installing custom software applications on the device, helping Apple climb back from relative obscurity in the PC world to one of the largest global brands in the process.
By the way, IE9 supports media queries -- a recent CSS feature that does have current widespread applicability -- just fine.
(Edit: Am I really being downvoted for arguing that qualitative factors and general policies/focus are more important than synthetic benchmarks, when the only quantitative data provided by the person criticising me for not citing hard numbers is one single blog post, from more than two years ago, containing a few numbers based on synthetic benchmarks, with no description of methodology to let us judge what if anything those numbers signify?)
You are clearly forgetting where the web in general is going to. Browsers today serve as a wrapper to applications and NEED to be fast. Not a single web application today uses only 5 or 10 or 50 operations.
> IE has made a small impact in the speed of development of web sites.
IE has made BIG impact in the speed of development. The fact that it has not kept up with other browsers only made that worse.
Did you expect other browsers to be like IE, so that we could have a "standard" on not having standards?
No, I just take the view that the current trend of trying to treat a browser as an operating system is not going to last.
I think the web in the future will move back towards being a medium for presentation of information and some limited interaction, and things like native mobile apps and their app stores or Linux distros and their auto-installer tools will increasingly deal with what is sometimes done with "web apps" today. I think the important web technologies for the future will mostly be those that make it easier to present useful information, for example through more powerful presentation tools or providing useful context to web services so they can provide a more personal experience.
I simply disagree with what appears to be the majority view on HN in this case. Also, it doesn't help that a significant number of people seem to be responding to clichés that they assume I've repeated and not to what I actually wrote.
I can tell you what its market penetration will be in 3 years: less than 0.1%. IE6 could learn from this.
They had rendering problems with several successive versions, as the "bug fixes" didn't for a while.
> What's its current market penetration?
That's not the point. They had a serious regression, which was pushed out to all Chrome users automatically because of their update policy. That one was cosmetic, but things like H.264 are breaking changes that remove whole chunks of functionality. The details don't really matter; the danger inherent in their process is the more serious problem.
> IE6 could learn from this.
Your example is somewhat ironic.
For one thing, IE6 is the bane of web developers everywhere because it didn't follow web standards -- not least because a lot of them hadn't been written yet. Sound familiar at all?
For another, IE6 is still used in a significant number of large organisations even today because those organisations value a stable, controllable platform as a foundation for their in-house developments more than they value the latest bells and whistles on the public web. Again, there's a lesson there for Chrome, Firefox, et al.
Not so different than IE, right? It's really a speed of release issue, if I'm understanding you.
Well, it's a double-edged sword. Speedy releases mean speedy regressions and speedy bugfixes. Slow releases are the opposite.
> That's not the point
For me it is... but I think that ties in, below.
> significant number of large organisations even today because those organisations value a stable, controllable platform as a foundation for their in-house developments more than they value the latest bells and whistles on the public web.
We're definitely talking about some different markets here. The markets I work in simply don't target IE6 any longer. The baseline, if it includes IE at all--sometimes it's targeted at HTML-only specifically, is IE8 and whatever you can force IE7 to do.
When is IE6 going to cease to be the baseline in these other organizations? It's like its having a COBOL moment.
This post has been brought to you by the "ironic parallels with the topic at hand" department.
"Performance" itself, and many other words, have lots of meanings .
> not one of the on- or off-line dictionaries I have just checked recognises any similar meaning of the word "performant"
True, but we have many terms in computing where our intended meaning is not captured by mainstream dictionaries.
> when there are clear and unambiguous alternatives available
Did you honestly find that usage unclear and ambiguous? The standard use of "performant" is so rare that there can be no doubt what the original poster meant. What are the alternative words you prefer? I think "performant" fills a gap.
> This post has been brought to you by the "ironic parallels with the topic at hand" department.
Nice observation! (perhaps not coincidently, I think I come down on the other side of the issue from you in both instances :)
It has been a good... forever since MS has been a proper team player when it came to working well with websites that run on all other browsers with minimal modification.
This is closer than we've ever ever been in the past to having a remotely sane reality.
So pretty please, with sugar on top, fix the fucking browser.
Google and Mozilla are committed to security. Microsoft is too, and that is why they postponed the ending of support. It will be a chaotic world if Microsoft stops releasing security fixes to XP when it still has a big market share and allows malwares, botnets, etc. to be installed and propagated easily.
So pretty please, with sugar on top, stop making flippant demands for multi-billion-dollar companies to do things you don't fully understand the implications of.
Also, it's not terribly difficult to support more than one drawing API as long as you abstract the drawing code, as is most likely done for Direct2D in Firefox 4.
But now that you mention it, I guess we'll just leave it up to the Other Browsers to put accelerated 2D on XP. They're open source if MS wants to see how they did it.
I understand the sentiment, but I don't think that kind of hyperbole advances the debate in any useful way. Obviously Microsoft are under no legal obligation to support an operating system first released many years ago and when two successors have been out for a while now. It may be commercially sensible for them to do so, but that depends on many other factors beyond the preferences of the web development community.
> Do you know what it's like to target IE8 with a web app that was built for a modern browser?
Yes, I do that for a living, on multiple projects, and so far I have encountered no serious difficulties in doing so. What problem(s) have you found with running "a web app that was built for a modern browser" on IE8?
> It has been a good... forever since MS has been a proper team player when it came to working well with websites that run on all other browsers with minimal modification.
So people often seem to say, yet I find very few portability/compatibility issues with running my web apps on any recent browser. I was surprised to find that in the last problem that did arise, it was actually IE that was compliant and Chrome and Firefox that were implementing non-standard behaviour. And as I noted before, IE is one of the only major browsers that hasn't been playing silly political games with blocking useful video-related technologies lately.
> This is closer than we've ever ever been in the past to having a remotely sane reality.
I guess we just have very different points of view, perhaps born of different real world experiences. In my world in 2011, we are closer than we have been for many years to the hell of IE vs. Netscape, everything working differently in every browser, and having no stable target for development. As I see it, the blame for this lies almost entirely with Mozilla, Google, and to some extent the standards bodies, not with IE.
Just take any project dependent on something on the list in the original article, and implement it on IE9.
But there are also a number of things like rounded corners, transparency, and event handling that are irksome. Thank God for jQuery. Seriously.
> As I see it, the blame for this lies almost entirely with Mozilla, Google, and to some extent the standards bodies, not with IE.
Different experiences, I guess. The last major web app I wrote (last year) ran on Safari, Chrome, and Firefox, on Windows, Mac, and Linux. No browser detection was required. IE8 and below were simply too feature-poor to even begin to run it (start with missing canvas, and work from there). Maybe no IE9-specific code will be required to run it--we'll see.
When I read your last sentence, though, I see "the problem is with everyone else, not IE". And that's definitely one perspective.
OK, but in that case, what you really mean is a web app built for browsers that haven't even been released yet. I'm sure for some people/projects that is a serious issue, but I think your characterisation is a little unfair.
> But there are also a number of things like rounded corners, transparency, and event handling that are irksome. Thank God for jQuery.
Sure, those are annoying, but as you point out, solutions are easy to come by.
> IE8 and below were simply too feature-poor to even begin to run it (start with missing canvas, and work from there).
You're welcome. :-)
> When I read your last sentence, though, I see "the problem is with everyone else, not IE".
Not everyone else, just a small list of specific groups whose specific rapid-release policies keep moving the goalposts. Coincidentally, those groups hold much of the market share not held by IE today, but the point isn't that IE is somehow superior to everyone else, just that I don't like the policy those particular groups have adopted for the reasons I have been giving in this discussion.
And let me note that making my app work on IE took me two days of work. That is what IE doesn't get and why web developers are mad at IE.
It slows down the pace of amazing UX growth in the web.
It is true that I am pushing to the future, but only because clients are so demanding. There's a lot of stuff out there that works fine with IE6, though.
IE8 is a generation behind. IE9 should be on-par when it comes out. That big web project I did should run on it without modification, (not counting any instances where I'm out of spec.)
> Sure, those are annoying, but as you point out, solutions are easy to come by
Well, sometimes. There's a jQuery plugin for postMessage-like functionality... but it's relatively limited in data size because it uses a hash hack. Neither FF nor Chrome flinch at postMessage-ing huge amounts of data.
"I tried that. Don't you think I would have tried that?"
The solution people are using is to write a custom Flash piece that does the functionality they need specifically and interfaces with the JS.
Go on ... I've come across this once before several years ago but would be interested to know the details of this?
Sounds like you were passing non-allowed entities into a doc interpreted as XML but as MSIE wouldn't do that it skipped over any issues by pretending it was HTML4?
That wouldn't be a standards compliance failure for FF/Chrome though. MSIE has often coped better with (forgive me) sloppy code, however.
It turns out that apos; is not a named entity in HTML4, but is rendered as the single character you might expect by both Firefox and Chrome. However, when we ran into IE not rendering it "properly", it turned out that we were wrong, and IE's behaviour was perfectly legal. (Whether it is standards-compliant to render a non-standard entity in this way, I don't know; the point was that it turned out not to be IE that wasn't compliant at all.)
So MSIE was compliant but just backward about it's approach to things that were beyond the standard. This presumably wouldn't ahve been an issue at all is MSIE supported XHTML ... but I digress, thanks for responding.
It's not within Microsoft's strategy of planned obsolescence. For their continued survival they need people buying newer versions of the same software.
Related: Firefox, Chrome, Safari, and Chrome Frame are all more advanced than IE9 and all run on Windows XP.
And the reason for that is probably that Microsoft keeps so much backwards compatibility that the cost of not upgrading the OS is much lower than on OSX.
Or they need people to be paying for commercial support of existing products. I'm not privy to any sensitive details, but I'm guessing they make the bulk of their real money from businesses, and that most large/profitable business customers have some sort of ongoing/bulk deal with Microsoft rather than paying for licences individually. Curiously, those large/profitable business customers are probably also the ones who don't like things like pushing updates every few weeks, because they (perfectly reasonably, IMHO) want a controlled software installation on their standard staff PC and they want to test any changes in-house before committing to adopting them.
"It's more than a shame Microsoft's not providing IE9 on XP. It's positively criminal. Do you know what it's like to target IE8 with a web app that was built for a modern browser? And XP has 60% of the market!"
Considering that, within the UK, IE7.0 is the most popular choice of browser out of the IE range, followed by IE6.0.
So supporting IE8 needs a small fraction of the time needed to support IE7 and IE6. Fixing IE8.0 isn't going to significantly reduce support time and cost. (Juxtaposing that with the XP market share figure of 60%...).
Thank goodness for progressive enhancement.
That means you have to backport DirectX 11 to XP so IE9 could use Direct2D and DirectWrite
I'll take moving targets that net-improve with backwards compatibility over years and years of non-change, though I'll admit a) I'm not running a business on this opinion, and b) others may disagree. Web development is extremely highly paced right now, being stuck for years is complete and utter death.
Out of curiosity: what's the "right direction" you think IE is taking? Stability over incremental updates? Or something else?
Well, yes, I am in favour of a certain level of stability over lightning-fast development. No-one who is actually developing web sites can use all the bleeding edge stuff the day it's released anyway, and releasing functionality changes every few weeks just means yet another round of reading release notes and blog posts to make sure nothing is about to break. I would far rather have a new version released, say, every 1-2 years, with a clearly defined set of new major features, and with every major browser implementing those new features at roughly the same time and in the same way. This is, after all, the point of standards. (Security patches can be released ASAP of course, but shouldn't change any functionality anyway.)
More than that stability, though, I feel that the IE team is focussing on better support for important technologies that are out there right now and experienced by real people and not just geeks and web designers who like the shiny new toys. For example, while Google, Adobe, Apple, and Mozilla are having a big pissing match and actively dropping support for various things, IE will be happily running Flash, H.264 in an HTML5 video tag, etc.
Along similar lines, recent versions of IE have dramatically improved both JS performance and standards compliance, so most arguments about IE being slow or needing things like CSS hacks are out of date anyway. Moreover, Microsoft have much improved their handling of security issues in recent years, and as I mentioned before, IE has long since moved to running tabs independently. I've been shopping on-line for a lot of networking components recently, and while Firefox has been my default browser for a while, I've been getting awfully tired of waiting around because one of the 20+ tabs I opened to compare products/prices was loading slowly and locking up the whole browser.
Apparently I've gone into super-verbose mode today so I'll stop there. Basically, I do think IE's approach to releases is more practically useful and sustainable, but I also think the IE team is focussing their efforts on technologies that are in widespread use today, while some of the other browser teams seem more preoccupied with bragging rights about trendy-but-currently-worthless new ideas and politics, neither of which ever did much to help real users trying to get real stuff done.
... mostly because it's not supported in IE. If it was, people would use it.
Firefox, the WebKit team, and Opera are basically already operating on this model. Team IE isn't.
And for the reasons I have explained elsewhere in this discussion, I think team IE are the only ones who have an approach that can actually work in the long term. A standard isn't a standard if it's constantly changing, and progress at a rate the world can keep up with is more useful than browsers progressing at a much faster rate but actual web pages not progressing at all.
The entire rapid-release-cycle idea is one big overreaction by people who are fed up with the glacial pace of standards development at organisations like the W3C. In a few years, I expect we are all going to be looking back in bemusement, wondering what possessed us to try to advance such a complicated industry without meaningful standards, and wishing we'd just stuck with stable standards all along.
Another possibility is that we will have simply lost interest in the whole affair, because the advancing technologies that help to build more practically useful tools around remote protocols won't be HTML and CSS anyway. For example, a simple delivery mechanism for native apps, along the lines of mobile app stores today, could have ended the current fool's quest to rewrite every serious desktop application on top of poorly suited web technologies, because, leaving the web to do what it does best, present and collect information.
Progressive enhancement disagrees. OK well maybe not quite but all the new features ...
I've used a few sites in the last couple of days using the new HTML5-ish drag+drop file uploads in the wild (not yet officially released browsers working to not yet officially completed specs).
Progessive enhancement is a great idea for minor details, like having a site use a subtle rounding on corners when a browser supports it but just square cutting them otherwise if that's the visual effect you're looking for. However, in a world with desktop vs. mobile sites, persistent local storage, multimedia content, etc., it's becoming ever clearer that the idea of a single page with progressive enhancement doesn't scale to support fundamental functionality in a complex web app or interactive site, and multiple versions of the presentation/functionality are needed to cope with the ever increasing and diversifying range of visitors we need to support.
Your point about the lack of out-of-process tabs is legitimate, but I'm unsure as to how Firefox is getting worse. Could you elaborate? As far as I can tell, Firefox 4 is better than 3.6 in terms of performance on virtually every measure.
Actually, HTML5 will never be a standard (at least not one released by the WHATWG), see: http://www.h-online.com/open/news/item/HTML5-to-become-a-liv...
(Yes, I know that the W3C plans to release an HTML5 standard based on the WHATWG work in several years from now. But based on the current track record of the W3C I predict that this will either fail, or that the standard will be outdated by then.)
1. Text shadow
2. Offline applications
3. Multiple column layout
4. Border images
5. Web workers, File API, Geolocation
A lot of these are in the working draft phase, so I can get the "we don't support any feature where the spec is in draft form" argument from IE. But if they want to play a part with the future of the web, IE needs to stop being boring and actually try to implement some draft features and help contribute to developing these standards.
But the second this happens, I guarantee that people will loudly complain. IE10 comes out with a slew of new features and MS puts them on the docket for standardization. People will say that MS is trying to hijack the web or standards process.
For all the grief MS is getting by being behind, they'd get a lot more grief if they were active and out front w/ respect to features.
All the stuff that Firefox/Chrome/Safari/Opera are doing now is exactly what IE did for it's entire history up to version 6. And really, IE very quickly became the superior browser of the day. But from then on, they appear to only be putting in minimal effort with no innovation.
Well, here's the reality: having each tab in individual process greatly reduces performance and increases memory consumption. When you open many tabs in Chrome or IE they become as slow as FF with perhaps 5-10 times more tabs.
While performance generally isn't a field where FF does a good job, I think reliability of FF is unmatched by other browsers despite the dirty tricks with tabs. Let's just wait 'till they stop losing the list of tabs that were open in the previous session from time to time, it's the thing that did happen to all of them, but never to FF with Session Manager addon.
Really? I use IE 8 at work and opening a new empty tab takes ten seconds. I'd hate to see what it was like in 7.
>> and neither HTML5 nor CSS3 is a standard,
If Microsoft are referring to HTML5, Mozilla should be allowed too.
However, I do try to look at situations objectively and consider the facts, both quantitative and qualitative, and that in an industry that moves this fast, those facts can lead to different conclusions rather quickly. I honestly see Microsoft's current direction for their browser as healthier and more sustainable than that of say Google or Mozilla.
I don't think more frequent releases of new toys or a factor of 5 difference in synthetic benchmarks can trump an emphasis on providing/speeding up core functionality that real users depend on today and tomorrow. Also, so far Microsoft are mostly rising above the silly political games that Apple/Adobe/Google have been playing lately in terms of knocking out functionality for non-technical reasons.
Meanwhile, I have been less impressed with each successive version of Firefox, as performance of the UI slowed, things got moved around or more cluttered, and they didn't keep up with what I regard as essential features in a web app world like running tabs independently.
I have nothing serious against Chrome, except that their release schedule and tendency to break stuff makes my life difficult as a developer. However, I also see little practical advantage in the areas they have been speeding up lately, since they were fast enough even for the web projects I work on that do fairly intensive DOM manipulation and such. As anyone reading my posts here can probably figure out, once functionality is fast enough to use in practice, I am more impressed with making it easy to use, robust, and/or easy to develop than I am with getting another notch up on some benchmark.
You mean like satisfying current internet standards and meeting the draft standards head on to allow browsers to exploit the latest advances in web design and development off the bat rather than having to wait years-and-years and drag back the whole development of the www as a medium.
>Meanwhile, I have been less impressed with each successive version of Firefox, as performance of the UI slowed, things got moved around or more cluttered, and they didn't keep up with what I regard as essential features in a web app world like running tabs independently.
What do you mean by "performance of the UI slowed". You've stated quite clearly that performance is only a factor for you up to the point it is fast enough. So, it seems something in the UI is so slow as to be unusable for you - the UI is pretty much non existent though isn't it. There's an address bar, couple of buttons, search bar - what is significantly slowing you down there? The actual user interfaces save a few niceties (like Chrome's tab closing, optional tabs on top in Chrome/FF/Op, etc.) are pretty similar in their standard forms.
You mention running tabs independently (as independent processes presumably) I didn't know that IE8 did this?
Well, yes, actually. I just think Apple's failure to support Flash and Google's overtly political decision to drop H.264 support are far more relevant to real users today than the various emerging technologies that bring the browser one step closer to being an ad hoc, informally-specified, bug-ridden, slow implementation of half of an operating system. I just don't see that as the right path to take anyway, and I certainly don't see it as a higher priority than supporting the numerous existing web sites that use Flash or holding up what should be the killer feature of HTML5 for the immediate future.
Of course I would prefer that all browsers support all useful standards with complete compliance, but in the real world we have to prioritise to some extent, and I prefer Microsoft's choices at this particular moment in time.
> What do you mean by "performance of the UI slowed".
I haven't diagnosed the problems in detail. I'm just getting bored of waiting several seconds for my browser to start up, one slow-loading tab holding up all the others, horribly slow scrolling on pages with certain CSS styles applied (usually some sort of fixed background), and other obvious delays during routine use. Neither IE nor Chrome exhibits these problems, and Firefox never used to. I realise that it's possible that these delays are actually due to the extensions I use, but there are only a few and they are all very popular ones without which Firefox is seriously lacking in basic functionality, so I don't see much point in distinguishing the core browser from the software I actually use when it comes to the user experience.
> You mention running tabs independently (as independent processes presumably) I didn't know that IE8 did this?
Actually, IE8 did it first, Chrome did it next, and two years later IE still doesn't do it at all.
See, for example, http://www.nofullstop.com/2008/09/30/independent-tabs-featur...
Ah, I think the disconnect is that this isn't the UI that's at fault it's the application. For me all the browsers work equally crummily and that appears mainly to be Flash's fault.
I didn't realise IE8 had independent tabs because I've only ever had the whole app go down. Similarly Chrome locks up for me as much as FF. FF does seem to have gotten a little slower up to FF3 but I think that FF4 is an improvement.
You obviously think Microsoft is doing great by the Internet with IE. Obviously most people hear disagree. Regardless, you cannot say they are in any way leading nor innovating anymore. For the company that made AJAX possible, it is a sad state.
In particular, I didn't say Microsoft weren't involved in politics, I just said they have so far remained above the recent trend of dropping major functionality for political reasons.
Also, please keep in mind that I have never said IE, even IE9, is a "good browser" or "as good as Firefox 4" or anything along similar lines. My position here is simply that I think Microsoft have started going in the right direction again with IE, specifically by focussing on improving performance and standards compliance in the areas that users need immediately within a sustainable rate of releases. Meanwhile, I think various other big names, including Google, Apple, and now Mozilla, are taking a dangerous and probably unsustainable approach in various ways that are, ultimately, not in either users' or web developers' interests.
If these trends continue -- and that is a big "if" in a world as fast-changing as software -- then I expect future versions of IE will start to reclaim market share. Meanwhile, Google, Mozilla, et al. will keep throwing resources into areas they haven't properly thought through, with negligible practical benefit to users any time soon and increasingly frustrating web developers as well.
And for never having said IE9 was a good browser, you sure have said IE is a good browser a lot. Sure, you not have said it in those words, but it is impossible to come away from these comments (a huge percentage of which are yours) without the belief that you think IE9 is better (and perhaps I'm wrong for conflating "better" with "good"). And that impression stems from seeing way more in comments than just "MS is getting configuration management in browsers right."
I prefer accurate, but OK. You seem to be making a "slippery slope" argument, and I don't agree with it.
> Sure, you not have said it in those words, but it is impossible to come away from these comments (a huge percentage of which are yours) without the belief that you think IE9 is better (and perhaps I'm wrong for conflating "better" with "good")
I have been fairly careful about what I have said in this discussion, and I have clarified in very simple terms and I think more than once now that I am talking about the direction Microsoft is heading vs. the direction Google, Mozilla and co. are heading. I can't help it if people who don't like Microsoft or do like $ALTERNATIVE_BROWSER choose to reply to what they would like me to have said instead of what I actually wrote. :-(
Better browsers get a better experience, IE users continue to reload the full page for each link, and everyone uses the same non-hashbang'ed URL.
Sucks for IE users, but I'll just continue to not give a damn now that it's apparent IE9 won't be improved any more between now and release.
I humbly submit this number must be very low, because fixing a bug in a widely deployed product is not as easy as you believe it is.
For instance maybe fixing the bug in crashie8.com would break a lot of websites relying (indirectly) on that bug.
It's easy to have your very own definition of "modern" and then say "This is not modern, because modern means having a yellow status bar".
Actually when you said that PHP is a modern language I must say that your definition of modern sounded pretty different than mine.
Lastly, I challenge you to find a single currently working crash-the-computer bug in IE9. Crash the tab, yes. Crash the browser, maybe. Crash the computer, very unlikely.
The thing is, web browsers are always going to have to deal with two kinds of people: The malicious and the incompetent. They both write web pages, and neither can be avoided completely.
And, when you get down to it, it's impossible to distinguish sufficiently advanced incompetence from malice. (This sentiment seems quite appropriate when discussing Microsoft's browsers.)
If I were to say anything to the IE team it woud be, "Great job! Now keep going, please."
If trends continue, IE9 might constitute 10% of my total traffic in 2 or 3 years. I 'm not looking forward to supporting yet another quirky MS based browser.
Don't get me wrong, IE9 is certainly a step in the right direction for Microsoft but it still doesn't stack up. Luckily there are a lot fewer hacks needed.
Also, I don't think Microsoft plans on supporting in in IE10. Afraid of the competition with their own tech I guess.
I'm getting all my user to switch to chrome and firefox 4, I haven't gotten a lot of complaint about it. (none actually so far)
I'm still a die-hard fan of Firefox because of all the plugins, but damn I wish everyone were using rendering engines as good as the one in IE9. I hope FF and Chrome will close this gap soon.
If IE stays one rev behind Mozilla in terms of standards conformance, but keeps up the great perf work they're doing then I think that's actually really good. Especially considering where they were coming from.
I've been using IE9 RC (after having to revert IE9 beta -- too many bugs and issues) and it has been near flawless. I'm not sure if its a better browser than Chrome now... but its close enough that I don't miss Chrome.
It looks like WebSockets have issues beyond lack of support in IE. I agree on the rest, but this isn't just MS not supporting them.
I wish we could have WebSockets, but it was not Microsoft's failure to implement that made them unusable in the general case.
About 20% of Mibbit users are using websocket and have been for several months.
It's inevitable that any security worries will be rectified (Hopefully by simplifying the protocol rather than adding another layer of needless complexity), and browsers will update.
MS may as well implement what exists now, even if they decide to leave it up to the user to enable it.
This is already untrue for a number of websites. IE isn't as dominant as it once was.
For example, look at the source for W3Schools.com. Then use Firebug or curl to look at the headers. That is an HTML page that thinks it's XHTML. The poor thing is addled.
At any rate, we've done without XHTML for quite some time now.
Yea, more precisely the lack of support, which was exactly what I was referring to in the OP. Particularly how it lasted for 11 years after XHTML 1.0 became a recommendation.
Pretty much all browservendors and webdevelopers think this was a bad idea to begin with.
These things were just not there before. Sure the feature set is still somewhat lacking but they are developing at a great pace. At this rate it will soon be a true competitor to the modern browsers.
Even if they did get every conceivable feature implemented for IE9, it would only be current for a short time after the release. It would then sit basically unchanged for a year or more (thus seeming old and outdated) while they work on IE10. Meanwhile Chrome would have put out a ton of new features that are all added a few at a time.
Enterprise users want to be able to say, "Use IE9 to access your expense reports, period". They don't want it to be "Use IE184.108.40.206.1.a or above" or "IE9 shipped before 10/1/2011".
Pushback from the enterprise is probably driving this more than anything else.
They could go to a model where they have a consumer and enterprise branch. And the enterprise branch syns up with the consumer branch on major releases. But that starts to sound a little chaotic (but I think doable).
Every time people bring this up they make it sound like it's a legitimate requirement. It's not, and the cost of supporting a given browser's rolling release schedule in-house at these companies is miniscule compared to the global cost to the web development industry and user productivity of having to support three (possibly four) different versions of IE at any one time.
That's a mighty bold claim to make without any supporting data, given that the maths is so heavily stacked against you.
Suppose a 5,000 person company standardised on Chrome tomorrow and built their key in-house IT systems to support it, as many have with IE over the years. Now suppose that in about five weeks, Google push a breaking change in the new release of Chrome, that takes out some of the organisation's key intranet functionality. What would that company do?
Think quickly, because for every hour that key system is down and all the staff are stopped from working, the company could have hired an extra web developer for an entire year.
No, I refuse to swallow this particular strawman that you've been using throughout the thread.
I'll elaborate. Web development projects should be undertaken with reference to the current state of support across browsers for current and emerging standards, with the expectation that such support will improve over time. Basing your tests on the rendering characteristics of a single browser at a single point in time is simply wrong-headed. So this 'breaking change' idea is not just wrong but incoherent.
Obviously 'breaking changes' can happen in the context of browser UI but (a) that has nothing to do with web development and (b) rolling release schedules are actually better at catching those problems than epoch-making version releases.
If you're developing a major project, for a major client, for serious money, then there will be formal acceptance tests, and if the product you build doesn't pass those tests, you don't get some or all of the money until it does. What kind of professional web development shop is going to make that kind of commitment when the tests themselves aren't pinned down, or to make any legally binding commitment that their finished product will work properly with software that is beyond their control and not fully specified? You can't even defend this position on the basis of Agile development practices, because a six week cycle is still too short to get through a full round of development, a full set of testing at the various levels required, and final approvals, before the goalposts move again. You don't seem to acknowledge this scenario at all, but outside of relatively small projects it is the norm.
As several of us have observed elsewhere in the discussion, the major problem with making this kind of open-ended commitment when the target platform isn't known yet is that sometimes support doesn't improve over time. We have even given direct examples, such as Google's decision to kill H.264 support in Chrome.
> Says who?
Do you really need a list?
> when the tests themselves aren't pinned down
Test for compliance with the standard, not compatibility with the engine. If not enough engines support a feature for which the standard is still emerging don't use it.
> We have even given direct examples, such as Google's decision to kill H.264 support in Chrome.
Your examples don't hold water. No specific codec support should be assumed at this point because it's not standardised.
I hate to break this to you, but nobody cares about this amorphous global cost to the web dev industry. It's a cost that isn't accounted for and accrues in a uniform way that makes it inactionable.
If MS were to start telling the Fortune 500 companies that it was going to start screwing them over and not supporting old browsers -- IBM would immediately step in and start doing it. MS would lose most of their revenue (guess what, web devs don't generate much revenue for MS) and IBM would become the fastest growing company in the world.
It's just stupid to PO paying customers to help people who whine, but pay nothing.
Who is "we" here? Am I talking to the official spokesperson for all non-enterprise web devs? Last time I checked Facebook, Google, CNN, NYTimes, and Twitter all worked with IE.
When webpages that people actually care about break in IE then I'll believe you. Until then, I think people will go where the money is. Now maybe you won't support IE. That's your choice, but I suspect you're not the director for webdev at Facebook.
In fact, if you let me know what your sites are, I can add them to my blacklist to avoid us both the trouble of your sites showing up in my Google search since they may take down my browser at any point in the future.
No. Is there a reason why you would ask such a ridiculous question?
> Last time I checked Facebook, Google, CNN, NYTimes, and Twitter all worked with IE.
Again, that doesn't affect my point which is: that the compatibility restrictions are arbitrary, unnecessary and completely unworthy of sympathy from the community.
> let me know what your sites are, I can add them to my blacklist
How nice of you.
I would appreciate it if you and the other guy would stop making this personal, but I'm not expecting much.
Nowhere did I talk about development practices. What I talked about was the justification often held out to web developers that such-and-such state of affairs is absolutely and perpetually necessary. My professional conduct has nothing to do with that, thank you very much.
Internet Explorer is, and always has been the browser that comes with your computer. It works fine, and most regular people will never bother to change it.
Google Chrome is the better browser that your tech-savvy children or friend might install on your machine, and that you'll immediately notice is better in several ways and start using.
Firefox used to hold that 2nd place, but now it's been relegated to "the browser that people who were really passionate about Firefox five years ago still use". It was a great alternative to IE6 back in the day, but its time has come and gone.
How do you support this statement? It looks to me that Firefox still has a significant market share and I don't see it declining.
On the contrary, it recently overtook IE in Europe:
> Internet Explorer is, and always has been the browser that comes with your computer. It works fine, and most regular people will never bother to change it.
Here in Europe Microsoft is compelled by antitrust to let people select a different browser the first time (I don't know if they are already enforcing it though).
"It works fine" is of course subjective, but it's true that when people start with it they usually do not bother changing (also because they don't know they can).
> Firefox used to hold that 2nd place, but now it's been relegated to "the browser that people who were really passionate about Firefox five years ago still use".
I don't think so. I see a lot of people still using it on it's merits and not on "passion". Where do you take this statement?
To the casual user, FireFox seems "slow" because it takes 30 seconds to start up when you click its icon. Chrome takes under 5 seconds, and is thus "fast".
Mozilla Firefox has been in this situtation before, and things changed.
(How do you move the refresh button to the right of the address bar?)
edit: to elaborate, the principle Chrome seems to work on is responsiveness above all else. I'm not sure responsiveness is the most important barometer for good UX in non-Western cultures. For instance, there's no way I can sacrifice the ability to customize my UI for slightly improved responsiveness.
Example @ http://www.gamenull.com/
While I love the new stuff being implemented in cutting edge browsers like Firefox, IE9 is a huge step up from IE8. Microsoft had to choose what to implement, and choosing stuff that isn't likely to change soon makes sense for them. We shouldn't be expecting them to implement everything all at once. Here's to more frequent updates to IE that bring these new features once they are more fully developed!
I am not personally familiar with all stuff from MSFT, but I won't take Paul Rouget's trolls into account to make me an objective opinion.
Its absolutely true, and IE9 is now catching up to firefox 3.6 (finally) and ie10 will finally catch up to firefox 4.0 (maybe) in a year. AND the article forgot to mention that FIREFOX - ALL VERSIONS - WORK ON WINDOWS XP, VISTA, 7, MAC OSX, LINUX, UNIX. Which means that if you are a MICROSOFT WINDOWS XP user, you cannot use a Microsoft browser to freaken' browse the modern web, IE8 is the only hope. There is a lot wrong with the state of IE. And technology is only one of those things. Nothing but technology is being addressed though.
What do you mean? The web itself should be accessible on a variety of platforms. It doesn't matter in the least if every platform has its own unique browser so long as they are all decently compatible. That's why we have open standards.
Your last sentence makes no sense. Instead of using IE9 to view Hacker News, I should go find a native app? Huh?
(I actually use Chrome and have no love for IE, but arguments like this are just silly.)