Xojo vs Xamarin

Sitting in my backyard on a sunny afternoon, I was reading most resent BKeeny Briefs about Xamrin. Not that I am drifting away from Xojo, not at all I would say, but even a software-developer needs to know about the outside world. @Bob Keeney thank you for this clear exposition which I would bring to everybody’s attention.

Not a problem. As I run across cross platform solutions from other vendors I look at them. As I said in my review, there are a lot of things to like about Xamarin and some things to not like. The same could be said of Xojo or any other tool. They all have strengths and weaknesses.

The only clear advantage Xamarin has over Xojo is that it does iOS AND Android development. Xojo will just do iOS (in the near future) and there are no plans (that I’m aware of) to add Android into the mix.

If you are a C# developer and comfortable with the .NET framework it might be a good tool to add to your arsenal. However, it’s been my experience that many Xojo developers land on Xojo because they don’t want to learn C# or the .NET framework.

That for sure… and for those not making their primary income from coding, price… Xamarin is significantly more expensive than Xojo.

[quote=117094:@Bob Keeney]However, it’s been my experience that many Xojo developers land on Xojo because they don’t want to learn C# or the .NET framework.

VB .NET could have been OK if I was not already addicted to Xojo. If I did not suffer a grave case of allergy to C, I might look at Xamarin.

For Android, Basic4Android is the next best thing to Xojo. With lots of similarities in coding.

For iOS and Android, I am content with Livecode. Which, with its natural language code, is in a way the polar opposite of C …

What is important for me is not so much to go into abstract comparison about programming languages philosophies, but to complete programs that can be sold in a reasonable amount of time.

I always loved Basic because I can concentrate on what I want to achieve and not have to concentrate about the alien language. If I had a housemaid, I would not like her to speak Martian, but to be able to understand English. Seems to me computers have been created to assist Man, not he other way around.

That said, what works for one may not work for another one. Each individual his or her own, and that’s alright :slight_smile:

A while ago Xojo was asked by somebody why not doing Android also. It turned out that it was for technical reasons, since Android has a compete different background and architecture.
Well, I think not technical reasons should make a long term decision, but marketing. Nearly all the IOS apps I have on my iPhone/iPad are available for Android also. Supporting Android got a must for app vendors… Xojo developers know the benefit of having just one code base for multiple platforms. It turns out that the lack of Android support will make developers feeling more and more uncomfortable since they have to look for another platform to rebuild and maintain their Xojo/IOS app for Android. For just app builders I would challenge @Geoff Perlman to reconsider his approach. If we should cover Android too, which could get bigger than IOS, Xojo would be superior above all others… my dream.

I prefer Xojo is stable as a rock and let iOS and android later.
Xojo has many things to repair even like the Reports and Linux IDE
after all that then everyone can do other things

It may just be an impression, but from the time it took to (almost) complete Xojo iOS (two years is it ?), seems like the company resources have been stretched quite a bit. Yet, the product is not yet available.

Engineeringwise, Xojo experience with Mac OS may have been a big asset in conceiving Xojo iOS, as the two system are closely related. It would be a horse of an entirely different color to support Android, which in term of UI is not even related to Linux.

Marketingwise, market shares of iOS remain above 40%, according to Net Applications http://bgr.com/2014/08/01/android-ios-market-share-july-2014/ and Forbes reports that iOS users are way more active than Android ones http://www.forbes.com/sites/ewanspence/2014/08/03/ios-users-seven-times-more-active-than-android-users-suggests-net-applications/

Active customers means more apps to sells. Ultimately, that is what supports Xojo : developers sell, and in turn buy more to create new products.

At this time, because Xojo does not exist for iOS or Android, if one wants a product on the market, it has to be another solution, would that be Livecode (iOS and Android), Xamarin (same thing) or yet another. When Xojo iOS will be a reality, I think Basic4Android has what it takes to develop the counterpart app needed for the market. But which market ? Companies serving consumers will probably want iOS and Android. Corporate customers may decide to go both platforms, as Android tablets are more affordable, but their personnel may have iPhones in their pockets. For indie developers, though, the choice is less clear cut. iOS offers through the iTunes Store a paradigm not unlike the Mac App Store, with potentially the same benefits : fire and forget shelf space, where Apple takes care of most, if not all, the end user care. The Android Play Store may look the same, all indications from developers who have apps in the two universe are that the Play Store brings way less business. Then the question becomes, why develop for Android ?

