Live data from Hacker News

Maintaining an Independent Browser Is Expensive

robert.ocallahan.org

161–170 of 310 posts

Re: Maintaining an Independent Browser Is Expensive

#161
post #130
post #48

Earlier quoted context omitted.

The thing is that that, in turn, is somewhat of a reaction to people using native apps instead of the web, creating lock-in for other ecosystems.

Sorry if I sounded like a Hardcore Apple Fans, but if there is anything Steve Jobs taught us that lifted Apple from near Bankrupt to the World most valuable company, is that User experience matters. Native Apps provided better UX, easier access on the Home Screen, and is generally 10x faster. What the web responded, or in your words a reaction to people using Native Apps, were to put more Ads, Creepy Ads, more JS tac…

Ah, but now you're mixing browser makers with companies with websites. The ads, tracking, etc. are not the reason that browsers have become complex, although I agree that they're making the web (or at least that part of it) a less attractive proposition. (Although I'm personally still happy I can simply run an ad-blocker in my browser, which is more difficult for ads and tracking in native apps.)

Re: Maintaining an Independent Browser Is Expensive

#162
post #48

Earlier quoted context omitted.

The thing is that that, in turn, is somewhat of a reaction to people using native apps instead of the web, creating lock-in for other ecosystems.

That's true as far as it goes, but there are plenty of other reasons it's become so prevalent. From a vendor's perspective: - Web apps often have a reduced support burden relative to equivalent desktop apps because you have easier solutions for complete control over deployments: environments, live versions of software in play (often only one). - Subscription payment models are convenient for vendors: they can help sm…

I agree with all of this, although I'd add that

> Poor (or no) offline support, and unreliable operation with choppy connectivity.

is also being solved - with additional complexity for browsers, of course.

Re: Maintaining an Independent Browser Is Expensive

#163

Earlier quoted context omitted.

I think parent meant a different kind of "complicated". More like "overcomplicated". If we want to move forward as a society, we better structure our tech in the simplest possible way. The difference with cars, airplanes, etc is that in a capitalistic world, an overcomplicated browser spec actually helps big players to keep their monopoly. That's what's wrong here.

I'm confused what the move should be then? People want more features and capabilities from the products they use, websites included. What im reading here is a preference for web technologies to be frozen as they were since 2000.

That's a difficult question for which there are probably many answers, so here's my attempt at it.

One first insight: we don't need the "semantic web" because Machine Learning can recover semantics. (This is also how Google's webcrawler views the web, so why not apply it to browsers too? People mix up semantics and formatting too often for the "semantic web" to be a useful concept).

Another thing to realize is that overcomplicated systems benefit from factorization, i.e. splitting functionalities into different modules with their own responsibilities. This doesn't just apply to code, but also specifications.

A better factorization will immediately solve the "monopoly" situation, because now many players can develop many modules, and browser vendors can simply combine module implementations at will.

What it will also solve is security issues. A modularized architecture is much easier to keep secure than a system where all functionality has been thrown together on one big heap without structure.

You can say that browsers are (if the developers are smart) already structured in a modularized way, but that is not the point, because the internal boundaries of the modules are not openly available in any kind of specification.

Personally, I long for a world where formatting a document or showing a video on a computer screen is not considered "high tech". And this might be the way towards it.

Note that an "extreme" interpretation of this would be to replace the browser by a simple virtual machine. In that case, every web-developer is their own browser vendor, and they can mix and match existing libraries at will. People will then probably object that the user loses power, and accessibility is lost. But we live in a world of Machine Learning now, so any "structureless" rendering can be easily restructured by an appropriate tool. E.g. an image containing text can be OCR'd and read aloud by a tool. This would also make these tools more robust against formatting hacks. And machine learning can do many more useful things, like removing ads.

Re: Maintaining an Independent Browser Is Expensive

#164
post #90
post #69

Earlier quoted context omitted.

The reason why it’s expensive is that no HTML5 proposals are taking into account the cost of development and maintenance. “Anything goes” as long as it competes with the walled-garden platforms. Spending without budgeting nor cost evaluation is similar to going to a casino spending your life savings thinking you’re the lucky one.

Deciding just to cede applications and content to single-vendor platforms isn't that appealing for the open Web.

That implies a binary decision. The war is won in many battles. Deciding which ones to go into is the deciding factor. Bringing your men to each is a sure way to lose, and it’s what is currently happening with the modern web.

Re: Maintaining an Independent Browser Is Expensive

#165

A reminder that, as article points out, a healthy web needs multiple independent client implementations and we're already down to less than a handful major ones. Ideally they should hold equivalent usage share which implies that as currently usage is heavily tilted towards Google Chrome, the best way in which you can help Mozilla is to use their browser and get your friends and family to use it too, unless there's a…

I'm curious, why does the web need multiple independent client implementations? Note I'm not trolling, I'm seriously asking the question. I think it's assumed to be true but not necessarily true. I'm probably wrong. As a counter example AFAIK there is no python standard that lots of teams make competing implementations. There is basically one python and a few incomplete copies but those copies have little to no say i…

Do you want one already very large company to be the only browser provider? That company could start to make its implementation less user friendly/less friendly to competition; but users would have no alternative but to use it. e.g. "Let's track everyone's usage, and prevent adblockers".

Not sure that applies to language implementations. Imagine if C++ started trying to send user data to some organisation.

Re: Maintaining an Independent Browser Is Expensive

#166

A reminder that, as article points out, a healthy web needs multiple independent client implementations and we're already down to less than a handful major ones. Ideally they should hold equivalent usage share which implies that as currently usage is heavily tilted towards Google Chrome, the best way in which you can help Mozilla is to use their browser and get your friends and family to use it too, unless there's a…

