I went to Build 2016 and all I got was a free, open-source platform that can write apps for Android, iOS, Mac, Linux (server), and all flavors of Windows.
At their Build 2016 conference in San Francisco last week, Microsoft announced that they would be putting Xamarin's cross-platform mobile technology into every version of Visual Studio for free. Prior to this announcement, Xamarin cost $1000 per developer per year per platform (iOS and Android). Microsoft recently acquired Xamarin, and Scott Guthrie dropped this bomb at Build only 10 days after the acquisition was finalized.
We need to consider what a game-changer this really is.
Ever since Satya Nadella took the helm of Microsoft in February, 2014, the firm has changed it's fundamental profit policy. No longer would sales of the Windows OS be a profit center. Prior to Satya's arrival, the Windows team led by Steven Sinofsky had control of the development stack, pushing everyone to develop apps for Windows 8.x, a Frankenstein of an OS that turned your desktop into a giant Windows phone. Needless to say, .NET developers were a bit put off.
My theory here is that .NET was seen as a bit of a threat to Windows by Sinofsky. Why would anyone upgrade Windows while they could just get the latest .NET Framework and keep running that old version of Windows XP? Sales of Windows was key if they were going to make inroads in the mobile market, where all the innovation is happening.
Nevermore. Microsoft ceded the mobile war to Android and iOS. At Build 2016 there was barely a mention of Windows Mobile. They hinted at some goodness to come, but there was nothing concrete. Instead, they now fully embrace Android, iOS, and Mac for client development.
Along with the shift away from sales of Windows, Microsoft is betting the farm on their cloud platform, Azure. If services are now their main profit center, they have a big incentive to make it easy to develop apps for Azure on every platform imaginable.
Why didn't they buy Xamarin last year? Great question. I, for one, thought they would. There were technological hurdles, for sure. Integrating and combining the Xamarin and .NET code took some time. But that wouldn't have stopped them if they really wanted it to happen. Rather than looking at Microsoft's actions, check out what Xamarin did in the last year that may have forced Microsoft's hand.
In July, 2015, Xamarin announced a new partnership with Oracle that may have flipped a switch. Microsoft doesn't consider many companies unfriendly. Oracle is one of them. Oracle has had financial dominance in the Enterprise Database space for a while. More relevantly, though, they have a cloud. That move must have hurt ("Hey Xamarin, I thought we were friends!")
Microsoft also announced at Build 2016 that the Mono project, the underpinnings of Xamarin technology, would now be re-licensed under the more permissive MIT license, and be contributed to the .NET Foundation, an organization that curates many Microsoft (and related) OSS projects. Oh yeah, Xamarin is also OSS under the MIT license and curated by the .NET Foundation. Boom!
There were several other announcements at Build, some of which we'll go into in upcoming posts, but the Xamarin announcement has everyone's head spinning.
I started .NET Rocks! in 2002. Today, we publish 3 shows per week, and have nearly 1300 shows in our archive.
Hats off to Satya, Scott Guthrie, and the entire cast and crew of Microsoft who gave .NET back to us (and then some). The world will never be the same again.
carl at AppVNext dot com