Live data from Hacker News

Ask HN: Mobile dev - Bypass apps and go straight to HTML5?

news.ycombinator.com

41–50 of 57 posts

Re: Ask HN: Mobile dev - Bypass apps and go straight to HTML5?

#41

I guess it depends on the app, but be warned that performance of HTML5 on mobile devices such as the iPad is orders of magnitude worse than in native apps. So even something straightforward like, say, smoothly animating a pinch zoom on an image, is just shy of impossible on a mobile browser. Add any complexity to your scene, then try to animate it and you'll quickly start reconsidering building a native app. Sound is…

It's not that slow. I know this because I've done it. You just need to use the HW accelerated transforms/animations. They're pretty easy to use, and documented. There are some undocumented css things which cause slow downs though.

Animation is as fast as lightning, with expert timing. In fact it's a little bit frighting what you can do with it. If you use js setTimer based animation it's not that great though. You need to use the css animation stuff really.

Audio can be played with no user action - again I know this from direct experience.

Only the small devices play video full screen (currently... I can't comment on upcoming IOS releases ;). The ipad can play them without going fullscreen.

You can't just use links, with click events. Understanding how touch input works with multiple fingers moving on the screen, not waiting for releases is different than understanding interfaces with a big screen and one accurate mouse pointer.

Expect to pay top £/$ for good iOS html5/css/js/svg/canvas developers that also have experience on iOS/android/nokia/palm... if you can find them.

Re: Ask HN: Mobile dev - Bypass apps and go straight to HTML5?

#42
post #37

Here is an example of where exactly what you are asking has been done to good effect. By inserting a line of code in your normal website, we detect which device you are on and redirect you to a HTML5 + Jqtouch version of the site which acts and looks a lot like a native app (especially on the iphone) See http://www.pocketdiner.co.uk We've had no problems so far so the answer to your question is yes - HTML5 is mature…

This is a perfect example why web apps are still nowhere near native apps. For example (testing with a HTC Desire): - The transitions are very slow and response times are too big. - Pinch zooming a picture results in corrupting the design - overlapping buttons and labels and so on... - You cannot use the Menu button - You need a constant Internet connection to be able to work with the application - The address bar sh…

HTML5 has offline cache.

WebKit has CSS has transitions, which are hardware-accelerated (at least on iPhone).

WebKit has hack (hopefully standardized as @viewport) and touch events can be used to control zooming.

In iOS pages bookmarked on home screen are allowed to hide addressbar completely.

Re: Ask HN: Mobile dev - Bypass apps and go straight to HTML5?

#43

From my tests on the iPhone, Mobile Safari-based web apps do not have responsive interfaces as compared to native ones. Safari adds a delay when you do things like tap link or button - I'm not sure why, it's probably to disambiguate tapping the link with some other action, since Safari can expect the user to be scrolling and zooming as well on top of any interface element. Because of this, I find UI that mimics nativ…

Delay can be avoided by using touch events instead of emulated mouse events.

Re: Ask HN: Mobile dev - Bypass apps and go straight to HTML5?

#44
post #43

From my tests on the iPhone, Mobile Safari-based web apps do not have responsive interfaces as compared to native ones. Safari adds a delay when you do things like tap link or button - I'm not sure why, it's probably to disambiguate tapping the link with some other action, since Safari can expect the user to be scrolling and zooming as well on top of any interface element. Because of this, I find UI that mimics nativ…

Delay can be avoided by using touch events instead of emulated mouse events.

Ah nice: onTouchStart, onTouchEnd.

Re: Ask HN: Mobile dev - Bypass apps and go straight to HTML5?

#45
I've never, ever seen an HTML5 app that comes even close to being as smooth as a native app. HTML5 is not a comparable option for the foreseeable future.

It's best to build a simple native app for iOS that covers the core of your service, and then an Android app if your audience is particularly likely to have Android phones.

EDIT: Also, the approval process is a non-issue now, it takes a week at most to be approved, and 2-3 days if you email ask them to expedite. The problems with long delays are long over, starting early last year things started improving exponentially.

Re: Ask HN: Mobile dev - Bypass apps and go straight to HTML5?

#46
post #33
post #7

The App Store / Marketplace is a very important distribution channel, which I wouldn't be so quick to dismiss. Downloading an app in today's modern phone is almost as frictionless as entering a website.

For the average developer, using the App Store as a distribution channel is like playing Russian Roulette with your resources. If you don't have considerable marketing money to ensure your app makes it to the top of the iTunes category, your app will simply be buried beneath the horrible user interface of the App Store. It's a little better as far as Android is concerned but not much. An app store is great for consum…

You're submitting that marketing an html5 app is any easier than an app store app? The app store is orders of magnitude smaller that the web. Talk about being buried.

Re: Ask HN: Mobile dev - Bypass apps and go straight to HTML5?

#47
That of course depends on the target audience of the application but in general I would say not quite yet. We have a mobile app we launched recently and we have the benefit of being on-hand when customers use it (at trade shows). There are still a very high percentage of old WinMo and BB phones out there that we had to code for. Now we did make a version of our app in HTML but it is very basic to support the old browsers. I really look forward to the day when we can just do a one for all (or one for 99%) application.

Re: Ask HN: Mobile dev - Bypass apps and go straight to HTML5?

#48
For my upcoming game/app (threewiki.com) I actually built all three versions : )

