tag:mentalfaculty.tenderapp.com,2010-10-19:/discussions/blog-comments/10-why-native-apps-are-here-to-stayThe Mental Faculty: Discussion 2018-10-19T02:24:05Ztag:mentalfaculty.tenderapp.com,2010-10-19:Comment/98261522011-09-08T07:50:49Z2011-09-08T07:50:49ZWhy Native Apps are Here to Stay<div><p>Comment on the blog post.</p></div>drewmccormacktag:mentalfaculty.tenderapp.com,2010-10-19:Comment/98261522011-09-08T16:10:55Z2011-09-08T16:10:58ZWhy Native Apps are Here to Stay<div><p>Hi Drew,</p>
<p>Great post! It looks like one of his point was that the web
content is there to stay because of the universal open nature of
HTML. And indeed, it is nice that HTML is out here and offers a
great, flexible and forward-compatible way of providing
content.</p>
<p>But you rightly point out that the web content in only part of
the story of what web apps are about. Accessing and displaying such
content can be done via a web app or a native app, and native app
are still ahead and will likely always have an advantage over a
cross platform tool like 'the web'.</p>
<p>And then, independent of a web app or not, once the content is
gone from the server, you are back to relying on local storage and
backups of the data, if any is even available.</p>
<p>Coming from the other side, content created by native apps can
be a silo, sure, and may only be local. But if it's your private
personal content, the fact that it's local is not a bad thing.
Then, the future is of course the cloud, so the issue of locality
is less and less a problem. Finally, the issue of your content
format is real, and being able to access it independent of the app
can be problematic. But a lot of progress has been made, and
between html, xml and sqlite, there are less and less threats of
one's data being lost forever.</p>
<p>Charles</p></div>Charles Parnottag:mentalfaculty.tenderapp.com,2010-10-19:Comment/98261522011-09-08T17:57:37Z2011-09-08T17:57:37ZWhy Native Apps are Here to Stay<div><p>Hi Charles,</p>
<p>I am certainly not against the browser or HTML. They play an
important role. What I am against is the notion that they can and
should play ALL roles. That is basically what was espoused.</p>
<p>Personally, I prefer the best user experience where possible,
and until now that means native.</p>
<p>Some argue that the gap is closing. I've been hearing that in
relation to all sorts of technologies over the years, and they
never seem to catch up. That's because the problem isn't just a
question of accessing the Address Book and other services on the
device, as many are suggesting, it's that the HTML app doesn't feel
like it belongs on the device. If you try to fake it, it's never
quite right. And even if you could do it, you would have to do it
on all platforms, and you might as well go native.</p>
<p>Drew</p></div>drewmccormacktag:mentalfaculty.tenderapp.com,2010-10-19:Comment/98261522011-09-09T15:47:49Z2011-09-09T15:47:52ZWhy Native Apps are Here to Stay<div><p>All one has to do is point to a few examples where native apps
outshine their web app counterparts. Two I can think of off the top
of my head are Facebook and Bank of America. Try accessing
facebook.com or box.com via Safari on the iPhone and you get a far
poorer experience than using the native app.</p></div>Billtag:mentalfaculty.tenderapp.com,2010-10-19:Comment/98261522011-09-09T19:47:41Z2011-09-09T19:47:42ZWhy Native Apps are Here to Stay<div><blockquote>
<p>Some argue that the gap is closing. I've been hearing that in
relation to all sorts of technologies over the years, and they
never seem to catch up.</p>
</blockquote>
<p>Totally agreed, and as you point out in the article, this is
still the myth of a cross-platform development toolkit. Maybe the
myth will come true one day, but still a long way IMO too.</p>
<p>Now, maybe I did not make myself clear, but all I said was in
support of your post and was going in the same direction. My angle
was to distinguish between the content and the container (the data
and the code?), where of course, HTML is a nice format to have and
happens to work out of the box in a browser, but then that's not
the web. The web goes beyond HTML, and there you quickly hit many
of the issues typically brought again native apps: things break (no
update but new browsers), things disappear (server goes down),
things change (web site is updated, older version not there
anymore), things are hidden (server-side processing). And these
issues are in a way worse on the web than with native apps, since
at least with native apps, you inherently have local copies.</p>
<p>Bottom line is: there are arguments even beyond usability to be
made against web apps, even for things that are typically thought
to be strengths of web apps.</p>
<p>I prefer to see the web as just another platform, a very nice
and powerful one, but with enough limitations and issues that one
should not limit itself to it.</p></div>Charles Parnottag:mentalfaculty.tenderapp.com,2010-10-19:Comment/98261522011-09-10T20:10:17Z2011-09-10T20:10:18ZWhy Native Apps are Here to Stay<div><p>All of the initial arguments make sense actually.</p>
<p>Besides, when choosing to go cross-platform or native, the
arguments shouldn't be just technical, but the business side is
extremely important: the ROI with cross-platform is far better than
with different native apps and the management of code bases is
simpler and less expensive too. Single code-base, multiple
platforms.</p>
<p>Choosing cross-platform has always been a good choice with these
perspectives, even before the advent of web or of smartphones. It
is unlikely that suddenly best practices change just because of a
few technical arguments and I also believe that the difference in
UX is minimal in any case.</p>
<p>Two other examples where the smarter decision has been taken:
SalesForce and Google both have new mobile web apps. Facebook also
recruited someone who built a web-technology based store.</p></div>Joshtag:mentalfaculty.tenderapp.com,2010-10-19:Comment/98261522011-09-10T20:37:08Z2011-09-10T20:37:08ZWhy Native Apps are Here to Stay<div><p>Hi Josh,</p>
<p>Web developers are often very quick to dismiss user experience,
and 'go for the money' of a huge market. I am personally not
interested in that, and would rather deliver the best user
experience that I can.</p>
<p>Note that even web based giants like Google and Facebook
acknowledge the importance of native user experiences, because they
always deliver native apps alongside their 'fallback' web sites.
And most people, given the choice, will use the native app.</p>
<p>I don't know if just developing for the web to 'cut costs' will
really cut it with customers. If a competitor does offer a native
solution in addition to their web site, you may have a problem.</p>
<p>Drew</p></div>drewmccormacktag:mentalfaculty.tenderapp.com,2010-10-19:Comment/98261522011-09-10T21:00:35Z2011-09-10T21:00:35ZWhy Native Apps are Here to Stay<div><p>I, on the other hand, am not dismissive of UX at all. If you
read me carefully I wrote that the difference in UX between a
native app and a mobile web app is minimal. In fact, in most
business cases, the additional 'optimized' UX on a native app as
compared to what can be done with a native app, is not even needed.
Salesforce is a great example. Do you really think they'd decide to
jeopardize their client base if there was no advantage to the
cross-platform way?</p>
<p>The proposal of a cross platform mobile web app trumps that of a
native app most of the time: the potential client knows he can
access many platforms with a single code base and the
cost-effectiveness is immediately obvious when explained
properly.</p>
<p>Also, I wasn't talking about mobile versions of web sites at
all, I was referring to mobile web apps. Not the same thing. You
confuse the two.</p></div>Joshtag:mentalfaculty.tenderapp.com,2010-10-19:Comment/98261522011-09-10T21:12:57Z2011-09-10T21:12:57ZWhy Native Apps are Here to Stay<div><p>I'm afraid I have difficulty with the statement that a web app
can provide a near-native experience, and think others would too.
Even Jeremy Keith didn't go that far, resorting to the ever young
'it will catch up some day'.</p>
<p>When you don't recognize they web apps have an inferior user
experience, I'm afraid you are already acknowledging that you don't
understand the problem. There is not a single web app on the planet
that has delivered such a good experience that I didn't think a
native app would be better.</p>
<p>Good example: Amazon's cloud reader. I downloaded it on my iPad,
and was willing to give it a chance. I was actually hoping that
Amazon had managed to do better than their poor native app.</p>
<p>And it is quite an impressive web app. But I am already back on
the crappy native app, because even a crap native app is better
than a very good web app. Sad but true.</p>
<p>Drew</p></div>drewmccormacktag:mentalfaculty.tenderapp.com,2010-10-19:Comment/98261522011-09-10T21:53:35Z2011-09-10T21:53:38ZWhy Native Apps are Here to Stay<div><p>As a web app developer, I'm already seasoned to the challenge of
distributing multiple flavors of my apps onto different
platforms/vendors - CSS (believe it or not) is quite capable
adapting presentation to rich or limited platforms/devices.</p>
<p>So, while you're writing Obj-C/Cocoa Touch for iOS customers, I
am coding in JS/CSS that can run on any platform my customer wants
depending on their situation - if they lose their iPhone 5 in a bar
and replace it with an Android, that is Ok, they can still use my
app. If they're traveling and only have access to an XP PC with
IE6, I can still help them out (sacrificing some eye candy).</p>
<p>You might argue that UX or native 'feel' is more important than
app portability, which is a fair call. At the end of the day, it
depends on the app and the intended audience, but I'd like to think
that I can create a relatively rich UX with the features offered by
CSS3, including the ability to keep with a native look/feel (in the
case of iOS anyway).</p>
<p>We're getting there, but I long for a world where devices only
dictate the display size and hardware features available to the
application, and it's the developer's repsonsibility to have the
software adapt to suit the environment.</p>
<p>It's also worth looking at the rapid pace in which the
capabilities of the web platform is developing. These APIs and
features will eventually make it into the mobile platform (indeed a
lot already have). It really is becoming a very rich toolset, but
with a key differentiating factor from the native/vendor specific
toolset in that the web toolset is backed by open standards and
cross-vendor participation in the development of those standards --
essentially letting them put all their cards on the table in some
kind of common respect for the interest of the consumer (which is
important for the success of all vendors).</p>
<p>Like I mentioned, we're not there yet, but the gap is closing
and I really do think the point is approaching that the end user
will not know the difference (nor will they care) between a native
or web app. The only difference they will care about is that they
can experience the app on any platform they want/need to. Beyond
that it comes down to developer preference: use a common toolset to
develop for each platform, or use a different toolset for each
platform.</p>
<p>I agree with the other comment that with the whole cloud
movement, the way in which the face of the app is presented or
delivered is independent of the service/API, however i would add
that with the surge in server side JS (namely node) it makes even
more developer sence to take advantage of the web as a complete
platform (e.g shared model logic / JS between app and service).</p>
<p>I think it's worth pointing out what we can expect to see (or
already have) from the web stack which will no doubt become
available on mobile platforms. I've probably missed a few, but you
get the idea:</p>
<p>Geolocation, device orientation, WebGL, local storage,
indexedDB, connection status, <video>, 2d/3d
transforms/transitions, keyframe animation, WebSockets (including
binary), canvas, web workers, svg, touch events, media queries,
file API, app cache/offline, Web SQL/sqlite, @font-face, device
API/getUserMedia, realtime accessibility API, WebRTC,
EventSource/push...</p>
<p>Anyway, apologies for the stream-of-dribble comment, but I think
shouldn't discount the emergence of the web as a complete platform
just yet.</p></div>Anonymoustag:mentalfaculty.tenderapp.com,2010-10-19:Comment/98261522011-09-10T22:04:10Z2011-09-10T22:04:10ZWhy Native Apps are Here to Stay<div><p>I really think you're underestimating how difficult it will be
to completely fake a native experience. There are already many
frameworks that attempt to do this, but I don't think anyone is
fooled. That's because the web app is not native, it's an
imitation, just like QT, SWT, and many other cross platform
solutions that have come and gone.</p>
<p>That is not to say that web techs like JS are in any way worse,
just that in most cases they are not native. WebOS is an example of
a case where the native APIs were using web tech. The problem is
really when you try to fake Obj-C/Cocoa or some other API with JS,
HTML and friends.</p>
<p>Drew</p></div>drewmccormacktag:mentalfaculty.tenderapp.com,2010-10-19:Comment/98261522011-09-10T22:55:23Z2011-09-10T22:55:24ZWhy Native Apps are Here to Stay<div><p>Here's a nice article from someone working for Mozilla that
discovered how people in Taiwan are actually using the mobile web a
lot: <a href=
"http://paulrouget.com/e/mobilewebapps/">http://paulrouget.com/e/mobilewebapps/</a></p></div>IonuČ› G. Stantag:mentalfaculty.tenderapp.com,2010-10-19:Comment/98261522011-09-11T07:52:04Z2011-09-11T07:52:04ZWhy Native Apps are Here to Stay<div><p>It's an interesting read, but it just confirms what I say: you
can use the web if there is no alternative, but a native app nearly
always delivers a better experience.</p>
<p>I should be very clear that I am not against the web or web
apps. I see it as coexisting with native apps. Jeremy Keith has an
entirely different agenda: to eradicate native apps, and good user
experience with it.</p>
<p>Drew</p></div>drewmccormacktag:mentalfaculty.tenderapp.com,2010-10-19:Comment/98261522011-09-11T17:53:59Z2011-09-11T17:53:59ZWhy Native Apps are Here to Stay<div><p>in fact that should be 'nearly always delivers a nearly better
performance'.<br>
Not experience: it's ludicrous to claim UX is automatically
dependent on UI<br>
performance. For instance, somebody coding native could still give
you a<br>
crappy workflow and somebody coding a mobile web app (not web page,
not web<br>
app a <em>mobile</em> web app, don't confuse everything) could
still give you<br>
better workflow or functionality.</p>
<p>Try to list the cases where for a business, the minimal extra
performance of<br>
the native UI is absolutely necessary. Games perhaps?</p>
<p>Also even people who code native sometimes go out of their way
for the<br>
native app not to look like a default native app for branding
purposes, so<br>
mobile web app coders don't necessarily want to do that.</p>
<p>In short, there are few and dwindling instances where a business
would<br>
absolutely need the minimal extra performance of a native app, and
most of<br>
the time, the advantages of coding cross-platform mobile web apps
trump<br>
coding 2 or three different native apps with different teams and
managing<br>
different code-bases etc...</p>
<p>Salesforce, Google, DropBox didn't need native apps: explain
why.</p>
<p>As mentioned above by somebody else, Javascript (or better,
CoffeeScript)<br>
will also be used to code server-side a lot in the future, so
people who<br>
know web technologies will be more efficient.</p>
<p>Finally, there is also a way to produce native apps even though
you code in<br>
mobile web technologies but I gather you never tried that and you
never<br>
tried coding a mobile web app (not a web page, not a web app, a
mobile web<br>
app).</p>
<p>If you really want to compare them, do so in a business
environment, factor<br>
in the costs and timeline for coding three native web apps and
compare to<br>
the costs and benefits of coding a single cross-platform mobile web
app. But<br>
for this, you'd have to know how to do so.</p></div>Josh Nursingtag:mentalfaculty.tenderapp.com,2010-10-19:Comment/98261522011-09-11T18:06:43Z2011-09-11T18:06:43ZWhy Native Apps are Here to Stay<div><p>I don't know about salesforce, but DropBox and Google make
native apps for Android and iOS (at least), so I don't know where
you get that.</p>
<p>It has nothing to do with performance. It is possible to write a
native app in JS and other web tech, and WebOS is an example of
that.</p>
<p>It has everything to do with the native look and feel you get
when you use the native APIs, at no cost. You can try to fake it in
a web app, and plenty do, but nobody is fooled.</p>
<p>In theory you could make a perfect copy of the native behavior,
but it would be very difficult to do so. Whereas it is very easy to
use the native APIs to make an app that feels like it belongs on
the device.</p>
<p>So I also don't buy your business case. You can mess around
trying to fake a good XP on each platform, but you are better off
going native on the major platforms.</p>
<p>And even if it does cost a bit more to make native apps, I
guarantee you will be much more likely to succeed in the
marketplace. The few bucks you save on app development will simply
result in poor adoption of your app. False economics.</p>
<p>Drew</p></div>drewmccormacktag:mentalfaculty.tenderapp.com,2010-10-19:Comment/98261522011-09-12T04:09:29Z2011-09-12T04:09:31ZWhy Native Apps are Here to Stay<div><blockquote>
<p>Salesforce, Google, DropBox didn't need native apps: explain
why.</p>
</blockquote>
<p>Interesting you have DropBox in the list, since this is the
perfect example of being successful <strong>thanks</strong> to a
native app on each platform: Windows, Linux, Mac at first then also
iOS and Android. What makes DropBox magic on a computer is how it
magically works with your filesystem. This will never be possible
with a web app (once the filesystem is dead, maybe).</p></div>Charles Parnottag:mentalfaculty.tenderapp.com,2010-10-19:Comment/98261522011-09-14T10:46:03Z2011-09-14T10:46:05ZWhy Native Apps are Here to Stay<div><p>besides the user experience, from a dev angle, there's also the
fact that the functions are not all truly cross-platform.</p>
<p>i <strong>often</strong> mind myself having to write platform
specific code (HTML/CSS or JS) for different features of an app
because the API is either not supported or subtly different or the
platform-side code (the "server" in this case) and has a nuance
that requires a particular property to be set (or not). and this
holds true wether I use a wrapping framework like PhoneGap with or
without another framework like Sencha, Jo or jQueryMobile.<br>
Now suddenly, in trying to just write one codebase, but I'm using
several different frameworks (and I have to learn the way of each
of those) while at the same time, I'm grossly aware that I chose
this route at the expense of cutting out some "older" (yet,
actually they not THAT old) phones. Boom!</p>
<p>It would have been simpler (read cheaper and easier) to write
the native apps to begin with (in most cases).</p>
<p>It's just as messy and has a looong way to go. And while vendors
compete with each other to differentiate, the frameworks try
desperately hard to keep up and standardize.</p>
<p>I think it's a case for the best tool for the best job (once
again) and HTML web apps will definitely not replace a native app
but there's space for both, and knowing both should help.</p></div>bryantag:mentalfaculty.tenderapp.com,2010-10-19:Comment/98261522011-09-15T09:03:05Z2011-09-15T09:03:09ZWhy Native Apps are Here to Stay<div><p>I'm a web app developer myself. We've recently released our
first HTML5 mobile app for iOS and Android using the PhoneGap and
jQuery Mobile frameworks. I think the argument that the user
experience is always better in a native app is simply not true. The
UX possibilities of CSS3 outnumber any other existing
presentational framework out there. Although I do agree that an
inexperienced developer would more likely create a better looking
app in a framework like Obj-C/Cocoa Touch then in HTML5.</p>
<p>The performance of native apps is better, but we found it
negligible. Taken into account that mobile OS vendors keep
increasing the JavaScript performance of their products, this gap
will be closed very soon.</p>
<p>The remark that HTML, JavaScript en CSS are merely
presentational technologies makes me think that you have no idea
what HTML5 is all about.</p></div>Jan van den Bergtag:mentalfaculty.tenderapp.com,2010-10-19:Comment/98261522011-10-02T10:24:59Z2011-10-02T10:24:59ZWhy Native Apps are Here to Stay<div><p>Summer's nearly up. If Mental Case 2 were to be developed as a
web app will it come a bit quicker ;-)?</p></div>Matttag:mentalfaculty.tenderapp.com,2010-10-19:Comment/98261522011-10-02T12:18:03Z2011-10-02T12:18:03ZWhy Native Apps are Here to Stay<div><p>It's almost there. Few weeks to go.<br>
To do what we have done on the web would be close to impossible
;)</p>
<p>Drew</p></div>drewmccormacktag:mentalfaculty.tenderapp.com,2010-10-19:Comment/98261522011-11-30T11:04:58Z2011-11-30T11:04:58ZWhy Native Apps are Here to Stay<div><p><a href="http:">casino <a href="http:">casino online <a href=
"http:">online casino <a href="http:">casino <a href=
"http:">casinos online <a href="http:">free pokies</p></div>Mackcesia