6 ms·
But that isn't the case. At all. IE wasn't difficult because it was behind the times; it was difficult because it was deliberately different. The 2nd pillar of
by lucideer 5y ago
But that isn't the case. At all. IE wasn't difficult because it was behind the times; it was difficult because it was deliberately different. The 2nd pillar of Microsoft's infamous Embrace, Extend, Extinguish strategy ensured incompatibility, which doubled developer efforts.
The idea of IE being purely an "outdated" browser seems to be one perpetuated by young devs reading & misunderstanding old blogposts. The narrative is attractive because it fits the impatient desire be an early adopter of "shiny new thing", but it doesn't match the reality of how IE6 actually worked.
Safari is compliant. It's behind but compliant. That makes it incredibly easy to develop for because backward compat. & progressive enhancement work well if you're not too lazy to develop according to well-known best practice.
What doesn't work well is the spec. du jour that the Google have just added to Chrome before submitting to a standards body and are proceeding to use their monopoly position to pressure other browsers to adopt. That's IE6 behaviour.
- Touche 5y agoYou're concentrating on the time period when IE was the only game in town and ignoring the 10 or so years post Firefox/Chrome (until basically they switched to Chromium) when it was behind the times and was a tremendous drain on web development. Any attempt to say that otherwise is just wildly incorrect.
- The_Colonel 5y agoAt the time of their release IE4-IE6 have been the most standard-compliant browser. IE was also the fastest at the time. Netscape was in a technological dead-end, and it took considerable time until its complete rewrite (Netscape 6/Mozilla/Firefox) stabilized and caught up. The biggest problem was MS simply dropping its development (IMHO their biggest strategic blunder of 2000s). Back then all browsers had unstandardized behavior, there was plenty of Netscape specific and IE specific hacks. Some of them were intended as EEE, some of them were result of weak standardization or mere technical limitations of their respective architectures.
- lucideer 5y ago> At the time of their release IE4-IE6 have been the most standard-compliant browser At the time of their release, Opera was the most standards-compliant browser. Beyond Opera, I'm not sure where Firebird, KHTML, etc. stood relative to IE4 specifically, but IE5.5/6.0 were well behind most contemporary browsers (lets exclude Netscape shall we; it was in crisis at the time and promptly discontinued). Opera, KHTML, Firefox and Webkit all passed Acid2 long before IE (IE8 was the first version). It's worth remembering that Acid1 was released in 1998; IE6 was released in 2001. So this wasn't a time before web standards and cross-browser compat: they were very much a part of the discourse at the time. A discourse MS largely refused to participate in. > Back then all browsers had unstandardized behavior, there was plenty of Netscape specific and IE specific hacks. Some of them were intended as EEE, some of them were result of weak standardization or mere technical limitations of their respective architectures. That is true, but it was largely due to bugs other browser makers were working on fixing. The EEE had a heavy influence on MS' motivations to get fixes out (whereas with Safari there isn't really any evidence of any EEE being present). A good counter-point is XMLHttpRequest. It was non-standard mainly because "AJAX" was a new-ish idea and standards didn't exist. There's good arguments that Microsoft's engagement with standardisation efforts of AJAX APIs was non-existent/actively-hostile, but at the end of the day the various APIs they implemented were pretty easy to detect (even the ActiveX variants), and generally could be targeted in a very cross-browser-compatible way. That was very much the exception to the rule though: the majority of pains were layout related, and involved not extra nor missing features, but rather features that were in common with other browsers that were deliberately implemented in a different way.
- The_Colonel 5y ago> At the time of their release, Opera was the most standards-compliant browser. That definitely does not correspond to my recollections. It was only in Opera 7 (2003) with the new Presto layouting engine that drastically improved standards compliance. > Beyond Opera, I'm not sure where Firebird, KHTML, etc. stood relative to IE4 specifically There wasn't any Firebird (neither Phoenix) at the time of IE6 release so how can you discuss this in relation to IE4 is beyond me. Mozilla Suite was still in 0.x beta and a year away from official release when IE6 was released. "The real work on KHTML actually started between May and October 1999" (wiki citation) so I don't think they had a big impact on the discussed time period. > but IE5.5/6.0 were well behind most contemporary browsers So let's get concrete, which browsers were better in 1999-2001? > It's worth remembering that Acid1 was released in 1998; IE6 was released in 2001. So this wasn't a time before web standards and cross-browser compat: they were very much a part of the discourse at the time. A discourse MS largely refused to participate in. Are you aware that IE6 is Acid1 compliant? IIRC the first one as the GA released browser (discounting Netscape 6/Mozilla 0.X betas). > Opera, KHTML, Firefox and Webkit all passed Acid2 long before IE (IE8 was the first version). Which is a direct consequence of the fact that Microsoft after IE6 release dissolved the IE development team. IE8 was the first substantial update of IE in 8 years. (IE7 was a minor update)
- moron4hire 5y agoPushing forward on spec implementation before submitting to standards bodies is how the standards bodies want developers to make things. They want a "market of ideas", and only standardize the ideas that win out.
- pfarrell 5y agoI concur. I was just thinking about XMLHttpRequest [0] which was developed to support Outlook Web Access (years before Gmail). As developers discovered and played with it, it became the X in AJAX and eventually became a standard. That standardization happened after it had proved its usefulness and been applied in many different contexts by many different people. 0: https://en.m.wikipedia.org/wiki/XMLHttpRequest https://en.m.wikipedia.org/wiki/XMLHttpRequest 1: https://en.m.wikipedia.org/wiki/Ajax_(programming) https://en.m.wikipedia.org/wiki/Ajax_(programming)
- naravara 5y ago> They want a "market of ideas", and only standardize the ideas that win out. In practice this means Chrome implements an idea and the idea "wins out" because Chrome does it, until Chrome does a new idea.
- zenexer 5y ago> The idea of IE being purely an "outdated" browser seems to be one perpetuated by young devs reading & misunderstanding old blogposts. That’s certainly not true: it was indeed outdated for much of its life. Yes, through IE6, it did things differently; beyond that point, though, it simply fell behind. It stopped evolving in any meaningful way—with the possible exception of tabs being introduced in IE7–while other browsers continued innovating. From IE6 through IE11, Internet Explorer wasn’t just doing things differently; it was truly behind. Tasks that could be achieved without JavaScript in other browsers requires JavaScript (or worse) in IE. Eye candy like gradients? Maybe you could get away with some of IE’s custom CSS extensions, but you had to get lucky or change your design. I may be young by your standards, but I vividly remember developing for IE5 and IE6. I even remember changing my plans for a project when Chrome was announced. IE really isn’t that old.
- Silhouette 5y agoI have been building websites since some time last century. I was there during the first browser wars. I was there for the first versions of those browsers! And I agree almost entirely with the complaints throughout this discussion about how outdated IE became and how lacking Safari now is. It's true that IE6 took more flak than it really deserved because people forget how good it was for the time when it first became available. But you can't seriously claim that IE didn't fall far behind as newer browsers developed and eventually took over. You just can't. And you can't seriously claim that Safari isn't falling far behind in the same way today.
- lucideer 5y ago> It's true that IE6 took more flak than it really deserved because people forget how good it was for the time when it first became available. This makes the same mistake as many sibling commenters here in that it equates "new features" with "good". You're making out that IE6 didn't deserve flak in the early days because it had innovative new (non-standard, incompatible) features. You're making out that this was somehow a good thing. It wasn't. This was the cause of IE6 problems. The general argument in comments is that IE5.5 / IE6 ~circa 2000-2004 was not problematic; that it only became problematic later due to the lack of updates or new features. In fact, the problems were present from the start: in 2004 developers were developing exclusively for IE6, putting "works in IE" badges at the bottom of their pages and excluding all Opera & Firebird users. This was then exacerbated by the lack of updates to IE, but again–the reason this became more problematic wasn't because IE wasn't updated, it's because IE was different in the first place. In ways that are unlike Safari today. > you can't seriously claim that Safari isn't falling far behind in the same way today I can seriously claim it because it's fundamentally different: Safari is falling behind in a standards-compliant, consistent, detectable and progressively-enhanceable way. IE6 differed radically from specifications when released, and then proceeded to fall behind in fixing this divergence. What I'm pointing out is that IE6 falling behind would not have been a massive problem if it hadn't first diverged radically from agreed compatibility with other browsers. The box-model is the biggest example: specifying any padding AT ALL in CSS in 2005 meant you were making a choice between showing the specified padding correctly in IE, or in every other browser. Without brittle hacks discovered by tireless volunteers, there was no way around this: the same property did radically different things in IE vs others. In 2021, if Safari doesn't support a feature, it doesn't support it: the property simply does nothing (neither useful nor harmful). Yes, maybe there are exceptions for edge-case bugs but these are fixed in patch releases, since (unlike IE6's different "features"), they're actually considered bugs by Apple.
- Dah00n 5y agoI was writing, copy&pasting, linking, etc. but in the end I gave up. There's simply too much that is wrong and it would take a long list to refute every single thing and I just does not have the time or energy to waste (Safari have taken enough already, as IE used to). In short, it isn't about "IE vs Safari". Both have multiple versions. What was awful was that IE was behind the times. Everything else was basically fixed by pasting a few lines of code from awesome people. Safari is way more work today than IE was back in the day and doing any modern web development is a breeze today - until you need to make it work in Safari.
- lucideer 5y ago> Safari is way more work today than IE was back in the day There's a bunch of good and bad arguments in sibling comments: some of them may be subjective. But this quote really caught me out. Wow. Wow. Presuming that you've been developing website for more than 10 years, and that your knowledge of IE6 is based on hard experience and not just reading... what on earth are you doing that is so difficult in Safari?
- skydhash 5y agoI’d say trying to make a PWA with Push Notifications on iOS.
- frusciante29 5y agoWouldn't it be nice to skip the $99 developer fee and just send Push Notifications to anyone and everyone, using Apple's servers?
- Jcowell 5y agoThis seems to me like trying to catch a fish in space. It doesn’t exist. Everyone knows it doesn’t exists. So why are you trying for something that doesn’t exists and the only work wordings are inconvenient for the average users. It’s like complaining that Xbox consoles are inadequate for not playing PS games when it’s already established that they won’t from the jump.
- Silhouette 5y agoSafari is compliant. It's behind but compliant. Well, kind of. There are all sorts of minor glitches that only happen on Apple devices. A common complaint is iOS Safari's interpretation of vh units. It might be technically correct (because the spec is sufficiently ambiguous to argue that Apple's choice meets it) but it's still obviously broken for common practical applications that work everywhere else such as attaching content to the bottom of the visible area. The handling of the "notch" on devices that have one is likewise arguably technically correct but obviously broken. So the objections to Safari aren't just about not supporting Google-style PWAs features. Some of them are about other big features too. Support for HTML5 media elements and the backing technologies has been very lacking by modern standards and numerous special cases have been needed over the years only to support Apple clients.
- lucideer 5y ago> There are all sorts of minor glitches This is true but it's true of all software. And they tend to get fixed in patch releases (rather than waiting for a new major version). Even for bugs the Webkit team leave open for years, I think there's a big different between maintaining major incompatibilities in central features for years, and being slow fixing some edge-case glitches.
- Silhouette 5y agoThis is true but it's true of all software. But it's not, is it? We're not talking about minor bugs here, we're talking about anomalous behaviour or unusual interpretations of the specs. Safari is far worse than any other major browser in that respect now that IE has largely faded away.
- jimmaswell 5y agoIs Safari truly "compliant"? It does so many things differently for no reason. I constantly have to write Safari-specific hacks to get things like scrolling in a modal or button appearance to work as expected.
- cesarb 5y ago> IE wasn't difficult because it was behind the times; it was difficult because it was deliberately different. That's not what I recall. As I recall, IE wasn't difficult just because it was behind the times, or because it was deliberately different; it was difficult because it had lots of bugs and inconsistencies. There were plenty of subtle incantations one had to use to make it behave consistently, and to avoid its worst bugs. We dealt with it because unfortunately MSIE still had lots of users, but once the number of users became low enough, all that bug-avoidance code was dropped by web developers. Adding to that, MSIE's Javascript error messages were extremely cryptic. In my workplace at that time, we made a MSIE-only site (it required an ActiveX control for media streaming) run as much as possible on Mozilla/Firefox (of course the media player didn't work), just to be able to get better Javascript error messages when debugging errors on our Javascript code.