While reading the Carnival of Mobilists #80, I came across an interesting post by Malcolm Lithgow about why Mobile Web 2.0 applications won't work in smartphones. He even took into consideration the availability of Google Gears which is designed to help make web applications usable offline. Everyone knows that mobile applications need to be able to run in a disconnected fashion or the users experience will suffer.
Here's an excerpt:
Google Gears changes the reliability equation a bit, but the equation is still in favour of native clients:
R(native clients) = R(client app) * R(client OS) * R(client HW)
while a Google Gears based app has a reliability of:
R(GG app) = R(client SW) * R(browser) * R(client OS) * R(client HW) * R(GG framework)
It's easy to see that a GG app adds the (un)reliability of the browser and Google Gears framework into the equation. Thus, given the fabled instability of web browsers, and unknown stability of the GG framework, the client application code must be vastly more reliable in order to equal a native client application's reliability.
Web apps are still much easier to deliver, but no easier to advertise or promote. And Web apps still have significant responsiveness, reliability, and privacy issues.
I tend to agree with his observations. What about you?