Skip to main content

This is why Microsoft's purchase of Xamarin is huge for the future of Windows 10

We all thought it was happening last year. At /BUILD one of the most pervasive predictions was that Microsoft would announce that it was acquiring Xamarin (rumors go back to 2014) the increasingly popular cross-platform toolset that allowed developers with a C# background to build for multiple platforms with a shared C# backend.

It didn't happen.

However, Microsoft did announce an increasing partnership with the Xamarin team, and began building integration into Visual Studio 2015 including support for an Android emulator within our IDE (integrated development environment - not interactive as a previous version of this article stated) of choice.

So, you may have seen developers going a little nuts with the news this week that Microsoft are acquiring Xamarin for $400M and be wondering why exactly that is, and what it means for the future of both companies. I'm going to do my best to explain what Xamarin is, what it is not, and what might happen now that Microsoft will own it.

Full disclosure: I am not Xamarin certified so this will be a distillation of knowledge picked up from dabbling with the products and the various presentations I've seen from Xamarin employees.

What is Xamarin?

Xamarin is a company that builds tools for developers, and has two particular products that I'm going to call out specifically; Xamarin Platform, and Xamarin Test Cloud, both of which will no doubt have been appealing to Microsoft in the acquisition.

The Xamarin platform is what most of us are excited to see joining Microsoft, and there are a couple of important sub-products which you'll hear more about in the future I'm sure: the shared C# project, and Xamarin forms.

For C# developers, the platform allows us to write all of our logic in that one language, allowing for much of it to be shared across solutions. We then write the specific front-end markup and/or code for each native screen (i.e. XAML for Windows). Of course there will always be a few specifics for each platform – you won't be pinning a live tile on Android for instance – but the majority of the code should be shareable.

Xamarin forms is an attempt to take away those platform specifics, by giving a universal UI language that will map to the relevant platform's controls depending on where it is running. In my experience, it has limitations and usually results in some fairly basic UIs being created. However, I'm given to understand that the newer versions have made great strides.

You may wonder what the benefit is to Xamarin compared to other cross-platform tools, of which there are several. Many of Xamarin's rivals use web technologies to deliver their solutions, which usually incur significant performance costs compared to coding in the platform's native language. Xamarin's code is compiled into native code for each platform using their tools rather than being interpreted – in simple terms it's substantially faster, matching or sometimes beating the usual languages. In fact, there is an excellent independent test performed by Harry Cheung (an ex-Googler) here which places Xamarin above Objective-C on iOS for performance (but below Swift) and above Java on Android.

Xamarin Test Cloud provides incredibly powerful service for developers on all platforms which allow for automated testing on almost every device imaginable from one deployment. Developers write test scripts which will be used to confirm the app is working as expected and these tests are then deployed and run on a myriad of devices. It's worth noting these are actual devices off in a Xamarin warehouse all working around the clock rather than virtualized tests. When you imagine the number of possible devices for iOS, Windows and especially Android: the value to developers is clear.

What isn't Xamarin?

In a word, cheap.

I expressed it in an image earlier on twitter, Xamarin is not an inexpensive proposition. Understandably so, as they have built a series of excellent products and have a team dedicated to ensuring they offer 100% coverage of all native APIs. That means the second an Android or iOS release goes live they have to make sure they are mapping/exposing the new platform capabilities to their C# writing customers.

As a result, while enterprises (indeed the big Fortune 500 companies that use Xamarin) could easily justify the expense of Xamarin subscriptions, many smaller developers and certainly Indies were looking at a significant yearly cost that was charged per platform, per developer. That means a small team of 4 developers working on Android and iOS would pay the prices here (opens in new tab) 8 times once a year – a little under $8000. An Indie would be looking at around $600 per year for both platforms but crucially wouldn't get the fantastic Visual Studio integration, which would cost £2000 per year.

