Wednesday, April 30, 2008 @ 4:42 PM
Optimizing iPhone Web Applications
We received a comment on Basic AJAX Scroll Animation w/ YUI from Joel saying,
I agree Joel, you have an excellent point, an iPhone loading a web page on EDGE is much slower than on 3G or WiFi. While I don't have any other suggestions for a slide technique, as a developer I do my best to keep the load times to a minimum, and in all reality the user should only have to load your site once. After the initial load, no more data should be transmitted.
Let's keep this simple; an iPhone application should be "small, lightweight, and portable." Sound familiar? Yeah, that's exactly how Apple describes the iPhone. So we're not stretching far away from the overall goal of the iPhone. "At the touch of a finger." I believe was one of the many slogans used during the initial iPhone ramp-up. We should develop our web applications with the same intent.
While normally loading these AJAX libraries on mobile devices is tedious and increases the load time, I personally have no problem loading YUI libraries on our development iPhone. The way I see it, users of the iPhone expect a slight delay when loading a web page, much like I expected it on my old SideKick. However, when developing these iPhone applications, if you load all your content, whether visible or not to the user, then make AJAX animation calls to bring the content to the iPhone's screen when needed, the overall user model will not take a hit and it will be an experience of the lifetime.
iPhone web applications rely on solid user models. Build a good one, and you won't have any issues with my methods.
// Jay, aka W3prodigy
These javascript libraries will equal more than 80K. For an iPhone that's just way too much. Especially if it's EDGE.
Any other suggestions for slide?
I agree Joel, you have an excellent point, an iPhone loading a web page on EDGE is much slower than on 3G or WiFi. While I don't have any other suggestions for a slide technique, as a developer I do my best to keep the load times to a minimum, and in all reality the user should only have to load your site once. After the initial load, no more data should be transmitted.
Let's keep this simple; an iPhone application should be "small, lightweight, and portable." Sound familiar? Yeah, that's exactly how Apple describes the iPhone. So we're not stretching far away from the overall goal of the iPhone. "At the touch of a finger." I believe was one of the many slogans used during the initial iPhone ramp-up. We should develop our web applications with the same intent.
While normally loading these AJAX libraries on mobile devices is tedious and increases the load time, I personally have no problem loading YUI libraries on our development iPhone. The way I see it, users of the iPhone expect a slight delay when loading a web page, much like I expected it on my old SideKick. However, when developing these iPhone applications, if you load all your content, whether visible or not to the user, then make AJAX animation calls to bring the content to the iPhone's screen when needed, the overall user model will not take a hit and it will be an experience of the lifetime.
- To summarize:
- Keep AJAX Libraries to a minimum.
- Limit the number of pages to load.
- Define a user model that relates to the user.
iPhone web applications rely on solid user models. Build a good one, and you won't have any issues with my methods.
// Jay, aka W3prodigy
MindComet at 4:42 PM - View Post


