Versatile software engineer with a background in .NET consulting and CMS development. Working on regaining my embedded development skills to get more involved with IoT opportunities.
I wasn't going to chime in because my experience with Xamarin was back in mid-2015, but it sounds like not much has changed. My experience was that a lot of the libraries which were supposed to abstract away the platform-specific differences and provide universal access to OS features and device hardware did not work as advertised. In mid 2015, a lot of library functionality was still not considered Production grade, and I found that if you had a moderately complex use case, then you had no choice but to dig into the Android and iOS SDKs. I was essentially writing Java in C# at the end of the day.
My takeaway was that I did not gain any benefit or productivity advantage from using a language I am very comfortable with. My time would have been better spent learning how to work natively with Android. Especially now that Kotlin exists, I would much rather learn that and have access to all of the entire ecosystem of frameworks and libraries available.
I also encountered some bizarre bugs with the Xamarin tooling. One day, the code on my phone somehow got out of sync with the code on my computer, so debugging was completely broken. I was so confused why I was stepping through code and visiting every branch of an if statement, but I finally put it together and redeployed the code. Never have encountered a gem like that outside of Xamarin, even in my embedded SW days!
For further actions, you may consider blocking this person and/or reporting abuse
We're a place where coders share, stay up-to-date and grow their careers.
I wasn't going to chime in because my experience with Xamarin was back in mid-2015, but it sounds like not much has changed. My experience was that a lot of the libraries which were supposed to abstract away the platform-specific differences and provide universal access to OS features and device hardware did not work as advertised. In mid 2015, a lot of library functionality was still not considered Production grade, and I found that if you had a moderately complex use case, then you had no choice but to dig into the Android and iOS SDKs. I was essentially writing Java in C# at the end of the day.
My takeaway was that I did not gain any benefit or productivity advantage from using a language I am very comfortable with. My time would have been better spent learning how to work natively with Android. Especially now that Kotlin exists, I would much rather learn that and have access to all of the entire ecosystem of frameworks and libraries available.
I also encountered some bizarre bugs with the Xamarin tooling. One day, the code on my phone somehow got out of sync with the code on my computer, so debugging was completely broken. I was so confused why I was stepping through code and visiting every branch of an if statement, but I finally put it together and redeployed the code. Never have encountered a gem like that outside of Xamarin, even in my embedded SW days!