Makes sense. HTML/CSS/JS is not a bad way to build UI and if you're going to have an HTML rendering engine and JS VM on your machine, you might as well use it.
When WebView on iOS and Android finally get WebGL support ( what's taking so slong?!!?), native app development with native SDKs will plummet.
As a iOS developer, I write native because I want to deliver the best possible user experience. I've done HTML5 with PhoneGap and it does not deliver the same experience. WebGL on iOS will not change that at all.
Many in-game interfaces are powered by Flash/ActionScript, running in things like Scaleform or various open source offshoots of gameswf but they aren't running in Adobe's actual Flash virtual machine, so any performance comparisons are pretty moot.
In any case, anyone who didn't build websites in Flash because it was "slow" was misinformed. Flash/AS, especially with AS3/AVM2 was significantly faster than JavaScript (at the time Flash was relevant) if doing anything that required "Web App" style functionality, at least if the ActionScript code was written by an actual programmer and not a designer copy-pasta-ing scripts to make something work. There are/were very valid arguments against Flash (security, un-indexability, etc), but performance compared to JS wasn't really one of them.
Source: used to write ActionScript apps that ran on the 350 mhz i.MX21 ARM chumby device with 64 megabytes of memory that had better performance than a lot of "native" mobile apps have today, let alone web-based mobile apps.
Games frequently have terrible UIs that have clearly had far more effort put into making them look good than being usable, especially for things not part of the actual game play.
Agreed, not to mention if you want to do _anything_ truly concurrent , as in running non bullshit threads that actually run on available cores, you need native.
Agreed. One of the primary annoyances of HTML5/PhoneGap (as of a year ago or so), was that load times were slow and the UI wasn't as responsive as it should be. It never felt awesome to me.
For me, and maybe it's just me, I can build a much better experience using native code. I also can tweak some very small, but important details that HTML5 doesn't let me tweak.
If someone can create the same experience better, cheaper, and faster using HTML5, more power to them, but I can't, so I go native.
I haven't seen anything in the last year to say that a whole lot has changed. If anything, a lot of major projects have tried HTML5 and have "gone native". I realize there are plenty of projects that might prove the opposite, but when you are just one or two guys cranking out an app on iOS or Android, well you make the best decisions you can and move on.
If UX encompasses UI, how is saying that he wants 'the best possible user experience' incorrect? UI performance and bugginess has an effect on user experience.
I'm just counter nitpicking at this point which isn't much better.
> That native delivers a superior UI doesn't mean it delivers a superior UX.
Sure, it doesn't necessitate a superior UX, but it certainly has an effect on UX. Here 'programminggeek' has tried building apps using native and using web technologies and has found that, for him at least, native provides a better UX. Are you saying thats not possible? That the choice between native and web is absolutely not a UX one but a UI one?
> When WebView on iOS and Android finally get WebGL support, native app development will plummet.
WebGL just hands you a GLES context. Nobody writing 2D native apps deals directly with GL at all, and nobody wants to. WebGL will do squat to replace native app development as a result, it's completely unrelated.
The only ones dealing with GL directly do so for performance, and they sure as hell aren't going to be tempted by HTML/CSS/JS because that's all anti-performance.
>Nobody writing 2D native apps deals directly with GL at all, and nobody wants to.
Who says you need to work directly with WebGL. There are and will be some wonderful 2D frameworks that wrap WebGL. Exactly what happened with Flash's Stage3D. Starling and the Feathers UI Toolkit are great in creating smooth 60fps animations effects in AS3.
I'm not aware if any production quality UI toolkits for WebGL or even Canvas despite canvas being around for many years now. The problem is that you have to reproduce a lot of what you already get using html elements and css.
You don't even need WebGL, plain HTML + CSS, when coupled with a JS framework like Angular can produce very nice results. I've built Aether[1] that way.
Edit: The product is not the page, Aether is a desktop application. The page crashes devices low on memory because of the retina screenshots, and yes, I'm having a new site up soon.
Sorry about that. Aether isn't a website, it's a desktop application. It crashes your iPad mini because it's running out of memory caused by retina screenshots. I'm planning a new website soon.
Interesting. I'm scrapping the entire thing and building from scratch, so it's long in the tooth anyway. The only animation I have in it is keyframe animation which changes the screenshot on the computer's desktop in intervals. I believe retina images are the problem rather than the transitions.
The printscreen doesn't add the laptop, if that's what you're thinking about (that's already there on the webpage). But the font in the screenshot-of-a-screenshot is completely unreadable.
When WebView on iOS and Android finally get WebGL support ( what's taking so slong?!!?), native app development with native SDKs will plummet.