And Microsoft, as crazy as it sounds to me, kinda is when it comes to cool dev stuff.
We'll have to see if they have really changed or just waiting to regain ground and going back to the extinguish part.
But what I can confidently say is that, of all the BigCorps, Microsoft is the only one actively trying to make developer's life easier.
Apple is consumer first, so MacOS is getting harder and harder to hack on, for better and worse.
Chromebook was never a serious competitor. And Linux is Linux, hackable to a fault.
But Windows… which I have always despised, is, for the first time in my life, tantalizing… to some extent.
But then MS's bureaucracy can grind down even the most well thought out projects (Also getting better, though).
Making tools/functionality free such that existing devs don't want to jump, and new devs consider azure is a reasonable business strategy.
since Microsoft is still a platform business, it's reasonable to be wary of the negative potential of embrace/extend in connection with them, for the same reason it is in connection with Google and others.
It can be a bit fuzzy defining precisely where that benign sense stops and the negative sense where the "differentiation" brings harmful lockin begins. Then if you have a monopoly position the "extinguish" bit can come in. But actually AFAICT Microsoft rarely (never?) actually succeeded in extinguishing any of the open standards they were infamous for attacking - their successes happened earlier against proprietary competitors like Lotus 1/2/3 and Novell Netware
SMB pretty well extinguished the use of NFS; and Active Directory pretty well extinguished the use of LDAP.
Neither of these were really Microsoft-driven, though. It was almost the reverse: the ecosystem cloned Microsoft's approach into FOSS, and then liked it better, and replaced their own stuff with it without Microsoft's participation. Sort of like how BitKeeper's approach was cloned as git, which then extinguished most other SCMs.
They may have stopped the "Extend & Extinguish" part, but they haven't forgotten how to Embrace.
this stuff also happens in a benign fashion. Emergent behavior. People/groups and their interests bubble up the self-serving outcomes without being a conspiracy.
We have 4 features to support in this release. feature 1 is p0 it is basic functionality. feature 2 is p0 because 3 customers are asking for it. feature 3 is p0 because our team needs it to work with our other product. feature 4 is compatibility and we'll get to that as p1.
That's why products get telemetry and linkedin integration, but not compatibility with other software.
https://www.theregister.co.uk/2001/06/02/ballmer_linux_is_a_...
He was CEO of Microsoft until 2014, that is, 6 years ago.
Microsoft changed strategies because they tried everything they possible could to counter open source and Linux and lost. Now they are forced to play nice.
Being forced to be nice is not the same as being nice out of altruism.
If at any moment becoming jerks gives them more shareholder value they will become jerks again.
They have a 1.36 trillion USD Market cap (today). That's more than Apple's 1.29 trillion USD Market cap. It's hilarious how people on hacker news live in this bubble where Microsoft has faded away into irrelevance.
And they're also very good. I'm running Windows 10 right now on a dual-monitor, dual NVidia GPU, dual Xeon system and everything "just works."
You can use Nvidia GPUs in SLI mode in Linux and BSD too. I am using an Nvidia GPU right now and I am not using Windows, and "everything just works" too, no terminals involved. Are you implying that it's not possible to do this outside Windows?
How much of that market capitalization comes from running a de-facto monopoly of office suites for decades? As a consumer, it's hard to see how corporations like Microsoft push governments around the world to buy licenses in bulk because there are no alternatives.
Not exactly thanks to Microsoft.
What has changed is that MSDN is no longer delivered on CDs.
That's because "Open Source" is a much cheaper deliver mechanism if you control the platforms that make its freedoms meaningless.
Plus ça change...
You left out the part where you explained why any of those acquisitions are a problem: LinkedIn is no worse than it was before, GitHub and npm are both popular services people choose to use without coercion, and whether or not you like it a lot of developers are switching to VSCode because it's a better tool which makes them more productive.
I don't what you believe to be true about their Azure integration but I know many people who use GitHub, npm, VSC, etc. and none of them use Azure so clearly there's some key step missing in that process.
I'm gonna counter this with the fact that VSCode was way better maintained and optimized than Atom.
The GitHub before Microsoft seemed to me as an company that would half-ass everything they could, and Atom was one of those things.
When VSCode came, at least to me, it absolutely destroyed Atom with versatility and stability.
Amazon is the king of EEE these days. Microsoft is desperately trying to remain relevant.
.NET?
https://en.wikipedia.org/wiki/Visual_J%2B%2B#Sun's_litigatio...
Really?
Compelte opposite from my experience, Microsoft is re-inventing their own version of literally everything, even the smallest thing which doesn't have any strategic benefits. That shows me that they suffer extremely from not-invented-here syndrome.
For example, why does Microsoft need to invent their own Redis cache alternative (=AppFabric)? Why does Microsoft need to invent "Windows containers" which are incompatible with Docker Linux containers (aka normal Docker)? Why do they need to keep re-inventing Internet Explorer? Why does Microsoft need to re-invent their own search engine which nobody uses (Bing in case you have never seen/heard of it)? Why does Microsoft need to invent their own inferior Slack after already nuking Skype, Skype for Business, Yammer, etc.? Why does Microsoft need to invent their own Azure DevPops inferior alternative to GitHub, especially when they already bought the better tool, why compete with it with a shit product which makes every developers blood boil?
specifically the alternative you list are commercial offerings from other companies, that is just wanting a piece of the cake.
and for example, "internet explorer" is now going to be based on chromium, a terrible news for the web, but definitely a invented-elsewhere case.
regarding Rust a not invented here situation would be trying to develop their own rustc/cargo or a new similar language, sort of like apple with swift (not saying this is what motivated apple)
Not saying anything about anything else.
> Added their own package repository (MRAN), replacing CRAN.
How is any of this different than the many incompatible Linux packaging solutions?
How would you address insecurity and trust relations if you weren't a first-class contributor of CRAN? (consider the recent Python package exploit; although amateur, it's still an indication of such issues; I'm sure I remember this was an issue with the Perl packages as well; wasn't there an exploit pushed to the Linux kernel tree at some point years ago?)
The narrative changes from "MS is EEE'ing CRAN" to "MS allowed a package with exploits to be deployed from CRAN".
I am not familiar with any of the issues within the R ecospace, but I am very familiar with corporate culture, security, and liability awareness.
I thought the same thing many years ago. I was speaking with a friend (many years ago) who used to work for microsoft.
I said, "so they broke something and didn't support this, they're just developers and how do they know all the issues?" Basically, I was saying the coders were human, and sometimes getting something out is hard.
My friend said, "No, don't be naive. they had meetings. They sat around and said, "how can we own this?""
It might be interesting to revisit the (ancient) halloween documents:
https://catb.org/esr/halloween/halloween1.html
This also works in a benign fashion. Emergent behavior. People/roups and their interests bubble up the self-serving outcomes without being a conspiracy.
We have 4 features to support in this release. feature 1 is p0 it is basic functionality. feature 2 is p0 because 3 customers are asking for it. feature 3 is p0 because our team needs it to work with our other product. feature 4 is compatibility and we'll get to that as p1.
AFAIUI, it's mostly just R with better parallelisation of matrix libraries (which is cool).
It's not quite compatible, but I've used both through Conda a bunch, and haven't hit any edge cases that caused a problem.
So yeah, you're right that it's embrace/extend, but the extend was done by a startup which they bought.
> James Gosling, who created the Java programming language in 1994, and Bill Joy, a co-founder of Sun Microsystems, the originator of Java, called C# an "imitation" of Java; Gosling further said that "[C# is] sort of Java with reliability, productivity and security deleted."
(Wikipedia)
Although they weren't allowed to do that if I remember right, so they basically had to create C# - and C# turned out to be fantastic in my opinion.
It's true that Microsoft historically has been an intensely competitive company, often trying to undermine competing technologies, e.g., with "embrace and extend" strategies.
But whenever a competing technology -- whether a language, or a framework, or an application -- gains adoption with developers or users, Microsoft to its credit will follow along, sooner or later, and do the work necessary for making it a first-class citizen on Windows.
(For those who don't know, Rust is originally a Mozilla project.)