Thursday, January 3, 2019

Is Xamarin The Future of Mobile for ISVs?

In 2011-2012 when we were making all the hard decisions about that architecture to use for our fledgling mobile app initiative, we tried a variety of tools to bypass having to write native versions for Androids and iOS.  We kicked the tires with Titanium and actually got to a working app.  BUT, it definitely was no panacea.  There were stability, performance, and usability issues.  So about 3 months in, we pulled the plug and made what I feel was a very brave decision.

WE WENT NATIVE


We had some pretty audacious things we wanted to do with the user experience to make it as easy as possible on our field formen.  We realized that  the only way to get there was to write our apps in native Objective-C/Cocoa and Java.  And even then, we were subclassing and overriding UI stuff all over the place.  Here is the UI of the timecard that really won the industry over and has lead to 20,000+ construction formen moving off paper and laptops to tablets and phones:



That was 5 years ago.  Since then, we have built a mountain of mobile apps for safety, job management, forms, skills, etc.  Every time, we had to write each app two times.  The cold hard truth is that the Android apps often lagged by 6-12 months and seldom got all of the design and feature "love" that the iOS versions got.

We even tried building a mobile web app for low level laborers and operators called the employee app.  It was riddled with issues.  On crappy phones, it would perform like a dog and often ran into issues with browser caching that would render the app unusable.

SO...  We decided to come back and take a look at the new generation of "unification" architectures.  We decided that the employee app was the perfect test bed to test the new architecture.  We started with Xamarin forms and brought in a consultant fresh of a Xamarin engagement to help accelerate the project.

Xamarin forms is an interesting fit for us.  First off, it is C# and since we are largely a .NET/C# shop, we have a lot of developers that can get into Visual Studio and be productive in the environment pretty quickly.  The biggest learning curve is getting your head around the Forms definition language.  It seems like most C# devs are picking that up in 2-3 days.   So, before we even get into the details, Xamarin has a huge head start because the dev tools are already closely aligned with our developer skills.

Also, it is really nice being able to use all the .NET stuff like Entity Framework and the slew of dependency injection frameworks (I think we are going to use Unity because it is easy to tie in our of the box).


No comments:

Post a Comment