23 comments

[ 6.7 ms ] story [ 65.5 ms ] thread
embrace, extend, extinguish
What's positive about this: more options for developers. What's negative about this: Microsoft is trying to eat Linux. I doubt they will succeed but that's in fact what they are trying to do.
Are they? It seems that a lot of their work (WSL, VS Code, etc.) seems to be focused on building developer mindshare, which was largely taken by Apple [1] in the last 1.5 decade. After the Windows Phone and Windows 8 Metro fiascos, I think they realized that the 'launch the platform and the developers will come'-strategy does not work.

tl;dr: this seems like a direct attempt to lure developers away from Apple's platforms.

[1] To repeat a cliché: go to a developers conference and the majority of laptops will be MacBooks.

Whether they want to eat Linux or not, I don't think they can. It will always be free.
What if they bought Red Hat and SUSE. SUSE was acquired by Novell. It getting acquired again is conceivable. Red Hat is an unknown. Last one is Canonical. I think it could happen on the distro side where they get acquired, new stuff goes more proprietary, and so on.

As I run it through my head, the main way Linux would stay free are through the remaining contributors to kernel: IBM and Oracle. Mainly IBM since they contribute a ton of code, use Linux extensively, and previously put $1 billion on line to fight Microsoft and SCO. They fought them back before. Oracle's big on Linux these days. They'd probably hit them, too.

So, what protects the ecosystem of usable, free Linux is the self-interest of massive, proprietary vendors along with contributions from a few distro's. I probably wouldn't have called that happening 20 years ago.

>As I run it through my head, the main way Linux would stay free are through the remaining contributors to kernel: IBM and Oracle.

What about Google, which uses Ubuntu for its internal workstations?

I thought they ran on Macs after the big hack. Them on Ubuntu is new to me. If so, then they might fight too. I shouldve added them and Amazon anyway due to Linux-based clouds plus a history of legal battles protecting their interests. Good catch!
Linux subsystem is more of a developer tool than consumer one. And server is a lot more of developer only affair. So it seems natural choice.
How long until vendors start shipping "linux" software binaries that depend on a microsoft-specific quirk in their Linux kernel ABI reimplementation, and real Linux will need to add support for MS-Linux kernel ABI variant :)
I don't think vendors will do this for a while. After getting a lot of flak for railing against this (replacing the gplv2 linux kernel with a proprietary closed source one, essentially), I did some reading... it seems as if it's so buggy all kinds of basic software doesn't even work. On top of all the idealogical reasons to not use this, pragmatically MS has a very long way to go before the WSL is any kind of real threat to GNU+linux.

Emphasis on GNU.

This is usually where someone naively says "but GNU tools aren't that good and aren't used these days" (which is utter bs)

If you take the GNU and the linux out of GNU+linux and put it top of windows, what do you have left? Basically just windows. To hell with that. Windows is malware.

https://www.gnu.org/proprietary/malware-microsoft.html

It's not buggy at all -- I've been using it extensively since it was first available and have not run into a single issue.
To be fair, it depends on your usage, here are two problems that I found:

* Swift runs natively on Ubuntu, however on WSL only the compiler works. If you try to run the REPL it will crash.

* Emacs, slow start, seems to work for simple editing. Crashes when you try to install a package or when you try to list the available packages.

We had issues getting cron to run properly a month or so ago on Windows 10. Researching the issue revealed that other people had the same issues.

So there certainly are some bugs.

Seems as likely as asking when Linux will emulate BSD.

More likely I think is open source developers being asked to add patches to support limitations of WSL.

That's already happening. I've had pull requests for WSL issues in a piece of software I support, and I've seen them in other places.

Not the worst thing in the world.

You're missing another possibility: providing a thin Linux shim layer that farms out to a process on NT that is able to exploit the far richer kernel offerings. (Or just wait for the virtualized NT kernel that SQL Server Linux is built upon to become usable for things other than SQL Server.)
It seems unlikely, especially now that the WSL supports multiple distros. I don't see how multiple distros, which only have Windows support as secondary, could all depend on a Windows-specific quirk.

Also, I imagine that if anyone ever tried submitting a kernel patch to support a Microsoft-specific ABI, Linus would rip their heart out Temple of Doom-style.

This could happen: some application(s) will be shown to have better performance on both WSL and Linux with a given patch, but WSL will outperform Linux because of a patent-encumbered optimization.
Far away, most likely. I don't think there's much overlap in the kinds of things that run on Windows and those that run on Linux.

How many people do you know with PostgreSQL or MySQL in production, on Windows? Or with those vertical solutions usually available only on Windows?

Seems unlikely to me:

If they are a vendor starting from Linux, they'd not do this while adding support for WSL.

If they are a vendor starting from Windows, WSL is not an interesting target for them, and their customers wouldn't buy the product to run it on WSL – they'd have to name an actual Linux as the target platform, and it'd have to work there. It could happen with very dysfunctional companies, but I don't see it developing enough pressure to change anything about Linux.

Can someone with Windows Server experience please explain how this might make any sense at all?

I've never uses Windows Server or any of the MS server technologies. The closest I've gotten to this was using Exchange in the context of being just another user in a corporate environment.

If you need Windows Server, why would you want any part of Linux?

And, if you need Linux server, why would you pile gigabytes (?) of MS Server code onto your server?

I can see (and I like) the utility of WSL on the desktop for development. As this evolves it will become more and more useful. But on the server? Not sure I see the point.

They are position this for use in script sharing.

You might have a nix shell script, using a bunch of traditional GNU tools which does some "stuff" - you can now consolidate that workload onto a Windows Server.