Xamarin is also not (as other publications may have you believe) a tool to port apps. You won't be taking existing iOS and Android apps and efficiently running them on the other platforms. The closest thing to porting that Xamarin could achieve would be making existing Windows apps and keeping some of that code on new iOS and Android apps – however, the code would have to be very carefully structured or already built with that port in mind. With that said of course, now that Microsoft has bought the platform, who knows if the path from UWP to iOS & Android could become that much easier…

What will Microsoft do with this acquisition?

Here is the interesting question. I believe that this purchase is Microsoft buying another chair at the mobile development table.

Windows Mobile development has mostly stalled as Microsoft lost the momentum it had built last year. And while UWP has shown some encouraging signs of growth it's most appealing to the enterprise developer rather than consumer-focused teams given the market share situation combined with the fragmented development platform (does a new consumer app target WP8? WP8.1? UWP?).

Xamarin though is an excellent cross-platform proposition for developing native quality, native performing apps, on Microsoft technologies.

Microsoft services, on any and every platform, does that strategy sound familiar? (See our earlier report 'Windows apps on iOS and Android - The future of Windows 10 may be virtualization')

What we may, in fact, be looking at is Microsoft's first step in a true Universal App Platform, not just a Universal Windows Platform. It's not completely crazy thinking to consider a further expansion of Xamarin forms that could reasonably lead to a single, Microsoft-powered system that targets every device available on the shelf.

I'm sure the test cloud will have also appealed to Microsoft, and there are a large number of Fortune 500 companies already making extensive use of it – if not the full Xamarin platform offering.

What remains to be seen is exactly how this acquisition affects the subscriptions and pricing. Xamarin has maintained an accomplished and sizable sales team up to this point, and they have built a viable business on top of the excellent platform in a very short space of time. Will Microsoft be keen to maintain that revenue? Or is it better to bring these tools to the countless developers who use Microsoft's technologies every day, and bring about a new deployment reach for those already on MSDN subscriptions?

