Xamarin SUCKS! Lessons learned from weeks wasted

  1. Only God knows why microsoft purchased this absolutely awful piece of software. I actually have never had a worse experience in my life. It all started with just installing it. It took me several days just to get it to run. I tried everything. I went through several forums and tried every solution I saw. After going through all these solutions just to solve one problem, I realized that nobody actually knows what is going on in xamarin. Its just a guessing game until you finally solve the error. I eventually had to factory reset my computer then reinstall everything to finally get the software working properly. Even the creators are clueless. I went on a thread where a guy asked for help and xamarin support reached out to help him and rather than helping him, he says "at least it runs on your phone". The software is full of bugs. Most of the time you are fighting against the bugs built with the software rather than the ones from your code. At first I thought it was visual studio that was causing the problems, so I switched to xamarin studio. Only to find out that the ide is completely useless. I can't drag any widgets onto the layout. I did some research on it and it turns out that this has been a problem for several patches yet xamarin has yet to fix it. It feels like this software was made by a bunch of D+ students. Like a monkey on Android Studio(which I've switched to) could get more done than an experienced programmer on xamarin. I spent day after day fighting through bugs and errors not caused by my code but caused by the buggy platform. Was this software even really tested before release? Like there's problems upon installation, the error doesn't tell you how you can fix it, then you search it up online to find out even the people at Xamarin don't know to solve the error so they send you to other forum members who had a similar problem only to find out that there's about 6 different solutions that worked for others then you try them all and none work. And you also can't move buttons on layouts how you can in Android studio. I recommend that anyone who wants to begin Android development, STAY AWAY FROM XAMARIN !! USE ANDROID STUDIO INSTEAD! The transition isn't too hard and will pay off in the long run. Whats even worse is that they used to charge people to use this software. In other words the used to charge people for trash. I don't mean to come off as a xamarin hater, I tried to stick it out for weeks before I even thought even switching to java and using android studio. They'll probably take this down cause it's the truth.
«1

