Unfortunately in the mobile world there was no consolidation on a single platform like it’s the case with desktop computers where Windows has about 90% of the market. So if you want a desktop app you will either do a Mac app for an exclusive audience of less than 10% of the market, or more often you will target Windows. But who’s doing desktop apps now, right? (full disclosure: I still do!)
Today we are all about cloud and mobile apps and in the mobile world we have Android with 80% of the word-wide market share, but we can’t discount the lucrative audience of iOS at about 15%, and maybe even Windows Phone which is hanging on for dear life at near 3%.
Since the mobile revolution started in 2008 developers were looking for a solution to create their apps for both iOS and Android. Some solutions appeared, including: Xamarin, Qt, PhoneGap, Cordova, Unity3D (for games) and others.
So if you are a desktop developer you will prefer Xamarin/C# or Qt/C++, if you are a web developer you will prefer PhoneGap or Cordova, and if you are a games developer you will prefer Unity3D/C#. So C# has a great presence in the mobile cross platform development world.
Xamarin is a great solution for C# developers and not only, with a great community behind it, but until now it was too expensive for a small team. When I say expensive I mean 1k$ per platform per developer per year. So for a small team of 5 developers building for iOS and Android, Xamarin will set you back with 10k$ per year. Surely, you will not add Windows to that mix for another 5k$ per year, right?
As Miguel de Icaza acknowledged yesterday at the Microsoft Build conference:
Xamarin was a niche product, a product for those that wanted to spend a lot of money on it.
Since Microsoft acquired Xamarin last month it was clear that they will make it more accessible to developers, not because they just love developers but because they really need developers to build apps for their fledgling mobile offering. And if building an app for Windows 10 Mobile from your existing code base is a small investment, then you will be tempted.
This week, at the annual Microsoft Build conference, Xamarin is taking centre stage. Microsoft announced yesterday that the core Xamarin tools are now available as part of the free Visual Studio Community edition, so free for academic use, open source developers, or teams of up to five (concurrent) developers. However, some of the more advanced Xamarin features will only be part of Visual Studio Professional and Enterprise.
The icing on the cake? Microsoft also announced that in the coming months it will make the Xamarin SDK not only open source but open source under the very permissive MIT license! The runtime, libraries and command line tools, will be included in the .NET foundation.
So will the developers abandon Objective-C/Swift and Java in favor of C# or is Microsoft too late to the mobile party? I for one, with 7 different apps already in the App Store, I’m not eager to rewrite all of them in C#, but if I want to port one of them to Android, or I plan to make a new app, it will certainly be C#/Xamarin!
What about you?