15 ms·
Browser Wars, the game
- Breakthrough 14y agoIt's a very valid point - it doesn't take a genius to figure out competition drives development, while having a market monopoly affords you a great position of "extortion" in regards to your customers (developers). If there was only one solution from only one company, it would literally be their way - and that's it. Then again, this is why we first develop web standards or markup languages (e.g. HTML, XHTML, XML) in the first place ;)
- stuartmemo 14y agoIf a single company was in control of Webkit then it would be an issue, but thankfully there's not. I actually see Webkit's main competition being native apps!
- derekerdmann 14y agoTake a look at http://quetzalcoatal.blogspot.com/2013/02/why-software-monocultures-are-bad.html http://quetzalcoatal.blogspot.com/2013/02/why-software-monoc.... The author points out how GCC's monopoly, though open source, forces clang to copy its implementation quirks almost exactly, because it's been the de-facto standard for years. Open-source doesn't automatically make the problem go away.
- skatepark 14y agoOpen-source doesn't make the problem go away, but it does make the problem surmountable.
- azakai 14y agoIt was surmountable in gcc's case, but still took lots of resources (which clang has). It might not be surmountable in other cases, and even if it is it raises the bar quite a lot for new competitors.
- suhastech 14y agoI think this is not always true. Read from: "The Ideology of Competition" http://blakemasters.com/post/20955341708/peter-thiels-cs183-startup-class-3-notes-essay http://blakemasters.com/post/20955341708/peter-thiels-cs183-... http://blakemasters.com/post/21169325300/peter-thiels-cs183-startup-class-4-notes-essay http://blakemasters.com/post/21169325300/peter-thiels-cs183-...
- deleted 14y ago[deleted]
- flipstewart 14y agoThat's some pretty heavy fear mongering to excuse being stubborn and outdated. The entire article is written as though it's a parody, yet we still have to live with their inferior browser and cumbersome ignorance of what people want.
- shardling 14y agoVague criticism without detail adds nothing to any discussion. Why not try to articulate what, specifically, bothers you about Firefox? What specific ways is it outdated and ignoring what people want? As it stands, your comment is just... boring.
- TwoBit 14y agoFor a few years Internet Explorer had a monopoly and lots of web sites became dependent on its bugs, quirks, and extensions. A lot of corporations are still stuck due to that.
- just2n 14y agoIt wasn't because of the monopoly. It was because IE had a HORRENDOUSLY SLOW development cycle with minimal resources committed. It was impossible to get all of those issues fixed in a timely manner. If they can be fixed within a few months, it won't be 5+ years of entrenching people in egregious bugs before a new version comes out that breaks all of those if/elses in everyone's code. We develop ONLY for Chrome. It (and WebKit especially) has bugs, too, and we report them regularly. But the development cycle is rapid enough that we can put a TODO in the code, file a bug against it, and a few months later we actually get to fix the code because, oh my gosh, it's fixed on Chrome stable.
- sequence7 14y agoIE only had a horrendously slow development cycle with minimal resources committed after it became a monopoly. Up until that point it was regularly updated with features and bug fixes. I doubt that Chrome/WebKit will stagnate if it becomes the de facto standard but I'd rather it didn't have the chance and I'm constantly amazed that so many comments on HN seem desperate for one browser to rule them all.
- pavs 14y agoProbably in reply to this: http://news.ycombinator.com/item?id=5231665 http://news.ycombinator.com/item?id=5231665 http://www.slashgeek.net/2013/02/16/use-webkit/ http://www.slashgeek.net/2013/02/16/use-webkit/ For some weird reason removed front the front page in short time. I have seen submissions with less votes and less discussions stay on the FP much much longer than this.
- itafroma 14y agoPreventing innovation: a gang of hackers makes a new browser that utilizes the 100 cores in 2018-era laptops perfectly evenly, unlike existing browsers that mostly burn one CPU per tab. It’s a ground-up rewrite, and they do heroic work to support 99% of the websites out there. Make that 98%; webkit just shipped a new feature and everybody immediately started using it in production websites (why not?). Notwithstanding the other points made, how is rapid adoption of new features, and a competitor's ostensible inability to keep up, preventative of innovation?
- kevingadd 14y agoThe issue here is not rapid adoption, it's an effective monopoly being used to lock competitors out of the marketplace by making fast, arbitrary changes and forcing people to keep up. This has already happened in a few scenarios despite WebKit having competition, so it will get worse if all the competition slowly dies off. webkit-only mobile websites are an obvious example but chrome-only audio code in HTML5 games is another great example (Chrome's HTML5 audio stack was so broken it caused crashes, so to have working sound in Chrome you had to use their special API. As a result, there are HTML5 games out there that only support Chrome's API or, if you're lucky, have a fallback based on a flash plugin). EDIT: Another great example is the stunt Intel pulled with AVX to intentionally sabotage AMD's ability to compete in the market, as documented here: http://www.agner.org/optimize/blog/read.php?i=25 http://www.agner.org/optimize/blog/read.php?i=25 Essentially, Intel published a proposed new instruction format, and AMD said 'that looks great, we'll be compatible with it'. After AMD announced this and had started preparing to ship their new chips, Intel suddenly announced that they had changed their instruction format from what they published - after it was too late for AMD to adapt. The end result was AMD shipping chips that were incompatible with Intel's despite AMD's best effort. Intel knew that as the majority market share holder, developers would prioritize Intel compatibility over AMD compatibility, and AMD would lose.
- Ygg2 14y agoWriting a browser engine takes time. While you write it, WebKit will be adding new features. By the time you get up to it, it would advance ahead, adding more and more quirks (keep in mind you need to implement bugs as well as features). Since WebKit isn't a standard, it moves quickly, so your own team must be better than all developers working actively on WebKit and then some.
- just2n 14y agoBut there's still room for competition with the same codebase. WebKit browsers differ significantly, and still compete with one another. Though this post claims to be talking about WebKit, I see something like this: > There’s a bug — background SVG images with a prime-numbered width disable transparency. A year later, 7328 web sites have popped up that inadvertently depend on the bug. Somebody fixes it. The websites break with dev builds. And have to wonder if they're trying to project IE's issues onto WebKit. I used to have a lot of respect for Mozilla. But now that MDN is stagnating, Firefox is a much less inviting development environment than Chrome (oh how things have changed), and with Mozilla talking shit at every turn, I think I have to revoke all respect. Good luck, guys.
- jlongster 14y agoWhat do you mean MDN is stagnating? There's a constant upkeep going on there, which is difficult considering how fast the web moves but it's constantly being updated.
- just2n 14y agoIt's becoming less usable (see: JS classes, prototypes were separated in some but not in others) and the information on it isn't keeping up with standards at all. It might be fine for people who are working on browser builds as of about 24 months ago, but it is woefully inadequate for anyone who wants to use something that is even in a draft state or considered stable. A quick example: look at document.cookie. They are referring to DOM2 information. It's undergone some (slight) changes in HTML5. Nothing is referenced, even though that section is relatively stable and marked as safe for implementation. That's a 2000 spec vs a 201x spec. Nobody's even gone in and pointed out that this has changed in HTML5.
- bzbarsky 14y agoI hate to say this, but ... it's a wiki. Have you considered just adding a note to the page pointing out that it needs updating? For example, I had no idea document.cookie got changed in HTML5, and I bet neither did anyone else involved.
- anshargal 14y agoFor several years (2001-2005) we've already had the situation when the single browser engine (Trident, MSIE) had the dominant share of 90% and more. Indeed, this was bad for the Web as a platform, pretty much in ways the article describes. However this time we've got a difference: new dominant browser engine is open-source with a very liberal license (BSD, LGPL). So anyone who is not satisfied with the development of WebKit is welcome to fork. In fact, Google has replaced JavaScriptCore (part of WebKit) with V8. So is there actually any reasons for having competitive open-source full browser stacks? I believe licensing reasons (the one behind FreeBSD and Linux) is not very important for browser world (Gecko and WebKit have very similar licensing terms). And I don't see much ideological reasons that can't be fixed by forking. What else? Usually developers hate abandoning their work and switching to improve competitor's solutions — especially in the open source world. Developers like the feeling of doing important stuff and money. Market share of Firefox is still quite high (~25%) and Mozilla still receives money (company is non-profit, but developers are being paid I believe). Probably for this reasons the struggle will continue for some time. However it is difficult to assume that there is something useful for web platform in this struggle. Every new web standard feature requires independent implementation from two different open-source projects and the whole platform adoption process goes as fast as the slowest team goes.
- rimantas 14y agoSo, would Mozilla folks write these posts if Opera were to announce switching to Gecko?
- daleharvey 14y agoI would (saying that, I havent even written about the switch to webkit), but it would be similarly disappointing (albeit understandable). I think a lot of people project some war between browser vendors that doesnt reflect reality. Only speaking for myself (as a Mozilla employee) but I want what I believe to be the best for the web, not for Gecko / Mozilla (luckily Mozillas entire goal is to do the best for the web, so we have joint interests)
- scholia 14y agoGoogle wants what's best for Google, Apple wants what's best for Apple and Microsoft wants what's best for Microsoft. Since all three are grasping multi-national capitalist corporations with a fiduciary duty to shareholders, that's to be expected. Since "Mozilla is a proudly non-profit organization dedicated to keeping the power of the Web in people’s hands" then it is able to do things differently. However, users are basically self-interested and short sighted (basically "how fast does a tab load") so just being morally superior isn't a win ;-)
- Me1000 14y agoExactly, being morally superior gets you no where, and being morally inferior doesn't hurt you either. You said yourself that users only care about "how fast a tab loads." Well, if Google ships a browser that's terrible, people will switch to something else. That's why competition still exists! Firefox was in a position to dominate the desktop browser market, but then Chrome came alone and ate their lunch! There's nothing stopping Mozilla from regaining that market share, but they're going to have to ship a better browser!
- yodaiken 14y agoLet's not forget that Google, unlike Mozilla, is able to tell over a billion users "Download a faster, better browser now"
- mwcampbell 14y agoI think the OP forgot one: the potential for a zero-day vulnerability that hits all current browsers, because they're all descended from a single ancestral code base, and a C++ one at that.
- sfink 14y agoDoh! You are absolutely right, which is sad since I was using a mental model of invasive species when I wrote the post, and even pondered how some plant species do great, smothering and outcompeting the natives, until a fire comes through during their dry season and wipes them and their seeds out.
- jcroll 14y agoI want to care, I definitely want to care; but can I care?
- frozenport 14y agoWe forget the most monolithic mono-culture: x86.
- btown 14y agoAnd that monolithic mono-culture was NOT able to evolve to reduce power consumption in a reasonable timeframe. It wasn't even a big priority, since nobody expected x86 to be in a person's pocket, ever. (AFAIK). It took an outside player, ARM, to drive the debate. So it's pretty much a validation of what Mozilla's saying.
- skatepark 14y agoThe big difference is that nobody insisted that ARM stay instruction-level compatible with x86.
- stuffihavemade 14y agoanshargal, you're shadow banned. His comment is: "For several years (2001-2005) we've already had the situation when the single browser engine (Trident, MSIE) had the dominant share of 90% and more. Indeed, this was bad for the Web as a platform, pretty much in ways the article describes. However this time we've got a difference: new dominant browser engine is open-source with a very liberal license (BSD, LGPL). So anyone who is not satisfied with the development of WebKit is welcome to fork. In fact, Google has replaced JavaScriptCore (part of WebKit) with V8. So is there actually any reasons for having competitive open-source full browser stacks? I believe licensing reasons (the one behind FreeBSD and Linux) is not very important for browser world (Gecko and WebKit have very similar licensing terms). And I don't see much ideological reasons that can't be fixed by forking. What else? Usually developers hate abandoning their work and switching to improve competitor's solutions — especially in the open source world. Developers like the feeling of doing important stuff and money. Market share of Firefox is still quite high (~25%) and Mozilla still receives money (company is non-profit, but developers are being paid I believe). Probably for this reasons the struggle will continue for some time. However it is difficult to assume that there is something useful for web platform in this struggle. Every new web standard feature requires independent implementation from two different open-source projects and the whole platform adoption process goes as fast as the slowest team goes."
- rdtsc 14y ago> anshargal, you're shadow banned. His comment is: [unrelated to topic] Always wondered, if someone is hellbanned, how come anyone can see it? In other how did you see it and how did you know he was shadow banned?
- skatepark 14y agoOpen-source counters most of the issues around monoculture. Remeber that the first browser wars occurred between two closed source products. In fact, I think that a single OSS project is far more effecient than attempts at standardization across competing products when it comes to user-beneficial innovation. Look at the open-source UNIXes. Nearly all the value-add has come from cross-pollination of "proprietary" and not-yet-standardized enhancements, which are consumed by users and application vendors targeting those platforms.
- likeclockwork 14y agoYou're basically saying there should only be one web browser and no one should try alternate approaches to common problems unless they're starting with the same codebase. Being open source doesn't change the fact that it's the same codebase. Why should there only be one browser engine? I'm a web developer and I hate cross-browser testing/compatibility, I prefer to use Chrome for it's devtools. I would hate for there to only be one browser in the world. Duplication is not equivalent to standardization.
- skatepark 14y agoNo, I'm saying that open-source solves most of the issues with a monoculture, while also being more effecient than vendor standardization when it comes to pushing forward innovation.
- likeclockwork 14y agoSaying that every software project in a specific domain should use the same codebase is madness.
- skatepark 14y agoThat's also not what I said. You have a reading comprehension problem.
- pjmlp 14y ago
- scholia 14y agoIf true, "Works best with Chrome" / "Only works with WebKit" etc would simply show that today's web developers are even bigger bozos than the ones from the 1990s. So, what we learn from history is that people don't learn from history: they just repeat the same mistakes over and over.
- lbotos 14y agoI think today's web developers are just a lot younger. I'm 21 and I came to start developing when IE6 was still relevant. (Around my age 15). The generation after me came to developing in a completely different post-IE6 world. I don't think most of them realize the historical context or even the relevance. It's a vicious cycle. I'm not sure if there will ever be a cure for young naivety. These literal kids just want to build cool stuff and they have more power/freedom/resources than ever before. Give them time and the good ones will learn from their mistakes.
- skatepark 14y agoWhen I started, there was no web. The historical context is quite a bit broader, and it helps to understand what the state of the technology was. When the browser war was fought (and won): - Netscape Navigator was actually a pretty terrible piece of software. I dare say they deserved to lose. Towards the end, most Mac users were running IE5 -- it was a better browser (http://en.wikipedia.org/wiki/Internet_Explorer_for_Mac http://en.wikipedia.org/wiki/Internet_Explorer_for_Mac). - There was diminishing market interest in supporting alternatives to Windows because non-windows marketshare (Mac OS X, UNIX workstations) was plummeting. This allowed Microsoft embrace-and-extend to succeed. - The web development field was nascent at best. Similar to how many web developers are moving into the mobile space today (and bringing their ideas of how to write apps with them), you had Windows-centric enterprises migrating towards writing web sites (not apps!) and bringing their ideas of how to do so with them. I very much doubt that the web browser war would happen again in quite the same way. Between the availability of open-source browser stacks, the genuine viability of multiple platforms and vendors (iOS, Android, Mac OS X, Windows, and even Linux), and the established web development community (which would have to be co-opted), I don't think it would be quite so easy for someone like Google to 'win' a browser war and then stagnate indefinitely.
- aeosynth 14y agoWhat bugs me about all these articles is that there is no call to action - anyone who wants to defend against monoculture (whether or not that is a worthwhile goal) should start contributing to servo[1], Mozilla's experimental next-generation engine, written in their experimental new language, rust[2]. [1]: https://github.com/mozilla/servo https://github.com/mozilla/servo [2]: https://github.com/mozilla/rust https://github.com/mozilla/rust
- sfink 14y agoGood point, and I should probably update the article to include something. Servo is one way, though I fear it's a bit too far out still to make much of a dent in the mobile web for quite some time. Still, it may be a good choice depending on your skills and inclinations. There are other options too. My main ask for web devs would be to test on mobile Firefox and/or the Windows phone browser in addition to whatever webkit browsers you normally would. Actually, for now testing on Opera would probably be better than either of those; the general consensus seems to be that they're the best wrt standards. It won't prevent the monoculture, but it will mitigate its effects and help keep the field open for competition.
- sultezdukes 14y agoI don't see how contributing to servo defends against monoculture.
- slajax 14y agoI think having more then one engine is important to keep everyone accountable and motivated. To me the idea of developing for the standard is merely idealism until either we have either one engine to rule them all or the engines come to the realization that the responsibility of consistently implementing the spec starts with them and not the developer. In the case of having only one engine, obviously the standard suffers but in the case of multiple engines the developers suffer. Which is worse? I feel like we as developers have done a good job to mitigate the suffering from having multi engine compatibility with frameworks to the point where it's still better to maintain the direction of multiple engines and code for the implementation rather then the spec simply for the sake of accountability. At the same time it would be nice to fork everything off the best candidate and unify things but then we wouldn't have anything to compare it to in order to know it's STILL the best candidate.
- johnmw 14y agoCompeting browser engines and using Javascript frameworks to normalise quirky behaviour sounds like the best of both worlds. Any bugs (i.e deviations from the spec) are quickly patched by the framework until they can percolate down to the browser engine. Of course, note that I consider writing raw HTML to be 'low level programming' ;)
- slevcom 14y agoI'm liking Mozilla more and more these days. I'm seriously considering thinking about trying out this wacky browser of theirs. ;)
- octatone2 14y agoI hear by 2015 they will finally implement these new fangled information windows called "Desktop Notifications".
- takluyver 14y agoI feel like we're at an interesting tipping point here: I've seen about an equal number of articles in favour of a Webkit monoculture and opposed to it. The general pattern seems to be that, if you're interested in building a better X (browser, compiler, operating system), then a monoculture is bad. If you're interested in building on top of X (websites, code, applications), then a monoculture is great, so long as the dominant entity is good enough. In lots of cases, I think the people building on the platform tend to get their way, both because they're more numerous and because the technology in X eventually stabilises, so fewer people want 'a better X'. If a truly better X does later emerge, it then needs a Herculean effort to break the monoculture (e.g. Firefox in the bad old days, clang, the Linux desktop). Then there's an interesting transition period before, perhaps, a new dominant force emerges. Maybe Mozilla can maintain a mixture of rendering engines by being the determined underdog. It would probably make it easier for a new rendering engine to emerge, but the open web may seem less inviting than more uniform technologies. For all its faults, one of the reasons Flash did so well for so long was that developers didn't have to deal with multiple competing implementations.
- xenophanes 14y agoNext time you title your thing "X Wars, the game" please provide an actual game to play, not an article. False advertising :(
- lgp171188 14y agoThat is the exact reason why I opened the Hacker News page from my feed reader!
- yozmsn 14y agoYup me too, I was expecting some sorta HTML5 game featuring a MOZ - WEBKIT showdown, I was okay with the article (it reflects for the most part the issues with have a company like google create things -- they're really good at it and they just destroy competition with their awesomeness, within 5-10 years we'll be using our Gglasses while being driven by our Gcars to our Ghouses and ordering from the G(restaurant).) but it would be nice if someone could whip up a game just for some closure! PS I just hope Brin likes Gyros as much as me!
- sfink 14y agoI honestly apologize for that. My post grew out of a thought I had that if someone wrote a sim-type game about the Browser Wars, then it would be a lot easier to demonstrate to people the ramifications of the forces at play. The only way to figure out a winning strategy would be to analyze the incentive structure, and from that predict the other players' moves. Sadly, I omitted that background from the post, leaving only the title behind as a hint. I agree that an actual game would be cooler and relevant to a different audience (namely, you and the others I suckered in to reading my post due to the title).
- deleted 14y ago[deleted]