42 comments

[ 3.4 ms ] story [ 94.3 ms ] thread
One of the comments points out the site in question is purely built around this feature (the Web Speech API): https://twitter.com/hammerlockddt/status/1304658792467116033

However, I think the original complaint is still legitimate. Why is Web Speech a thing, and what browser developers are poised to support such a feature, aside from Google? If Google wants to open source their speech tech, why don't they just do that?

I don't really blame Google, because they're just building a better browser than anyone else can build. But the effective result is definitely "embrace, extend, extinguish."

Perhaps it's not too late to refactor the web into a layered architecture so that it's possible to replace parts of it. But as long as we keep adding every feature under the sun, that goal is getting farther and farther away.

I disagree that Google is building a better browser then anyone else can build. Extension support on Firefox is better then Chrome for my use case and Firefox containers are orders of magnitude better then Chrome profiles, in my humble opinion. With Chrome if i want to open up 4 different AWS profiles/accounts I need 4 separate Chrome profiles with 4 different browser windows. With Firefox I can have 4 containers/aws profiles all in the same browser window. Furthermore, Firefox for android supports ublock origin which makes browsing the web orders of magnitude better. I may have an edge case for how I use a browser and I realize that, however, that just goes to show that we shouldnt have a browser monoculture. Different people use technology in different ways.
I still use and mostly like FF too, but just look at their marketshare (and their own developer confidence, with Servo and Brave). Chrome destroyed them and I think it was mostly on technical merit, from a general user's perspective.

Honestly Google did everything they could to help FF (to the tune of $400M/year) and Mozilla squandered it. Really sad.

Edit: Before this comment gets downvoted I want to try to explain it. When Brendan Eich wanted to make a new browser, he could've based it on Firefox/Gecko, which he had decades of experience with, but he didn't. What a vote of no confidence. Then Rust was invented because they thought creating a new language was the best way to catch up to Chrome's security. Even if you like Rust, you have to admit that was a bad decision for Mozilla's management.

Mozilla was the good guys, but being the good guys doesn't automatically mean you'll win. Too much wishful thinking can easily cloud one's judgment.

I'm only writing this because I care.

They paid everyone under the sun to bundle chrome with their installers, they are pushing chrome through every one of their properties, and last but not least they deliberately introduce incompatibilities.
I would like to see some proof for the last statement.
> Chrome destroyed them and I think it was mostly on technical merit

That most certainly had nothing to do with the large advertisement on the Google-owned most visited web page in the world and the way Google artificially limited their products on competing browser.

Please, look away regulators. Nothing to see here.

Edit: I have even forgotten to mention his they forced manufacturers to preinstall Chrome on every Android phones, an action for which they were fined 4.4 billions by the EU. Clearly the idea that Chrome won on technical merits need to die. Chrome market share was made through aggressive marketing and leveraging position in adjacent markets where Google is dominant.

I love it. Just recently used their experimental OCR API that is proposed as a standard. Basically instant OCR of any image in the browser with a simple API call. Bring more APIs!
Would you say premature standardization is a part of the problem?

It seems marginally better that Google at least asks others in an open forum. Microsoft basically dictated defacto standards by leveraging their dominant OS.

My preference is for vendor prefix like namespacing and waiting for at least two independent implementations before any serious standardization. But for web dev on the cutting edge I can see the temptation to play with new toys.

> Would you say premature standardization is a part of the problem?

More than that. It's a joke to try to standardize something that is still an open research problem. If something is going to be a standard, there should be at least one off-the-shelf algorithm you can implement that is roughly on par with the competition.

I'm not saying there shouldn't be any room for innovation, but... Well, maybe there just isn't. A standard probably has to be a lowest common denominator.

The problem is that the browser market is not actually a direct market for browsers. People don't buy browsers. They buy OSes, computers, phones, tablets, cars, fridges and other devices that happen to have browsers in them.