I sincerely hope to see the technology opened up to more developers, with more available Indie plans and the commercial subscriptions folded into MSDN. You'll have a lot of happy Microsoft developers if that does indeed come to pass

  • The app situation is critical.. I hope all these things finally work. Posted from Windows Central for Windows10
    Posted with still the best phone running Windows10 (1520)
  • Are you porting/creating your app to win10? So use xamarin for free... That's should be the ad for developers, or something like that
  • This ⬆
    Heavily discounted Xamarin subscription for developers who make UWP apps. Posted from Windows Central for Windows 10 L950XL
  • I say make Xamarin forms the default for UWP app templates in Community edition and make investments there for future revisions.
  • But then they'd still have to make all the apps with complete features AND keep them updated. Still the lack of market share is so low that the incentive is not enough.
  • Universal apps, then there is more than enough market
  • You have to start somewhere.
  • Actually, MS should say "develop a Windows app, and you can use the service free for 24 months" Posted from Windows Central for Windows10
    Posted with still the best phone running Windows10 (1520)
  • Lol you an me both buddy. Mines is better by the way.
  • Then we'll probably get an even greater amount of crap apps.
  • Maybe so, maybe not... Who knows. Posted from Windows Central for Windows10
    Posted with still the best phone running Windows10 (1520)
  • Maybe, but the beauty of Xamirin is, if more devs start creating more crap apps then iOS and Android will get those same crap apps too.
  • Who's to say the developers will bother maintaining those apps once that time is up? Bribing devs hasn't worked in the past (Instagram). There needs to be a way to encourage further development and maintenance of apps, so that the apps have all the features of their Android/iOS versions. Posted from my Moto X Pure Edition via the Windows Central App for Android
  • True dat. Very true. Posted from Windows Central for Windows10
    Posted with still the best phone running Windows10 (1520)
  • You have valid, good points. People are still down voting you. What did you say that they don't like.
  • How about, "Use the service for free if you can produce a quality UWP within the 1st year. Continue to use the service for free if you keep the app updated at least every 6 months and the app has a certain percentage of positive reviews." Keeps the garbage apps out and discourages app abandonment. 
  • I don't think that would work either. There is no pattern you could provide to guarantee that all apps fitting it are quality. They could hand-pick apps, or give discounts based on UWP app revenue.
  • Hi dear. I have 1520 in 8.1 still..what is your opinion for me..update windows 10 as windows insider is better for me or wait for official update by Microsoft by air?
  • That was a nice joke
  • The article specifically states that this is not for porting apps.
  • For once I agree with you. The 1520 runs great on 10 but the latest build asked firmware update are making my 950XL similar or even a little better than my 1520ees Posted from Windows Central for Windows 10
  • If this is the first time you're agreeing with me,,,,,, you've been wrong a whole lot in your life.. Lol Posted from Windows Central for Windows10
    Posted with still the best phone running Windows10 (1520)
  • Now, Rodney, that's not very nice. It could be that it is the first time he's ever seen anything you've written. ;) 
  • Lol Posted from Windows Central for Windows10
    Posted with still the best phone running Windows10 (1520)
  • As always, pretty full of yourself huh.....
  • Yep! Had to give you a thumbs up, bro. Lol Posted from Windows Central for Windows10
    Posted with still the best phone running Windows10 (1520)
  • Not sure why you got down voted, the app situation is critical! People seem to be blind to that fact in the name of being loyalists. I'm a loyalist as well but I'm not blind to downward spiral Win Mobile is currently in. I suppose this will be the next 'big thing' for people to cling hope to for the next 12-18 months until the next 'big thing' to save the platform. Don't get me wrong though, I want to see MS succeed but I just don't think they can recover from this, would love to be proven wrong!!
  • We got a lot of kids around here.. Emotionally babies.. They're easy to spot, because they down vote comments like these that hurt their feelings. Just watch, and see.. Posted from Windows Central for Windows10
    Posted with still the best phone running Windows10 (1520)
  • More like we got a lot of grown up adults spreading bullshit and writing like retards
  • Hey Rodney, You're a cool guy bro. Lumia 920 the only phone which truly made an impact lol :P
  • That's what I hear☺ Posted from Windows Central for Windows10
    Posted with still the best phone running Windows10 (1520)
  • People downvote his comment here for two reasons, he always pops up to "WP sucks... MS sucks... the thing in this article sucks..." Which is annoying, because he's just negative and because of the ellipsis use. The other reason is because his signature, anyone who is proud of their phone which isn't a 1520 might be offended.
  • Its for the leep(lumia sheep) like all the editorials
  • Grow up. Posted from Windows Central for XL
  • He's right though, I think they're trying to keep as much of the fan base as possible , for as little as it is, by making empty promises in the hopes fans won't jump ship like many others who have realized the pattern have and simply move on. Posted via the Windows Central App for Android
  • I was wondering if product support other .NET languages such as VB.
    Supporting only C# will make little sense both VB and C# compiled to same IL?
    I am dev and working with C#,VB and JAVA. I find VB by far the most productive. It will be real shame only C# is supported.
  • I left vb for the poor support of linq only...
  • Your signature is long and boring
  • Agreed. Also the state of Windows 10 (build 10586.107) on mobile is really bad. 8.1 was as close to perfect as you could get. Most apps on 10 constantly crash, edge browser sucks, and it randomly reboots at least every other day. It's really disappointing. Been using Windows phones since Windows Phone 7.
  • They should make it available to msdn subscriptions! Except the test cloud maybe, that's expensive
  • It will probably be included as msdn subscription gives you all of Microsoft software. P.s: It's free for me anyway as I'm a student l. P.P.S MSDN top tier subscription is also free for me as I'm a student partner with Microsoft :P
  • Lol given that they dropped the cheaper TechNet to go all in with msdn @ a higher cost
  • Xamarin if free if you published almost one WP app
  • Keep dreaming guys.... What happened to that Nokia acquisition... Uh?
  • That literally has nothing to do with this. Your level of argumentation and debate is as deep as a puddle. It's analogous to saying global climate change is not happening because duh, it just snowed in winter. Talk about strategy, what Xamarin means, how it could go wrong, and why it may not have been smart to purchase. Simply comparing it (without an actual comparison) to another acquisition that was hardware (and against Microsoft's traditions) versus software (their bread and butter) is a rather low bar. You can do better.
  • Lol.. That's funny...
    I know this doesn't have anything, or anything yet, to do with porting apps, but in MS's particular case I'd have to believe that their intentions is to boost their app catalog (in some way) with this acquisition. Posted from Windows Central for Windows10
    Posted with still the best phone running Windows10 (1520)
  • Not really, not funny either
  • Would you please shorten your signature? They should limit it automatically but until they do...
  • Lol.. Get a life☺ Posted from Windows Central for Windows10
    Posted with still the best phone running Windows10 (1520)
  • I kindly asked, someone should teach you some manners since your parents clearly failed.
  • Took the words out of my mouth.
  • Maybe what Ricardo is saying is that Microsoft did not/has not fully leveraged Nokia's core competencies and fully integrate the Nokia Mobile Division skillsets into the WP10 projects. (I personally would have kept the Nokia branding.) So he is perhaps concerned MS will not fully leverage this new purchase fully? Just the benefit of the doubt. I like the purchase assuming personnel does not change radically. Like Yahoo! and Tumblr. Tumblr needed $$ not layoffs to continue growth.
  • Yeah, so now you're on another article just like your boy....
    Nevertheless, you do pose a much better point than he does. Posted from Windows Central for Windows10
    Posted with still the best phone running Windows10 (1520)
  • Yeah...
    You say...
  • Sometimes you make good points, but now instead of understanding the comment you had to mention he is on another article, you just couldn't refrain yourself. You see.. Exactly this kind of comments ask for down votes.. And well you just received one
  • Lol.. Who cares. Posted from Windows Central for Windows10
    Posted with still the best phone running Windows10 (1520)
  • You should, else all your comments will lack in credibility.
  • Dude, you speak as if I should give a damn.. SMDH. Sorry, I never will, but you can keep wasting your time if that's what you're here for.. Otherwise, say something significant, or don't waste your time.. Get it?
  • Stop talking like an illiterate breeder. **** off with the "........".
  • Ok, since you said so I will......... Ok. Posted from Windows Central for Windows10
    Posted with still the best phone running Windows10 (1520)
  • Microsoft did not have the right to keep Nokia branding for the long term. They would have been building a brand that they would be forced to abandon in a short number of years (seven, I think?).
  • Nokia brand lisence for smartphones was just transitory, already expired. MS did get 10 year lisence to use Nokia on feature phones but feature phones will vanish soon anyway. In theory Nokia could lisence their brand also for smartphones but in practice they wont as it would deprecate brand value knowing how Nadella rolls.
  • A shallow piss puddle! 
  • Lmao Posted from Windows Central for Windows 10
  • You've done it again Rubino. You love using smack down when u haven't understood the post you are bashing.
    What he is saying is, MS spent billions on Nokia and haven't used it to anywhere near its potential which is a common MS problem, acquire and shelve, he is fearful this may happen again. U should try reading with less emotion and try to understand the intent of the writer before sticking the boot in....again
  • I think his point is valid. If that's what the op meant to say, they should have said that. Instead it seemed like it was supposed to be some super-diss that everyone was meant to understand instantly and while I cant speak to others, I immediately thought "huh?" and moved on rather than trying to understand the poster's intentions on a spiritual level or reading prior posts to understand their posting style and maybe by extension the meaning behind this one. It seemed about as closely related to the original subject as many posts these days which is why I often skip reading responses lately in the hope of actual conversation on the topic.
  • Hey hey hey! Danny boy's my pal! He works and is an enthusiast for MS WAY MORE than you and I. Plus he's our lead writer for WC, so please show some respect. I love MS too, thats why im here, typing on my 920 (where this app doesn't (yet) have an option to up/down vote on the 8.1. So keep your pants on bro. Love,
    920 the only phone which actually made an impact. Yeah you heard that right RODNEY!! :D
  • Hey Daniel, YOU GO GIRL!!! Thats how you shut em up! :D
  • This tool will make what Microsoft's vision come true, UWP will be full blown, once all Visual Studio integrations are offered. Posted from Windows Central for Windows 10 on Lumia 950XL Dual Sim
  • Blimey, this could see mainstream support occur very very quickly. All Microsoft would have to do is subside the cost or even offer the service free, if the developer bought their app to windows and mobile.
  • You get an upvote for using the word "blimey".
  • Blimey, thanks :)
  • Lol!
  • This is interesting. I don't understand all of it, but it's educational. Thank you. Posted via the Windows Central App for Android
  • That would be by guess too. As a first step, Microsoft wants to woo Android developers into developing UWP apps simultaneously as they develop their Android apps, using Xamarin or Visual Studio or whatever the result of combining them will be. That's why Visual Studio now has the best Android emulator around, vastly better than the one by Google itself. But long term? Develop once, run literally everywhere. Using Microsoft tools.
  • So is the expectation that every developer, including devs already on ios and android, will switch to xamarin? Why exactly will they do that? This is always the Achilles heel in Microsofts strategies, the need to CONVINCE devs who have no interest in the Windows platform to code for it. Does this change that? This obviously benefits current Windows devs and they are probably the biggest beneficiaries but I don't see this changing anything for devs that are currently not writing apps for Windows.
  • That's a good point. I guess we'll just have to wait and see how it pans out.
  • Particularly, developers who don't wanna develope apps for Windows yet are not interested in the small user base of Windows. So, the crucial thing MS has to do is to get users. With UWP, we already see apps are coming to Windows, for example, FUNimation is releasing their app soon for Windows. This will in term get users to use the platform. With more users on board, more developers will come. And this is already happening. Posted from Windows Central for Windows 10
  • Small user base?  Windows 10, bro - not just Windows Mobile. 
  • The cause of lesser developer interest is indeed the small user base. Of course, UWP would address that issue. For now, even though it's working, it's still not there yet. Posted from Windows Central for Windows 10
  • App stores won't work in PC world where you can't force people to use 'apps'. Apple has noticed it and Nadella will notice it sooner rather than later. Only way to get apps to Windows is to go all in on mobile and get volume, yet current 'strategy' of Nadella is opposite.
  • You won't say this after you actually have used Windows 10. :) Posted from Windows Central for Windows 10
  • Bro that is so not true, i liked the 8.1 app thingy. And am very accustomed to using apps on it e.g. Netflix Hulu WC Bing News Facebook Mail app bla bla. Its been a good experience. I enlarged the start menu on W10 as much as I could and have pinned **** on that, which really helps. It doesn't have to be JUST mobile. But yes i want people to come to Mobile (i personally have the basic apps - except for snapchat - to live my life happily.
  • Microsoft has always thought long-term. This would definitely have the potential to shift the direction of new devs that are just getting into it. The established and ingrained ones, not so much.
  • thats a really great point actually. People who have developed an Android and iOS app wont rewrite it in VS+Xamarin so that they can deploy to Android and iOS as well as WIndows. There is still no upside here for establised apps.
  • Well that's certainly a big problem still. If you are just an iOS nor Android developer, the current first-party tools (Xcode and Android Studio) works perfectly for app development, why they would switch to Xamarin especially facing some few limitations with still less incentive to develop Universal Apps at the moment, because you know it will be another load to maintain code on another platform (though Xamarin lessens that load alot). This still leaves Microsoft to really to convince developers and consumers why choose and invest Windows over other platforms (at least not fully). Universal Apps on our desktop with Windows 10 sure does tempting with its more active and easily growing marketshare, but Windows mobile efforts is still lagging way behind which is supposed to be complete half the picture. I think Microsoft have to find a great way to make Windows users take advantage of Windows Store, download and use apps available there, so the developers will see the bigger incentive to develop Universal Apps which will then lead the way for solve the Windows phone apps dilemma. Also Universal apps for Xbox might also give a little more push at least for mobile/casual gaming on consoles that could benefit both desktop and especially mobile. On the other hand, Microsoft needs to convince more developers to make high-quality apps for Windows and not just for the sake of numbers. Microsoft should also help promote the apps from Windows Store and hopefully clean the mess.
  • Why would I keep making 2 separate apps (one for droid and one for ios) if I can make 3 in one? 4 if you count W10pc!
  • Apps aren't needed for PCs, programs are better. Posted from my Moto X Pure Edition via the Windows Central App for Android
  • @Laura Knotek, not necessarily always the case :) for example the Universal app "WiFi tool" is alot more handy and you don't have issues worrying about obscure files floating around the o/s.
  • inSSIDer for desktop Windows has more features than that app. Posted via my Nexus 7 2013 using the Windows Central App for Android
  • Yes it does, however it is too much for some people to handle. Not everyone is tech proficient :).
  • That's because programs are around for like 30 years or more. people need to start changing their minds and habits. apps are way more secure and you don't even need anti-virus/spam/... slowing down your pc. Programs don't run well on low-res screens as much as on those new 4K.
  • I actually prefer apps. They are safer and so much easier to deal with!
  • Exactly this Posted from WC 920, 1520, 920, 635, 640 950XL
  • Old thinking, Laura.  The distinction is disappearing. 
  • Let me preface with this assumption: there isn't a single decent app that isn't found on both iOS and Android. That said: I think the strategy is to woo developers by making them more productive. This is twofold. The C# syntax is arguably the easiest to use, and; Xamarin promises that you need not implement the same features on two platforms anymore. You can now maintain a single codebase for both iOS and Android, oh and you get Windows "for free". This frees the developer to implement more features in less time. I'd expect for the next move to be the iOS bridge to be integrated as a mechanism to port your code into this framework, allowing devs to maintain only one codebase and thus level the playing field for Windows mobile. After all, if the codebase is already in C#, chances are high that you'll write the Windows UWP app that will have two billion devices running it. Sounds like a solid proposition to me.
  • Microsoft wants to keep current wp devs not to switch to ios/android ;)
    XForms has a bad uwp support, design choices are "strange", now I hope they integrate Blend too :)
  • I'm already developing for Windows, and from my perspective you're right about it being a big benefit to those in the same boat as me. This will be great news if it means the Xamarin technologies come down in price - At the moment with the per developer, per platform pricing it's too costly for some projects. The free tier is still usable though, so enough to get a taster - But last time I tried it you didn't Xamarin forms, which is one of the more interesting aspects - Hope to see that feature expanded over time.
  • I believe Microsoft is headed in the right direction with this purchase. Posted from Windows Central for Windows 10
  • Nice article Jay, interesting read. Good to see that you're still in and around WC.
  • Exactly what I was thinking! I didn't realize he was still around here anymore, great to hear from him!
  • Yes, same here.  I was kind of shocked to see Jay was the author
  • Thank you, Dan asked if I'd write an article and managed to find the time this week ☺
  • Thanks for writing this to make things clears up for us readers here! Though I'm still sad about the Project Astoria, this one will brings the new light for Windows development. This will not porting apps to Windows easy (it really doesn't meant to be like that), but ever since I discovered Xamarin, it was a great tool to write code once, run everywhere mantra. This reminds me of QT. I'm really excited what it can bring good changes to Visual Studio which is starting this, it's now good as  cross-platform  solution for making apps.  Now it leaves the question on how Microsoft will encourage developers to take advantage of Xamarin, especially the potential side effect is that the developers can bring apps back to Windows too.
  • How on earth does Xamarin remind you of QuickTime? ;)
  • QuickTime, people still use that these days? XD QT, it's an cross-platform app framework which is a tool for making apps to run in different software or hardware with same minimal changes in code. They have a tagline "write once, run everywhere". They're quite similar to Xamarin, only different approach.