Posts

  • nonameformebruhnonameformebruh USMember ✭✭

    .

  • alextrepalextrep USMember ✭✭
    edited May 2017

    They just had to copy wpf xaml/sl5 one on one and make everything stable but they are far from it now..

    they really are clueless about anything related to microsoft mvvm/xaml development over the years..

    and where is the old codeplex .net community now.. moving away? because of html5 and xamarin from wpf/SL5 is a backward move

  • StasPetrovStasPetrov UAMember ✭✭
    edited May 2017

    I am completely agree about big count of bugs. But... I hate these pice of **** like java and swift (i even dont wanna talk about objective-c). I love C#, i love VS, so i accepted this awful destiny of xamarin developer and just waiting for best times (and restaring VS ever 10 min because this ******* layout designer crashes in my current project)

  • JohnMillerJohnMiller USForum Administrator, Xamarin Team Xamurai

    @nonameformebruh,

    I am really sorry to read about the very poor experience you've had using the Xamarin platform. Would you send me a message so we can talk about the specifics of what you experienced? I'd love to collect your feedback further so we can make sure all of these issues are being addressed and fixed. Thanks again for your feedback on this.

  • BlueScreenThisBlueScreenThis USMember ✭✭

    I do agree with this posting. Errors pop up and are just generic as can be. Clean solution and re build solution do noting. you have to close Visual Studio just to clear errors. The layout.axml files don't even load, they get stuck on the small loading bar.

  • cwphillicwphilli USMember ✭✭✭

    I have been using Xamarin for several years (5+).
    It is more and moreso becoming a very stable product, and I am a huge advocate of it.
    While I might agree that the designer is troublesome (I can't use it on several of my layouts, won't even open) the overall product is worth the investment from a development cost perspective especially when designing for multiple platforms (even with Xamarin Native).

    The performance is also worth mentioning, I had done my own bench-marking previously for a company while evaluating and proving Xamarin's worth (in the days Xamarin was $$$) and for our needs it exceeded native performance over 70% of the time (statistically significant results).

    See these articles where others find similar results:
    https://medium.com/@harrycheung/mobile-app-performance-redux-e512be94f976
    https://magenic.com/thinking/mobile-development-platform-performance
    https://magenic.com/thinking/mobile-development-platform-performance-part-2-native-cordova-classic-xamarin-xamarin-forms

  • SAthukoraleSAthukorale USMember ✭✭
    edited May 2017

    As much as love C#, I have gotta say, Xamarin sucks. And for a beginner, plain old android and java is the way to go. For me it isn't the performance at fault (though taking a couple of seconds for an app to launch is too much, I'll let it slide for now), but pretty much everything else. Take,

    • Visual Studio for instance - Installing Visual Studio is a horrible experience. It didn't use to be, when it was VS 2008 or 2010, but this new thing, it eats your entire C drive (every new MS product seems to do this). Xamarin doesn't integrate with Visual Studio very well. IntelliSense at the designer source editor doesn't work as expect (or doesn't work at all). Sometimes VS gets stuck on app deployments (an this happens every 3 or 4 times), and you have to restart VS to fix this. So the alternative is to use Xamarin Studio, which for some reason (looking at MS here) doesn't even appear on the first set of results, when you google "Xamarin Studio". So you have to keep looking until you find it in : http://www.monodevelop.com/download/. And Xamarin Studio works... for everything except coding. The main issue there is copy pasting. For some reason Xamarin studio doesn't know how to leave the formatting as it is. So from the very get-go your opinion about Xamarin is ruined.
    • then take the documentation for instance - Right now I am implementing an app, that's capable of casting videos to a Chromecast. You should checkout their get started documentation on Google Play Services - Cast. They literally tell you to follow Google's very own guide. And there is nothing wrong with it, except that the classes and wordings don't exactly match or map, and you are never sure whether you are using the correct class or what-not. So I followed Google's guide on casting and according to the guide I have to put some meta data inside the AndroidManifest.xml, pointing to an activity. So since there is no documentation, I dont know how to get this done. So I google this, and nothing. Well, no surprise there because, no one from the Android Java world has this problem. It's a Xamarin specific issue. So I managed to give it a hack of a solution, and move into the next phase. And that next phase is to extend an Activity which google provides with their Cast SDK v3. Now after some time, shooting in the dark, I am somewhat able to guess where and to what the Xamarin classes might map. And to my surprise, that activity I am supposed to extend doesn't exist. So I put a ticket here, over at StackOverflow and even with Xamarin/Microsoft, but no one has responded yet (Someone might... a couple of month later). So I ended figuring-out the issue (apparently the class was not generated at all), filled an issue on GitHub and fixed the issue(very minor fix though) my self.

    Now I have only been using Xamarin for like 2-3 months (Probably even less than this, because I do this after hours), and am somewhat of a new comer to Android app development. So this is my first hand experience with Xamarin, and am constantly wondering whether I should re-write the app in Java. If not for my love for C# and the dislike for Java, I would have already, and surely I would have been able to release this app a couple of weeks early and with only weighing a couple of megabytes.

  • blachshmablachshma ILMember

    Agree with the OP. Even trying to do something simple with Xamarin gave me a big headache. Instead of writing code and dealing with my own bugs and issues, I had to deal with deployment issues, references issues, many bugs and an awfully slow performence. And all of that for just an app that does pretty much nothing. The product seems unfinished, it lacks polish, and basically its one big mess. After days of working on dev enviornment bugs, I was finally able to compile and run my project. Now it was time to actually start writing, but as soon as I added another reference, everything went to hell again. Xamarin has been a terrible experience for me. I love C#, I love VS, but I don't like Xamarin.

  • Hardik_MistryHardik_Mistry USMember, University ✭✭✭

    @nonameformebruh

    The challenge here is the diversity required to adapt a platform such as Xamarin, when consulting companies and teams, they kinda think Xamarin is just another Hybrid app development platform on the block (this time it is from Microsoft, fact is it is not from Microsoft but rather was acquired by them last year).

    The minute someone learns that Xamarin utilise Microsoft tech, their perception is it is paid and can't get the job done for me (event tools will be paid and all), fact is there are now more options then ever to get started with anything on Microsoft be it Xamarin, Azure, .Net Framework or C# (plus that is open source tech, they accept Pull request on GitHub and if you are competent enough, they are happy to get your code merged in)

    Talking of challenges, there was time when setting up Android using Netbeans or Eclipse back in 2010 was significantly painful, I remember when I first tried to insert a record into SQLite db, I would not see any records, no errors or exceptions etc, rather had to call widgetName.getText() to allow SQLite store the value, they didn't have DateTimePicker back then and in those early days we had to create them as custom Views in Android as well. I mean nothing was and would be full proof here.

    Also as you suggest, anyone starting off with Mobile app development, learning and getting familiar to Native platform will payoff when you start Xamarin as then you will be competent to manage errors and coding in context on the Native platform.

    I also notice, many teams, without significant experience on Native mobile application development try to jumpstart and when they struggle with errors, they blame Xamarin in general cause many of them cannot run the first app as well without significant troubleshooting.

    But I and others have seen Xamarin evolve to a significantly better platform in general and now being acquired by Microsoft, we hope for a better tomorrow, as someone like us do not offer services for free, they too won't offer their services for free and there would be a catch as always.

    I value and support your experience with Xamarin, but if possible, reconsider it.

    Sorry for your disappointment.

  • JordanMaxJordanMax USMember ✭✭

    Been using it for a year and with every framework there's issues but aside from that there's really only 2 issues that are concerning to me enough to post about it.

    1) Build times - very slow getting it to build onto phone. A bit counter-intuitive when trying to adjust minor things it takes 10-15 minutes to build 3-4 times and see changes.

    2) Updates seem to not regression test. Almost every time I update xamarin there's errors and I'm forced to downgrade. It's quite annoying.

    Other than that, I've had a good experience.

  • Chris_KChris_K USMember

    It's seems like a good idea, but pretty buggy. I got one project up and running, but my second project has been just a mess.
    For some reason Intellisense keeps breaking and it also stops recognizing core objects ( ContentPage ). Tried a bunch of different solution with no success, so might have to move on to another dev platform.

  • Any one new in this hyped mobile development and wondering which path to take. If you choose xamarin, I assure u that you will not be doing even an hour of real coding in a day with this ******* software. You will not be solving your own bugs
    but xamarin bugs and when you go to some forums, there people are just guessing everything, no one sure about anything unlike other technologies and there will always be one guy will say "Cleaning and Building worked for me".

    Don't ever take this path

  • Nick-BNick-B USMember ✭✭

    Hate to agree, but I do. Very frustrating to fight Xamarin bugs. Most of day is trying to find a workaround that will accomplish what we need to on both iOS and Android. Between Xamarin issues and having to add custom renderers.. may as well have done both in native... Hopefully msft can stop adding to it, and just get it working solid.

  • PaulLambertiPaulLamberti USMember ✭✭
    edited October 2017

    I agree. Not worth it at all. Whatever time is gained by writing it once is completely lost trying to configure the IDE or pinning down xamarin specific bugs. I wrote a single application with it, it will be my last.

    Lack of support: Millions of tagged items on stackoverflow vs less than 100K on xamarin. APIs are much more complete and current on the platform specific sites compared to Xamarin API. Doing a simple search on google for something simple like "xamarin gps example" vs "android gps example" results with 160x more results for android (56 Million vs 300K)

    IDE Stability (or total lack of): No wonder when there are 4 IDE's, they should have focused on creating a single bug free IDE instead of 4 bugged IDE's.

    Lack of Adaption: Between iTunes, Google Play and Windows Phone store; there are about 5.3 Million apps, Xamarin Claims "Thousands of buisness" use Xamarin (https://www.xamarin.com/customers) so even if we assume 10K, that represents less .25% of total apps on the public stores (not including in-house applications).

    Additional Layer of abstraction: Along with whatever inherited problems come from the individual platforms, it is now compounded using xamarin. But at least you can probably assume that the problem is Xamarin since its garbage (which i guess will help solving the problem faster).

    No Design Builder: If anyone used Xcode you know what I'm talking about. Xcode is probably the most beautiful IDE design builder of all IDE's I've ever used. The designer of Xamarin I guess thought the design builder is not important...THIS IS NOT 1980 WHERE APPS ARE DRIVEN BY COMMAND/PROMPT BASED. All apps are graphical and I would extend to say that the UI design is the dominate time during development.

  • wallymwallym USInsider, Beta ✭✭✭

    This is one of those types of threads I don't understand or even agree with. Since this is posted in the Android forum, I'll assume that this is about their Android implementation. I sat down with an android book, and basically learned Xamarin.Android years ago when I was first learning the product. I had to learn the platform. You have to learn the platform. You have to learn the isms of the platform. There are no shortcuts. If you want to learn an android development tool, you have to learn android, it is as simple as that. Once I understood, the UI, the rest of the platform was fairly easy to learn. But learning the platform takes a while. I don't care what anyone says, it takes months, yes, I said months to learn a platform. Then I could apply this to Xamarin's Android product. It was the same with Xamarin.iOS. Are there bugs? Absolutely, there are bugs in everything. This isn't windows forms. This isn't WPF/Xaml. Quit trying to apply windows to android. This is A N D R O I D. Xamarin is providing a C# layer that turns around and calls the android implementation.

    When I have had issues, I've googled and found the issues fairly quickly. I have had only one issue that I have found took a lot of my time, and it had to do with the nuget packages and how to get them installed properly.

    The problem is that no one wants to learn the platform and how the platform is designed to work. No one wants to budget the time to learn it. You've got people that don't have the depth of experience making assumptions. I had a conference call last week and one of the guys, I expected to know better about what Xamarin was, and I had to explain to him what Xamarin is, what the products are, and where each product fits in. If you want to learn the products and take advantage of them appropriately, you have to learn the specifics of the platform and how to take advantage of them. That is time that has to be budgeted for. Its easily to blame others for our our own faults. its easily to fly off the handle. its hard to realize that what you are trying to do could be wrong. Development isn't a single path to an answer. There is more than one way to solve a problem, but that realization only happens when you figure out that you could be doing the wrong thing.

    I get it, I've flown off the handle in the past. It gets frustrating. But, I find that it was myself and my thinking that I needed to be doing something else.

  • PaulLambertiPaulLamberti USMember ✭✭

    I know both platforms well. I've written several projects in both (natively); some published on the stores, others used internally within my agency. The development environment is probably by far the biggest issue I"ve had. I was constantly reminded that I was working with Xamarin by the fact I spend more time just trying to get Visual Studio configured correctly. Maybe if they didn't support 4 different IDS's it would be more stable.

    I'll end with this...I can start Xcode and within less than a minute, I can be developing. More or less, the same goes with Android Studio. Especially with Xcode, I've personally have never had a configuration issue that lasted more than a couple of minutes. I've spent days configuring VS, only to have an update be applied and break everything.

    Xamarin may work but only under the following two condition:

    1) You MUST support multiple platforms (NEVER use Xamarin if there is no intention to support more than one platform).
    2) Business logic is complex and extensive. Simply sharing UI code is not enough to justify the using Xamarin (and you'll be able to provide a richer UI staying natively).

  • I just spent the last ~16 hours (spread across 3 days) fighting with xamarin. I'm on a team where I can make some technology calls and a year or so ago I blocked xamarin development in favor of native applications. Last week I really started reading about how cool Xamarin is so I started to feel like I really messed up and had people building in native android and ios for bad reasons.

    16 hours of fighting with xamarin later, I'm so happy that we kept it out of our organization. I get it that if you're a Xamarin developer than that's your thing, and you've probably learned all the weird quirks and gotchas although I'd be stunned if that was the case.

    C# and Visual Studio are, for the most part, bullet proof. To find a legitimate bug in released version of VS or the .net framework is something that many professional developers will never experience in their entire career.

    Scroll through the bug reports, stack overflow, etc: just a web of random errors with voodoo advice on how to get through them. There is no way that the "time savings" of Xamarin nets out over running two code bases in native environments.

  • improwiseimprowise Member ✭✭

    Having spend a few days looking into Xamarin I unfortunately have to agree. Initialy, I thought that it was just lack of knowlege from people comlaining but a few days later, we are already thinking about alternatives. And we are a full blown .NET shop that before Xamarin had not ever considered anything not .NET.

    And we are just trying to develop a simple Business app that should do CRUD against a REST API. Not even Xamarins own "TodoREST" seem to work, if you can even make it build properly in VS.

  • EricJLekwaneEricJLekwane Member

    I don't understand why Xamarin doesn't have Geofire library available for us developers to use. and the worst part about it is that nothing is said about any alternatives. I'm seriously going back to android studios this is crazy.

  • EricJLekwaneEricJLekwane Member

    @nonameformebruh said:
    1. Only God knows why microsoft purchased this absolutely awful piece of software. I actually have never had a worse experience in my life. It all started with just installing it. It took me several days just to get it to run. I tried everything. I went through several forums and tried every solution I saw. After going through all these solutions just to solve one problem, I realized that nobody actually knows what is going on in xamarin. Its just a guessing game until you finally solve the error. I eventually had to factory reset my computer then reinstall everything to finally get the software working properly. Even the creators are clueless. I went on a thread where a guy asked for help and xamarin support reached out to help him and rather than helping him, he says "at least it runs on your phone". The software is full of bugs. Most of the time you are fighting against the bugs built with the software rather than the ones from your code. At first I thought it was visual studio that was causing the problems, so I switched to xamarin studio. Only to find out that the ide is completely useless. I can't drag any widgets onto the layout. I did some research on it and it turns out that this has been a problem for several patches yet xamarin has yet to fix it. It feels like this software was made by a bunch of D+ students. Like a monkey on Android Studio(which I've switched to) could get more done than an experienced programmer on xamarin. I spent day after day fighting through bugs and errors not caused by my code but caused by the buggy platform. Was this software even really tested before release? Like there's problems upon installation, the error doesn't tell you how you can fix it, then you search it up online to find out even the people at Xamarin don't know to solve the error so they send you to other forum members who had a similar problem only to find out that there's about 6 different solutions that worked for others then you try them all and none work. And you also can't move buttons on layouts how you can in Android studio. I recommend that anyone who wants to begin Android development, STAY AWAY FROM XAMARIN !! USE ANDROID STUDIO INSTEAD! The transition isn't too hard and will pay off in the long run. Whats even worse is that they used to charge people to use this software. In other words the used to charge people for trash. I don't mean to come off as a xamarin hater, I tried to stick it out for weeks before I even thought even switching to java and using android studio. They'll probably take this down cause it's the truth.

    I totally agree with you 100 percent.

  • ChrisColeTechChrisColeTech USMember ✭✭✭

    I've been using Xamarin for a little over 2 yrs...and its sad that the complaints I had 2 yrs ago are the exact same complaints today.

    Slow build times
    Wonky IDE
    Mac Agent Disconnects
    Mac Agent wont connect
    Mac Agent wont fully connect
    iOS Storyboard sucks
    Code examples are too basic/not practical
    Lack of support from Xamarin
    Too many instances of "it works on my machine... I'm not sure why it isn't working on yours"
    Each update is progressively worse and usually comes with breaking changes
    "Stable" channel is very UNSTABLE
    "Alpha" and "Beta" channels are usually more stable than the "Stable" channel

    I could go on, but I'll stop there.

    I know its not just me because I read the forum often, and I see lots of other people complaining about the same thing.

    2 yrs is a very long time to complain about the same issues with no resolution.... I honestly don't think the folks at xamarin care..either that or they just don't know how to fix the problems.

  • andre_ss6andre_ss6 BRMember
    edited May 2

    I'm really sorry for the language, but this software is simply and literally the worst mega f***ing shit I've ever used in my life. This halfass piece of garbage only serves to waste people time. And IKR, how could people pay for this, ffs?!

    COULD you PLEASE go back to sanity and stop bringing more features to that horrible vomit-inducing frankenstein's creature which is Xamarin.Forms and instead focus on stabilizing Xamarin.Android and Xamarin.iOS? PLEASE. PLEASE.

    For christ sake, I can't even build my projects properly. I have a project that I have to LITERALLY hit build several times in order for it to build, because sometimes Xamarin just decides it's not in the mood to work. It just says "Build Failed" with no error message whatsoever. Just "Build Failed". Why not "Build Failed, please try again later. Thank you."? F*** you. Seriously.

    Are all of you out of your right minds? You certainly do use this piece of **** you call a software so you do know what complete horror this spectacle of fecal waste you call software is. So either you're a sadist f*** who like to watch developers waste their companies' resources trying to use your ****** framework or you're just the most incompetent people on the entirety of this f***ing universe.

    I've already set Xamarin.Forms on fire because... well, because death seems a better option than using it.

    I was expecting that I would have a decent experience with Xamarin.Android at least. It certainly is bearable. In fact, this is the closest thing to a real software I've seen so far in the Xamarin world. However, it is still ***. Projects build only when they want. Designers freezes all the time. **** support for AppCompat. WORST THAN **** support for ConstraintLayout. EVEN THE SAMPLES WON'T BUILD PROPERLY SOMETIMES. JESUS CHRIST, PLEASE DO YOU EVEN TEST YOUR SOFTWARE?????????? HELLO??

    Xamarin is already the second most dreaded technology among developers according to the SO Developer Survey. Anywhere you go on the f***ing internet people will tell you to stay away from it.

    This is especially sad for me because I just LOVE C#. I love it. I want so much to just use it for our mobile projects but it seems F***ING IMPOSSIBLE. I'D RATHER DEAL WITH JAVA AND ORACLE AND CALLBACK HELL AND ALL THAT **** A BILLION TIMES THAN LOOK AT XAMARIN EVER AGAIN.

    SO TO ANYONE OUT THERE WHO, LIKE ME, THOUGHT "HEY, IT CAN'T BE THAT BAD, CAN IT? I'LL JUST SPEND A FEW HOURS, MAYBE A DAY SETTING THINGS UP BUT IT WILL PAY FOR ITSELF". NO. GO BACK. IT WON'T PAY. IT'LL NEVER PAY. IN FACT, IF YOUR DREAM IS TO WORK AT MICROSOFT THEN MAYBE YOU SHOULD STICK TO XAMARIN. BECAUSE YOU'LL FEEL LIKE YOU'RE FIXING XAMARIN'S BUGS, NOT YOURS. IN FACT, SOMETIMES YOU'LL EVEN FORGET ABOUT YOUR PROJECT. YOU'LL BE JUST LIKE "WTF IS THIS PROJECT DOING HERE? OH, IT'S MINE", BECAUSE YOU'LL BE SO INTO XAMARIN BUGS. YOU'LL START THINKING ABOUT GOING TO GITHUB AND FIX XAMARIN INSTEAD OF YOUR OWN CODE (SERIOUSLY). THIS IS A DISEASE. DO NOT GO ANY FURTHER. YOU'VE BEEN WARNED.

  • BlueCoder77BlueCoder77 USMember ✭✭
    edited June 3

    I honestly agree with the OP that the software is very poor and is not something I would ever expect Microsoft to acquire. I am 24 hours into a weekend development rush and already over my quoted hours for a client on a fourth version to their Xamarin app and wow I feel like for every hour you gain in productivity you lose in debugging. And you have to debug both the iPhone and Android, because nothing really quite shows up the same and each platform has its own mystery bugs waiting in store for you. Oh and you want to do UI debugging? Fat chance, the new Live Run does not work. The Xamarin studio on Mac is terrible. Pushing new change to iPhone? 4 minutes minimum. Even the android is like 1 minute to push a new change. The productivity is not magic. All 3 past versions of the application I had to create a new project and copy the code over (not the files, I had to create new files and copy the code) because the projects get corrupted and none of the XAML will compile. The tech support (bless their heart for trying) don't know much and that's probably not their fault even and could only tell me to make a new project. I really hope that Xamarin turns itself around because if it just worked correctly like they say it does then life would be sweet. I get the weirdest bugs like List View's crashing if you use them too fast with no bugs or exceptions being thrown. Just freezes. You can't even do scroll-able web views inside scrolls views on the Android platform. The support for shapes is non-existent and you have to use cropped images in frames or custom renderers (which are slow sometimes so the shape does show up so you just see white text on white background.. so nothing). Listviews inside listviews crash android apps on orientation change. Listviews inside listviews aren't even possible in general. No multivalue converters. Until I upgraded to Xamarim.Forms 3.0 the binding on stuff like refreshing Indicators for the list view and activity indicators would randomly not update after changing the property. Couldn't debug it because it was just completely random and my code executed just fine.

    I am an experienced .NET / XAML / WPF programmer and have had multiple other experienced programmers look over my code to make sure I am not missing something when experiencing these weird bugs.

    All that being said for all my releases for clients I have yet to deliver something unstable. Almost every weird bug has a work-around although sometimes it requires a UI rewrite.

  • NimralNimral Member ✭✭

    Unfortunately I come to a point where I have to agree with most complaints. I gave Xamarin a try, because I wanted to develop a cross-platform app. The results were desastrous. I lost approx 30% of the total development time to development and build environment failures of all sort.

    Mobile development is a huge challenge anyway, because the platforms are as limited as they are over-hyped, and having to use a product as bad as Xamarin drained my energy reserves downto zero in about six months.

  • houbenatorhoubenator Member

    I've quickly come to the conclusion that it is much quicker rewriting what could have been shared logic in Java and Objective-C. I'm comfortable with both (though I'd prefer C#), but the issues I've encountered with Xamarin have convinced me that it simply does not give me benefits that offsets the staggering overhead of fighting with the impedance that the tool brings. So long, Xamarin!

  • Xamarin Is a Terrible product. I am an intermediate to expert VB/C# Developer and I have several apps running now across the country in Access/ Sql Server, Visual Basic and C# . When I first heard about Xamarin I - I did not walk - I Ran to Xamarin for an opportunity to leverage my C# and VS knowledge to develop mobile Android Apps. Xamarin Is A TERRIBLE Product and a Waste of Time.
    Im going Back To Android Studio!

  • samMZsamMZ Member

    I'm not gonna say anything else but "DISAPPOINTED".

  • ericregnierericregnier Member ✭✭

    Agreed. Moving to Apache Cordova.

  • meepoumeepou FRMember ✭✭
    edited September 11

    Couldn't agree more ... Every update of Xamarin involves critical bugs that are blocking for an app in production (can't sign APK, project broken with errors that means nothing ...)

    Building onto a plugged phone takes years and 3 out of 4 times when you press deploy there is an error and you have to press it again until it works.. Really bad developer experience

  • Sam___DSam___D USUniversity ✭✭

    My experience has been quite different.

    I started working with Xamarin about 3 years ago and I came from a background in Android (Java) and Windows 8.1. The switch to Xamarin made a lot of sense in the way that I could combine the incredible power of C# with all the amazing things you can build for mobile.

    Xamarin has come a long way and is still moving very fast. If all you want to do is follow hello world tutorials and build very simple apps, then Xamarin is not for you I'm afraid. Xamarin offers you the tools to build cross-platform apps with the best programming language(s) mankind has ever seen: C# and optionally also F#. These tools come with complexity, which is - according to me - expected.

    To me, it makes a lot of sense that you need knowledge of how it works underneath so that you can make your apps shine and run buttery smooth. I had the same experience with UWP and Android. How many Android apps are using OkHTTP because the default HTTP stack is not that fast? Why did Snapchat have to use the "freeze frame" method to shoot photos on low-end Android devices instead of the default Camera API which has been reworked a couple of times? Does anyone ever build an Android app without having to include a gazillion support packages with versioning somehow related to your SDK target version? How many _if SDK < 21 _checks does an average Android app have?

    These kind of issues are everywhere. Ever tried upgrading an NPM package? Remember left-pad? Even an internet giant like Facebook left hundreds of developers in the cold by abandoning Parse.

    The IDE has grown, but can't keep up with the competition and I also agree its stability is not what you'd expect. Every update is an adventure. Meanwhile, Jetbrains has stepped in and built Rider. Let's be honest, Jetbrains simply builds the best developer tools out there. So if this giant has my back, fine for me. Rider makes me feel like I'm flying through my code :joy:

    Being a Xamarin developer means picking your tools and libraries wisely. I don't work the most popular MVVM frameworks because they're quality-wise not where I'd want my code to be. However, I've found the right tools for the job. I don't use App Center, I use Bitrise. I don't use Visual Studio, I use Rider. I don't use MvvmCross, I use MugenMvvmToolkit. I don't use most of the plugins, I copy the code and adapt it to my needs.

    The "default" tools are not great. But they're also easy to overcome.

    This is a purely personal opinion and I agree to disagree :)

  • JohnHardmanJohnHardman GBUniversity mod

    @Sam___D said:
    I don't use most of the plugins, I copy the code and adapt it to my needs.

    I am currently using Xamarin.Forms rather than Xamarin.Android . However, I am 100% in agreement with this comment regarding copying and adapting the source of plugins. Too many plugin authors introduce unnecessary breaking changes when they release updates. Too many plugin authors quietly drop any support or maintenance of published plugins. Too many plugin authors don't give a hoot about supporting users on devices who cannot upgrade to the latest version of the operating system (particularly on Android). And (this is the really surprising one), too many plugin authors release new versions with less functionality than previous versions. So, my advice is that when you find a plugin that does something you need, copy the source into your solution and make sure you understand how it works, so that you can protect yourself against the issues mentioned above.

  • JuanPabloSillerJuanPabloSiller USMember ✭✭

    I've been using Xamarin for 3 years, it is a hard learning curve but once you get the hang of it, it is actually worth it. Specially in iOS, android is buggy still but if you learn how to do binding libraries and how to navigate across the bugs you can build apps quickly and easy. The rules of thumb:

    -Use a mac
    -If doing Android, try to avoid opening the layout files as much as possible haha.

    Other than that, Xamarin iOS in combination with xCode for auto layout works super fast and very stable. It is just Android that sucks but well, android is a complex platform, so I understand why it is harder to stabilize it.

    Now, if you learn Xamarin plus a good MVVM framework you will end up sharing most of the code and just concentrating in the UI which is pretty fun.

    but yeah, xamarin is not for everyone and at the beginning I also thought it was too buggy but with time I learned to love it. I started forms by the way but switched to native over time.

    Remember that native android and iOS should be easier to handle buuut you have to learn two languages, two platforms and learn their issues too so think about that and Xamarin is not that bad.

  • AnnLeeAnnLee USMember ✭✭

    @JuanPabloSiller said:
    android is buggy still but if you learn how to do binding libraries and how to navigate across the bugs

    Hi, do you mind to share how to bind for libraries?

  • wellhatwellhat Member ✭✭
    edited November 6

    @andre_ss6 said:
    I'm really sorry for the language, but this software is simply and literally the worst mega f***ing shit I've ever used in my life. This halfass piece of garbage only serves to waste people time. And IKR, how could people pay for this, ffs?!

    COULD you PLEASE go back to sanity and stop bringing more features to that horrible vomit-inducing frankenstein's creature which is Xamarin.Forms and instead focus on stabilizing Xamarin.Android and Xamarin.iOS? PLEASE. PLEASE.

    For christ sake, I can't even build my projects properly. I have a project that I have to LITERALLY hit build several times in order for it to build, because sometimes Xamarin just decides it's not in the mood to work. It just says "Build Failed" with no error message whatsoever. Just "Build Failed". Why not "Build Failed, please try again later. Thank you."? F*** you. Seriously.

    Are all of you out of your right minds? You certainly do use this piece of **** you call a software so you do know what complete horror this spectacle of fecal waste you call software is. So either you're a sadist f*** who like to watch developers waste their companies' resources trying to use your ****** framework or you're just the most incompetent people on the entirety of this f***ing universe.

    I've already set Xamarin.Forms on fire because... well, because death seems a better option than using it.

    I was expecting that I would have a decent experience with Xamarin.Android at least. It certainly is bearable. In fact, this is the closest thing to a real software I've seen so far in the Xamarin world. However, it is still ***. Projects build only when they want. Designers freezes all the time. **** support for AppCompat. WORST THAN **** support for ConstraintLayout. EVEN THE SAMPLES WON'T BUILD PROPERLY SOMETIMES. JESUS CHRIST, PLEASE DO YOU EVEN TEST YOUR SOFTWARE?????????? HELLO??

    Xamarin is already the second most dreaded technology among developers according to the SO Developer Survey. Anywhere you go on the f***ing internet people will tell you to stay away from it.

    This is especially sad for me because I just LOVE C#. I love it. I want so much to just use it for our mobile projects but it seems F***ING IMPOSSIBLE. I'D RATHER DEAL WITH JAVA AND ORACLE AND CALLBACK HELL AND ALL THAT **** A BILLION TIMES THAN LOOK AT XAMARIN EVER AGAIN.

    SO TO ANYONE OUT THERE WHO, LIKE ME, THOUGHT "HEY, IT CAN'T BE THAT BAD, CAN IT? I'LL JUST SPEND A FEW HOURS, MAYBE A DAY SETTING THINGS UP BUT IT WILL PAY FOR ITSELF". NO. GO BACK. IT WON'T PAY. IT'LL NEVER PAY. IN FACT, IF YOUR DREAM IS TO WORK AT MICROSOFT THEN MAYBE YOU SHOULD STICK TO XAMARIN. BECAUSE YOU'LL FEEL LIKE YOU'RE FIXING XAMARIN'S BUGS, NOT YOURS. IN FACT, SOMETIMES YOU'LL EVEN FORGET ABOUT YOUR PROJECT. YOU'LL BE JUST LIKE "WTF IS THIS PROJECT DOING HERE? OH, IT'S MINE", BECAUSE YOU'LL BE SO INTO XAMARIN BUGS. YOU'LL START THINKING ABOUT GOING TO GITHUB AND FIX XAMARIN INSTEAD OF YOUR OWN CODE (SERIOUSLY). THIS IS A DISEASE. DO NOT GO ANY FURTHER. YOU'VE BEEN WARNED.

    I was having a rough day trying to do something with the absolutely dreadful iOS Storyboard Designer. Your hilarious rant cheered me up, thanks!

  • Daxton47Daxton47 Member ✭✭

    So I know the OP was for Xamarin.Android, but I think the sentiments can be projected toward the Xamarin platform as a whole. I started Xamarin.Forms a year ago (note: almost a whole year after the OP...), to efficiently solve a business problem in, what appeared at the time, a timely manner. I'm not going to sit and smear Xamarin or the dev team for how terrible it can be as a developer using the product, I do respect this cross-platform solution idea! But, it makes me very concerned to see a quarter of my very precious development time being spent solving Xamarin bugs rather than my own business logic bugs. Everyday for the last year has been this kind of development Hell that cannot be escaped. The same problems repeated throughout this forum and countless more have plagued my development process! Literally the only reasons I decided to hold on to Xamarin was because of the time I have already invested, and the hope deep, deep, DEEP down that these kind of bugs would be prioritized over fluff like the ImageButton.

    I would hate to have to drop Xamarin completely, but there doesn't seem to be any hints that the future for Xamarin is going to get much better, especially with a record that doesn't show any improvement in regards to how a developer effectively uses Xamarin. (Example: To debug a Xamarin.Forms iOS project, a developer shouldn't have to clean every project in the solution, rebuild every project in the solution, disconnect from a remote Mac, reconnect, re-clean every project, re-re-build every project, delete the app off the simulator and then do a lucky back-flip before hitting the Run button, for it to crap out and throw 23 warnings and 45 errors that somehow say a bunch but nothing at the same time)

    I've also considered moving from Xamarin.Forms to Xamarin.Native projects, but it's forums like these that dissuade me from doing so! Why would I put in the work to make that move from one terribly bugged platform to another? I would be curious to hear from developers that have made this change and now swear by Xamarin.iOS and/or Xamarin.Android?

  • AlfonAlfon Member

    I have been using Xamarin for 5+ years. We’ll one thing I know, if you got less experience on Xamarin you will have hard time on it because you are doing it wrong! I would suggest to find a team who does Xamarin for a long time and you would be able to see how Xamarin is good for large or enterprise apps. Very stable and less bugs, good automated test, good documentation, good IDE, etc. ;)

  • DirkDdDirkDd Member
    Working with Microsoft developer tools has helped putting food on my table for 17 years now.

    A while back I was assigned to rewrite an existing iOS app to Xamarin Forms, and it was by far the worst developer experience I have ever had. Nothing else has ever came close to this. Nothing. Not by a long shot.

    I had to restart my computer at least 5-10 times a day. Updates would break my code for days. Deployment to devices took several minutes. I could go on an on. But everything I experienced is listed above.

    I actually started writing an native android studio version of the app during restart, rebuild and deploy of Xamarin on a separate computer, and without knowing anything about native Android development I was able to progress much faster in native.

    The thing I’m having an extremly hard time understanding is why this framework is beeing used by anyone at all. Seriously.

    Some people even seem to enjoy working in it. Actively seeking a career in it

    What am I missing? What did I do wrong?

    I ended up leaving my job I had for eight years just to get away from the project.

    I am so disappointed in Microsoft.
  • AlfonAlfon Member

    @DirkDd said:
    Working with Microsoft developer tools has helped putting food on my table for 17 years now.

    A while back I was assigned to rewrite an existing iOS app to Xamarin Forms, and it was by far the worst developer experience I have ever had. Nothing else has ever came close to this. Nothing. Not by a long shot.

    I had to restart my computer at least 5-10 times a day. Updates would break my code for days. Deployment to devices took several minutes. I could go on an on. But everything I experienced is listed above.

    I actually started writing an native android studio version of the app during restart, rebuild and deploy of Xamarin on a separate computer, and without knowing anything about native Android development I was able to progress much faster in native.

    The thing I’m having an extremly hard time understanding is why this framework is beeing used by anyone at all. Seriously.

    Some people even seem to enjoy working in it. Actively seeking a career in it

    What am I missing? What did I do wrong?

    I ended up leaving my job I had for eight years just to get away from the project.

    I am so disappointed in Microsoft.

    this is a common problem for beginners in Xamarin. You will not be an overnight xamarin developer even if you know c# for a long time. I would suggest to find an experienced team to help you, before becoming frustrated ;)

  • DirkDdDirkDd Member
    > @Alfon said:
    > I have been using Xamarin for 5+ years. We’ll one thing I know, if you got less experience on Xamarin you will have hard time on it because you are doing it wrong! I would suggest to find a team who does Xamarin for a long time and you would be able to see how Xamarin is good for large or enterprise apps. Very stable and less bugs, good automated test, good documentation, good IDE, etc. ;)

    So basically what you are saying is that it takes about 5 years and a possibly a team of experts in order to master Xamarin properly and deliver full value to customers. That does not sound like a dealbreaker to me.

    You can get really really good at just about any programming language or framework in way less time than that.

    Just out of curiosity. Have you done any native app development?
«1
Sign In or Register to comment.