What it is: Xamarin is a development tool that allows programmers to use Microsoft’s C# programming language to develop Android, iOS, and Windows apps.
Microsoft recently purchased Xamarin, a development tool that many people have been using to create Android and iOS apps using Microsoft’s C# programming language. To the average user, it doesn’t make a difference what programming language an app is written in as long as it works. However to developers, every programming language offers different advantages and drawbacks.
Back in the early days, most programmers relied on C and C++, but these languages are like giving a baby a double-edged razor blade. If the baby is careful, he or she can use it as a tool to cut up paper and make simple toys. However if the baby isn’t careful, a double-edged razor blade makes it extremely easy to cut yourself.
That’s the dilemma with C/C++. The language gives programmers complete control (which programmers love), but also forces them to be responsible in not writing faulty code. Since even professional programmers make mistakes, C/C++ makes it extremely easy to create bug-filled code that’s hard to find and harder to fix. The main reason why so many popular programs like Microsoft Windows and Adobe Flash are so unreliable is because they’ve been written using C/C++ and they’re riddled with errors that are almost impossible to find and fix. The moment programmers find and fix one problems, it’s possible that they’ll accidentally create another error (or three) in the process.
That’s why Microsoft developed C# and why Apple developed Swift. Both are meant to be powerful but safe programming languages that prevent programmers from making catastrophic errors that C/C++ cheerfully allows. By creating safe programming languages, Microsoft and Apple can improve their own software and help developers create more reliable programs faster than before.
Xamarin is especially crucial for Microsoft because it uses C#. In the past, you could only use C# to write Windows programs. With Xamarin, you can use C# to write Android and iOS apps as well. This means that Microsoft’s army of C# programmers can now help create apps for the wider Android and iOS market without having to learn a new programming language like Java (for Android) or Swift (for iOS).
Microsoft hopes that Xamarin will allow encourage Android and iOS developers to create apps for Windows 10 as well. After all, programmers will simply need to recompile their C# code for Android, iOS, or Windows.
Rather than convince Android and iOS developers to write more programs for Windows, the opposite is likely to occur. Anyone using C# to create Android and iOS apps likely learned C# to create Windows programs in the first place since that was all you could create with C# in the beginning. C# programmers simply used Xamarin to leverage their skills to create Android and iOS apps.
What Xamarin will likely do is encourage former Windows-only developers to start developing for Android and iOS, not the other way around. Most current Android and iOS developers are using Java or Swift, so they still have no reason to write Windows apps. C# programmers already know how to create Windows apps so now they can expand to Android and iOS.
Microsoft’s purchase of Xamarin at least shows they’ve gotten past their old mentality of protecting Windows at all costs. Microsoft has finally acknowledged that the world no longer depends exclusively on Windows any more and the old days of the 90’s will likely never come back ever again. The days of Windows dominance is over. The new world of Android, iOS, OS X, Linux, and Windows is here and we’re all better for it.