Microsoft Acquires Cross-Platform C# Toolmaker Xamarin
by Brett Howse on February 24, 2016 4:40 PM ESTIn what has to be the most obvious acquisition Microsoft has made in some time, today the Redmond company announced that they have signed an agreement to purchase Xamarin.
Xamarin creates tools to allow mobile developers to write code in C#, and have it run as native code on iOS, Android, and Windows. This lets the developer use Visual Studio and keep one set of source code but have it run on all of the mobile platforms.
Microsoft has been closely tied to Xamarin for some time, and have built in support for Xamarin into Visual Studio, Azure, Office 365, and their Enterprise Mobility Suite already, so really it seemed like this purchase was only a matter of when. Microsoft is acquiring the personnel in addition to the intellectual property of Xamarin and we should likely hear a lot more about their plans at Microsoft’s developer conference Build, which takes place the last week of March.
At Build 2015, Microsoft introduced “bridges” which would let developers on iOS and Android be able to port their apps to Windows 10’s Universal Windows Platform (UWP) app framework, with Microsoft demonstrating support for Objective-C code within Visual Studio and having it compile directly into native UWP code, with the iOS bridge codenamed project Islandwood. The Android solution was quite different, and project Astoria would have Windows 10 Mobile actually have an Android subsystem so that it could run apps written for Android. Although Astoria was released as a limited beta, it appears that this has been axed by Microsoft, although Islandwood is still moving forward and is currently in preview form on GitHub.
Xamarin is almost the exact opposite. Instead of trying to have developers port to Windows, instead they would be able to write in C# for Windows, and the Xamarin tools provide native APIs for iOS and Android and output code for those platforms, allowing a large amount of common code for apps developed for iOS, Android, and Windows.
We should learn more about this at Build though. The Xamarin tools should be a focal point during their announcements at the end of March.
21 Comments
View All Comments
Samus - Thursday, February 25, 2016 - link
Pales in comparison to what HP did to Palm. Unlock BBOS and Windows Phone, and many others of the WebOS era such as Symbian, only only needs to remember is android v1.0 was on one phone and didn't even support touch screen, iOS just got copy and paste functionality and was still incredibly simple, and RIM was showing its age and we all know what happened.WebOS could have a third of the market right now, but HP completely destroyed Palm. They didn't fix the hardware, they didn't support developers, and basically they Apotheker (CEO) didn't take mobile seriously at the precise moment when EVERYONE was starting to take mobile seriously.
Samus - Thursday, February 25, 2016 - link
Unlike*Flunk - Wednesday, February 24, 2016 - link
I'm hoping this means that Xamarin's tools will now be included with Visual Studio, without paying for the additional license. The cost was a serious issue for smaller projects/companies.vladx - Thursday, February 25, 2016 - link
Why would they pull a move that'd make the entire new division unprofitable?cjb110 - Thursday, February 25, 2016 - link
Because it would increase their reach into non-Microsoft OS's.Also once there those users might decide that actually switching to a Microsoft OS would be better.
Also if they do include them in the community then they'd increase the number of developers using MS tools, which can then lead to potential more sales of those tools and their OS's.
i.e. there are a number of secondary long term gains that could be had by making the entry free/low.
They also don't *need* the raw money now...so I'd imagine that for the 2017 or 2018 version this is exactly what happens, the license fee is scrapped.
doggface - Thursday, February 25, 2016 - link
Because if you write all your apps in C#... It isn't that much harder to write a Universal App - which microsoft need many more of.If you write in java or swift on the other hand ... it is a bit of a paradigm jump. Even if the languages have similarities.
C# could use a wider embrace. I told a colleague I was going to learn c# and there response was.. "Why limit yourself to Windows?" It would be nice to limit myself to Windows +mobile
ddriver - Thursday, February 25, 2016 - link
There are already better solutions if you want to write portable software. C# performance is even slower than Java, and MS APIs are as ugly as it gets.There would only be benefit to C# programmers, who have long been writing for windows. But while there are certainly plenty of those, most of them are hopelessly stuck in the "windows applications" paradigm, making it very unlikely for them to be productive
ddriver - Thursday, February 25, 2016 - link
...when targeting mobile platforms.Friendly0Fire - Friday, February 26, 2016 - link
"C# performance is even slower than Java, and MS APIs are as ugly as it gets."... What? Sounds like you're a bit lost here mate.
trevor_chdwck@yahoo.com - Tuesday, March 1, 2016 - link
+ddriver again, your writing about things your not quit up to speed on, if C# is slower than Java, why does Android run faster when the code is ported to C#? https://blog.xamarin.com/android-in-c-sharp/ Check that link out, you might be surprised. The APIs you refer to are actually quite nice to use and facilitate faster development cycles, something that C++ for the most part, does not. Enjoy your speedy, if a bit antiquated, C++ and let us C# developers enjoy this win for faster development of native mobile applications.