Live data from Hacker News

Ask HN: Is Xamarin worth learning?

news.ycombinator.com

151–160 of 168 posts

Re: Ask HN: Is Xamarin worth learning?

#151
This probably isn't cool, popular, or what you want to hear. But for client-side software, use the native GUI library for each platform. Write the core in C or C++. Abracadabra. It's cross platform, no issues, no bloat, no extra fees. With experience it can be fast to develop too.

Re: Ask HN: Is Xamarin worth learning?

#152

Earlier quoted context omitted.

How would you distinguish between the two if both are running above 60fps, which RN effortlessly can?

> which RN effortlessly can* I respect RN and the engineering behind it, however how can it beat the raw, on-metal performance of Swift/Java? I'm not talking about CRUD/TODO list apps like https://li.st , but performance critical apps like Spotify etc. Facebooks own apps are written in native code, IIRC. I would love to be proven wrong here, and it would be great if you can provide some sources.

> Facebooks own apps are written in native code, IIRC.

They are written in React Native. See: https://facebook.github.io/react-native/showcase.html

Re: Ask HN: Is Xamarin worth learning?

#153
Definitely worth. Please make sure you are learning good things, not bad.

There is an approach to have all native apps with good codeshare developed easily. There are alternative approaches with less advantages.

We are using Xamarin since before it was Xamarin and are happy. Literally, there is no other way to have production-quality native apps for iOS and Android written in one language (with code shared). (Unless it's C-like language?)

Our code share is around 60-70%, depending on the project. What I personally like in Xamarin it's a) one language b) such easy and comfortable way of introducing new features and fixing bugs.

If you have a bug in the logic, you fix it in the Core, and boom it's fixed in 3 apps. Once you developed a feature for iOS (or Android), boom, it's ready for all platforms. Just add the UI part (UI logic is in the core as well).

One of the disadvantages was app size, but nowadays Uber app is 80+ Mb (swift-based). Nobody cares.

If you have to use different APIs on different platforms - fine. Totally possible.

IDE is fine, I'd say much better than XCode.

There is also a problem that people mistaken Xamarin and Xamarin.Forms. Forms is different technology and as of now (2.3) I would recommend it only to the limited set of scenarios.

To clarify, I am Microsoft MVP. But I am MVP cause I like Xamarin and I use it every day. Not otherwise.

Feel free to ask any questions on twitter @AlexSorokoletov.

Re: Ask HN: Is Xamarin worth learning?

#154
post #11
post #6

Ruby Motion vs React Native vs Xamarin vs Native (Java/Swift) is a question I have all the time. All look interesting and worth learning

We are in favour of Native. We are still in product market fit with our current product (native iOS to native Android online instant porting tool, www.myappconverter.com) but we are making good progress based on customers and user feedback. We are currently working to support auto-layout.

The thing with RN is that, well, either you like javascript or you don't. I don't.

I agree that RN is the most sophisticated of the options but at the same time I would rater write in Ruby than in javascript. There are some other languages that you can pretty well compile to JS (cljs for example), but in the end you're still dealing with javascript.

Re: Ask HN: Is Xamarin worth learning?

#155
post #35

I've been extremely disappointed in Xamarin. The main issue is that you don't really get code sharing. I would estimate that only 25% of the Xamarin project I manage is cross platform code. The rest is this bizarre merger of native APIs with C#. It's difficult to write because of the lack of examples and documentation. It's also buggy, even with simple things like page views. The real problem is that I can write a na…

I've had completely the opposite experience. Have worked on several medium-to-very large Xamarin projects (4 developers up to 60 developers) and rarely have I seen code sharing drop below 50%, with the sweet spot being around 60%. 2 years ago, Xamarin was buggy as hell. Today, (IMHO) it's quite stable. Edit: downvoted for sharing my experience? Stay classy, HN.

I had no issues two years ago; what was buggy? We wrote very large apps in it without problems (besides the normal crap one has with builds now and then).

Re: Ask HN: Is Xamarin worth learning?

#157
Native iOS and Android developer here. I switched to Xamarin a few years ago. As a native developer i was afraid of Xamarin and that i couldn't harness the power that Swift and Java gave me. However it give's you full control over your apps just as Java or Swift does. Everything you do in Java or Swift can be done with Xamarin in C#! Your knowledge isn't lost, the syntax has only changed. Nowadays i absolutely love it! I work with enterprise companies as a consultant using Xamarin, code sharing is approximately around 80% when using a Xamarin and a framework like MvvmCross! In my opinion Xamarin is the feature of building apps. Please ask any questions you have and i be happy to answer.

Re: Ask HN: Is Xamarin worth learning?

#158
post #76
post #35

I've been extremely disappointed in Xamarin. The main issue is that you don't really get code sharing. I would estimate that only 25% of the Xamarin project I manage is cross platform code. The rest is this bizarre merger of native APIs with C#. It's difficult to write because of the lack of examples and documentation. It's also buggy, even with simple things like page views. The real problem is that I can write a na…

I've gotten great levels of code-sharing, but you don't just get it out of the box. You really have to architect for it. See: MvvmCross and ReactiveUI.

You can do all of that with Forms with custom renderers when needed. I like that flow; mock up the app with standard cross platform components and when the basic functionality is in place, add custom renderers to add fancy UI.

Re: Ask HN: Is Xamarin worth learning?

#159
post #53
post #35

I've been extremely disappointed in Xamarin. The main issue is that you don't really get code sharing. I would estimate that only 25% of the Xamarin project I manage is cross platform code. The rest is this bizarre merger of native APIs with C#. It's difficult to write because of the lack of examples and documentation. It's also buggy, even with simple things like page views. The real problem is that I can write a na…

> I would estimate that only 25% of the Xamarin project I manage is cross platform code. Yep, you will keep hearing this from people complaining of Xamarin. A huge problem indeed, and I'd say enough for it not be worth learning.

Vs what? Native would be the same? And with native you have different languages. So which cross platform gives you that but with more code sharing? 25% (which is low, we are well over 60% in general) is more than 0% and you can work in F# to boot.

Re: Ask HN: Is Xamarin worth learning?

#160

I have read some fairly negative comments in this thread. I have experienced many of the negative aspects myself, and while I don't disagree with them, I would still say that it is worth learning this technology. Microsoft's strategy with bringing a phone to market appears to have failed so they're going to have to take the next best thing which is owning the development tools. I expect the outlook for the software t…

My primary question, as an Android developer who can write decent enough Swift when needed and who does not develop on any Windows platforms, is why should I learn Xamarin?

It depends on what your career objectives are. If you intend to found a start-up you can of course choose your technology stack and ignore Xamarin completely if you wish.

However if Xamarin takes off in the way I hope it will and becomes a high-quality product under the auspices of Microsoft, I believe it will become a vital skill in the marketplace.

And then, it would be like not knowing React or Angular as a web app engineer. Depending on the company's technology choices, that might not matter, or it might mean you don't get the job.

Post reply on HN