The integrated GPU, Bluetooth and WiFi, internal sensors, and even the fingerprint reader can all be driven by the upstream Linux kernel. In fact, the hardware is so well understood that I have successfully used almost all of the laptop’s features on Linux, FreeBSD, NetBSD, Minix, Haiku, and Plan 9. Plan fucking 9. It can run coreboot, too. The back of the laptop has all of the screws (Phillips head) labelled so you know which to remove to service which parts. User replacable parts include the screen, keyboard (multiple layouts are available and are interchangeable), the RAM, hard drive (I put a new SSD in one of mine a few weeks ago, and it took about 30 seconds) — actually, there are a total of 26 replacable parts in this laptop.1 There is a detailed 278-page service manual to assist you or your local repair tech in addressing any problems that arise.
"protects programmer interests"
I always considered that as a programmer I had the ability to dominate software users if I wanted, unfairly.
To me, Free Software is about ending that dominating relationship of programmers on users.
It never was about doing anything to benefit me as a programmer.
I strongly support the original views of Richard Stallman.
MIT, BSD or Apache2 licenses do not do anything for users. They are still unfairly dominated at the will of the programmer.
I think what matters is users, not programmers. Programmers can already make the software that they like, users cannot.
I think it's only fair to give users a guarantee that they will always be able to get usage, study, modification and redistribution under same license rights on the software they use, so they can find a like-minded programmer to help them understand or modify the software while guaranteeing that the programmer will never be able to start dominating the user by changing the terms of the license after making some modifications (e.g. vendor-locking).
JWZ’s Law of Software Envelopment: “Every program attempts to expand until it can read mail. Those programs which cannot so expand are replaced by ones which can.”
Do not build a browser. It is too much work. Instead write server applications with server-agnostic clients, and connect them with HTTP and mature P2P protocols that use established neutral infrastructure, like torrents. Your works must be usable with browsers as much as without them to be meaningfully accessible.
Someday the web will be gone.
if i can't curl-browse a website because js... and you are not trying to obscure it for x-y-z reasons, then big problem.