So, Microsoft is finally adapting. But what are they actually doing? Why did Microsoft finally decided to make .Net cross-platform? What's in it for them?
Look at what's in this shiny new package: They've open-sourced just the core runtime. They are not open-sourcing Visual Studio. Or WPF. Or SQL Server. Or Active Directory. Or Office.
There's one thing the Linux ecosystem is pretty good at: Scaling, both up and down. There are technical reasons for that, but none could possibly be an issue for a software powerhouse the size of Microsoft. There are also commercial reasons for that, most important being: You just can't beat free.
So that's what Microsoft is finally moving against -- Dear startup founder who is afraid that licensing costs will eat him/her alive while his/her "Growth Hacking" strategy is working, dear embedded programmer whose tiny IoT device that just can't cope with the whole Windows mumbo-jumbo, welcome to the Microsoft platform -- You can now safely run your C# on these free platforms as well.
So, Microsoft is finally back in the game. They even seem to be playing nice. But the question in everyone's mind is: For how long?