The idea of a truly cross platform development environment is one of my Holy Grails. I have spent most of my adult life switching between platforms. One of my pet peeves is incomplete ports of applications. What do I mean by that? Well, when we use apps, we have an expectation of behaviors that we are used to. Some of these expectations are platform specific. For example on Windows systems the shortcut for copy is ctrl-c, while on Macs we use Command-c. This is a small example but a prevalent one. In short when an app is on a platform it should look and feel like it was made for that platform regardless of where is was coded.

![3d Printer](/assets/images/2014/xamarin-darwin-lounge.jpg

With that in mind, and previous experience with Mono, I traveled to the Evolve 2014 Conference hosted by Xamarin, in Atlanta, GA warily optimistic. I dared not to get my hopes up, because I have been disappointed before (Screw you Java and your broken promises).

Initial Impressions

I opted to attend the two training days before the conference to brush up on my C#(.net/mono) skills and to get a better understanding of capabilities of Xamarin Studio. After two days training days and as the first day of the conference closes, my initial impressions are pretty good. The Xamarin guys really know how to throw a conference. Every Xamarin employee seams to have a passion about development. Attending this conference kind of reminds me of the all inclusive cruises. It is like a geek vacation. I am surrounded by some of the coolest bleeding edge technologies, there is food everywhere, and every evening there is a “Networking Event”.

3d Printer

Tonight we are having dinner and drinks at Georgia Aquarium, last night was a cocktail party at the hotel, the night before that was dinner at a local restaurant.

Broken Promises?

The magic question is Xamarin another broken promise? Not yet. Have I finally found my Holy Grail? . . .Again not yet. Xamarin is getting closer to a truly cross platform solution. By cross platform I truly mean it. It uses native libraries to compile native functionality. Which meets my requirement of native performance and native behavior. With their forms libraries, that are currently mobile only, you can get pretty darn close to it. But that is currently only for mobile apps and it still has quite a few limitations. If the Xamarin people can keep the current passion for their product it could very well meet that promise.

I will be posting more on my experiences with Xamarin and C# sharp in the weeks to come. Until then, keep Hacking.