I'm curious, why does the web need multiple independent client implementations? Note I'm not trolling, I'm seriously asking the question. I think it's assumed to be true but not necessarily true. I'm probably wrong. As a counter example AFAIK there is no python standard that lots of teams make competing implementations. There is basically one python and a few incomplete copies but those copies have little to no say i…

The last time we had a web monoculture (IE6), it was not a pleasant experience. MS had decided it was over, they won, no more need to invest resources in that (and really, they would have preferred you write native Windows apps, but IE-only web pages which still only ran on Windows was a good second choice to them). It's also easy for a single dominant vendor implementation to impose terms on required periphery tech even if the primary standard is open (see the fate of Apache Harmony)

You could argue the Python/Linux case are safer because:

* They are themselves independent open source projects. While Chromium is open source, if Google pulled out, I'd expect the remaining development effort to be on par with e.g. Pale Moon

* You could argue there _are_ multiple implementations of Linux-as-OS, if you're not just looking at the kernel. See Ubuntu, Red Hat, Arch, Alpine, etc. There's no standards body (unless you count stuff like POSIX or LSB, but then they are only subsets of functionality compared to what users expect of a full OS) but still things become standard by community consensus (e.g. systemd)

Re: Maintaining an Independent Browser Is Expensive

#167

A reminder that, as article points out, a healthy web needs multiple independent client implementations and we're already down to less than a handful major ones. Ideally they should hold equivalent usage share which implies that as currently usage is heavily tilted towards Google Chrome, the best way in which you can help Mozilla is to use their browser and get your friends and family to use it too, unless there's a…

I'm curious, why does the web need multiple independent client implementations? Note I'm not trolling, I'm seriously asking the question. I think it's assumed to be true but not necessarily true. I'm probably wrong. As a counter example AFAIK there is no python standard that lots of teams make competing implementations. There is basically one python and a few incomplete copies but those copies have little to no say i…

Python has multiple implementations like numpy and others that i am not familiar with. Python not having a clear spec is a disadvantage, although it is pretty stable language.

C++ has standards and all compilers implement them and people stick to standards, no idea what you are talking about when you say "embraces and extends with optional non-standard features".

Linux implements the user interface standard called Posix api and portable programs stick to it.

How do you know what you are writing against is going to work tomorrow, if there is no standard?

Re: Maintaining an Independent Browser Is Expensive

#168
post #92

Earlier quoted context omitted.

There is a third major independent option: Microsoft Edge. I assume (like me) a lot web of developers aren’t using Windows, but we can at least help people out by making sure our applications work fine on those browsers. Since IE 9, with a polyfill, most things just work unless you need some very recent HTML5 APIs. Microsoft provides free VMs for testing different browsers here: https://developer.microsoft.com/en-us/…

The situation with Microsoft Edge is strange. Not only is Microsoft Edge not available for older versions of Windows, it is not supported on Windows 10 IoT Enterprise, Windows 10 LTSB, or, most importantly, Windows Server editions. Virtual desktop hosting (VDI/terminal servers) has to be based on Windows Server (licensing requirement). This means that Edge can't actually be the only supported Microsoft browser for Wi…

I think the reason it's not available on server is that it's a universal Windows app.

Generally though it's ui and feature set is minimal compared to chrome and Firefox but it'd rendering engine is decent.

Re: Maintaining an Independent Browser Is Expensive

#169

Earlier quoted context omitted.

Wasn't it just released for Android and iOS? (I get that that might not be what you meant...)

The iOS version is a WebKit wrapper by necessity (Apple mandates that all alternative browsers use the system-bundled WebKit for user experience reasons), and while it’s possible they’ve ported Edge’s engine to Android I’d bet that Edge for Android either wraps WebKit or Blink/Chromium. The primary value proposition for Edge on mobile is syncing of tabs/bookmarks/history/etc, not its engine.

Android version uses Webkit as well

Re: Maintaining an Independent Browser Is Expensive

#170

A reminder that, as article points out, a healthy web needs multiple independent client implementations and we're already down to less than a handful major ones. Ideally they should hold equivalent usage share which implies that as currently usage is heavily tilted towards Google Chrome, the best way in which you can help Mozilla is to use their browser and get your friends and family to use it too, unless there's a…

I'm curious, why does the web need multiple independent client implementations? Note I'm not trolling, I'm seriously asking the question. I think it's assumed to be true but not necessarily true. I'm probably wrong. As a counter example AFAIK there is no python standard that lots of teams make competing implementations. There is basically one python and a few incomplete copies but those copies have little to no say i…

You are comparing a global standard everyone has to use to individual projects. The web is a standard, the rest are individual projects that no one is forced to use and all have n number of alternatives. They are completely different things.

Here is the thing. Many people simply do not care about things like open source even though they may use it.

Even when Stallman and Linus started many people didn't. Now the difference is these guys are doers and helped created a uniquely rich ecosystem that gives real choice to every forward generation and something to build on.

But open source typically works with small team starting things and then growing. The out of control complexity, sometime gratuitous is a real blocker as you need large teams to implement right off the bat.

Since open source cannot pay anyone or afford large teams in the beginning so this effectively rules out open source alternatives and choice. This is a pretty nasty outcome, but people have to care about these things just like Stallman and others did and fight it persistently with an eye on consequences of decisions taken today and undue complexity.

The web in terms of browsers and corporate sponsored projects like Systemd come to mind. Both will need large teams to develop alternatives ie other corporates, and thus de facto rule out open source projects and choice.

Post reply on HN