If they did that, they would very likely, as you say, dominate mobile for a long time. Nothing is more frustrating than jumping between android XML, Java, and eclipse (or whatever) and XCode, OBJ-C, and the iOS UI, while trying to not go insane.
If they did that, they would very likely, as you say, dominate mobile for a long time. Nothing is more frustrating than jumping between android XML, Java, and eclipse (or whatever) and XCode, OBJ-C, and the iOS UI, while trying to not go insane.
Because of continued platform fragmentation WORA has been, is, and always will be a pipe-dream. People have been attempting to create WORA technologies since the beginning of time and they have all failed.
The nice thing about Xamarin's model is your UI code uses native constructs, allowing for the best possible, most natural (to the user) experience. But you get to stick with one language (if you want) and your core code is very portable.
[1] http://ceklog.kindel.com/2013/02/21/james-gosling-screwed-us...
Nice straw-man. Unity 3D does WORA very, very well. It's been used successfully for cross-platform development by many shipped products. To my initial astonishment, all built on Mono/C#.
This doesn't absolve the developer from QA for the targeted platforms, and this is where fragmentation is the killer IMO. That said, Unity provides a huge amount of leverage and tooling in support of seamless cross-platform deployment.
Unity is also notoriously painful when it comes to 2D UI style work as well, which is why there's a tools ecosystem around it just to deal with that problem.
Saying that the apps generated don't look "native" doesn't support the assertion that WORA is a "failure". Doubly so considering the ubiquity of Java.
Otherwise it sucks.
Well the web doesn't have a native UI. But iOS and Android DO have one.
While the applications are other way around. New customers do not want to spend more than a minute to get familized with the interface. Moreover, your custom UI interface will be competing with Apple/Google designer's budget.
Not true. Unity engine is made using c/c++. You control those components using Mono/c#, which is totally different.
If Unity was made in Mono, it would be 1 frame per second. We made lots of experiments using mono for doing 3d and animation in our company as it is fast to program with, but with all the market machine of MS, c# is not designed for some things, but some people just can't stop trying to use the only hammer they have.
It looks like Xamarin uses .AXML for Android (maybe a XAML flavor) but has to adhere to Interface Builder for iOS (http://docs.xamarin.com/guides/cross-platform/application_fu..., specifically the Visual Designer section). XAML likely won't gain any traction on those platforms though due to NiH on all sides. HTML/CSS is likely as close as we get for now but that isn't a "native view" in any of the platforms mentioned.
Xamarin's Android interface builder is actually remarkably decent.
I couldn't easily associate .xml with the designer in VS since everyone uses .xml.
I think this because I believe that platform-level ui look and feel differences are going to be with us for a long time.
I think you can standardize "what it does" and "how it does it", but you'll have to keep platform specific "how to invoke" and "how it looks" for a long time.
Maybe a MVCP paradigm is what we need, where the controller is split into common controller and platform controller
You mean QML?