top | item 37688872

(no title)

trustingtrust | 2 years ago

A while back I stumbled upon google chromes privacy settings and found things like serial port on your computer to be accessed by websites. Turns out google has thrown everything in the mix because they probably want their 'Chromebook' users like children in school to use motion sensors for convertibles to maybe play games via a browser. Websites are just taking advantage of these things. The chrome browser has ruined the internet.

discuss

order

xyzelement|2 years ago

The browser is essentially the operating system for most computing today so access to peripherals is reasonable.

My current job uses USB security keys and I assumed I'd have to configure them in the OS before the browser was aware of them -nope! Chrome knows if the key is in the USB port and can interact with it with my approval, which is exactly right.

The leap from access to USB to access to serial is minimal. As long as the right permission checks are in place.

criddell|2 years ago

> The browser is essentially the operating system for most computing today

You're right, and it's such a bummer. I often think about how interesting it would be if we didn't end up with the Chrome/Safari browser duopoly and Windows/macOS duopoly on the desktop and Android/iOS duopoly for mobile. How cool would it be to see what the Amiga, Atari ST, Spectrum, OS/2, BeOS, etc... could have become with another couple of decades development. Even Windows and macOS would probably be different if they had to compete in a healthy, diverse ecosystem.

Instead, further concentration is probably going to happen once Apple allows alternate browsers. At that point, there isn't much to stop Google's Chrome from becoming the only application platform that really matters.

repelsteeltje|2 years ago

WebUSB is actually a W3C open standard. For instance, the BBC:MicroBIT educational dev environment runs in a web browser and allows python code to be pushed to the microcontroller straight from the browser.

https://developer.mozilla.org/en-US/docs/Web/API/WebUSB_API

Isn't that neat?! Well, it could be, as long as you browser didn't allow this to be used, probed or even enumerated without explicit consent.

sznio|2 years ago

>The browser is essentially the operating system for most computing today so access to peripherals is reasonable.

Sure, but the fact that browsers became operating systems is unreasonable in the first place.

denton-scratch|2 years ago

> The browser is essentially the operating system

That's a fashionable observation; I think it's a kind of illness. The idea that you can take over anyone's computer, and make it do things the user doesn't want done, and doesn't know are being done, makes some web-developer's heads swim; they can turn the whole internet into a sort of distributed supercomputer for their own private use. WHATWG bears a lot of responsibility for this.

A real operating system doesn't download and execute code from unverified remote locations. Nearly every website nowadays tries to load and execute in the browser code from any number of remote locations, without the user's approval or even knowledge. By default, I only allow 1st-party JS, which I consider to be an extremely liberal policy.

j45|2 years ago

> The browser is essentially the operating system for most computing today

The browser is more of a universal user interface than a universal OS.

Of course something like chromeOS/ChromiumOS is an OS what boots directly into a browser, but it’s not a universal interface.

Maybe WebOS was a step in that direction being a mobileOS that was all html and JavaScript.

Screenshots: https://www.webosose.org/docs/guides/getting-started/webos-o...

https://www.webosose.org/docs/tutorials/web-apps/developing-...

JohnFen|2 years ago

> The browser is essentially the operating system for most computing today so access to peripherals is reasonable

I suppose. Not for me, though, as I don't (and won't) use web apps or complex websites. I sorely wish there was a browser that simply didn't have that capability.

afavour|2 years ago

I guess I don’t know how you got from A to B there. I love the idea of kids being able to experiment with serial ports (though I’m not sure what you mean in that context, WebUSB?) in a safe, locked down programming environment.

Ideally it wouldn’t mean random web sites request motion data from you but I really don’t see this as ruining the internet.

jeroenhd|2 years ago

Webserial let's Home Assistant users flash their ESPHome devices without downloading or compiling any software. WebUSB let Google update my Stadia Controller to a normal controller after they shut down their cloud services. It also offers firmware updates for some Pixel phones.

These are all quite useful tools. I've never used WebMIDI but it's older than the other Web* APIs. When you have a use case for them, the APIs are a lot better than figuring out a cross platform serial port protocol (or, more realistically, writing a Windows application and letting the Linux/macOS/Android users figure it out themselves).

WebSerial/USB/Bluetooth doesn't do anything unless you permit it to. If websites used this feature, you've clicked "okay" when mapquest.com asked to use your serial port.

kody|2 years ago

My students were able to program Arduino devices from their Chromebooks because of this tech. That would have been inaccessible to them if they had to use a "real" OS, which the school did not provide.

skydhash|2 years ago

A failure of the school, then.

markdog12|2 years ago

You have to explicitly grant permission for a site to use a serial port.

panki27|2 years ago

And it can be rather practical. I've flashed firmware onto some devices using an online tool.