You can clone with
[My initial list:]
speed for superhi-perf games
app store placement
[list compiled from other people's twitter answers; thanks all!]
pushing native notifications when they're not in the "app" (several people said this)
Hardware access (camera, GPS, NFC etc) - presumably solved for camera (webRTC) and GPS (Geolocation) ?
monetization. it’s hard to take £1 from someone online (many said this - both getting paid when someone "downloads" or "installs" an app, and also in-app payments
UI fluidity — e.g., scroll physics only fairly recently supported properly (wasn't this the Facebook reason, too?)
inability to present as installed app on non-iOS mobile platforms; cross browser dev is hard; no App Store discovery; avoid feuds
‘magic folders’ so you can’t store anything on the device (like Dropbox app)
if you want it to work offline [appcache inadequacies], also timely and concurrent audio.
place on someone’s home screen (possible with web but less intuitive)
Access to all the native device and services APIs of the platform is probably a big one. Probably ability to use native widgets too
Web apps are capable of overcoming some of these, but there are some questionable hoops that need to be jumped through
Geolocation in the browser stops tracking when screen goes blank. This makes it impossible to create apps like RunKeeper and Endomondo with a web app.
NFC, accelerometer, BT are examples of common hardware that is inaccessible in a web app.
I know this isn't a "reason to choose native apps over web apps" but the fact that doing it this way can remove some of the reasons that people might have for going against a web app.
remove js hegemony, take gateways to other languages seriously
add xslt 2.0 via high quality open source impl saxon-ce (xslt 1.0 was always broken)
definition and built in support for 'data liberation' protocol/data format
standard capability (supported) and resource manager (for introspection)
The fact that the web is open, including the front-end code, is the reason that I was able to become a developer. I also don't see the point, as things such as Chrome's developer tools would become useless, making a developer's life harder. What exactly needs protecting on the front-end?
source-code secrecy - I really disagree with this one, if you compile your code, allow to download and install it on your own device it's still vulnerable to disassembling so in any case if you have some business logic that is sensitive NEVER put it on a client anyways. Anything else but business logic is just not worth keeping as a secret IMO
@bytasv source-code secrecy, there is big difference when you are looking on source code and compiled dissassembed code (assembler in most cases). It is very easy to modify java script. it is not so easy to do the same with assember.