Where exactly do you expect them to get the funds to develop this technology if they don't charge a reasonable fee to use it?
Why corporation like microsoft are offering os, ides, tools and also devices free to develop to those categories of people? 'Cause if you make them learn maybe they will make/support the adoption of your platform in the professional field in which they will work.
This is why Xamarin fees are nonsense. It's ok to pay high fees in the professional field, but you must offer low fees for new entries. And not, indie costs (299*2/3) are not enough low, and the starter pack is just useless.
In case of Xamarin, there's no such choice. Only Xamarin can compile C# to iOS, and if the license changes, the whole project implemented with the tool is locked in. The only option is to rewrite the whole project with alternative technology.
I think, LGPL open source core SDK + paid IDE + paid additional libraries would be a much better choice which mitigates the risk. But Xamarin for some reason decided to choose a different path.
Yeah, in QtQuick! (unlike Xamarin, Digia lets you use all the development tools out of the gate with the paid-license-only ones really enterprise centric (like the Oracle dbms client) and the foss version is lgpl so you can use it in your apps no problem (as long as you don't modify).
Also, C++11 has async! http://en.cppreference.com/w/cpp/thread/async
The only barrier to qtquick in mobile is that Apple won't let Qt include v8 for the same reasons Chrome can't. So you are stuck on qtquick1 on ios.
You may not have fully understood the C# async/await feature.
The C# compiler rewrites apparent linear code that awaits on a future (Task in .NET) so that all the code that comes after the await goes into a continuation of that future. It can even rewrite a loop with an await in it into a chain of continuations, all the while taking care of hairy details like propagating exceptions.
Now we'll need the Mono equivalent for the Xamarin iOS api's etc.
Mono-ception.
However, their license makes their technology a niche product, when it could have been the main way mobile applications are developed.
is this so bad? I see at a competitive advantage to use their platform.
I'd rather ship 1.0 and 2.0 quickly to learn from customers than focus on the one true way to build mobile applications.
Does not seem very niche to me.
Nobody's going to pick up Xamarin for fun, for experimentation, for learning, for scratching a creative itch. You can't download it for your kids or recommend it to your students. They have no product for use outside of companies and that guarantees it will be and die a niche riding on companies not wanting to retrain their .NET developers for iOS and Android.
Earlier this month I got to choose between Xamarin and everything else, I have years of C# experience and I like their IDE for general c#-on-mac stuff.
I chose Haxe instead.
Actually Miguel started the Gnome project, wrote Gnumeric, sponsored Evolution, etc.
Even Mono was once to be used in Linux and Gnome.
They were forced off Gnome, by valid license concerns, FUD, zealots and not few indiffrence.
What are they to do? Roll over and die?
The same story is repeated again and again. Tool vendors think more about profits than about growth and adoption. Sun limited usage of server side Java on Linux which allowed PHP to occupy linux server side niche. When it understood that it made a mistake, it was too late. I am afraid, we will be developing mobile applications in JS in several years' time.