What does Microsoft want with Linux and Open Source? [video]
lbry.tv
lbry.tv
I don’t believe that windows devs who have avoided Linux so far are going to ‘try out’ WSL at all, let alone be converted. I work in a .Net house, and the only people who use WSL at all are those who have Linux experience. The rest? Nothing could change their view that windows ‘works’ and ‘is secure’.
Also he mentions shells - in Windows we have PowerShell, which is pretty great actually. It’s not as concise as Linux (Resolve-DnsName vs dig), which hinders interactive programming, but the scripts are more readable. In that example, the Linux version requires knowledge of dnsutils, while the powershell is obvious. I’m still more inclined to write scripts in PS than in bash, for this reason.
WSL isn’t about giving windows users the ‘Linux experience’ - it’s about keeping people on Windows. With linux dominance in the cloud, there’s more reason than ever for devs to shift to Linux. WSL _extends_ those developers by _embracing_ them, then finally _extinguishing_ them because it’s still a bit $%#= and if they develop for Linux they’ll end up transitioning.
Thanks to covid I want to use my desktop at home, it's windows, I'm not gonna put linux on it (don't feel like it).
WSL allows me to still do modern web development on windows. (fiddler saved my ass with routing to ports).
I've heard WSL has pretty poor adoptation. WSL2 fixed a LOT of things. Docker runs fast, the IO is pretty fast now. Overall it's ok. I stopped doing windows updates cuz they kept breaking my shit. :/
Ultimately, M$ needs to provide an ability for developers to do linux. Every server is linux. They would be insane not to have the ability to code that stuff up on windows.
What annoys me a bit is how much M$ has moved away from its previous model and people don't see it. They're been pumping SO MUCH into the .net core it's ridiculous. They have fully embraced linux because they realize that they wont keep devs by having windows only on Azure.
They've abandoned the platform and they're fully going for service oriented products, and deploying them on everything. (or web).
"Text surrounded by asterisks is italicized, if the character after the first asterisk isn't whitespace."
I didn't understand that part of the sentence. "WSL is still a bit $%#=" (scuffed?) "and if they develop for Linux they'll end up transitioning" (because WSL is scuffed compared to just running Linux?) - not sure...
Anyway, I was on Windows for most of my career. In 2010 when I got interested in Node.js it still didn't run very well on Windows. Having only ever used Linux seriously as a server and having tried unsuccessfully many times to keep a Linux desktop running, I wasn't ready to switch. So, back then, Node.js was just for side projects.
Fast forward 5-6 years and most of my projects are now SPAs with a .NET backend. Node.js is running okay on Windows, but package management with NPMs thousands of little files is just slow on Windows. Despite that, I transition to doing more and more backends with Node. I stick with Windows.
Forward another 2 years and I'm finally sick of the Windows tax with regards to Node and NPM. I'll never move to a Mac as my main machine since they can't even get window management and other basic facilities right and I hate the hardware lock-in, so I figure I'll try a Linux desktop yet again. This time I find many people hailing Manjaro Linux as the distro that is the least maintenance desktop. So, I installed it on one laptop using the default XFCE desktop environment, which I never really tried before.
Holy cow! I used to have to fight with Windows to make it this minimalist! XFCE actually does Windows better than Windows. Out of the box it lets me re-order windows on the taskbar and right-click to close them (a feature I had to install 7+ taskbar tweaker to get on Windows). Oh and the file explorer (Thunar) has tabs and so does the terminal! I can also control the whole OS GUI with just a keyboard, just like in Windows. I got all the major software I need - Chrome, VS Code, Thunderbird, Slack, Beyond Compare, Remote Desktop (FreeRDP) - and now I get to use all the famed Linux tools without any issue at all.
Within three months I had installed Manjaro on my main workstations both at work and at home and I've been running it for over 2 years now. It's actually way less maintenance than any Windows machine I've ever had. There's just so much less crap to fight against, like forced updates downloading and installing, slowing down my machine right in the middle of my so-called "active hours". I used to spend hours researching how to force Windows to do exactly what I want to do by setting various group policies, registry entries and so forth - now I only do that minimally for my gaming and home entertainment machines. I'm so happy!
Fundamentally, what advantage is Windows going to maintain with a closed source kernel? How many customers care that MS isn't using the Linux kernel? Not many. The bean counters are eventually going to start ask questions, like "why are we paying to maintain our own kernel when we could just use Linux?".
I don't see what strategic edge MS is going to hold maintaining a parallel OS long term. If they change rapidly they lose the legacy advantage, if they don't OSS will catch up. It isn't like NTFS is giving them a huge advantage over ext4. The key patents will all be starting to expire too.
The only effective resistance to OSS seems to have been this service-based cloud model that exploded onto the scene in the last, what, 10-15 years?
Backwards compatibility is a big one, and arguably the key principle behind all of Windows' evolution. Yes, WINE, yes, apps all moving to the browser, but there's a long tail of applications that won't work as well under WINE as they do on modern Windows versions.
Just to hammer this point home some more: There are actually also significant disadvantages to the Kernel being closed source.
As an example: Windows has had an official port of OpenDTrace for a year now. But sadly, the documentation for it is almost nonexistent, and just finding out which functions you might want to instrument (and what context data is available there) is much more painful than on other systems.
OTOH, if you're on OpenSolaris or Linux (where you'll likely use bpftrace instead), documentation on the matter is abundant.
Like Apple did before them, they will take an open-source kernel loving produced by thousands of willing programmers (BSD for Apple, Linux for Microsoft) and put their own proprietary GUI (Aqua for Apple, Windows for Microsoft) on top of that.
I think the more interesting question should be, what do open source want with Microsoft.
Edit: The new Terminal and WSL(2) certainly make my days better. I would prefer Linux "on the metal" but it's getting less annoying that my company standardizes on Windows.
Also, for a long time, all a .net dev needed was Visual Studio, so setting up a workstation for a developer was really, really simple.
Half the guys I know keep a bash file and all their vi configs on the cloud so they can move them over.
Honestly, when I did windows dev ~2008-2012 it was friggin -easy-. It literally "just worked". Way more so than osx obliterating it's compiler every update.
Everything plays into Azure though. .Net Core is great, but it’s just a little bit better with Azure. VSC is awesome, but it’s really awesome with WSL and Azure. And so on, and the best part is that they’ve adopted things like python as first class citizens for Azure system services so your developers can build things that run on the same services as the powershell scripts your operations guys build.
I don’t think Microsoft has changed one bit though. They are not doing it to be nice, they are doing it because it’s the best strategy to sell Azure and Officr365 along with it. I don’t mind, I work for a Danish city, Microsoft had by far been the tech company that interferes the best into our business and operations models for 25+ years. AWS is learning of course, but when you’re deeply invested in office365 anyway, there isn’t a long leap to Azure. Especially not when the tools that come with it are good.
The killer for me is friction and despite Microsoft’s best efforts, it’s always the most painful platform to work on. Nothing is finished, polished or reliable.
(I include WSL2 in that)
granted mac osx does this still better. but i dont want to use mac anymore. did for 8+ years...
I don't come into contact with Windows much, but had an ~18 month contract a few years ago. A Fortune 500 company, an interesting project. I ended up writing some important parts in software that has an actual positive real-world impact. During my work, I was of course given a Windows machine. I installed Cygwin and did the vast majority of work there. I'd drop back into Windows proper just for Outlook and to occasionally use an industry-specific tool.
Sure I would have preferred to work on a Linux machine, but having to use Windows doesn't mean that the work is pointless, or that I cannot put my best effort into it.
I haven't tested it with WSL 1 though.
It's all business for them. They don't love Linux anymore than they do FLOSS. Argument would be, "but Microsoft is one of the biggest open source contributors". It's like philanthropy, you give money to those in need, but don't fundamentally address the problem, but make it look like you do.
All the corporations that contribute to open source projects in terms of man power & finance, do so because they can create more business opportunities & make them noble in eyes of public. But, what they do is take open source projects that have "permissive license" & are growing in popularity. Then contribute, add in proprietary code, sell them as enterprise solutions. In the end, the user of that program is denied any freedom to study the code & modify for their own needs.
A big tech that open sources its internal software can do so for any reasons and let me say one of them. They get a community that basically maintains the software, writes documentation, add features & fix bugs for frere. The tech could then hire people trained with that software which they open sourced, saving them training costs.
Licenses from OSI & BSD suffer from their "permissive" nature. They think about freedom, but not for who. They think that the ability for a user to not turn a open source software into a proprietary one, is restricting their freedom.
But, Free Software thinks the opposite, and puts people who are denied freedom . Free Software with its Copyleft license, guarantees user the absolute freedom to do anything with the program they got for free/money, provided they give the same freedom to others. Basically make the freedom go viral.
Ultimately MS over between 2010-2020 lost developer mindshare and they weren't going to get it back. So pivot time and now we have Linux all the things.
Once they have developers back..., well, who knows what they'll start doing then.
They knew where the market exist,so embraced Linux. They wanted to prevent migration of windows users to MacOS/Linux ,so created WSL2 which lured many MacOS users.
It also added DirectX for WSL2 , which is proprietary extension. It based it's edge browser on chromium because they were lagging behind chromium wrt performance.
They want profit. So,they do these things. Some actions benefit floss while some don't. Problem of capitalist company. They care about capital more than us.
My point is without Microsoft we wouldn't be where we are today. We'd be lagging far behind. Apple being the only competition, would probably still be selling Apple 2.
You are free to not use products from companies you don't like. Trust me I do value Linux, currently typing this from my Ubuntu machine. I hope it speeds up in development, but without the proper incentive, it simply is not happening. Only companies I see in the desktop space are valve at the moment who have vested interest on the gaming aspect. I don't think every developers are going to say kumbaya and develop for Linux without getting any kind of financial support. O.o
If all unix-like OS devs or even just all Linux devs pooled their efforts in to one distro, they'd have beaten Windows long ago.
You would get "generic js error" whenever you had a javascript error thrown. It was untenable as a developer.
Theyre releasing dX on linux so they can stay relevent in the gpu space. Being able to use a windows driver for your linux install is pretty clutch considering what a cluster that has been .
I'm generally giving them the benefit of the doubt because they really didn't have to do -any- of this, and still make money.