So the incentives are very skewed, the available resources too. Google will always out-compete Firefox in a relatively short time on whatever metric Mozilla comes up with. (If Google wants to of course. That's why Apple is doing all this privacy marketing thing and providing subpar but privacy-aware products.)

Ideally the browser and the web ought to be unbundled. People who pay for the Internet access should have a voice in where the Web goes. The ISPs should transfer some money to browser vendors. Sounds crazy? Yes, but that would at least provide different market forces. (And maybe browser vendors should be prohibited from accepting any other sources of revenue. Okay, but what about pull requests? Yeah, good question, this was never an easy problem.)

> waiting for at least two independent implementations before any serious standardization

What's the time limit on that wait? Should a vendor wait years to get a feature through other implementations? Should product development be stuck on other parties (potentially competitors) implement the necessary features required to develop the product?

Over time, this would result in a very large number of features limited to "vendor" namespace, how is that, in practice, different from having the features standardized (but largely unimplemented by other vendors)? And how is that better for users?

What if the vendor wants to pay someone to get those features quickly into alternate open source implementations, wouldn't HN complain then that the vendor now has direct influence in the other product's development?

It seems to me like given a set of requirements as simple as "quickly develop new web products that (may) require new web features" Google just can't win.

I also disagree that Google are building a better browser - better at/for what?

That was always Microsoft's position ... to paraphrase ... "our stuff is the best, because the most people use it, (and democracy implies most popular = best)". It was a bulls++t position for MS then, and it's a bulls++t position for G now.

Like MS was, Google is very good at pushing people to their products and keeping people. They are rather poor at writing stable, efficient, useful software - Chrome and Android are HHUUGGEE, and routinely updated with new security flaws, new APIs that add yet more security flaws, and new bugs. The purpose of chrome or android etc seems to be to force people to use it, and to force people to stay on it.

> I don't really blame Google, because they're just building a better browser than anyone else can build. But the effective result is definitely "embrace, extend, extinguish."

Google is the only tech company I know of that serves crappier versions of their biggest apps to non-Chrome browsers. Their main search page, Youtube, Gmail, hangouts. Probably more.

If you fake your user agent to Chrome, you get the "good" version of everything and it generally works fine. The differences on some sites, like their main search page, are quite stark.

But if you fake UA, you get CAPTCHA all the time and they won't even let you login to Gmail.

I'm done with Google at this point. I'm not going to be part of the masses marching us towards a worse situation than we had with IE in the 90's

I won't reply on Twitter, but the first response I see is: "You're attacking a website that only supports Chrome because it is the only browser that supports the API that its entire product is based around"

Kind of misses the point, because the same thing could have been said for every "IE Only" website back in the day. Microsoft was notorious for "Embrace, Extend, Extinguish," and a lot of the incompatibility back then was them Extending the web with things like ActiveX.

The only real difference now is that Google effectively took over the web standards bodies, so they can point to the W3C and say, "But this is standard!" and conveniently not mention that they were the one who wrote the "standard" and forced it through the standards process.

Edit: On second thought, another huge difference now is that most web developers are dependent on Google, either directly with advertising, or indirectly via search results, and I bet a lot of devs are worried about stirring up too much trouble and getting cut out. That may not come into play here, but it's definitely been an issue with things like AMP.

As another Twitter reply said, this was a nonprofit product created by one guy to make video content on the web more accessible, and this jerk goes on to complain that "You're turning the web into IE again". That's nonsense.
Why does the supposed intention of building the software matter? What difference does it make that this website is for a "good purpose"? At any rate, the OP deliberately blocked out the name of the service, and repeatedly said they meant this as a general point instead of about the particular service. This kind of comment seems to me more like people trying to deflect from the actual issue.
I beg to disagree.

The OP should have picked a better example since they were making a sweeping generalization. If it was so, that Chrome has been turned to IE, then he'd be able to find more examples to support it. You're giving the OP too much credit when the burden of the proof lies with the accuser.

It's not nonsense. Market forces are made up of locally sane choices (but in a usually orthogonal aspect).

Sure, it's good intentioned, but still, it pushes the needle a tiny bit, and all those add up.

Just the fact that the developer thought, okay, sure we'll just require Chrome, no biggie, instead of providing something as a browser extension or a desktop thing means that either a) for some people the functionality that this thing offers is king, so they would install even Baidu Browser too if they could just to get this functionality, or b) Chrome's market share is so dominant, that ignoring other browsers is a non-issue.

And of course Google has vast resources to win the feature war. This alone means a lot of niche products will be Chrome only. And then others can play catch-up if they want, but the first mover advantage is very big when setting web quasi-standards.

Is there something preventing Firefox or Edge from adopting this API? This is how browser APIs have worked for many years. If someone doesn’t like that their browser doesn’t support speech recognition, isn’t the main party under fire the browser vendor who hasn’t prioritized the work?
I have no idea, but the Firefox dev teams are always behind the clock, so even if there's nothing conceptually blocking them, bandwidth is an issue.
A great example is AJAX was an ie6 only extension.
On the first point, Google learned from Microsoft that they should make the standards instead of extending them. Extensions just lead to court dates.

On the second point, a couple of decades ago, "open sores" were things you didn't talk about in polite company. Microsoft offered the dominant platforms on the insignificant web and also the incredibly important office apps and the only OS most people used. And this was before mobile was part of most people's lives. Today's FAANG was then's Microsoft.

I'm guessing this is chrome supporting something that's in the w3c standards but other browsers dont support yet. That's what this used to mean at least.

If this is the case, this is google literally being the opposite of ie and trying to push everyone to support standards.

It’s actually not the developers’ fault — Chrome has non-standard features not available in other browsers. As I was reading through the comment thread it seems like in this case, it’s the MIDI API. This of course presents potential developers with a dilemma: develop an application using the exclusive API and therefore lock the user to that browser or don’t develop it all due to lack of cross-browser support? In essence this is not dissimilar to choice companies used to have to make when developing IE-specific enterprise applications, only the reason was more nuanced; Because of the sheer ubiquity of IE, it made sense to develop to that platform and accept its quirks and features, or not develop it at all, since developing cross-browser compatible applications could be prohibitively expensive and time consuming, if it was even possible.
Seriously, the tweet calling out devs for trying out a chrome only feature is misplaced. Enterprise apps should be cross browser compatible, but many personal projects come out of wanting to play with a new API.
Monoculture is bad, but this is a different kind than IE ever was. IE once went 5 years without a release.
You're just looking it different stages in the lifecycle of platform monopoly.
> Monoculture is bad, but this is a different kind than IE ever was. IE once went 5 years without a release.

Indeed, it was the other browsers that kept pushing innovation, MS just let their IE to rot and updated it with windows after every decade. The real criticism is Google having extreme power over what are new standards because of their monopoly they have garnered too much power over it.

I'm not sure that people who repeat this meme realize what the situation with IE was. The bigger problem back then wasn't that they added new features, it's that they basically packed up and did nothing after IE 6 had "won". There was a 5 year span between IE 6 and 7.

The problem nowadays seems to be more that Chrome is adding features at a pace where few others can keep up. But they are also very active in standardization. Real-world experience with features is crucial when it comes to standardization.

Well... I would argue that they "packed up" after they "lost", legally (to Netscape, who was no hero at the time), not after they "won".

Here is a comment I wrote many years ago going into some oft-ignored background (pre-IE 5) on Microsoft vs. Netscape and extending web standards.

https://news.ycombinator.com/item?id=5718968

And here is a talk I have at a conference a couple years ago that delves deeply into the timeline of the end and the downfall of Microsoft.

https://vimeo.com/310654342

Honestly, the web has always been filled with lots of broken promises and broken dreams and almost no one was ever incentivized to act in its best interests :(.

Internet explorer also added features at a pace others couldn't keep up with.

Then came the lawsuit that threatened to break up the company over a free product.

That's what made Microsoft stop work on internet explorer rather than the, 'we won!' narrative.

By over-extending chrome, Google's exhausting the competition to extinction.

Right now, only Firefox's remaining.

Apple's decided to go at their own pace.

Once Firefox dies, Google will go after chromium forks and start stop updating some key areas, turning them proprietory. Or better yet, packaging em to run on their own servers.

It's what they did/are doing with android.

To my own peril I’ll support whatever browsers and platforms I want to be bothered with.
Tweet seems pretty click-baity. Reality seems much more boring -- Google probably isn't going to be our evil overlords just yet.

Summary of [1] (detail from the "redacted" site) and [2] (linked from [1]):

Google was the first to implement a W3C spec (not a standard, nor on a standards track [2]), and I guess this Web site is one of the first to use the spec.

Other actively-maintained browsers are in various stages of implementation or haven't announced plans.

1. https://webcaptioner.com/help/getting-started/web-speech-api

2. https://wicg.github.io/speech-api/

People are getting hung up on the particular example in the tweet, but this is a broader phenomenon.

Slack _still_ doesn't support calls on Firefox, two years after they said they're "listening to feedback" about it [1]. Discord won't let me screen share on Firefox on Linux, but it will gladly allow it on Brave, the only Chromium browser I'll touch without a ten foot long pole. These aren't impossible problems to fix. These companies just don't care about fixing them.

1: https://twitter.com/slackhq/status/958645632620748800?lang=e...

As someone getting into front end dev with WebGL I constantly want to do this but with a message to specifically call out Safari. Just yesterday I found out they don't support navigator.hardwareConcurrency

My creativity and explorations shouldn't be limited by one vendors intentional gimping of the web to shield their app store revenue. And calling for devs to not push things where possible but instead go at the pace of the slowest player feels very "No Child Left Behind", which also leaves a bad taste in my mouth.

It was supported for a while but just ended up being more free bits for fingerprinting, Firefox spoofs it if resistFingerPrinting is on for example.
I have no proof, but I feel like it's more than that. I don't think getting number of threads is fine grained enough to make a meaningful difference on identifying a device. Especially compared to fine grained numbers I've seen extracted doing audio fingerprinting with AudioContext. At least with firefox I can give the user instructions on how to enable it again if they want to and they can make the decision for themselves. From what I read briefly last night about safari, it's impossible to get a number directly unless you wanted to recompile the browser yourself. I found this package (https://github.com/oftn-oswg/core-estimator) which seems to give an estimate, but its something someone who wants to fingerprint could also implement on a library level, so we're back to square one except with worse developer and customer experience.

Offscreen canvas is also something I wish more browsers supported, along with webgl2 (need for fbo). Although, I've heard rumors webgl2 might be finally coming to safari soon.

I also wouldn't have an issue with safari taking hard stances on these things if only they allowed competing browser engines on their phones.

Funny, I don't remember IE surreptitiously signing me in to website and scraping everything I do in order to sell me more ads. Chrome is much much worse than the old "Works in IE buttons" the web used to have.