And there’s the option to build web-apps.
For me programming individual solutions (so I don’t have to use the stores) I was able to program all what has to be done on handhelds this way. This way I only have to update the servers and not every installation on a client. VERY comfortable :wink:

Thanks @Michel Bujardet . Xojo Inc. has put an enormous effort in IOS, as you said, it took 2 years and not ready yet. If this effort had been put into WE for example, wouldn’t that be more impressive ? I’d like to have IOS, but for my business which is custom software, Android is now more used since deployment on just company devices is easier and the devices are much cheaper.

Not true Bob, C# and .NET can be mastered in about 300 years of 12 hour tuition shifts.

Think it’s not C# which is the pain, it the .NET framework with it’s CLR and JIT-compiler. which you like or just don’t like.

I prefer Xojo a lot instead of using Xamarin.

I have worked with C# since 2002. In 2013 I got the possibility to work with Xamarin in an iOS project. The Xamarin IDE runs very slow and I missed the GUI Builder a lot. Also the code irritated me, because the code doesn’t looks like Windows-forms code, nor does it looks like objectiveC Code. It was a combination of both and feels awkward. Xojo code is plain, easy to read and elegant.

I would suggest to use Xojo for Desktop Apps (perhaps iOS when ready), and Basci4Android for Android (iOS when ready).

Sure, Android is used. But the iPad accounts by itself for one quarter of Google requests. I’ll say that’s an impressive number. Yet again, all is in the perception of what is your market. If you serve mainly corporate customers, the wider consumer market is less important than your order givers concerns. But if like me you try to reach the end user through the app store, then you do appreciate a large customer base.

The issue here is not that any individual platform should receive more love than others. Xojo Inc. has made up its mind a long time ago to add iOS, and that’s in my mind a good thing. Now it would be really preposterous to say “let us put all resources in WE because iOS is just a gadget”. Or say that Windows is of less importance than Mac OS X because of VB .NET is a tough challenger. Xojo is precisely better because all those platforms are (will be soon hopefully) supported with a lot of reusable code.

My suggestion too !

For what it’s worth, the engineers that are working on iOS are not the same engineers who work on the web framework, so they don’t really slow each other down.

It’s too bad they keep finding such horrendous security flaws in Android. I was reading just the other day about a bug where any app can get any other app’s permissions. A bug which exists through Android 4.3, and because in many cases the OS can’t be upgraded by the end user, they’re all vulnerable. The next must-have game could very well have unfettered access to all of your private data as well.

I found an app which looks for custom fonts in all apps installed on a device and downloads them. Which means an app has access to all the other apps files and executable storage area. I wonder how all sorts of malware are not exploding from that can of worms. Android reminds me of the Apple II and its total lack of security. Anything goes. Between that and the ease to get the code source from the apk, it becomes downright frightening to develop for Android anything serious.

Ok, next time when this subject is at issue, I will ask you guys to help me convincing the new customer to chose for IOS rather than Android. He will not be susceptible to the fact that Xojo doesn’t support Android, he’s only looking for somebody who can build what he wants.

[quote=117361:@Greg O’Lone]the engineers that are working on iOS are not the same engineers who work on the web framework[/quote] - which I understand but they do have to eat something …

You do not understand. Your customer is not the whole market. It is his privilege to decide he wants to use Android, and your job to satisfy him. But you do not need Xojo for that. Basic4Android can produce the app.

Xojo has probably considered every option before casting a lot of money and efforts into the iOS product. Please grant them that they knew what they where doing. It is still a small company which sometimes has to make tough choices. Like all of us. Chances are their iOS product will live up to our expectations. And be a winner on their main market which happens to be the US and Apple. Now, you may experience a different local market and it is possible that Android is predominant in your country. But it is also your privilege to go for the development tool best suited for it. Would that be Xamarin or anything else.

While we have not made an official announcement about Android support, it is #3 on the Feedback Top Cases list after iOS and 64 bit. We have discussed Android internally and once iOS support is shipping, I’m quite certain we will be looking into Android. There are a few different approaches we could take and they need to be investigated before we decide which path to take but Android support is something we are seriously considering.

hhhmm…I can see it now. “Geoff promised Android support soon.”