[HN Gopher] The Era of the Trident Engine ___________________________________________________________________ The Era of the Trident Engine Author : ttepasse Score : 250 points Date : 2020-01-25 15:30 UTC (7 hours ago) (HTM) web link (schepp.dev) (TXT) w3m dump (schepp.dev) | teilo wrote: | Every one of these "innovations" was invented by Microsoft alone, | without any dialog or input with or input from the standards | committees. Their intent was clear: to subvert web standards in | any way they possibly could in order to force people to Windows. | And in large part they succeeded. | | Treating them as advances that were, sadly, not adopted by the | rest of the web takes a lot of chutzpah. | gruez wrote: | Sounds like what chrome is doing now. | Rexxar wrote: | That's was the standard way of doing things at the beginning of | the web : Let browsers experiment things then standardize | what's working. Every body was doing this. | | The problem with Microsoft was aggressive pricing and forced | default installation, it was not the technical side of the | browser. | teilo wrote: | This is not true. It was only Microsoft's innovations that | were tied to a specific operating system. Other browsers were | cross platform. Even Microsoft's short-lived IE for Mac was | not really IE. | | ActiveX nearly destroyed the web, and as recently as a few | years ago there were still enterprises digging themselves out | of the proprietary mess they developed themselves into. | mianos wrote: | Having the width include the border because that is how a | physical box works has to be one of the all time stupid design | decisions of all time. What sort of management structure would | lead to something like that? It suggests there was some guy/girl | who were supreme dictators who made lots of these decisions. | | While committees often make crazy decisions this is the other end | of the spectrum. Similarly, orders from the office team for | extensions. | | The stories behind these things would even better reading. | ksec wrote: | >MHTML was proposed as an open standard to the IETF but somehow | it never took off. | | I had always wished MHT replaced PDF. But due to the rivalry at | the time Firefox refuse to support MHT ( even to this day ). | Webkit has WebArchive which as far as I know isn't support | outside of Apple's ecosystem. | | I dont actually buy the argument it was Vista that slows down IE | development. IE 7 wasn't that much difference to IE 6. It shows | Microsoft had very little incentive to improve the Web. I dont | know how many actually hate them for not complying with ACID | "Standards". I certainly dont. But at the time the Web has so | many low hanging fruit a lot of people ( or just me ) were pissed | Microsoft didn't even bother improving while holding the web | standard hostage with its IE dominance. Along with the crap | called Windows Vista. | | Luckily we got the first iPhone, 2 (?) years later. And the rest | is history. | [deleted] | wbl wrote: | MHT does not do what PDF does. Web text rendering remains | abyssal in comparison to what 1980's computer technology can | achieve. | felixfbecker wrote: | But it would do a lot of the things people use PDF for much | better. | amelius wrote: | Why did Microsoft choose Chromium, and not Firefox? | CydeWeys wrote: | A lot of it boils down to codebase quality. I know some | hardcore browser developers, and they prefer Chromium. | yedpodtrzitko wrote: | Current portability potential of the engine. The codebase of | Firefox has some legacy burden in it plus Rust as a dependency | for building. | ComputerGuru wrote: | The rust part is actually an improvement as it is not in | addition to but instead of. Building any rust component | together with all its dependencies is one step and fully | modernized. That's one of the benefits moving away from | legacy components with competing build systems duct taped | together. | | Additionally, pure rust dependencies (which is the ultimate | goal of the effort) are all statically linked and different | versions of the same library can be used multiple times | without symbol remaining voodoo, etc solving all sorts of | typical DLL hell issues associated with adopting a huge | foreign component into a project. | notriddle wrote: | Yes, yes, I like the new libraries, too. The Quantum team | is following the Boy Scout rule -- when they refactor code, | they leave it better than they found it. | | But Microsoft needs to release New Edge today. And today, | Gecko is not made from a bunch of reusable, standalone Rust | libraries. It's built from a couple of good libraries, plus | a lot of ugly, tangled legacy. Some day, Gecko might be the | best choice for software that wants to embed web | technologies, but that's not today. | ComputerGuru wrote: | I never commented the viability of Gecko for MSEdge; I | merely rejected the notion that Rust was part of the | reason why it _wasn't_ viable. | Macha wrote: | Gecko is apparently a pain to embed. Other browsers built on | Gecko such as Epiphany and Flock later moved to Webkit. | franga2000 wrote: | Market share. Many web developers these days are bad at their | jobs (or are ordered to be by their bosses) and only test | things on Google Chrome, causing many websites to have issues | on Firefox (the same happened to Trident) . Using Chromium as a | base allows them to ride Google's market share and have almost | all websites work with their browser. | miohtama wrote: | Here is another theory: | | https://news.ycombinator.com/item?id=22058923 | | Microsoft was somewhat already vested in Chrome tech before | starting, so skill and knowledge was there. | | I would love to read an official interview though. | dwb wrote: | I remember using page transitions as a teenager to emulate | PowerPoint in a programmable info-screen thing for the school | library. Baby's first PHP. Lots of copy-and-paste cos I didn't | really understand the fuss about writing functions. Good times, | RIP. | Keverw wrote: | Oh yeah, Powerpoint Jeopardy! I remembered we did that in high | school science class once. Totally forgot about powerpoint | being able to link buttons to different slides but in that case | I do think it was a lot of copy and pasting. | FreakyT wrote: | Really enjoyed the overview of all the ahead-of-their-time | features introduced by IE! | | I feel like many people forget that, back when it completed | against Netscape, IE really _was_ the best browser on the market. | The problem was that once they had "won" the browser war, | Microsoft just completely abandoned development, allowing the | product to languish and become the terrible abomination many of | us remember having to write ridiculous workarounds to support. | zerotolerance wrote: | Having more features does not make a browser superior. IE had a | universe of memory leak and CSS rendering quirks. Their | rendering was so overly permissive that "anyone" could put a | mess together and it'd render. That permissive client almost | single handedly slowed web development progress by a decade. | Because nobody wanted to produce a browser that failed to | render some web pages that could be rendered in other browsers. | Nobody cared that the pages in question were gibberish. If | anything all these IE only features did more to harm web dev | than help it. They're why we're in the situation where all this | enterprise software still requires old versions of IE to | operate. | berkut wrote: | I'd say it depends on the features: smooth scrolling was | pretty cool at the time (1998/1999), so to me, a nicer and | faster UI made a huge difference given other user experience | improvements as well. | | Also, Netscape was extremely buggy as well: I remember moving | friends and family to IE as it was a much better experience | in general. For example, one very annoying bug (given the | slow downloads at 28.8) was Netscape would often not use its | cache for certain code paths and would re-download files | again, even if it had them in its cache. In particular window | resizing would cause it to re-download files for no reason | (this was obviously well before anything like responsive | layouts, or imgsrc), and you'd often wait 30-40 seconds to | see the page again. | | Similarly, I seem to remember IE's "offline mode" worked | almost perfectly from the cache and you could revisit pages | when not dialed up, but Netscape often would not show | anything. (Obviously there were other ways of handling this, | like Teleport Pro to download entire sites, but it was | convenient IE's features generally just worked from a user | perspective). | Andrew_nenakhov wrote: | I would argue that in 2005 the best browser was Opera. A lot of | things we now take for granted in browsers were pioneered by | them. I was sad they cancelled development of their engine | instead of open-sourcing it. | SkyMarshal wrote: | Opera was amazing back then. Ran rings around IE in features | and was super fast. It's definitely too bad they didn't open | source it and build a large community around it. | nradov wrote: | Opera was probably using licensed third-party code internally | which they couldn't legally release as open source. | bdcravens wrote: | I believe this comment is talking about a time prior to that, | closer to 2000. | Andrew_nenakhov wrote: | I was using Opera as my chief browser in 2002..2010 period, | so 2005 was Opera's peak, around versions 8-9 and a race to | pass ACID2 test. | | I finally switched away to chrome because Opera became | unbearable on Ubuntu, it slowed down and a lot of graphics | issues appeared. | shdon wrote: | Although I can see the advantages for Microsoft, I don't think | it's a good thing that the browser engine landscape is going to | get even more homogeneous. Firefox is now the only web browser of | note that is not based on a WebKit/Blink/Chromium derivative. | | Sure, it's one fewer target to test against, but it saddens me to | think that this is going to make it even more likely that web | developers target Chrome and its ilk only and that the layout | bugs in it are becoming the de-facto standard, just as happened | with IE6 for ages. This is actually bad for Firefox even in the | parts where it adheres to the standards when other browsers | won't. | akho wrote: | If Microsoft wanted to take their toys and leave the browser | market, they would have done just that -- perhaps bundling | Firefox (to stab at Google) for a fraction of the cost of | continued Edge development. | | Trident was not much of a contender in 2010s. It's formal death | does not decrease diversity. Now that Microsoft _embraced_ | Chrome, I expect the browser market to become more diverse, not | less. | _emacsomancer_ wrote: | > perhaps bundling Firefox (to stab at Google) for a fraction | of the cost of continued Edge development. | | I think that would have been a preferable outcome, for it | would have pushed at least some fraction of users towards | Firefox, potentially helping to shore up the only browser | using a (significantly) different engine. Instead we have | another Chromium-based browser, which doesn't add anything of | significance to the browser landscape. | bayindirh wrote: | > If Microsoft wanted to take their toys and leave the | browser market, they would have done just that... | | With all the coupling with other Windows subsystems and some | features just to enable a Windows-only PC ecosystem, I'm not | sure that IE/Edge/Trident/EdgeHTML can be open sourced in a | whim. | | > Now that Microsoft _embraced_ Chrome, I expect the browser | market to become more diverse, not less. | | Internet explorer just became a OS vendor backed version of | NeoPlanet browser. Just the same thing, in different shell. | DaiPlusPlus wrote: | Former Internet Explorer SE here: it's not the coupling | with Windows that makes it impossible (MSHTML is actually | really self-contained). The main reason Microsoft doesn't | open-source legacy code is because there a huge chunks of | licensed third-party source code that cannot be publicly | disclosed. | | While those portions could be stripped-out, it would be a | mammoth task to go through the source code history and | identify what belongs to who and stub it out if necessary | (let alone replace it with first-party code). | | Whereas MS' new projects (like .NET Core) were made open- | source from the start and made in the open (Cathedral and | the Bazaar) - so there's no mean ol' lawyers from LCA to | stop people having fun. | bayindirh wrote: | Hey, thanks for the information. That's really | enlightening. Now I know better. | spankalee wrote: | Another way of looking at this is that we lost 0 open source | engines, and all major engines are open source. | | A huge benefit from that is that companies like Igalia are able | to push features forward across all engines via OSS | contributions. | CydeWeys wrote: | It seems to me that having a single pervasive open source web | rendering engine is actually the ideal state of affairs. How is | fragmentation helpful in this area? It's duplicated effort and | it makes Web development harder (and less efficient) for the | millions of Web developers out there. I personally don't see | people taking this approach to, say, Linux; generally people | are happy that it's dominant in the server realm and that they | can learn one thing and use it everywhere. | | IE used a proprietary rendering engine. It's now being replaced | with a free and open source one. This seems like a strict | improvement. It's the opposite situation -- a single | proprietary engine being dominant -- that is the doomsday | scenario, and that's what we saw a decade and a half ago with | IE. The farther we get from that being a possibility, the | better. | | For related reasons, I'm not happy that DRM has become part of | the standard Web feature set. | pcwalton wrote: | The monoculture around Linux is actually a problem. Linux' | design is suboptimal in many ways, particularly how drivers | run with full privilege. (For a sobering look at how this | impacts security, watch [1].) It's unfortunate that the | monoculture of Linux is going to make this very difficult to | change. | | [1]: https://www.youtube.com/watch?v=qrBVXxZDVQY | zzzcpan wrote: | But it's not monoculture that's the problem here, it's | architecture. Different OS with similar architecture, like | FreeBSD, can't solve those problems. | | The same way reimplementing Chromium in Firefox can't fix | anything. | pcwalton wrote: | There are significant architectural differences in | components of Blink, WebKit, Gecko. For example, the CSS | style recalculation is very different--Blink uses a | single-threaded engine in C++, WebKit uses a C++ JIT, and | Gecko does multithreaded style recalculation in Rust. It | would be hard to do WebKit or Gecko's approach with the | current Chromium governance, because WebKit's CSS JIT | uses parts of JavaScriptCore (per my understanding) and | because Chromium doesn't currently allow Rust code. | zzzcpan wrote: | Sure, but not impactful enough to matter in practice. | FreeBSD can claim a lot of architectural differences too | and yet they don't solve the problems you were talking | about. And the actually different OSes that can help with | those problems are not really usable except for some | niche use cases. | mintplant wrote: | > It seems to me that having a single pervasive open source | web rendering engine is actually the ideal state of affairs. | How is fragmentation helpful in this area? | | Because the Chromium monoculture has allowed Google to | dominate the web standards process. They can veto any feature | or force one through by shipping it and pushing sites to | depend on it (including their own). | | There is an army of Googlers whose job it is to keep tacking | on new web standards. And Google will implement the features | before proposing the specs, so their competitors--well, now | it's just Mozilla and Apple, I guess--are kept playing | constant catch-up. Meanwhile, anything that comes from | outside of Google will have to brave the same army trying to | smother it in committee. | | Just ask anyone who's dealt with web standards politics from | outside of Google. It isn't fun anymore. | | (Oh, yeah, and because there's essentially no accountability | now, plenty of these new features rushed through the door are | buggy and introduce security holes. It's like IE all over | again.) | DaiPlusPlus wrote: | Apple's WebKit is kept in-sync with Chromium - whenever | Google adds something then Apple gets it for free within a | couple of months - though Apple tends to disable or vendor- | prefix new features it doesn't like. | Jasper_ wrote: | This hasn't been true since Google hard-forked WebKit to | Blink in 2013. | TheOtherHobbes wrote: | It's about governance and dominance, not implementation. | | It doesn't matter if the code for a single web rendering | engine is available if the standards process is closed. | | Although in fact there are also implementation issues. | Nowhere has it been proven that open source implementations | are optimally efficient, secure, and robust. In fact the | various debacles around SSL etc strongly suggest otherwise. | | The fact that development is either open source or | proprietary continues to be a huge problem. They both have | strong points, but they also have obvious weaknesses. | Realistically _neither is optimal for critical public | infrastructure._ | | Currently Google has far too much over influence over | infrastructure - rather like Microsoft did in the late 90s, | but even more so. | | Open source won't fix this. Anti-trust action - which is long | overdue - might. | Keverw wrote: | I hope they bring the Chromium based version of Edge to the Xbox | too. I was playing some Babylon.js demos and it kept freezing up | once I had to force restart the whole thing. But webGL + the | controller API means you could ship to the console directly. | | Not sure if Playstation browser could do this either, but be nice | since console's are more locked down but seems they are opening | up since Fortnite I believe is the first cross platform game | where your Playstation and Xbox friends can play together. Then I | think if you created something like a virtual world where dynamic | content is allowed, I think the console makers might not be too | thrilled about that, so really like the idea of being able to | publish console games as just a web app directly. | | I also think Microsoft is more open too when it comes to | consoles, for example you can go to Walmart and buy a Xbox and | then turn it into a DevKit while I believe the others make you | buy a expensive DevKit hardware that isn't the same as the | console already shipped, but maybe this is because of Microsoft's | PC background. So from my understand it's easier to publish to | the Xbox if making a native game compared to the other consoles, | can get started faster but still need approval to ship - while I | think with the PlayStation you have to spend a lot of money just | to license the tools before you even write that first line of | code. | aikah wrote: | I never use EDGE on my computer because I found it to be slower | than Firefox. | | But I still use IE11, ironically, because I like to develop quick | HTA tools for enterprise in HTML and Typescript powered by excel | documents or access database using COM instead of having to | download Electron and what not, which I don't need since I'm only | developing for Windows. | | it's unfortunate that everybody lost nearly 10 years because | Microsoft stopped taking Webtechs seriously in order to focus on | Silverlight and what not, which they later abandoned anyway. | | I need to find an alternative to HTA though that still support | COM since eventually Windows will stop supporting HTA apps. | uallo wrote: | > it's unfortunate that everybody lost nearly 10 years because | Microsoft stopped taking Webtechs seriously | | Yes it is. It is also unfortunate that some people refuse to | upgrade their browsers and engineers have to jump through hoops | in order to still support them... ;) | leeoniya wrote: | the webkit monoculture is saddening. | | just yesterday i ran into chrome's 2016 img/flex-basis bug which | works properly in firefox but requires an extra wrapping div as a | work-around in chrome. | | https://bugs.chromium.org/p/chromium/issues/detail?id=625560 | | what possible motivation is there to fix it when you're not | competing with anyone? | | hopefully microsoft can help fix it now? | | also yesterday, i was writing some ui tests that use | getBoundingClientRect() at different media query breakpoints. not | only does chrome intermittently fail to deliver consistent | results between runs (even with judicious timeouts), at different | screen pixel densities its rounding errors are _several_ pixels | off and accumulate to bork all tests in a major way. on the other | hand, firefox behaves deterministically across test runs and | there 's a _single_ pixel (non-accumulating) error in one of | several hundred tests. | | somehow, i made it through the dark ages of IE6 without permanent | hair loss, but i dont have fond memories of those years in my | career. | | now manifest v3 is starting to roll out in Chrome 80. once uBlock | Origin stops working, i will use chrome even less (i try only to | use it for its devtools currently) | MR4D wrote: | Why does nobody say "the TCP/IP monoculture is maddening," or | "the HTML monoculture is maddening" ? | | Seriously, I need somebody to explain it to me because I don't | get it. | | Having one core base of code is not a bad thing to me. | | What am I missing here? | jandrese wrote: | There are definitely people pushing back against TCP. QUIC is | one example. IP is a bit too low level for most people to | care about. Also, pretty much every other thing we've tried | at that layer has been worse for general internet traffic. I | still remember the days of ATM networks and what a constant | headache they were to keep working. | chrisweekly wrote: | There's a fundamental difference between a standard (eg | TCP/IP, HTML...) and an implementation | (Chromium/Blink/Trident...). | recursive wrote: | Specification vs implementation. | | And there certainly are people that say the HTML monoculture | is maddening. Perhaps you've heard people complaining about | Electron being used for desktop apps. | Uehreka wrote: | TCP/IP is a protocol and HTML is a format. The reason that's | OK is that lots of people have built different TCP/IP stacks | and HTML renderers, and so no one person/organization can | control them. They aren't "one codebase". | rst wrote: | There is no single TCP monoculture codebase -- even among | Unix-alikes, the Linux networking stack is a | reimplementation, with no common ancestry with the BSD stack. | (To say nothing of routers with their own implementations, | often including hardware assist at the high end.) | bdcravens wrote: | You're conflating standards with products. | tuespetre wrote: | Chromium and WebKit are not synonymous | leeoniya wrote: | ok, it's Blink now. | | nuances aside, the fact that 75-80% of the landscape will be | blink-based is unfortunate. | onion2k wrote: | _what possible motivation is there to fix it when you 're not | competing with anyone?_ | | Considering the bug hasn't been fixed in 4 years with | completion from Firefox and Edge, I think your assuming that | competition drives bug fixes might be a bit off. It clearly | doesn't. | leeoniya wrote: | > I think your assuming that competition drives bug fixes | might be a bit off. | | i guess phrased differently, dominant market position (which | Chrome has had for those 4 years) is not conducive to | "boring" tasks, such as bug fixes - at least those for which | workarounds exist. but this is also what happened with IE6 - | devs found clumsy workarounds for its bugs, so they never got | fixed because even if end users switched to firefox, it's not | like devs could suddenly ignore the 800lb gorilla with 90% | market share, their sites had to continue to work everywhere, | greatly reducing the incentive to switch (users will say "it | works fine in both browsers!"). it becomes a self-fulfilling | prophecy. | | that being said, i've had some positive experience with a | rendering bug i've reported getting fixed: | https://bugs.chromium.org/p/chromium/issues/detail?id=899342, | but that bug was relatively simple since it did not affect | layout, just paint. | monoideism wrote: | Warning: article is excellent, but contains rapidly flashing | colors that could trigger a photosensitive epileptic reaction. | adev_ wrote: | I find the article to be pretty lineant, or amusingly silent, on | "why" IE technologies never got adopted or standardized. | | I am old enough to remember the time where VML and the others | were invented. And at this time "Open Source" was still called by | Microsoft a "cancer", and Linux users frightened for patent | violation every 2 month by MS. | | It would have been insane to re-implement or standardized | anything coming from Microsoft at this time, leading you for sure | in front of a judge for patent infringement... | | Anything coming from Microsoft was radioactive due to stupid | political decisions and aggressive patent & IP attitude. | | This is sad, and cause us to loose 10 years in the web evolution, | reinventing the wheel many many times. | | Without even consider the millions of hours of engineering wasted | to fight with broken HTML compatibilities, locked-in technologies | (flash, Sliverlight, ActiveX, Vbscript) and continuously | deprecated proprietary APIs. | arexxbifs wrote: | > One part of why Microsoft's ideas didn't really catched on was | that we developers just didn't get it. Most of us were amateurs | and had no computer degree. | | Personally, I'd say it was mainly because we were tech geeks who, | back then, actually believed in a web that should be accessible | to as many different platforms as possible using as many | different browsers as possible, not just Windows and IE users. | | In a sense, that notion prevailed: the web is ubiquitous, browser | lock-in is considered a douche move and you can still access some | really worthwhile sites even with rather simple means. | | In another sense, we all failed, lending our hands to help create | the current privacy-invading, dark-patterned UX nightmare we're | still trying to pass off as a reasonable way of making the world | a better place. | | I never thought I'd lament the day Microsoft stopped making their | own browser core. As a web developer, one less rendering engine | to GAF about is nice. As a netizen, the Google dominance is going | from unsettling to scary. | cptskippy wrote: | > As a web developer, one less rendering engine to GAF about is | nice | | I started out using Mozilla Communicator Suite, Phoenix, and | now Firefox as my primary browser. I never defaulted to IE and | never to Chrome but I have always strived to make everything I | wrote work across as many browsers as possible. | | Something funny happened around IE 10, the HTML, CSS, and | JavaScript all started running correctly on the first try on | all browsers, even mobile. | | It was glorious for about a year or two then everything started | to diverge again and with Mobile versions of browsers we're | starting to head back towards the hell that was developing for | the Web around 2004. | | There are certainly more platforms to juggle today but they're | more similar than different at this point. | jackcosgrove wrote: | If the web's reliance on the Chromium code proves to be a | hindrance, it will take a monumental effort to correct. Brendan | Eich, speaking of Brave, said something to the effect that it | would take hundreds of engineers years to build a new browser | equivalent to Chromium in capability. For a free piece of | software. | | I think it's more likely that a new communication paradigm will | supplant the web than that a Chromium competitor will replace | Chromium, just as the new smartphone/cloud computing platforms | finally broke the Windows stranglehold. PCs are still dominated | by Windows. | stilisstuk wrote: | I don't get it. Firefox works great, maybe better | 1123581321 wrote: | Firefox is built on a similar level of effort. Brendan Eich | is talking about the effort required for a company to | develop a new, full-featured browser engine to complete | with Firefox and Chromium. | zamalek wrote: | Mozilla is rebuilding much of an engine with Servo and | related (e.g. the CSS bits that are now actually | integrated into FF) projects. I can really see them | replacing more and more of FF with Rust in the future, | because Mozilla really seem to be doubling down on trust, | in all forms. For example, they recently announced that | the UI is web component based - which means that using | Servo for the window chrome is in the realm of | possibility. | | Edit: at that point I wouldn't really consider it "FF of | yore." A rewrite is really a new product. | MaxBarraclough wrote: | It may be true that starting from scratch would be | impractical, but it might be practical to take | Firefox/Chromium and make deep changes, to the point that | it's effectively another browser. | | Mozilla themselves have been doing this with Firefox. | They've been replacing C++ by Rust (with the Servo | rendering-engine project). They've replaced the | JavaScript JIT more than once, if I recall correctly. | | We've already seen WebKit give rise to two divergent | major browsers: Chrome and Safari. | acdha wrote: | The problem is keeping pace with the upstream: it's not | that it's impossible but that it's very expensive -- when | Google forked WebKit they dedicated a large and very | talented (i.e. expensive) engineering team to the | project. The same could be done again but you're looking | at companies like Microsoft, not startups. | rapind wrote: | The fact that this software is so complex is the problem imo. | The focus at this point should be on cleanup and | simplification instead of feature bloat. Every design | decision should consider "what can we delete?" | nradov wrote: | Complex software is what customers want. A rendering engine | for clean, valid XHTML could be very simple. But everyone | wants to be able to see web pages created by technically | incompetent designers with "tag soup" HTML. There's no | point in complaining, that's just the reality of the modern | web. | ripdog wrote: | The complexity in modern browser engines has nothing to | do with parsing invalid HTML and everything to do with | the vast, absurd feature set of the modern web platform, | and the complex interactions between the components. | bobthepanda wrote: | Yeah, if you were to design HTML, CSS, and JS from the | ground up today they'd likely look very different. | | The bigger issue is backwards compatibility; the web has | bent over backwards to maintain it, which is a blessing | and a curse. On the one hand it makes the feature set | absurd, but on the other hand the web is (relatively) | easy to archive since format interpreters for it are | widespread, and pages can be built and then forgotten | about because they still work. | amelius wrote: | > Yeah, if you were to design HTML, CSS, and JS from the | ground up today they'd likely look very different. | | I'd like to see that experiment done. | acdha wrote: | > A rendering engine for clean, valid XHTML could be very | simple. But everyone wants to be able to see web pages | created by technically incompetent designers with "tag | soup" HTML. | | The HTML5 parsing algorithm is not _that_ hard: | | https://www.w3.org/TR/2011/WD-html5-20110113/parsing.html | | Do you really think that the complexity of a full XML | implementation of the half dozen specs required to | implement XHTML would really be that significant a | savings compared to the actual features browser | developers actually spend their time on? | | You're correct that complex software is what people want | but that's complex as in an advanced document layout | system with advanced language support, rich media, forms, | etc. rather than the format those features are | implemented in. | nradov wrote: | There will probably never be another complete new web browser | developed from scratch. Browsers are already being supplanted | by native mobile apps, wearable devices, voice interfaces, | and (just starting) AR / VR. Browser use is still growing | worldwide but the trend is toward slower growth. No one will | invest hundreds of person years to build a product in a | market with declining growth and entrenched competition. | LoSboccacc wrote: | doubtful claim, with all the operating systems being brewed | as insurance policy against google pulling a google on | android. they will all have their browser too. | nradov wrote: | Modern browser engines are reasonably portable. When a | new OS arrives the developers will just port Firefox or | Chromium to it. | Spooky23 wrote: | I think the article missed the part where Microsoft basically | went to sleep and stopped doing anything with the browser. | | Just like the 1st edition of Bill Gates book, Microsoft decided | the internet thing wasn't as interesting as whatever they had | cooked up. To their credit, they figured out they were wrong. | untog wrote: | It's in there: | | > The final nail in the coffin was that after the release of | Internet Explorer 6, Microsoft decided to tightly couple new | Internet Explorer releases to Windows releases. So they | dismantled the Internet Explorer team and integrated it into | the Windows product team. | brnt wrote: | I recall obtaining a new version of IE was a happy | occasion, from IE4 to 5 was such an improvement! Then 5.5! | And then 6 came with XP and it was... the last release | anybody really was eager for. I recall switching to Firefox | not long after and I've not switched since. | wayneftw wrote: | Just because a common open source engine has been decided upon | doesn't mean there's no competition or that no innovation can | happen. | arexxbifs wrote: | No, it doesn't. But with Microsoft, Google and Amazon all | relying on Chromium, there's going to be massive pull in that | direction no matter what. Together, these three companies | will now, basically, control the desktop OS market, the | browser market and the cloud market. I'm not exactly giddy | with excitement about that. | bluedino wrote: | It just goes to show how tone-deaf most of Microsoft is, and | always has been. | | They have a handful of products that dominate the market and | everything else is a joke. And it seems like every good | idea/invention they have, gets turned into a mess by | marketing/management. | arcticfox wrote: | Most tech companies have 1-5 successful products and the rest | are all "jokes" | _pmf_ wrote: | > we're still trying to pass off as a reasonable way of making | the world a better place. | | Outside of the SV bubble, this is seen as the creepy | grandstanding that it is. | sayhello wrote: | Disclosure: I work at Google on Chrome. Opinions are my own. | | Using chromium as a base, browsers will have to differentiate by | offering a better product. | | "Better" is less likely to be better performance, compatibility, | or accessibility. | | By using much of the same code as another browser implementer, | any browser vendor [hint hint] that still makes their own engine | could reduce the resources they put on the foundations and web | platform and put more of it on the product itself. | | Perhaps we'll have more groundbreaking innovations to move | browsers forward. The last few big ones: multi-process | architecture, tabs. | | In effect, by using the same foundations, the browser wars could | in fact be reignited and the users could be the winners. | | On the web platform side, I.e., the stuff you see on MDN and w3c | specs, using the same "base" doesn't mean the browsers won't have | different implementations of future APIs if the vendors' opinions | diverge strongly. Case in point: Chromium used to use WebKit as | its renderer and now uses blink, a fork of WebKit. | zamadatix wrote: | Open browsers have been around for decades, Chromium didn't | offer anything new there and as you say it even started off an | open browser itself. If everyone did what you suggest there is | a net loss for the user as where there used to be competition | in browser backends there is now whatever Google considers in | it's interest to merge into Chromium for others to also adopt | (until the point someone manages a fork and we're back at the | part where you say companies should drop their engines for what | is popular instead). | sayhello wrote: | About web APIs, didn't want to imply that blink was used | instead of WebKit for that reason, it was just an example that | rendering engines could still evolve independently. | pcwalton wrote: | > By using much of the same code as another browser | implementer, any browser vendor [hint hint] that still makes | their own engine could reduce the resources they put on the | foundations and web platform and put more of it on the product | itself. | | In other words, throw out all the advantages that come from | using Rust in the browser in favor of a codebase that has a | policy forbidding any use of that language. No thanks. | | Furthermore, I have to note the irony that you say nobody else | should implement their own engine when your team is the one | that forked Blink from WebKit in the first place. | Ericson2314 wrote: | Let's not celebrate embrace extend extinguish, but let's also not | celebrate MS handing the keys to google so they can do the same | with Chrome. Why help your competitor? They should have gone with | Firefox. | | Around 2012 when all 3 major browsers had similar market share | [1] is what we want: everyone can make try extension but no one | can ram them down our throats. | | [1]: https://en.wikipedia.org/wiki/Usage_share_of_web_browsers | city41 wrote: | I'm not sure this article is celebrating EEE, just more | celebrating innovation in general. Regardless of the goal of | these features, in isolation these features are interesting and | fun to read about. And not to mention they did lead to things | like SVG, fetch, etc, so it wasn't all bad in the end. | jknew wrote: | For others who weren't aware, "embrace, extend, extinguish" was | an explicit strategy discussed internally at Microsoft for | gaining control of the internet | https://en.wikipedia.org/wiki/Embrace,_extend,_and_extinguis... | | Though I think there are real innovations discussed in the | article, the portrayal of Microsoft being an altruistic actor | trying to get others to adopt their tech is downright dishonest | with what we know about their internal discussions of their | motivations and strategy at the time. | | I found the article really interesting, but I could do without | the rose colored glasses. | jfoster wrote: | In adopting chromium they're not just helping their competitor, | but their competitor is now also helping them. | | At the end of the day, the default option for most users would | naturally be to stick to Edge, but they instead have been | installing Chrome. Why? Because Chrome was better. Now Edge is | like Chrome. | | There's much less of a reason for users to install Chrome as a | result. Microsoft are likely to regain some marketshare with | this approach. If Bing is good enough, that may also mean | billions in revenue. | stOneskull wrote: | That's it, and everything syncs across easily. Installing | Chrome is now pretty much redundant. | withinboredom wrote: | > If Bing is good enough | | I've actually noticed it is better in some kinds of searches, | and worse in others. Thanks to Edge, it's my default and to | be honest, I don't even realize it's not Google most days. | acdha wrote: | This is generally good but the conclusion is mostly wrong | | > One part of why Microsoft's ideas didn't really catched on was | that we developers just didn't get it. Most of us were amateurs | and had no computer degree. Instead we were so busy learning | about semantic markup and CSS that we totally missed the rest. | And finally, I think too few people back then were fluent enough | in JavaScript, let alone in architecting complex applications | with JavaScript to appreciate things like HTML Components, Data | Bindings or Default Behaviors. Not to speak of those weird XML | sprinkles and VML. > > The other reason could have been a lack of | platforms to spread knowledge to the masses. The internet was | still in its infancy, so there was no MDN, no Smashing Magazine, | no Codepen, no Hackernoon, no Dev.to and almost no personal blogs | with articles on these things. Except Webmonkey. | | People were building complex JavaScript apps back then (the term | DHTML was coined in 1997), and there were plenty of experienced | software developers and people interested in really learning how | to code well. Similarly, there were many sites where you could | learn techniques -- not just A List Apart but many personal blogs | and sites like Philip Greenspun's | https://philip.greenspun.com/panda/ (1997). If you look at the | first A List Apart entry in the Wayback Machine, they list many | well-known resources: | | http://web.archive.org/web/19991005040451fw_/http://www.alis... | | (There is, however, a quite legitimate argument that back then | English fluency was a very significant barrier) | | The main problem was that 1990s Microsoft was all about "cutting | off their air supply". They threw huge amounts of money into | building out tons of features, exclusive bundling agreements and | promotions with various other companies, etc. but they were not | nearly as lavish in spending on QA or developing web standards | even before the collapse of Netscape lead them to pull most of | the IE team away. If you tried to use most of the features | listed, they often had performance issues, odd quirks and | limitations, or even crashing bugs which made them hard to use in | a production project and many of those bugs took years to be | fixed or never were. | | In many cases -- XHR being perhaps the best example -- going | through the process of cleaning the spec up to the point where | another browser would implement it might have lead to the modern | era dawning a decade earlier with better than weekend-hackathon- | grade quality implementation in IE. I look at that era of | Microsoft as a tragedy of management where they had some very | smart people but no strategy other than "prevent competition". | Theodores wrote: | We missed out in using these features in part because we were too | concerned with making pixel perfect copies of designs that had to | look exactly the same in every browser because that is what our | clients signed off on. This was in the days before responsive and | all our time was spent fiddling with margins and padding to get | things pixel perfect. There was no scope to take a step back and | play with some of this Microsoft technology. | | Invariably the cast in stone designs were PDF drawings from | Photoshop where the art was in second guessing what the designer | was thinking of and where they stole their influences from. | | You could not implement a table in a cool way on MS IE and in a | more boring way on the other browsers, knowledge was just not | there or the space to experiment. | uncle_j wrote: | This is a shame in some ways. Internet explorer was always very | strict on how it works. | | Anything before 8 was a challenge due to some atrocious bugs. | | This had it problems but it really taught you not to write sloppy | CSS and JS as it would usually just wouldn't work. | | Versions After 7 basically anything that wasn't in the spec | supported wasn't implemented so you had to write code pretty much | bang on the spec. | | Just this Friday I solved a rendering problem with IE where SVG | TEXT elements weren't being rendered correctly, I was calling | _element.innerHTML_ to set the text which was incorrect. I should | have been _element.textContent_. Using _element.innerHTML_ is | incorrect as SVG elements shouldn 't have a innerHTML property | (they are not HTML). IE11 was actually working correctly, where | the latest Chrome behaviour was incorrect. | | So spending time making it work in IE has improved my code. | hadrien01 wrote: | Totally agree with your conclusion. I remember generating a | JavaScript array in a server-side loop, and the code wouldn't | work (at first) because of a trailing comma on the last element | before a bracket. Firefox would ignore it, but IE 8 wanted a | perfect no-extraneous-commas code. | kyle-rb wrote: | >Using element.innerHTML is incorrect as SVG elements shouldn't | have a innerHTML property | | Is that definitely the case? Chrome, Firefox, and Safari all | return a value for the innerHTML property of an element in an | SVG document. | | This W3C spec [0] specifically mentions XML documents in | addition to HTML documents. And as I understand it, it seems | like embedded SVG elements also inherit from the Element | interface which includes InnerHTML. | | IE11 might also be correct, following an older spec, but I | don't think you can jump to the conclusion that Chrome is wrong | just because the property is called innerHTML. | | [0] https://w3c.github.io/DOM-Parsing/#the-innerhtml-mixin | uncle_j wrote: | That is interesting. | | I assumed that innerHTML must have been wrong because | textContent works in all the browsers I have tried it on | whereas innerHTML doesn't work. A cursory search textContent | vs innerHTML seemed to suggest textContent was the correct | way. | | It looks like it isn't a simple case of IE11 (I haven't had a | chance to test on 9 & 10 yet) being correct and the others | being incorrect. Thanks for the info. | sandworm101 wrote: | That introduction is why tech journalists shouldn't dabble in | amateur history. I sounds like something from a 1960s highschool | textbook: oversimplified and dripping in passive-aggressive | politics. | ComputerGuru wrote: | Your comment is needlessly insulting and very patronizing | without actually providing any substance or even a single point | of contention. | reaperducer wrote: | I don't like IE. I never have. But this part rings true: | | "Internet Explorer already had many of the things that we came to | reinvent later and that we now celebrate as innovations." | | It happens all the time in tech, and IE probably reinvented some | things from Hypercard or whatever came before it. | OliverJones wrote: | Yes, the Redmond Middle School science project called Internet | Explorer prototyped some excellent concepts. For sure. You can | get a LOT of cool concepts for a hundred megabucks a year from | people of the intellectual and creative firepower hired by | Microsoft. | | But, why did it fail? | | Of course, as the article says, one reason was the Ballmer-era | tsunami of bureaucratic confusion that inundated Microsoft and | stymied the release of the Windows versions that carried IE. | | Another was security. Cybercreeps love IE. Drive-by malware? IE. | "Internet Exploder." | | A third was the cost of compatibility. It necessary for web | developers and later, web app developers, to develop and test | once on all the browsers and then again on each version of IE. It | didn't help that it came bundled with Windows: large-org IT | managers often forced their users to use an atrocity like IE6 | years after it upgraded. This bogus standardization shackled a | ball and chain to third-party developers. | | A fourth was, paradoxically, the whole ActiveX Control subsystem. | Apartment threading, anyone? Monikers, anyone? It was just barely | good enough that DICOM and other high-end imaging systems could | use it. That took away incentives to get <canvas>-like stuff | working well. | | Other companies have done similar things. DECNet, GM's MAP/TOP. | Apollo Token Ring. SysV vs. BSD. But none of those things hobbled | an industry quite like IE. | | Trebuchets are cool tech too. But imagine if every UPS truck had | to carry one to place packages on peoples' doorsteps. | cstross wrote: | I was __really __disappointed that the OP wasn 't talking about | the UGM-133 Trident: | | https://en.wikipedia.org/wiki/UGM-133_Trident_II | | (Alas, I think they'll be around for a few decades more, unless | someone is wicked enough to use them.) | LeftHandPath wrote: | This is what I was thinking as well, until I saw the ".dev" in | the URL. | ribs wrote: | Ditto. As I understand it, that program largely put me and my | sister through college... | chadcmulligan wrote: | Thought the same - always think of this when I hear Trident - | the nuclear Missile Harrods would sell | https://www.youtube.com/watch?v=XyJh3qKjSMk | spsrich2 wrote: | Yes he's not talking about Trident missiles. | vardump wrote: | I thought about Trident VGA cards... thinking "they're still | around!?". | rudolfwinestock wrote: | I thought of the Trident missile, as well. | | Anyone who's either a member of the Baby Boom or Generation X | will bear witness to the Cold War for most of the rest of this | century. ___________________________________________________________________ (page generated 2020-01-25 23:00 UTC)