(Part 2) Embrace, Extend, Extinguish and Free Software
More of my opinion on "free software support" by large corporations... (don't be fooled).
I consulted for a child education company. They used games for teaching, games written in Adobe Flash. But their goal was to move to the iPad, one per child. To understand their technology I wrote a new game in Flash. Unfortunately, Apple's newest iPad would not support Flash. Then Adobe killed Flash. So I re-wrote the game in Objective-C. But Apple moved to Swift so I re-wrote the game in Swift. I tried to distribute it for the company but it required an Apple developer license and a "lock in" to the Apple Store, which conflicted with their company goals. The company, and their hundred child educational games, died.
The idea of "The Store" and vendor lock-in has become the new battleground. I saw, but have not followed so I may be wrong, the Apple-Facebook fight about "The Store". Apparently Apple wants 30% of revenue, including in-game purchase revenue, just for hosting games. I don't game, I don't use facebook, and I now avoid the Apple ecosystem as much as possible so this is a "don't care" (so far). But it does show that "The Store" is the latest battleground technique.
Part 1 (https://news.ycombinator.com/item?id=30269511) was the Microsoft motion to lock-in github developers, now requiring a Microsoft acccount. So I stopped using github.
"The Store" wars have taken another major step, this time on Microsoft's part.
I develop on Linux. One of my machines has Windows 10. I use WSL2 and X11 for some portable development work. I want to make sure my free software can run everywhere. I got caught up in "Embrace".
I bought a new Dell laptop last week. It runs Windows 10 S (W10S). I failed to do my homework on this purchase. New laptops are the latest victim in "The Store" wars. Apparently I needed a Microsoft account to even boot into W10S. I got caught up in "Extend".
I tried to install an X11 Windows server. That's when I found out that W10S only allows software from "The Store". That negates the whole idea of developing free software and making sure it runs everywhere. So I tried to make this new machine more "free software developer friendly".
You can turn off the "S" (Store?) lockdown, which I did.
The WSL2 setup was a great failing struggle (I won't bore you with details) so I decided to dual-boot the machine. That way I could do both MS and Linux development in their native environments.
I burned a thumbdrive with Ubuntu 20, booted it, and tried to set up a dual-boot.
That failed because Ubuntu installer could not find any disk space.
Boot W10 and shrink the file system.
Boot Ubuntu. Still no disk available.
Boot into BIOS. Disk is RAID6. Change to ACHI.
Boot Ubuntu. Still no disk available.
Boot W10 fails.
Boot BIOS, change back to RAID6.
Boot W10. Hard disk is encrypted. Remove encryption.
... (skip more of a 2 day struggle) ...
Get angry that I can't seem to use hardware I BOUGHT. (Part of the hidden cost of free software development nobody mentions because, ya know, it's FREE!).
Boot BIOS. Change to ACHI.
Boot Ubuntu. Install Ubuntu on whole drive, removing W10.
Everyone hears how the big companies are "all-in" on free software support. But the dancing elephants of large corporations are stomping all over the grass and free software is being crushed (Extinguish) as a side-effect.
"You bought a dishwasher that only allows soap purchased from General Mills. You figured out how to bypass the restriction. what's the problem?" Ummm... I bought a dishwasher to wash dishes.
"You bought a printer that only allows HP print cartridges. You figured out how to bypass the restriction. what's the problem?" Ummm... I bought a printer to print.
"You bought a laptop that only runs MS Store software. You figured out how to bypass the restriction. what's the problem?" Ummm... I bought a general purpose computer to compute.
Vendor lock-in is an "add-on" that controls hardware you bought, not for your benefit but for the company benefit. In some sense you bought "the right to use", not the right to own.
I develop open source software. I want it to run everywhere so I have various versions of hardware and software. I bought this laptop for Windows testing.
Unfortunately I didn't realize it was Windows 10 S. Initially I couldn't even install X11 which has been around since the late 80s. Testing involves a lot of other non-MS software such as emacs, docker and jenkins.
You don't seem to understand the subtle technique of Embrace, Extend, Extinguish.
I have the expertise to get around the various roadblocks (features?) but it costs a lot of very unproductive time. I skipped over the saga of trying to get WSL2 working, another source of frustration and loss of time.
I also left out the part that Windows will force updates unless you pay for their upgraded version. When I develop code I have a lot of "state" in open windows, an editor, browser tabs, and test runs. Microsoft just decides that the machine is "idle" and decides to reboot it, losing my work. Is it an "unrealistic assumption" that my work is of some value to me?
What's this about? You can make an Android version of the game too. Does Apple prohibit that?
> Microsoft motion to lock-in github developers, now requiring a Microsoft account
How is requiring a Microsoft account fundamentally different from requiring a Github account? What is the tangible difference?
> tried to set up a dual-boot > failed because Ubuntu installer could not find any disk space > Get angry that I can't seem to use hardware I BOUGHT
Yes you can, you just have unrealistic expectations. Dual-boot is unsupported by both Windows and Ubuntu, it's an advanced technique that requires you to break lots of assumptions.
> Install Ubuntu on whole drive, removing W10
See? You were able to use the hardware you bought, what's the problem?
I had a github account very soon after github was introduced. The github account was protected by public key encryption.
A Microsoft account is much more intrusive. Microsoft wants two-factor authentication which requires personal information. The claim is that this adds additional protection but (a) this is open source and (b) the repo is already protected against modification by public key encryption.
The company distributed its own games as a full education program. However, the only way to install them on the iPad seemed to require that they be hosted in the Apple Store.
Android versions of the games would not run on the iPad.