Live data from Hacker News

Are mobile web apps really slow?

danbricklin.com

51–58 of 58 posts

Re: Are mobile web apps really slow?

#51
post #34

Earlier quoted context omitted.

Do you have any proof that DOM manipulation is slow? This is a common refrain that I've never seen proof of (other then anecdotally). There are folks saying that the DOM is fast, and how the JS we use to manipulate it is slow. http://blog.korynunn.com/javascript/the-dom-isnt-slow-you-ar...

Ran this on Android 4.1.1 in chrome and it was 913ms. Desktop was ~40ms on average.

Safari on an iPhone 5: 165ms. Surprised that the difference was so large.

Re: Are mobile web apps really slow?

#52
post #51
post #34

Earlier quoted context omitted.

Ran this on Android 4.1.1 in chrome and it was 913ms. Desktop was ~40ms on average.

Safari on an iPhone 5: 165ms. Surprised that the difference was so large.

Well , he did not say what device he was using. All android devices are not equal. You should know that or you dont know how android works.

Re: Are mobile web apps really slow?

#53
post #36

Speed is only one of the tradeoffs. You also lose access to the native interactions, controls, transitions etc.., which makes a lot of the mobile web apps be very alien to the users since they don't really quite fit with the rest of the apps. I am curious, can anyone point to an well-done mobile web app? The best way to shut up all of us yelling "js is worthless for mobile development" is to point to such apps and ex…

See https://news.ycombinator.com/item?id=5953345 for a discussion of a well-done performant mobile web app.

Thanks!

Re: Are mobile web apps really slow?

#54

For me, it is not just that web apps feel slow. It is that they feel clunky . I can often see the UI elements being drawn one by one, the animations are rarely smooth, and the gestures (if I'm on mobile) never register as well as they do in native apps. The seams are showing. Even when native apps are slow, they can have a feeling of cohesiveness and polish that web apps lack.

This really feeds into npalli's point above. Comparing native vs. web by simply comparing JS execution performance is a red herring. The average native app doesn't really do that much app logic. I'd wager you can take almost any app in the App Store, rip its non-UI code out and replace it with JavaScript equivalents, and no one would be any the wiser. We're talking about software that needs to respond in human-time.…

JavaScript is single threaded you will never get a good smooth UI. Maybe in the future there could be more support for a "UI-thread" and background tasks but for now that's how it is. Android UI framework is basically a copy of Java/Swing where you have single UI thread that does all the painting and event handling. As a developer you have two basic rules for making a smooth UI 1) don't block the UI thread -- create background task for IO, heave code, ect... 2) don't call UI framework from non-UI thread.

Re: Are mobile web apps really slow?

#55

This is a post responding to the following article that was posted on HN yesterday-ish: http://sealedabstract.com/rants/why-mobile-web-apps-are-slow... The point of that article was to specifically call out lazy surface-level discussions of HTML5/js apps by throwing out some benchmarks, and trying to have a practical fact-based discussion. I found the article very convincing actually, and what I wanted to see was bot…

The way I see it, if you look at the iPhone as a slightly faster IE8 plus a graphics card (plus string concatenation that doesn't memcpy and probably various other asymptotic or order-of-magnitude improvements in specific areas), you can do a lot with that. You can perfectly well argue about the less-well-supported facts and opinions in the original article that are used to interpret the performance facts.

For example, the anecdote about Wave that's supposed to demonstrate you can't do realtime collaboration on IE8. Well, I worked on Wave at Google (briefly) and it's no such proof. I also wrote EtherPad, which was realtime collaborative in IE6. You can't disqualify arguments of the type "I wrote an app one time" and then talk about the impossibility of writing apps.

The matter of whether phones will get yet faster is another great question, and one I'm not qualified to comment on, but I wouldn't bet against it.

I totally get the part about GC in a memory-constrained environment, photos, and the iPad's giant screen. However, the author of the original article doesn't stop before making many broad, indefensible claims.

Re: Are mobile web apps really slow?

#56

Earlier quoted context omitted.

No. It is possible to bold and such. With some code to hook things up you have pretty much everything you need for a "real" rich text box.

Can you point me to an example of being able to click on the contenteditable div and make some text bold without extra code? I've never seen something like that. Thanks!

Ctrl+b or eqivilent selected text iirc.

Re: Are mobile web apps really slow?

#57
post #47
post #24

Earlier quoted context omitted.

At heart, arbitrary distinctions like that end up just being "apps that run well" vs "apps that run badly". And no matter how good the system, there will always be some apps in both camps.

> At heart, arbitrary distinctions like that end up just being "apps that run well" vs "apps that run badly". And no matter how good the system, there will always be some apps in both camps. What's "arbitrary" about the distinction? Any app that depends on CPU intensive work, with high memory overhead, that doesn't want to be interrupted by GC pauses, will be slow as web based mobile app. It's a technical distinction…

My point is mainly that there is a middle ground, like spreadsheets and word processors and vector drawing programs and tons of useful every day programs, that are not "just fancy CRUD" but that are also not generally going to be CPU bound.

Re: Are mobile web apps really slow?

#58

For me, it is not just that web apps feel slow. It is that they feel clunky . I can often see the UI elements being drawn one by one, the animations are rarely smooth, and the gestures (if I'm on mobile) never register as well as they do in native apps. The seams are showing. Even when native apps are slow, they can have a feeling of cohesiveness and polish that web apps lack.

This really feeds into npalli's point above. Comparing native vs. web by simply comparing JS execution performance is a red herring. The average native app doesn't really do that much app logic. I'd wager you can take almost any app in the App Store, rip its non-UI code out and replace it with JavaScript equivalents, and no one would be any the wiser. We're talking about software that needs to respond in human-time.…

"Taking a couple dozen milliseconds is not the end of the world."

In games, where you draw the whole screen for each frame, the magic number nowadays is 16ms. This gives you 60fps. For a TV-attached console, this is a good as it gets. For a PC it is just fine.

Taking longer than 16ms is not the end of the world, but noticeable lag for the gamer.

Post reply on HN