First the complete, native iPhone version, then realizing that parsing HTML and storing with Cocoa is a pain. (Core Data is pretty good but too bureaucratic for simple things).

So in my second version, I moved all the data logics to an App Engine server, and just leave the app with a thin UIWebView layer in most cases, and only stores the user token on the phone. Mobile Webkit is pretty accurate but I didn't like how the animation turns out, just doesn't "feel" right. Besides, scrolling is much slower in UIWebView than the native UITableView, and you cannot change the tap-link style in UIWebView except a simple color overlay.

Then comes my final version, in which I use UIWebView for static content, and use UITableView & custom views/animation when there's interaction, and all model logics and data processing done on the server.

The app feels super smooth now. And it would be super easy to update because pretty much all the logics in on the server, so app is essentially a pretty "portal". Take a look of the video if you are interested threewiki.com

Re: Ask HN: Mobile dev - Bypass apps and go straight to HTML5?

#49

I guess it depends on the app, but be warned that performance of HTML5 on mobile devices such as the iPad is orders of magnitude worse than in native apps. So even something straightforward like, say, smoothly animating a pinch zoom on an image, is just shy of impossible on a mobile browser. Add any complexity to your scene, then try to animate it and you'll quickly start reconsidering building a native app. Sound is…

I agree with the above. Keep in mind that a lot of what you take for granted in a native app you'll have to build yourself. Scroll inertia, image carousels, determining a "flick" vs a tap, fixed tab bar - these are all something that haven't been 100% figured out. Yes, you can find solutions for each one, but try putting them all together and you quickly see the conflicts. Add in some caching of data and you'll learn that the HTML5 cache concept is different for each device.

I've tackled these issues personally, and at my company (iPad app). Keep in mind that your users will demand that your app at least feel native, if not the same UI controls. You think that you'll have the freedom to run on each platform, but in reality you'll be dealing with the quirks of each platform and that will set you back some dev time. Webkit is not 100% the same on each browser

What Phonegap gives you is a demarcation point to drop in your HTML code - and that's it. If you need API access for accelerometer, vibrate, etc then Phonegap can help. If your app is focused more on the user experience, then Phonegap cannot help you.

Do you really want to launch an app that will feel awkward on every platform, or just develop a native app for each major platform? That platform space isn't as large as you might think - iOS, Android,

I'm a mobile product manager by day, my contact info is in my profile if you have any more questions.

Re: Ask HN: Mobile dev - Bypass apps and go straight to HTML5?

#50
post #41

I guess it depends on the app, but be warned that performance of HTML5 on mobile devices such as the iPad is orders of magnitude worse than in native apps. So even something straightforward like, say, smoothly animating a pinch zoom on an image, is just shy of impossible on a mobile browser. Add any complexity to your scene, then try to animate it and you'll quickly start reconsidering building a native app. Sound is…

It's not that slow. I know this because I've done it. You just need to use the HW accelerated transforms/animations. They're pretty easy to use, and documented. There are some undocumented css things which cause slow downs though. Animation is as fast as lightning, with expert timing. In fact it's a little bit frighting what you can do with it. If you use js setTimer based animation it's not that great though. You ne…

Any idea where the market is for such developers? I intent to go the HTML app route, but I worry a little that I won't be able to get contracts for creating apps because I lack experience with the native side.
Post reply on HN