We told you earlier this year that Microsoft was planning to open up its .NET platform with a foundation and multiple open-source projects. The arrival of this project was yesterday, thanks to Microsoft’s release of a preview version of Visual Studio 2015. Also in there was news of Visual Studio Community 2013, a free version of the flagship IDE from Microsoft.

This new embracing of other platforms and open source from Microsoft has been much discussed in the media and online. It’s almost a 180-degree rotation for the company that, for years, showed complete disdain for other operating systems, and for other programming languages, like Java. Microsoft was the king, and it didn’t have to play well with others.

Today, however, things are vastly different for the Redmond giant. Server-side growth and enterprise sales were the bread and butter of Steve Ballmer’s Microsoft. But those sources of revenue are no longer completely locked up by it. Years of advancements in Linux and the Web have pushed Microsoft’s monopolies and duopolies to the edge.

Of course, Microsoft was going to have to wake up some day and get with the open-source program. The company was actually already considering a move like this as early as 2007. Now that the actual open-source .NET and C# are here, however, I can’t shake a familiar feeling. Call it déjà vu.

Sun Microsystems was in a spot similar to Microsoft’s in the mid-2000s. Certainly Sun was much smaller than Microsoft, but the company was still selling servers and some software when the first bubble burst.

Then Linux ate it alive. Sun was demolished by cheap, Linux-based servers. Attempts to get into that market by buying Cobalt were unsuccessful, and the acquisition was a complete, and abject failure. Sun was too late to board the Linux train, and you could make a very good argument that Red Hat was Sun’s true murderer, not IBM or HP.

Red Hat just took over the Java middleware market by offering free versions of its middleware tools to get enterprises hooked. The JBoss platform ate up the market for commodity JVMs, wile BEA and IBM both continued to harvest profits from the super-capitalized high-end enterprise markets.

As a result, Sun was really never able to make any money off of the one thing it had built that gained mass-market adoption: Java. This is frequently cited as a reason Oracle’s acquisition of Sun wouldn’t harm Java: If there’s no money in it, Oracle can’t screw it up too badly.

When the end began for Sun, open source was the banner the company took up to lead its last charge. Open-source projects were all anyone could talk about at Sun, even though they really didn’t have much to say about them. The MySQL acquisition was a smart move, but in the end the only real outcome for it was to make Oracle more intent on buying out Sun.

It is these final death throes that remind me of Microsoft’s moves into open source. That’s not to say Microsoft is dying. That’s silly to even contemplate. But I do feel as though Microsoft is pushing back on the same thinking Sun had: Open source commoditizes software, and that means lower margins for companies like Microsoft. It’s now turning to open source as a way to stem the tide of customers running away from it.

And just like Sun, Microsoft is now making some rather silly partnerships. Docker, for example, has been brought into the Microsoft wheelhouse, though for the life of me I still do not understand what exactly their partnership brings either side. Microsoft is also cuddling up to Hadoop vendors, another rather silly idea, since Hadoop does not run on Microsoft operating systems.

But then, technically, MySQL runs on Solaris. Sun might have had better judgment in some ways. Still, I feel as though Microsoft is making decisions based on the future it now knows is coming: a future of much cheaper software, much larger projects, and Microsoft software running inside of open-source software.

The final upshot of all of this, however, is that no matter what happens to Microsoft now, C# and the .NET platform will live on.