+1
(Except it's been 36 years for me)

I'll add an interesting anecdote...  I had a Xamarin Forms application keep
crashing for no obvious reason and no logged error.  After about a week of
frustration, I discovered it would crash if you tried to show a button in a
list view item and the button had text.  If I removed the text, it stopped
crashing.  The customer now has the button text in a label and a blank
button next to it.  That was about a year ago so I have no idea if that
would still happen.  But I have seen Xamarin bugs that were reported years
ago and have never been fixed.

David

"If we can hit that bullseye, the rest of the dominoes
 will fall like a house of cards... checkmate!"
 -Zapp Brannigan, Futurama

On 14 March 2017 at 09:03, Greg Keogh <gfke...@gmail.com> wrote:

> My manager now wants me to learn Xamarin, but I don't feel confortable
>> doing mobile apps etc.
>> How stable is the technology, should I buckle down and learn it, or
>> should I start looking for another job?
>>
>
> Cough! In the 37 years that I've been writing software, I can tell you
> without a doubt that developing using Xamarin is by a long-shot the most
> abysmal experience I have ever endured. Many times each day my wife will
> hear me scream out the phrase that I plan to have chiselled into my
> gravestone ... "Everything f***ing doesn't work". My bad experience is
> tainted by the fact that I'm using Xamarin Studio on an iMac.
>
> Here's the bad news ... official Xamarin releases may randomly break your
> development completely (satellite assembly resources are currently broken
> for example). Debuggers misbehave or fail in undiagnosable ways. The
> code/XAML editor has weird quirks and insane intellisense. Tiny code or
> XAML mistakes cause crashes in seemingly impossible locations. Breakpoints
> go haywire. The complex dependencies involving the large numbers of
> independent platforms, kits and the 3rd party ecosystem is as fragile as a
> spider's web. App appearance varies in subtly irritating ways on different
> devices. Web searches for help usually produce vast screenloads of outdated
> unresolved arguments and crazy suggestions. And this is the tip of the
> iceberg.
>
> Here's the good news though ... once you learn to live with and avoid most
> of the serious Xamarin quirks and pitfalls (and you'll learn the hard way),
> it's still probably faster than writing Objective-C/Swift and Java to
> produce parallel native apps. I have some basic rules of Xamarin
> development:
>
>    - Don't "push it" too hard or you'll dig your own hole. Try to work
>    with what the platform can do.
>    - Don't write UWP apps, write native ones in Visual Studio and you'll
>    get apps that feel "right" on Windows.
>    - Avoid 3rd party packages and anything that touches the native
>    platforms as much as humanly possible. We've had shocking problems which
>    were cured by stripping out "fancy" packages and platform specific code.
>    - Don't make too many changes in one go or you'll break something and
>    not know what it was, then waste hours trying to backtrack to where you
>    were.
>    - Write your whole app as a stand-alone controller which behaves like
>    a state machine in a portable project. The Xamarin UI is then as thin as
>    possible and it just binds to the app controller's properties and calls its
>    methods. *(This is a sensible design in any case, but do it strictly
>    and carefully in Xamarin and you'll be far better off)*.
>
> Good luck!
>
> *GK*
>
>

Reply via email to