Microsoft targets cross-platform Dev with Xamarin
In partnering with Xamarin, Microsoft has set its crosshairs firmly on cross-platform mobile development.
The goal is to make Visual Studio the de facto development environment for iOS and Android, as well as Windows phone & tablets. The Redmond giant is banking on programmers using C# - the primary .NET language - to target all platforms.
Xamarin offers Visual Studio developers a visual designer for Apple iOS. This is a bit trickier in practice than one might think, as Apple doesn't support any other platform. So it's not possible to compile and build native iOS code without a Mac. The solution? When you kick-off an iOS project in Visual Studio, you're prompted to pair with a Mac: this might be a Mac Mini on your local network. The Apple machine is then used remotely to build and render the actual controls.
Another innovation - Xamarin forms - is actually a cut-down implementation of Microsoft's XAML UI language. XAML - flexible enough for application development and website design - is often used alongside Windows Presentation Foundion (WPF). Here, rather than drawing its own controls, it allows a Web programmer's to wrap functionality around platform-specific native controls.
As we all know, mobile Web platforms are developing and diversifying with breathtaking speed. Microsoft already has a solid user base with skills in C# and XAML. The Xamarin partnership is aimed at providing that golden egg of programming: true cross-platform mobile development. One potential barrier to developer uptake could be Xamarin's subscription cost. It's not cheap, but perversely this in itself may prove a strong incentive for Microsoft buy-out: watch this space!