There are two new Microsofts, both trying to make great big piles of money.
One is the tech infrastructure provider. They're keeping the corporate customers but now also going after consumer-facing tech and startups. To do the latter, they've finally had to shed their dogma and go where the devs are. OSS, platform-agnostic, this is the MS of .NET Core, VSCode, and family. There's good people working here, and they'll make Azure make heaps of money.
The other Microsoft does "platforms". They've had a lock on corporate for a long time, though no one enjoyed it. Now they want to expand their brand and their lock-in into the personal lives of upper-class knowledge workers, challenging Apple by being the "serious" to Apple's luxury-hipster positioning, and challenging Google by being coherent and playing a long game.
The first Microsoft knows that the second is no place for their audience, so they're in a hurry to separate themselves and their wares from the platform-provider. It's not just .NET Core and VSCode, there's a ton of smaller projects all moving in the same direction. Sql Operations Studio, Sql Server for Linux, Blazor, x-plat Azure tooling, x-plat Powershell, opensourcing MSBuild, it's comprehensive.
I wish they'd just split and become two separate companies.