Slashdot Mirror


Web Apps: the Future of the Internet, Or Forever a Second-Class Citizen?

An anonymous reader writes "This article takes a look at whether web apps will ever match desktop and mobile apps in terms of performance and usability. Jo Rabin, who's leading the push by web standards body W3C to get web app performance up to scratch, is optimistic web apps will eventually be the default choice for building the majority of commercial and business apps, while the article weighs up just how much web technologies need to be improved before this could happen. Quoting: 'Native apps are generally first to gain access to new platform-specific hardware features — be it navigating using a phone's GPS and accelerometer or taking pictures with a phone's camera. But if a particular hardware feature becomes popular, standards to implement that feature in the browser will always follow, Rabin said. Work is taking place within W3C to standardise APIs for web technologies to access many of the features found on modern smartphones. Ongoing work this year includes setting out a system-level API to allow a web app to manage a device's contacts book, a messaging API for sending and receiving SMS and MMS, new mechanisms for capturing photos and recordings, new event triggers that could handle mouse, pen and touch inputs, a new push API to allow web apps to receive messages in the background, new media queries for responsive web design, an API for exchanging information using NFC and precise control over resource loading times in a web document.'"

205 comments

  1. Installed base, day one. by noh8rz10 · · Score: 2, Insightful

    iOS/android app: installed base on day one: 0
    web app: installed base on day one: a hundred million +

    1. Re:Installed base, day one. by sl4shd0rk · · Score: 2

      web app: installed base on day one: a hundred million +

      first time someone doesn't have/has crappy network access: install base -= 1

      --
      Join the Slashcott! Feb 10 thru Feb 17!
    2. Re:Installed base, day one. by wonkey_monkey · · Score: 1

      This must be a new definition of the word "installed" of which I have previously been unaware.

      --
      systemd is Roko's Basilisk.
  2. Could Browsers Settled on an Alternate Language? by glennrrr · · Score: 1

    It seems like some of the problem here is that Javascript is the Lingua Franca, and also that it has to use the web pages DOM. If the system were being designed from scratch, it seems unlikely this would be the choice.

  3. Web app? What's that? by Anonymous Coward · · Score: 5, Insightful

    Do you mean a website?

    Do you mean a website that has been optimized for mobile devices with a small screen and minimal javascript capabilities?

    The reason the internet became popular is because of standards. Any web browser can connect to any web site, issue client http requests, and get an http response.

    The web browser/web server is the better way to go. I don't need to download & install a program on to my laptop to bank online. I don't need to download & install a program on to my laptop to read the news.

    I just just my web browser. It's the better model.

    1. Re:Web app? What's that? by gigaherz · · Score: 1

      I agree, except where the current standards are HTML, CSS, and Javascript, and as much as they try to make them better, as long as they keep backwards compatibility, they will continue to suck in the future, and web apps will continue to suck because of that.

    2. Re:Web app? What's that? by interval1066 · · Score: 1

      I don't need to download & install a program on to my laptop to bank online.

      No, you just need to ignore the inherent insecurities that go with using html apps. How nice.

      --
      Python: 'And then suddenly you have a language which says "we're all stuck with whatever the whiniest coder wants".'
    3. Re:Web app? What's that? by Crimey+McBiggles · · Score: 4, Insightful

      You know what would really suck? If we decided to drop backwards compatibility simply because what was originally intended as a document sourcing and navigation solution has ended up in the hands of profiteers who want this document-oriented system to be used for 3D rendering. Yeah, HTML/CSS/Javascript can do that, but why use a screwdriver when a jackhammer is more appropriate?

      Instead of saying "oh the web sucks because it's old, let's make it new", why not look at what the desktop environment has yet to deliver due to market fragmentation and misguided creative direction? There is much more to the Internet than what traverses ports 80 and 443, and it boggles my mind to think that instead of inventing new protocols and applications (not "apps") to get the job done in a better way - Steam is a great example of this - the popular idea is to say "well everyone has a web browser, let's find new ways to exploit it". It's lazy, uncreative thinking, like standing on the shoulders of giants and then deciding the giants need to be put to sleep because their clothes are no longer fashionable.

      --
      Crimey
    4. Re:Web app? What's that? by MightyYar · · Score: 1

      When 90% or more of the computers accessing the internet were running Microsoft Windows (and then later almost all running IE), I don't think standards had much to do with web adoption. It was adopted because it was really, really cool. I don't mean it wasn't important at all, but I think standards were just one of many items in the WWW's plus column.

      That said, as web-apps become more application-like, the web browser becomes more and more like an unstructured app store. I don't think that web apps will displace native apps so much as the two will converge toward a similar model.

      --
      W..w..W - Willy Waterloo washes Warren Wiggins who is washing Waldo Woo.
    5. Re:Web app? What's that? by Grishnakh · · Score: 1

      It depends on what you're trying to do. For online banking and stuff like that, sure, you don't want to have to download some stupid proprietary application just to do that.

      However, what if you're building a custom application for use in a business to manage payroll, or handle sales contacts, or do some other highly specialized business function (that only people in that business would understand the need for)? A lot of people seem to want to make web apps for these things, but there's a lot of problems with that approach, as web apps simply don't offer the performance and functionality that native apps do on a desktop PC/Mac platform.

    6. Re:Web app? What's that? by Kjella · · Score: 1

      Web apps are the world's biggest inner-platform effect, create an OS-like environment except you're tied to HTML and CSS for rendering and JavaScript and XML (AJAX) as your client-server protocol. Every website tries to reinvent every standard desktop UI component (menus, dialogs, tabs etc.) and poorly I might add. Don't get me wrong, a lot of business and administration applications, online banking and whatnot that only need a standard toolkit are better off as web apps but no, turning everything into a "web app" is a horrible idea.

      --
      Live today, because you never know what tomorrow brings
    7. Re:Web app? What's that? by i+kan+reed · · Score: 2

      Steam, is, in fact, mostly just a web browser. It has a few other things it can do, like start games, and install things. The vast vast vast vast majority of the interface and design is just a web browser, hitting a web-app the steam devs created.

    8. Re:Web app? What's that? by Flytrap · · Score: 1

      Do you mean a website?
      :
      :

      No... He does not mean a web site...
      He actually means what he says... a web app[lication] - an application written using the latest web technologies (JavaScript, CSS, DOM and XML/HTML), downloaded from a web site to execute within a browser environment that supports the HTML5 API and standards against which the application has been coded.

      A web app is as real an app as any of those that you say you "... don't need to download and install ..." You can even choose to save a web app locally on your phone or desktop (just like any other application that you download off the internet) so that you do not need to download it every time you need to use it - fortunately, web and browser caching technology makes this a non-issue.

      Do not confuse a web site with a web application or a web page.
      Web pages, however interactive, are not necessarily the equivalent of web applications... however both are downloaded from web sites (technically a web server).

    9. Re:Web app? What's that? by hackula · · Score: 1

      Such as? The web has plenty of security holes, but I can think of pretty much zero that are inherent to HTML and that could not also be present in a desktop app connected to the web.

    10. Re:Web app? What's that? by hackula · · Score: 1

      or handle sales contacts,

      Salesforce seems to be pretty popular, flexible, and powerful from where I am sitting. Our sales team switched over a while back and has not looked back.

    11. Re:Web app? What's that? by Anonymous Coward · · Score: 0

      Why the hell would you care for performance in those cases, when most of those apps are basically "present a table -> fill in the form -> make a request to server -> format server's response" or "search for a record -> fill in updates in the form -> etc."?

      Why the hell would it not provide "functionality of native apps" when those are custom apps built by in-house or, at least, specifically contracted developers and there are no "native apps" to compare to in the first place?

      Did you ever see apps for highly specialized business functions?

    12. Re:Web app? What's that? by Crimey+McBiggles · · Score: 1

      Well, I wouldn't say "mostly". The bulk of the development centers around the engine implementations that exploit hardware such as DirectMedia. It's not like the Steam developers are using Javascript/HTML/CSS to provide actual gameplay, and it's certainly not the case that these developers are trying to transform the web browser to support a gaming engine. To clarify, I'm saying that the reason gamers use steam isn't because it's "in a web browser" or even "browser-oriented", they use it because it's an easy way to download and run native desktop games efficiently. Thus, Steam is mostly a desktop gaming platform, not a web "app".

      --
      Crimey
    13. Re:Web app? What's that? by rastoboy29 · · Score: 1

      I agree, except when they can make rational use of things like GPS, wifi, etc. to be more useful than they could be as a web app only.

      It has to be conceded that this exists.  I only install apps where this is so.  More often it is pointless, as you say.

    14. Re:Web app? What's that? by interval1066 · · Score: 1

      Fishing and man -in-the-middle attacks are quite common w/html, I'm surprised you haven't heard of them.

      --
      Python: 'And then suddenly you have a language which says "we're all stuck with whatever the whiniest coder wants".'
    15. Re:Web app? What's that? by CoopersPale · · Score: 1

      Phishing is social engineering using electronic means, and has nothing to do with html.
      MITM attacks are a vulnerability that affects all network based communication, that includes native apps that talk to a centralised server.

    16. Re:Web app? What's that? by LordLucless · · Score: 1

      You know what would really suck? If we decided to drop backwards compatibility simply because what was originally intended as a document sourcing and navigation solution has ended up in the hands of profiteers who want this document-oriented system to be used for 3D rendering.

      Oh no! Something has transcended the limits with which it was initially conceived! Quick, stuff it back in the bag! Only evil "profiteers" would ever want anything other than a text-only web.

      There is much more to the Internet than what traverses ports 80 and 443, and it boggles my mind to think that instead of inventing new protocols and applications (not "apps") to get the job done in a better way - Steam is a great example of this - the popular idea is to say "well everyone has a web browser, let's find new ways to exploit it"

      Because nothing says "innovation!" like a thousand incompatible proprietary protocols - apart from maybe drawing some nebulous, unarticulated distinction between "apps" and "applications".

      --
      Just because you're paranoid doesn't mean there isn't an invisible demon about to eat your face
    17. Re:Web app? What's that? by Crimey+McBiggles · · Score: 1

      Oh no! Something has transcended the limits with which it was initially conceived! Quick, stuff it back in the bag! Only evil "profiteers" would ever want anything other than a text-only web.

      My statement was specifically in regard to throwing out the baby with the bathwater by dropping backward compatibility, not whether the web should support text vs. graphics vs. video. It should certainly support additional media, but not at the expense of dropping support for established media.

      Because nothing says "innovation!" like a thousand incompatible proprietary protocols - apart from maybe drawing some nebulous, unarticulated distinction between "apps" and "applications".

      Ok, I'll refine my definitions: Application, before the iPhone, referred to software specifically compiled for an operating system. App, as defined by modern innovation, refers to anything you can do with a web browser and/or mobile phone (if I'm not mistaken). So I guess that helps with "unarticulated". Not so sure about "nebulous" other than to say the latter definition certainly is.

      The proliferation of protocols argument seems more like a straw-man, but I'll comment that open standards and APIs help with this, and that I don't hear too many people complaining about the variety of video game console systems out there; competition and variety can be good when approached properly. On a side note, component-based software engineering attempts to solve the problems of "too many protocols", it's just that there are too few true universal components readily available to the developer.

      --
      Crimey
    18. Re:Web app? What's that? by Myopic · · Score: 1

      Do you mean a website?

      Nope, that's not what it means. Do you really not know that? Are you sure you belong on Slashdot? I mean, you're welcome to hang out and we'll try to educate you but you could help yourself get up to speed by looking up terms you don't understand before asking about them.

    19. Re:Web app? What's that? by LordLucless · · Score: 1

      Ok, I'll refine my definitions: Application, before the iPhone, referred to software specifically compiled for an operating system. App, as defined by modern innovation, refers to anything you can do with a web browser and/or mobile phone (if I'm not mistaken).

      App is a contraction of application; they're synonyms, different terms for the same thing. Your definition defines a piece of software by the form factor of the device it runs on. That means that, for instance, Microsoft Word is both an application (because it is compiled) and an app (because it runs on a mobile device - Microsoft Surface). I ran ProFTP on my Nokia N900 - which would make it an "app" under your definition, and therefore, somehow qualitatively different from an "application" (which it also is, under your definition).

      You say that it "boggles the mind" that people are spending time developing "apps" instead of developing new protocols. A new protocol is only useful inasmuch as it helps two distinct systems communicate. If HTTP suits your needs, why would you develop a new protocol instead of developing something that solves a problem (an application)? We have many well-developed, time-tested, general purpose protocols for communication these days. The situation where you legitimately need to roll your own for some reason is an incredibly small niche. Creating a new protocol introduces incompatibilities, because nothing else will use your new protocol - it should only be done if there is a specific reason why an existing protocol is not useful.

      --
      Just because you're paranoid doesn't mean there isn't an invisible demon about to eat your face
    20. Re:Web app? What's that? by hackula · · Score: 1

      Phishing has nothing to do with this and man-in-the-middle will hit a native app that connects to the web in the exact same ways.

  4. Wrong way around by Anonymous Coward · · Score: 1

    It's the web apps that are going to make, then keep, us second-class citizens.

    Along with smartphone apps, cloud subscriptions, and so on. It's the walling of the gardens that's going to do us in.

    1. Re:Wrong way around by interval1066 · · Score: 1

      It's the walling of the gardens that's going to do us in.

      Userland rejected the walled garden in the late 90's, they'll reject it again.

      --
      Python: 'And then suddenly you have a language which says "we're all stuck with whatever the whiniest coder wants".'
    2. Re:Wrong way around by Anonymous Coward · · Score: 0

      And, you won't be allowed access to your local file system.

    3. Re:Wrong way around by Merk42 · · Score: 1

      Which explains why the Apple App Store is so unpopular...
      oh wait

  5. An enormous security risk by Anonymous Coward · · Score: 1

    Expose hardware capabilities to the Internet? Didn't we just go through why this was a bad idea with WebGL?

  6. Didn't you get the memo? by 0123456 · · Score: 0

    Web apps are so, like, 1999. Phone apps are now the future of computing.

    1. Re:Didn't you get the memo? by BaronM · · Score: 1

      You jest, but I know that my user base is more interested in and engaged with mobile apps than web apps. I see far more tablet+bluetooth keyboard cover combinations out and about than I do people lugging laptops. The one exception being coffeeshops where you can camp all day by an outlet.

      Also, a native mobile app can deliver a better experience in many cases. How many people use the gmail web interface instead of the app on their phone or tablet?

      Content-creation heavy jobs (and I include serious writing here), are still generally done with native applications. I don't see that changing any time soon.

      I suppose that lots of data-entry and retrieval line-of-business apps will be web apps by default, but let's face it: those apps sucked on a terminal, sucked as client-server apps, suck as web-apps, and suck as mobile apps. It's not the toolkit that's the problem.

    2. Re:Didn't you get the memo? by Anonymous Coward · · Score: 0

      How many people use the gmail web interface instead of the app on their phone or tablet?

      To me, gmail is about email. So I use it through IMAP. Well, did. They became fascist about mixing IMAP and tor. Moved my mail elsewhere because of that. Turned out a good move anyway, since they think they can open the mail (well, at least the postcards, the important stuff needs a cryptographic enveloppe), analyze it, and so on, comparing themselves with your secretary when in fact they're the postman.

      I suppose that lots of data-entry and retrieval line-of-business apps will be web apps by default, but let's face it: those apps sucked on a terminal, sucked as client-server apps, suck as web-apps, and suck as mobile apps. It's not the toolkit that's the problem.

      The shape of the toolkit isn't, but the fact that we still haven't managed a well-regulated toolkit, is. Something to do with aiming for "intuitive" and "no training needed" and out of necessity focusing on the single entry. When the problem with data entry is the grind of the many, not the coddling the user for entering just the one.

    3. Re:Didn't you get the memo? by Anonymous Coward · · Score: 0

      You jest, but I know that my user base is more interested in and engaged with mobile apps than web apps.

      This may well be.

      I see far more tablet+bluetooth keyboard cover combinations out and about than I do people lugging laptops.

      Yes, but that doesn't actually support your claim. I use a tablet with keyboard (it's an Asus Transformer, so no bluetooth involved, but similar) not because I prefer mobile apps to web apps in a browser, but because it has better screen and battery life than any comparable price and weight "laptop".

      The one exception being coffeeshops where you can camp all day by an outlet.

      Yes, hinting that the difference is not about apps, but about hardware. Keep in mind, many of those people with tablet+keyboard (rather than barenaked tablet) don't want a tablet. They want a netbook. The x86 netbook manufacturers have not followed through well, stagnating due to the collision of MS and Intel each trying to control the platform their own way; the natural result is that consumers have found other ways to get the result they want.

      (The following relates to my own experience and preferences, which I don't claim are typical; as I said, your assertion regarding "[your] user base" may very well be true -- it's just that you seem to be supporting it with data that don't actually support it.)

      To me, it's important to distinguish types of apps -- I'd rather use a native client than gmail's web interface, but I'd rather use $NEWS_SITE directly than with some "app" which is functionally just a browser window pointed at their site. If $SOCIAL_NETWORK wants me to install a custom app, they can suck it -- but then, I don't really use their website at all, so that's neutral. I use local apps for music and some video watching, but I watch a lot of movies from Amazon's free streaming. I honestly can't say whether I'm "more interested in and engaged with" web apps or Android apps, to me it's very much a horses-for-courses thing. And that's not even mentioning the local apps I run in an Arch chroot on my Transformer, which are neither web apps nor "mobile" apps as usually understood.

  7. Even now internet isn't always there by Urd.Yggdrasil · · Score: 1

    When more of them can be used offline (when it's easier to make them work offline), then they will be more prominent.

  8. First World Problem by Baby+Duck · · Score: 1

    It's a silly conversation. Let's say we all concede all web apps are forever doomed to be second-class citizens. As far as second-class citizens go, they have it freaking awesome! People don't just want them, they clamor for them! They are lauded and keep getting better and better. Even when you do use a native application for better performance or to fulfill a niche need, you can't help but wonder in the back of your mind how soon before you can do this with a web app, too.

    --

    "Love heals scars love left." -- Henry Rollins

  9. Re:Could Browsers Settled on an Alternate Language by gl4ss · · Score: 1

    well, you could always go for canvas.

    not so sure really if that's an option for mobile browsers though..

    --
    world was created 5 seconds before this post as it is.
  10. Performance, cause Email needs the 3Ds by bradley.meck · · Score: 1

    How many average people use applications that need high performance? Twitter is the top end of performance with realtime data applications for most people I know, games usage does not occupy enough people/time to be near the amount of time that people spend doing email, twitter, travel booking, coupon hunting, review finding, etc. Who the hell needs C level performance on most daily needs?

    1. Re:Performance, cause Email needs the 3Ds by hackula · · Score: 1

      Not to mention well written js is insanely fast with V8. On some metrics it can actually beat C with both using their respective standard code idioms (of course, C will always be faster with enough optimisation).

    2. Re:Performance, cause Email needs the 3Ds by Anonymous Coward · · Score: 0

      How many average people use applications that need high performance?

      It is not so much about performance. While I have nice internet connections at home and at work, I don't always have an internet connection. So, any app I might need to use must be native - if I want to use it on the road, on holidays, when there is a power/internet outage, when the net is DOSed and laggy, ...

      Who the hell needs C level performance on most daily needs?

      Well, I already have C-level performance on all my software, why in the world would I want to give it up? "Fast and low power" is nice - even with a quad-core...

  11. GRRRR by Anonymous Coward · · Score: 2, Interesting

    GRRR, this is STUPID!

    This drives me mad. Webapps have pushed usability a good 20 years back.

    Look at all the pb in desktop apps: we still don't have it "right", and now, there is an increasing tendency towards webapps that have even worse choice of widgets, and don't respect many usability issues that desktop had barely started solving... And don't get me started on the browsers compatibility issues!

    This is CRAZY! People are building GUI inside a medium that has never been designed for that, using always more complex layers for a worse user experience (and don't get me started about the performances loss).

    1. Re:GRRRR by Anonymous Coward · · Score: 0

      What's pb?

    2. Re:GRRRR by Anonymous Coward · · Score: 0

      Look at all the pb in desktop apps:

      What's pb?

      pb=peanut butter

      I, too, have a wood-top desk, and hate it when I drop my toast upside down and peanut butter gets smeared in every crevice of the wood grain. It's practically impossible to get it all cleaned up.

    3. Re:GRRRR by Anonymous Coward · · Score: 0

      pb == problem

    4. Re:GRRRR by Myopic · · Score: 1

      Webapps have pushed usability a good 20 years back.

      In 2005, webapps had pushed usability back about 15 years but had pushed accessibility forward about fifty years. That was the tradeoff. In 2013, webapps have pushed usability back about 10 years, and maintain that fifty years of accessibility. In 2020, they will have pushed usability back zero, and we'll still have that fifty years. Not all new technology is 100% as good as old technology in every single way; typically it is better in some ways, less good in other ways, and improves over time.

    5. Re:GRRRR by badkarmadayaccount · · Score: 1

      I think it's lead Z=82

      --
      I know tobacco is bad for you, so I smoke weed with crack.
  12. Browser is an app not an os by Anonymous Coward · · Score: 0

    Its great that many things can be done in a browser. I had even thought how cool it would be if everything could be done in a browser back when I was using the iComm Shell browser on a unix account in the mid 90's. I got over it, the browser is an app, it can be used as, or as part of an OS shell, but does it really need to be extended to have hardware access and interop with other apps/data stores on the device? Isn't the internet insecure enough as it is?

  13. Adoption will decide. by intermodal · · Score: 1

    This argument will be settled in the marketplace, and it is either side's battle to lose. All it takes is consistent frustration with one side to become a proponent of the other. Barring that, people will use whater works and/or is cheaper.

    --
    In SOVIET RUSSIA... erm...NSA AMERICA, the Internet logs onto YOU!
  14. Re:Could Browsers Settled on an Alternate Language by kthreadd · · Score: 2, Funny

    The primary problem is not JavaScript, but that so few web apps are licensed under AGPLv3+ and thus are not suitable for any kind of serious use.

  15. Re:Could Browsers Settled on an Alternate Language by Anonymous Coward · · Score: 0

    1) Leadership in development tools
    2) Commitment to quality

    No scattershot development and headless API development. No myriad of partially broken tools and incomplete platforms. No perpetual betas.

    On Windows you use Visual Studio, on Mac you use XDevelop, on the web you use bleh whatever and the majority of it is constantly broken in interesting ways. Fix this part first and the applications will follow. Think Steve Ballmer and the monkey dance.

    Until this is fixed I won't even regard webapps as a 2nd class citizen - I regard them as that guys that turns up at your house, barges in, shits on the carpet then drinks all the beer in the fridge before passing out on the couch with a bucket on his head.

  16. Can we please stop reimplementing the wheel? by putaro · · Score: 4, Insightful

    From the article: "...today web browsers are capable of supporting sites that are getting close to the look and feel of apps we run directly on our phones and computers."

    Great. So with a lot of work we're almost BACK TO WHERE WE WERE! How about some innovation and making better, more usable UI's rather than just trying to catch up with what we already have?

    This is the same problem I have with Linux - constantly reimplementing things we already had. At least Linux is replacing closed software with open software. What's your excuse with webapps? Is MS Word in a browser inherently better or just different?

    1. Re:Can we please stop reimplementing the wheel? by xxxJonBoyxxx · · Score: 1

      >> Is MS Word in a browser inherently better or just different?

      When it's Google Docs vs. MS Word, it's better: 1) I can view or edit it from anywhere and 2) if someone else is working on it with me we can both edit (and see where we're each working) and 3) it's free.

    2. Re:Can we please stop reimplementing the wheel? by Anonymous Coward · · Score: 0

      You forgot:

            and 4) the NSA keeps a backup.

    3. Re:Can we please stop reimplementing the wheel? by bad-badtz-maru · · Score: 1

      If those are the only two features you need, yes. Otherwise, web Word and Google Docs's featuresets are eclipsed by software packages so old that it isn't even around anymore.

    4. Re:Can we please stop reimplementing the wheel? by Type44Q · · Score: 1

      Is MS Word in a browser inherently better or just different?

      For who? For us, not necessarily; for MSFT, probably...

    5. Re:Can we please stop reimplementing the wheel? by DuckDodgers · · Score: 1

      The point with webapps is the same as replacing closed source with open source. Why is Google Docs better, at least in principle, than Microsoft Office? Because I can use Google Docs from Windows, from Linux, from Mac, from FreeBSD, from Android, from Tizen, from Blackberry, etc... etc...

      If every good native application in the iPhone app store, Google Play store, and Windows App Store has an equivalent web app version, then it's much easier to convince people to ditch their iPhone/Android phone/Windows phone and replace it with something running Firefox OS, Tizen, Ubuntu Touch, WebOS, or whatever. The average person has made it crystal clear that they'll accept a nice garden with walls over a wide open range that's a desert. We have to create an awesome garden outside the walls, and then maybe people will start leaving their walled gardens.

      And if the only thing this effort really accomplishes is forcing Apple, Google, and Microsoft to continuously innovate so their walled gardens are constantly a better place to play than the web app world, that's still a tremendous achievement.

    6. Re:Can we please stop reimplementing the wheel? by hackula · · Score: 1

      Host your own then. There are some oss google docs replacements out there. Even easier might be an oss dropbox alternative.

    7. Re:Can we please stop reimplementing the wheel? by Crimey+McBiggles · · Score: 1

      MS Word in a browser

      I'd rather see a browser in MS Word so I can use Google docs from there. That would be actual progress /sarcasm>

      --
      Crimey
    8. Re:Can we please stop reimplementing the wheel? by s122604 · · Score: 1

      No, we can't stop

      And that's actually a good thing. There are so many inherent advantages to web-based applications from a maintenance and overhead perspective, that businesses, large and small, are going to push more applications to them.

      Mobile apps exist because the capabilities of the hardware got so far out in front of browser software that a decent experience couldn't be provided. But, back to point 1, as the capabilities of browser based software inevitably improves, a lot of this development is going to get sucked back into the web. It is inevitable.
      Just looking at where Microsoft has came between IE 8 and IE 10 (not that isn't a lot of work still to be done) is an indicator what way the wind is blowing.

      In this respect, I see the mobile-app craze as a rear guard action against the inevitable.

    9. Re:Can we please stop reimplementing the wheel? by ghettoimp · · Score: 1

      My excuse: web apps are way better to deploy than native apps, both for me and my users (computer engineers at my company).

      • My users don't even have to think about running an installer; they just click on the link in the email I send them.
      • When there's a bug, I just fix it and... behold, it's fixed! No bothering people to update, no worrying about old versions of the software doing something bad.
      • All that time we didn't waste on installation, upgrading, dll hell, testing installers, etc, can be spent doing actually productive work, instead.

      Native software is fast, sure, but deployment sucks for everyone. How many times a day are you being pestered to update this or that, right when you're in the middle of trying to look up something for or check your email. It's like sitting down for dinner with your family after a long day, just to be called by a telemarketer.

    10. Re:Can we please stop reimplementing the wheel? by LordLucless · · Score: 1

      Great. So with a lot of work we're almost BACK TO WHERE WE WERE!

      No - in this ONE NARROW CATEGORY we are almost back to where we were. In other categories (platform independence, remote patching, etc) we're far ahead.

      How about some innovation and making better, more usable UI's rather than just trying to catch up with what we already have?

      Um, go right ahead. You can create pretty much any interface you like, whether on native apps or web apps. You're not being held back by some inherently limiting feature of the ecosystem.

      --
      Just because you're paranoid doesn't mean there isn't an invisible demon about to eat your face
    11. Re:Can we please stop reimplementing the wheel? by Myopic · · Score: 1

      Is MS Word in a browser inherently better or just different?

      If it's the same in every way except that it's inside a browser, then it's inherently better.

  17. short answer by Anonymous Coward · · Score: 0

    mobile apps will always be below desktop apps, common sense it a small device can do 'N' a large device can do 'N+C', even if C is small. However, both will advance in tandem

  18. Not as long as we have to write them in javascript by TheSunborn · · Score: 2

    Not as long as we have to write them in javascript. javascript might be an ok language, but it is not designed to help with development of large projects. The type system, and the prototype based objects are not good at doing that.

  19. Re:Could Browsers Settled on an Alternate Language by ackthpt · · Score: 2

    It seems like some of the problem here is that Javascript is the Lingua Franca, and also that it has to use the web pages DOM. If the system were being designed from scratch, it seems unlikely this would be the choice.

    Javascript is a very sloppy language for doing anything in. People, like me, continue to write in it because there's little alternative.

    Writing in javascript drives people insane.

    sent from my padded cell

    --

    A feeling of having made the same mistake before: Deja Foobar
  20. To The Metal? by Anonymous Coward · · Score: 0

    While Web apps are proud to run hundreds (or thousands) of times slower than native code sanely created for the device, web apps deserve (beyond light cases that don't matter) ZERO success. For all you liberal 'green' types, web apps are the greatest waste of energy on the planet.

    In Computer Science, there has to be a good reason to use systems that have extreme amounts of abstraction between the 'code' and the 'hardware'. Such reasons and use cases do exist, but unfortunately once a highly abstracted infrastructure is developed, too many programmers start to use it for completely the wrong types of project.

    Anyone who has used home computers since the early microprocessor designs made them possible will be constantly amazed to see their current PC often struggle on tasks that positively flew on hardware that was thousands of times less powerful (like scrolling through a very large source code file). On my Atari ST I had just 512KB of RAM connected to a 1MB floppy, but could run a full blown C development system with compiler, editor, and runtime abilities. ONE HALF OF ONE MEGABYTE and this had to serve the OS as well.

    Today, we have GPU benchmarks on our browsers where we are supposed to be wowed because they render a few objects at handfuls of frames a second. Literally less than ONE THOUSANDTH of what our GPU can achieve in native mode. This is insane- absolutely insane. Even AAA games often lose 50-66% of the potential of the hardware, because of the lousy interfaces Microsoft provides (and THIS is the reason the very best coded games of the Xbox360 and PS3 kinda keep up with current PCs- they are coded to the metal in ways the PC cannot match).

    We need a do-over. A new generation of ultra-light layers of abstraction, making most coding easier, but keeping most of the performance of the hardware. Tablets lead this initiative, of course, because they need to preserve their battery power as much as possible. Sadly, we get the usual dribbling shills screaming "security, security- efficient apps are unsafe apps". This is BS. Ultra abstraction provides infinitely greater numbers of vectors for attack.

    1. Re:To The Metal? by DuckDodgers · · Score: 1

      Because so much of the world relies on Javascript, the browser vendors are in a performance war and keep upping their investment in Javascript just-in-time compilation. Have a look at this: http://benchmarksgame.alioth.debian.org/u64/benchmark.php?test=all&lang=v8&lang2=gcc&data=u64 in eight benchmarks, Javascript in Google's V8 is never worse than 20 times slower than C and never uses more than 24 times as much memory. That's a far cry from the "hundreds (or thousands) of times slower than native code" you state above. And the performance wars are far from over, especially since mobile devices are still resource constrained and people keep trying to do more and more things on mobile.

      But the real problem is still that skilled developers are more expensive than throwing more hardware at a problem and using easier tools. If a company could feasible sell tablets and smart phones with a huge collection of cute and creative applications written in C, fortran, and assembly, it would have been done already and that company would have taken the world by storm when it let you run 20 times as many apps each 20 times as fast on smart phones that Android doesn't even support any more. The vendors are already taking the most cost-effective path - put some brilliant minds on improving the hardware, put some brilliant minds on improving the Javascript interpreter / Java Virtual Machine / PHP Hotspot / PyPy / etc... and let the hundreds of thousands of developers not brilliant enough to do either work with easier tools.

      I don't see your do-over ever happening.

    2. Re:To The Metal? by hackula · · Score: 1

      flew on hardware that was thousands of times less powerful (like scrolling through a very large source code file)

      I doubt that Atari had an IDE that was constantly checking for code trees, pre-compilation analysis, syntax highlighting, etc. I can open up a 1GB text file in Sublime Text and scroll just fine.

    3. Re:To The Metal? by aaaaaaargh! · · Score: 1

      Javascript in Google's V8 is never worse than 20 times slower than C and never uses more than 24 times as much memory.

      That is really bad performance, though. Think about it: 20 times slower, 20 times higher memory usage... if you'd use this for anything serious, it would bring even the fastest home PC or laptop to its knees. The good news is that nobody really uses web apps for anything serious (except web mail), they are mainly used for wasting time and jerking around. In other words, web apps and native apps are two different classes altogether - different users, different purposes, different markets.

    4. Re:To The Metal? by DuckDodgers · · Score: 1

      In most cases the performance difference is from 3-10x in speed or memory. But even at 20/20, that's better than Python, Perl, Ruby, and PHP, and those languages are used all over the place. Java has great performance when run for a long time because of the optimizations the HotSpot JVM applies to long-running processes, for those it can often match C++ performance speed. But Java even under the best circumstances uses 5-50 times as much memory as C++ for similar applications. Flash is used all over the web and in many downloadable games, and I believe its performance is somewhere in line with Javascript, or worse.

      That won't bring a home computer or laptop to its knees for many applications. I wouldn't use Javascript for Call of Duty 5, or a Video Editing program, but for a chat client or a music player, what difference does it make?

  21. Well, by Black+Parrot · · Score: 0

    Web Apps: the Future of the Internet, Or Forever a Second-Class Citizen?

    According to Betteridge's Law, the answer is 'no'.

    --
    Sheesh, evil *and* a jerk. -- Jade
    1. Re:Well, by neminem · · Score: 1

      Which is actually the best answer in this case. No, they are not the future of the internet. No, they will not be forever a second-class citizen. They're a thing, that is useful sometimes, but not all the time, just like just about any other application paradigm/environment. There are times when you want a web app. There are times when you want a regular page. There are times when you want a thick client talking to a server. There are times when you want a thick client that works in offline mode most of the time. There are times when you want a dedicated hardware box running your embedded system.

      They all have their place; it drives me crazy when someone says something is "the future", like everything else will be instantly obsolete, because new thing must be shoehorned into *everything*. Why? Because it's "the future".

  22. Yay! by Anonymous Coward · · Score: 0

    Just what we need, a return of ActiveX reaching deep into OS system calls...that proved so wonderfully feature-rich and secure the last time it was tried...

  23. Re:Could Browsers Settled on an Alternate Language by interval1066 · · Score: 1

    Javascript is a horrible language. But we're locked into it now becuase for whatever reason every browser maker decided to buy into it, and then you get great tools that make diamonds out of shit like Node.js and etc., so here we are.

    --
    Python: 'And then suddenly you have a language which says "we're all stuck with whatever the whiniest coder wants".'
  24. "Apps" are not web interfaces by msobkow · · Score: 2

    There is a big disconnect here. Using HTML 5 to implement an app interface on a smart phone is not the same thing as implementing a general browser web interface using the same technologies.

    Heaven forbid a web interface should ever have data to manipulate anything more than the cookies it needs in my browser. That would be a security hole you could drive a whole fleet of trucks through.

    However, I don't believe that web interfaces will ever equal custom client code or custom apps for the simple reason that you get hesitations and delays during page and AJAX refreshes. One of the worst culprits for this is trying to implement drop down choice boxes that adapt their contents to previously selected data, such as country-state interactions. The only way I know of to do that with a web interface is to refresh the whole page, which is obscenely slow compared to the repopulation of the choice box data itself done by a custom interface.

    There is also no way to perform performance tuning and UI tricks like dynamically making widgets visible/invisible with a web app, something that is very common to high performance custom interfaces. In part, this is because web apps don't have the necessary layout management interfaces that a custom application does, which allows them to position those hidden widgets appropriately so that they overlay each other to the pixel.

    --
    I do not fail; I succeed at finding out what does not work.
    1. Re:"Apps" are not web interfaces by Anonymous Coward · · Score: 0

      One of the worst culprits for this is trying to implement drop down choice boxes that adapt their contents to previously selected data, such as country-state interactions. The only way I know of to do that with a web interface is to refresh the whole page, which is obscenely slow compared to the repopulation of the choice box data itself done by a custom interface.

      What you're describing is when one selection is made, a different select control will be populated with options that correspond to the selected value in the first select control. This is a standard XmlHttpRequest with javascript to populate the dependent select control(s). Changing the selected value in the first select control, would reset the options in the other select controls that depend on it. There is no reason to refresh the entire page.

    2. Re:"Apps" are not web interfaces by Anonymous Coward · · Score: 0

      However, I don't believe that web interfaces will ever equal custom client code or custom apps for the simple reason that you get hesitations and delays during page and AJAX refreshes. One of the worst culprits for this is trying to implement drop down choice boxes that adapt their contents to previously selected data, such as country-state interactions. The only way I know of to do that with a web interface is to refresh the whole page, which is obscenely slow compared to the repopulation of the choice box data itself done by a custom interface.

      Not that this detracts from your point, but if you put the subordinate box on its own page, in it s own frame, you only have to reload the bit that actually changes.

      Of course a reload is still ridiculously heavy, but it needn't be the whole thing. I wonder if you can use a data: URI to get around this -- it's been ages since I messed with web interfaces at all.

    3. Re:"Apps" are not web interfaces by msobkow · · Score: 1

      Good to know.

      Thanks for the tip.

      --
      I do not fail; I succeed at finding out what does not work.
    4. Re:"Apps" are not web interfaces by msobkow · · Score: 1

      Your approach has one big glaring gigantic behemoth flaw:

      You can't submit the form data as a form any more when you inject a frame in such a fashion.

      --
      I do not fail; I succeed at finding out what does not work.
    5. Re:"Apps" are not web interfaces by matthewv789 · · Score: 1

      However, I don't believe that web interfaces will ever equal custom client code or custom apps for the simple reason that you get hesitations and delays during page and AJAX refreshes. One of the worst culprits for this is trying to implement drop down choice boxes that adapt their contents to previously selected data, such as country-state interactions. The only way I know of to do that with a web interface is to refresh the whole page, which is obscenely slow compared to the repopulation of the choice box data itself done by a custom interface.

      I'm not sure I understand the problem here, unless you're doing it wrong. Lists of data like country-state interactions are small; there is no reason not to have that data available when the page loads (most likely as part of a script or json file), and updating the list from the data should be imperceptibly quick. If you need to query the server every single time to make sure you have the most up-to-date list, that problem would be the same for an actual app as a web app.

      There is also no way to perform performance tuning and UI tricks like dynamically making widgets visible/invisible with a web app, something that is very common to high performance custom interfaces. In part, this is because web apps don't have the necessary layout management interfaces that a custom application does, which allows them to position those hidden widgets appropriately so that they overlay each other to the pixel.

      Seriously? How is it we can't position elements over other elements with pixel-perfect accuracy on the web? We've been doing it for years. Similarly with making elements visible/invisible, which can be done trivially and instantly on the web as well.

    6. Re:"Apps" are not web interfaces by LordLucless · · Score: 2

      One of the worst culprits for this is trying to implement drop down choice boxes that adapt their contents to previously selected data, such as country-state interactions. The only way I know of to do that with a web interface is to refresh the whole page, which is obscenely slow compared to the repopulation of the choice box data itself done by a custom interface.

      Then you don't really have much of a grasp on web development. It is trivial to create controls that update themselves with content based on a previous selection without round-tripping to the webserver - you just have to send the complete set of data with the initial pageload, and just operate on it - which, incidentally, is exactly the same way a native application does it: when you install a native application, it needs to either copy the entire dataset it's working on onto your local machine, or retrieve that dataset from a remote system during the course of operation, just like a web application.

      You can also just shoot off a javascript request and retrieve just the data required to display in the widget. You haven't had to refresh the whole page since 1999, when Microsoft introduced the HttpRequest object. You could do it even before then with a clever use of iframes.

      There is also no way to perform performance tuning and UI tricks like dynamically making widgets visible/invisible with a web app

      Ok, I've just realised I'm talking to someone who has absolutely no clue about what they're talking about, and obviously hasn't used the internet in over a decade. How did you get your comment posted to Slashdot - morse code?

      --
      Just because you're paranoid doesn't mean there isn't an invisible demon about to eat your face
    7. Re:"Apps" are not web interfaces by Anonymous Coward · · Score: 0

      You are not polite, but without intending offense, the GP is in fact wholly and profoundly ignorant whereof he speaks. Sorry dude.

  25. Re:Not as long as we have to write them in javascr by Warbothong · · Score: 1

    Many languages now compile to Javascript. Some are specifically designed for this (TypeScript, Dart, Elm), others have gained it later, especially thanks to emscripten.

    The DOM can still be a pain, since it's difficult to abstract away. There are those who abandon the DOM altogether, eg. using Canvas or WebGL. That brings its own concerns though (especially accessibility).

  26. Don't forget stuff like DRM by tlhIngan · · Score: 1

    Web apps are great. But then you get the W3C to try stuff a little bit controversial like DRM and everyone wants a "free web" and "they should make an app!".

    And then get surprised when developers do.

    The iTunes store is probably the best example of this - it's basically a few web pages strung together but which really wants to get you into iTunes. (Honestly - is it even possible to use iTunes preview? The only way I've seen it was through Google).

    The reality is, we're going to have to have some long and very difficult discussions on what to do. Ideally we wouldn't need the discussion period, but since that doesn't seem realistic at all, we're going to need to see what the real solution is. Do we allow DRM and thus DRM content on the web? Or do we say no and end up in an app-universe where web sites are merely conduits for providing the app?

  27. Re:Could Browsers Settled on an Alternate Language by Anonymous Coward · · Score: 0

    I think this is only true if you have experience in a "better" language. If all you know is JavaScript then these comments about it being sloppy/horrible/able to drive people insane comes off as... insane.

  28. Re:Could Browsers Settled on an Alternate Language by Anonymous Coward · · Score: 0

    so few web apps are licensed under AGPLv3+ and thus are not suitable for any kind of serious use.

    You're confusing the cause, there.

    The unsuitable for serious use has nothing to do with the licensing and everything to do with them being web apps.

  29. Forever 2nd class due to failure by Anonymous Coward · · Score: 0

    If a company i bought software from goes bust, I don't lose the software I bought from them. i may not get updates, but i still have the bloody thing and can continue to use it.

    How's that work with your web apps in the cloud? Oh it doesn't. They go, your app goes, and you waste time finding a replacement and learning its nuances, get comfy with it and then it goes too, and you have to do it all over yet again.

    Dependency on you not screwing up your business and leaving me without your product. For games, its kind of acceptable. For business and productivity, its dead in the water. So yes, web apps will forever be second class citizens because they fall, fail, or get eaten up by morons on a daily basis.

    http://bokardo.com/archives/7-reasons-why-web-apps-fail/ that's from 2006. Take a look. Has literally anything changed between now and then that makes those points moot? No. So yeah, web apps are still gonna be crap for the most part in most people's eyes.

  30. Decades of crappy Software-Design by Anonymous Coward · · Score: 1

    Let's face it. Most capable Software Developer are either dead or retired. Because of the incompetent Successors the Software and everything necessarry to Develop it is crap, I might even say it's plain madness.

    What's happening is, we see that people give up. "I don't want to develop Software anymore" they say "it hurts my head to think about maintainable Design" they continue. Thus, WebApps are born.

  31. Generations... by bradley13 · · Score: 5, Insightful

    Apropos of the question in the title of this post. I had a meeting today with a guy in his early 20s. I mentioned that one of my current projects is a Java Client/Server application. He found this totally bizarre, because "Web apps are the future".

    Now, I'm a geezer by IT standards. I cut my teeth on an IBM 360 (yes, that old). One of my standard charts that I use in general IT presentations is a spiral. I'll do it here in text, a bit oversimplified:

    • - 1970: centralized computation (mainframes)
    • - 1980: distributed computation (first PCs)
    • - 1990: centralized computation (Servers and thin clients)
    • - 2000: distributed computation (next generation of PCs)
    • - 2010: centralized computation (Web apps and cloud computing)
    • - 2020: distributed computation (mobile computing)

    The pendulum swings back and forth, but you only start to recognize the pattern after you've lived through a couple of cycles. In fact, it seems that by the time one trend has established itself as inevitable, the next (opposite) trend is already well underway. Right now, Web-apps and Cloud computing are the buzzwords, but mobile computing is already well underway for dominance by 2020.

    So, if I may answer the question posed in the title: Web Apps: the Future of the Internet?

    No.

    --
    Enjoy life! This is not a dress rehearsal.
    1. Re:Generations... by Bucc5062 · · Score: 1

      It is nice to see I am not the only one to recognize this pattern. I chuckle at all the market speak buzz words that surround "new" technology, but is in fact, a rehashed version of the same old stuff (I cut my teeth on a smaller cousin around the same time). As I have had to re-invent myself three times over I keep getting asked questions like "what language do your write in?" or "What experience do you have in developing applications?" Really? I've coded in languages I've now forgotten and written more "apps" then I can remember and yet I am asked "What experience do I have...." (sigh).

      I sometimes hope the singularity will come soon so I can retire (who needs programmers anymore) and take care of horses. Till then I remain on the marry go round.

      --
      Life is a great ride, the vehicle doesn't matter
    2. Re:Generations... by Anonymous Coward · · Score: 0

      That's brilliant (maybe?) that your project leadership chose to go with a client/server model. It must be a special case where it is necessary. Otherwise, distribution, management, and security is accomplished much easier with a web application.

      Mobile computing complements web applications. Why do you conclude that is either one or the other? It's not. There are some tasks that are suited for smaller, touch screen interfaces while others benefit from more screen real estate and more capable hardware.

    3. Re:Generations... by Crimey+McBiggles · · Score: 1

      Web applications using HTTP *are* using the client/server model, just an established special case. People forget this because the majority of effort goes into building upon abstractions of other abstractions. Developers that flock to the new model get easier deployment at the expense of programs efficiency. Then stackoverflow blows up with new users of PHP5 asking really basic questions, and it becomes impossible to sift through the bullshit to find anything pertaining to the less trendy yet established models, or find solutions for problems in mature applications. Then Google decides that searching for the word "right" should return results for the word "left". Then slashdot gets inundated with know-it-all ACs who fail at reading comprehension.

      There's an entire universe of places to inject code, why must it always be on the very top of an already overburdened stack? Someone please invent something original at one of the lower layers that improves efficiency, or prevents bloat by addressing an underserved use-case, so that we don't end up with a swiss army knife that claims to be able to change your car's oil automatically.

      --
      Crimey
    4. Re:Generations... by Anonymous Coward · · Score: 0

      Web apps != distributed computing.

      Web apps are web technology but that can run completely offline. It's better to think about it as browser apps.

      Browsers have databases, WebGL, and with asm.js they can run C code in the browser. Web workers can also run multithreaded code in the browser (with a messaging model).

      They can access the web as required, but they don't need to.

    5. Re:Generations... by Shompol · · Score: 1
      Most of these "cycles" overlapped and different waves existed simultaneously for different purposes. From today's perspective:

      - 2010: centralized computation (Web apps and cloud computing)

      Most computation tasks are performed locally. Only centralized tasks are the ones where functionality requires this approach, i.e. posting on Slashdot, checking bank account balance, etc -- you cannot perform these locally.

      - 2020: distributed computation (mobile computing)

      New pocket computers will eclipse today's PCs in almost every aspect (almost happened already), yet nothing will change in terms of paradigm: tasks that can be performed locally will be, and things like posting on Slashdot will still require network communication.

    6. Re:Generations... by Darinbob · · Score: 1

      I've seen this happen a lot. I see it as a tug of war between users and IT/IS management. You start with centralized computing and then the users have a valid need to have locally controlled management of their own resources, so they buy minicomputers owned and operated by their departments. Then the centralized priesthood steps in to say "we can handle that tedious work for you if you put your computers under our control", and the overworked departments agree.

      Workstations -- the priesthood controls access to centralized file servers, they have streamlined procedures for site licenses of expensive software, and they'll manage the maintenance plans.
      PCs -- they want to control software acquisition to make sure everything is properly licensed and not being pirated (or in some cases having ownership of the floating pirated copies).
      Later PCs -- priesthood controls the access to the internet and only approved PCs can connect to the internet.
      And so on.

      The key point is that in all of this the end user still has perfectly valid and legitimate needs for local control of computing resources, very often resources that are locally purchased out of their own budgets. But in each cycle the end users either find this local control to be a hassle or they need connectivity to centrally controlled resources, so they voluntarily give up their local control. Soon they remember why they want local control and start reacquiring local computing resources and the cycle repeats.

      Another issue I've seen over time is that the central computer management has become more isolated over time. It used to be that they worked hand in hand with the end users, co-developing software for mainframes or minis, or working directly with departmental user groups. Now they seem to be completely off on a separate island.

    7. Re:Generations... by LordLucless · · Score: 1

      So, if I may answer the question posed in the title: Web Apps: the Future of the Internet?

      No.

      You're answering the wrong question. You argument is answering the question "Web Apps: the Future of Applications?". While computer usage might move in the cycle you've shown, the internet has always been about remote computation (centralized computing in your taxonomy, although it feels strange to me calling the internet centralized).

      --
      Just because you're paranoid doesn't mean there isn't an invisible demon about to eat your face
    8. Re:Generations... by stub667 · · Score: 1

      I tend to think the spiral you observe is caused because we like developing centralized systems (for all sorts of good reasons), but they always fail to cope when we start trying to scale them across the globe. International links, connectivity and the speed of light are a bitch. While improving over time, these problems always defeat the latest and greatest centralized system. All that money being pumped into CDNs and local mirrors, and streaming video is still unusable and the butt of jokes for large parts of the world.

  32. couldn't figure out how to vote by crtreece · · Score: 4, Insightful
    So I'll post a comment instead, Forever a Second-Class Citizen?

    Seriously, to add some content to my snark. Until internet speeds reach parity with access to local resources, web apps will always be second class compared to a similar application running locally.

    --
    file: .signature not found
    1. Re:couldn't figure out how to vote by bad-badtz-maru · · Score: 0

      Because you're too pussy to leave your room and make comments like that in person?

    2. Re:couldn't figure out how to vote by Anonymous Coward · · Score: 0

      To be fair, speed is always relative and today's internet speeds (for many) and personal computing device processing power (for most) mean web apps will handily run as fast as they need to and still leave room for more bloat.

      Internet speed isn't what makes web apps a second-class citizen, web designers who think they're software developers are what make web apps second-class citizens. And it's a huge mountain to over come.

    3. Re:couldn't figure out how to vote by Darinbob · · Score: 1

      Are they talking about extremely remote internet web apps (google docs), or instead local web apps that only go to the back office so that connectivity is fast and robust and secure?

    4. Re:couldn't figure out how to vote by LordLucless · · Score: 1

      Seriously, to add some content to my snark. Until internet speeds reach parity with access to local resources, web apps will always be second class compared to a similar application running locally.

      Not necessarily. You can write a web application that, once it's initially downloaded, need not communicate with a remote service at all. Contrariwise, there are plenty of native applications that are useless without internet access, and rely just as much on network speeds as a web app with the same functionality would.

      "Web app" versus "native app" is only peripherally about the internet - it's more about the ability of a web browser to provide a sufficiently flexible environment to create a user interface that can compete with a native application.

      --
      Just because you're paranoid doesn't mean there isn't an invisible demon about to eat your face
  33. Be wary of the pitfalls of using web apps by Anonymous Coward · · Score: 0

    Add a silly social sharing feature, and a software justifies its existence as a web app instead of a desktop app.

    If we embrace webappification too fully and quickly, we'll lose our privacy, ownership and control of data and hardware, and be held ransom by fees. It could end up with the disadvantages of "trusted computing".

    FOSS might be our hope for this future.

  34. Second-Class Citizen? by Anonymous Coward · · Score: 0

    More like UNPERSON. The day I want to be using bits of HTML and Javascript tied together with string to run my things is the day I unplug.

    1. Re:Second-Class Citizen? by Anonymous Coward · · Score: 0

      You should probably stop visiting /. then

  35. In what way did that make any sense? by SuperKendall · · Score: 5, Insightful

    iOS/android app: installed base on day one: 0
    web app: installed base on day one: a hundred million +

    What are you getting at here?

    Let's say you launch a new website/web app. How is your install base not ALSO zero?

    It doesn't matter how many devices CAN run what you have built. What matters is, WILL they...

    With either an Android or iOS app, your POTENTIAL install base is in the hundreds of millions. Furthermore, there's a huge increase in the chances of you getting paid for some of that work, which you can use to develop it further. With a web app chances are good you launch it, zero people notice, and you fade into obscurity.

    Lastly, compare how many applications there are in the iOS/Android app stores, vs. how many web sites exist. Which has better odds of someone using what you have created?

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
    1. Re:In what way did that make any sense? by DuckDodgers · · Score: 4, Insightful

      There are other reasons to prefer a native application, but I'm not sure your argument is one of them.

      Installation period: web app, page download time. native app, application download. Winner, web app.
      Approval process before you are in front of potential customers: web app, instant. native app, depends on the whim of the store curator. Winner, web app.
      Chances that your app gets removed by a change to the terms of service: web app, zero. native app, depends upon the whim of the store curator. Winner, web app.
      Effort for end-user to update their copy of your application to the newest: web app, none. native app, some to none (depending upon preferences set in app store application). Winner, web app.
      Competitors in the market: web app, millions. native app, hundreds of thousands, rapidly climbing towards millions. Winner, native app - but only for the moment.
      Restrictions on in-app purchases, restrictions in terms of use, requirement that you have to share revenue with mobile OS developer: web app, none. native app, some. Winner, web app.
      Effort to make your product available on iOS, Android, Blackberry, Tizen, Windows Phone, Windows Mobile, Firefox OS, Ubuntu Touch: web app, none. native app, none if you use a cross-platform development kit. Winner, none.
      Chances the end user deletes your application to save storage space on their device: web app - only if you use offline storage. native app, some. Winner, web app.

      Again, I'm not saying web app is clearly the way to go. I'm just saying it has advantages.

    2. Re:In what way did that make any sense? by gwstuff · · Score: 2

      The comment was open-ended enough for the following interpretation: consumers are resistant to installing new stuff. They don't like to clutter their mobile device screens with icons, and they unconsciously fear security threats. If you have a web app, you bypass this installation step. Conversely, if you have a native app then just because it's installed doesn't mean people are going to use it. How many apps do you have on your mobile device, and how many do you actually use? The "install base" number is often abused by mobile developers, as they boast about "millions of downloads", to suggest that it corresponds to the number of users. But in practice, the latter is a small fraction. The idea that a "web app is installed on every computer in existence" is an interesting perspective on that practice.

    3. Re:In what way did that make any sense? by Anonymous Coward · · Score: 1

      The OP and you are both obvious fans of webapps, but his single argument and your multiple arguments
      are completely irrelevant to the point of this article. They are discussing "performance and usability"

    4. Re:In what way did that make any sense? by Jason+Levine · · Score: 3, Informative

      Effort for end-user to update their copy of your application to the newest: web app, none. native app, some to none (depending upon preferences set in app store application). Winner, web app.

      This alone is a big plus in the web app category. If you discover a big bug/security hole in your app and make a fix, for a native app you need to submit this fix, wait for it to be approved, and then wait for your user base to upgrade. This means that many users will continue to use your buggy/vulnerable app for awhile both putting them at risk and hurting your image.

      If you discover a big bug/security hole in your web app, though, and make a fix, it is fixed. Everyone immediately sees the fixed version and (hopefully) will notice how much better it is.

      Plus, with a web app, you have one code base across Android, iOS, Blackberry, Windows Phone, etc. One code base means less chance that the port to platform X resulted in a horrible bug and it means that all of your resources can go to making that one code base as good as possible. Which means less bugs/vulnerabilities to fix in the first place.

      --
      My sci-fi novel, Ghost Thief, is now available from Amazon.com.
    5. Re:In what way did that make any sense? by DuckDodgers · · Score: 1

      I wasn't responding to the original article, I was responding to SuperKendall.

      But - maybe this makes me boring - the most common feature I use on my Android phone is bookmarks. I have my movie theater ticket purchase site bookmarked, the local weather site bookmarked, and a few others. I don't use many native apps. So the "performance and usability" advantage of native apps is meaningless to me, the only native app I installed is Firefox browser.

    6. Re:In what way did that make any sense? by Anonymous Coward · · Score: 0

      Effort for end-user to not update their copy of application, because new one screws up the UI for sake of change or drops some feature you used or does something else like this? Web app: Welp, you're SOL, son - Native app: Just don't click "Update" or reinstall app from backup if you did. Winner, native app.

      Net's down? Web app: Welp, you're SOL, son - Native app: Net? What net. Winner, native app.

      The copy of application you have used have been updated to "Domain hosted by Sedo Parking"? Web app: Welp, you're SOL, son - Native app: Wait, what? Well, if anything, see p.1. Winner, native app.

      Your data leaking due to hackers or court subpoena? Web app: Just cross your fingers and pray it doesn't happen. You probably won't know until too late, anyways - Native app: At least your data and its protection is in your own hands. With due diligence chances are down low. Winner, native app.

      These disadvantages are a huuuuuuge turn off.

      PS: Restrictions on in-app purcases, requirement to share revenue: Whut, you thought setting up payment system for your site is that easy, requires no expenses to maintain and has no transaction fees? Winner: The System. Unless you use Bitcoin or something, but who does that, anyways?

    7. Re:In what way did that make any sense? by SuperKendall · · Score: 1

      If you have a web app, you bypass this installation step.

      I would argue this is absolutely not the case.

      Security threats come MORE from the web than native application installs. So people are leery of clicking on links.

      The idea that a "web app is installed on every computer in existence" is an interesting perspective on that practice.

      If by "interesting" you mean "utter bullshit", then yes, that idea is "interesting". It means nothing until people run it. A native application downloaded is very likely to have been run at least once, so downloads actually mean something more meaningful than page hits in a web app.

      --
      "There is more worth loving than we have strength to love." - Brian Jay Stanley
    8. Re:In what way did that make any sense? by epyT-R · · Score: 1

      1. installation doesnt take much time at all. compared with the value of having direct access control of critical tools, this is a non issue.

      2. most software is downloaded anyway. web or desktop, the site sells the application to the user. it's a wash.

      3. webapps change their tos and featuresets all the damn time! at least with desktop applications, the user has the option of keeping the old binaries around (license be damned!) if they suit his purpose better than the less functional, more invasive current release.

      4. with webapps, the days of the latest version being the best choice are gone, now that it doesnt have to compete with more functional previous releases. when an existing feature is determined to undermine the authors agenda, it's gone and the user has no recourse. see #3.

      5. native applications have the distinction of greater trust because the user knows hes got control. web apps offer some access convenience, but they will only be considered reliable enough for ancilliary tasks. if gmail evaporates tomorrow, theres always some other provider ready to host my junkmail account. however, i would never want critical tools hosted online where the vendor controls access. thus i am willing to pay more for a locally stored and executed application than for a recurring 'subscription' for something that is quite literally always one step away from vaporware.

      6. your in-app puchasing scenario assumes it was purchased in a shitty 'app store'. most desktop applications are an installation download followed by purchase of activation keys. there is no third party taking a cut.

      7. if your user goes through the trouble of uninstalling on a modern machine, your application functionality does not justify its size, or it engendered enough of a negative reaction to justify the effort of removal (not that it's hard). the webapp version wouldve been abandoned long before, its login cedentials forgotten by the user.. with prejudice.

      frankly, im sick of running more and more of my workflow through a browser. webapps are slow, totally dependent on connectivity, and invasive to privacy. the fact their featuresets and my data's integrity are as flighty as the whims of the vendor's marketing dept does little to inspire confidence.

    9. Re:In what way did that make any sense? by gwstuff · · Score: 1

      I would argue this is absolutely not the case.

      If by "I would argue" you mean "I am totally bullshitting" then yes, I agree.

      Security threats come MORE from the web than native application installs. So people are leery of clicking on links.

      Think about what you just said. Could it be they come MORE from the web because there are MORE websites and people are just MORE amenable to using them? Because there's this little detail that native apps get much less restricted access to the OS. For instance, Safari on iOS won't let you access the user's system logs (which other apps might occasionally write personal information to) but the containers that run native apps do.

      If by "interesting" you mean "utter bullshit", then yes, that idea is "interesting". It means nothing until people run it. A native application downloaded is very likely to have been run at least once, so downloads actually mean something more meaningful than page hits in a web app.

      On the flip side, when a page gets a hit, a user has probably looked at its content. Unless by "very likely" you mean "a degree of likeliness/meaning that I believe in, and I am a bigot".

    10. Re:In what way did that make any sense? by noh8rz10 · · Score: 1

      for apps, you need to work hard to find a way to get them on the device, let alone the dock. for web apps, it's already accessible on the dock with one link or click. Destroys that barrier to entry.

    11. Re:In what way did that make any sense? by noh8rz10 · · Score: 1

      the fandango app is really nice for ticket buying. there are also some good weather apps that provide functionality beyond what you can get from a web app. hey, i guess that's a win for apps - they can be more interactive and complex.

    12. Re:In what way did that make any sense? by murdocj · · Score: 1

      Smoothness and responsiveness of application: web app, varies from ok to painful in jerky steps, depending on the Internet "weather", the load on the servers, etc. Native app usually be far faster and always smoother.

      Chance that app will disappear forever: web app, may disappear any time the supplier isn't making enough $$$. Native app, it's on your machine indefinitely.

    13. Re: In what way did that make any sense? by ceoyoyo · · Score: 1

      Sounds awesome. Start up your browser one day, stupid web app got updated and now some feature you use doesn't work. Awesome.

      For example, when I was writing my thesis MS updated Office. Except my reference manager wouldn't work with the updated Office. What did I do? I didn't update Office

      Winner: native app.

    14. Re:In what way did that make any sense? by DuckDodgers · · Score: 1

      Sure. But if it's a web app, I don't have to grant it any permissions. When my browser is closed, it's not doing anything.

    15. Re:In what way did that make any sense? by DuckDodgers · · Score: 1

      Often the fix you're deploying is a security fix, so the native app user rejecting the update may be avoiding an annoying UI change, but they may be opening themselves to a hack. That's still a problem and not a clear win for native.

      Net's down problem is legitimate. Forgetting to renew your domain registration is effectively the same as "net's down".

      With a native app, there's a much better than even chance that Apple, Google, Microsoft, or AT&T, Sprint, T-Mobile, and Verizon can pull all your data off the phone anyway. Winner: none.

      Setting up your own purchase system is a hassle, but the percentage taken by Google Wallet or Amazon Checkout or whatever is far less than what you pay in the typical App Store, where they get a 30% (typically) of all transactions and in some cases forbid you from advertising a lower price outside their app store.

    16. Re: In what way did that make any sense? by Anonymous Coward · · Score: 0

      Also, you are comparing native today with future web apps. Comparing them both on todays fact native wins hands down. Of course native will continue to evolve in the aspects you use as arguments.

    17. Re:In what way did that make any sense? by Myopic · · Score: 1

      Maybe we're talking about different things, but

      How is your install base not ALSO zero?

      It's not also zero because one hundred million people (more, actually) don't have to install any software to run your app. The software required, a web browser, is already installed on their computer. If you make a smartphone app or a desktop application users have to install your app to run it.

    18. Re:In what way did that make any sense? by SuperKendall · · Score: 1

      If you make a smartphone app or a desktop application users have to install your app to run it.

      While technically true it is irrelevant since installing is just as easy as clicking a link, and discovery of teh app itself is far easier than your web site that exists only in the abstract until someone can find it.

      If I were writing a new thing from scratch these days (and I am), there's no way I would start with web if I had any desire to make it a lasting concern.

      --
      "There is more worth loving than we have strength to love." - Brian Jay Stanley
    19. Re: In what way did that make any sense? by justforgetme · · Score: 1

      Not to forget that pretty much every native app that connects to the Internet loads up user data to company servers. Which makes the passive security arguments for native apps an uneducated suggestion.

      It really just boils down to performance and integration. If you need a 3d engine then yes, go as native as possible. Even the "new features that aren't supported by the embedded browsers" argument looses ground since you can implement hybrid apps with native blobs in many cases. But as always in the industry you have to also make due with the talent you have got. If you or you team are objective c ninjas the you will implement an ios app or have to ditch the team.

      --
      -- no sig today
  36. Re:Could Browsers Settled on an Alternate Language by ggraham412 · · Score: 5, Interesting

    It seems like some of the problem here is that Javascript is the Lingua Franca, and also that it has to use the web pages DOM. If the system were being designed from scratch, it seems unlikely this would be the choice.

    I think there is a Peter Principle for technology: Every good, proven technology gets extended, extended, and extended until it breaks. Back in the day, the web was a fast, simple, stateless request/response document retrieval system. Then some markup was added to make the documents look pretty. Then CGI and server-side processing were added to make the content more dynamic. Then tricks were applied (eg- cookies) to break the statelessness, albeit in a limited way. Then the prettiness of documents were improved with CSS and liquid design. Things got slow. Then the scalability of the server side was improved with various frameworks like JSP, Struts, Rails, etc. Applets had been tried, but they didn't take off because security and version control turned out to be much bigger problems than anyone realized at the time. Then JavaScript was extended and made to do all sorts of unsecure things. AJAX came along and broke the request/response document retrieval model for good. Things got slow again, especially on newer mobile platforms. Now the w3c wants to figure out how to run fat applications on this platform, ostensibly because it's shared in common across OSes.

    Rinse, Repeat. Everything old is new again.

  37. Re:Could Browsers Settled on an Alternate Language by Anonymous Coward · · Score: 0

    The primary problem is not JavaScript, but that so few web apps are licensed under AGPLv3+ and thus are not suitable for any kind of serious use.

    I guess this means Slashdot is not suitable for serious use.

  38. Re:Not as long as we have to write them in javascr by bad-badtz-maru · · Score: 1

    So JS is the web's assembly language? Cause I want to read and write JS as badly as I want to read and write assembly.

  39. Firefox OS phones are NOW selling by Anonymous Coward · · Score: 0

    Right now the Firefox OS phone is on sale at the ZTE Ebay stores in the US and UK:
    anywhere in Europe
    and
    US and Canada

    For those of us that genuinely want to test webapps on a device designed specifically for them.

  40. Why does this get asked every N months? by sootman · · Score: 4, Informative

    The answer will forever be NO, until the bandwidth between me and the server == the bandwidth between my CPU and its main memory. AND latency, AND availability.

    The fastest web apps TODAY are still slower than the native apps that shipped on the first iPhone in 2007.

    Besides that, both kinds have their own unique advantages. The first two: web apps allow you to get at the data from any device with an Internet connection and browser, but native apps work when you don't have network connectivity at all. If neither of those is a make-it-or-break-it aspect of your app, then you look at all the other advantages each offers, which have been discussed ad nauseum elsewhere.

    --
    Dear Slashdot: next time you want to mess with the site, add a rich-text editor for comments.
    1. Re:Why does this get asked every N months? by Anonymous Coward · · Score: 0

      99% of the time your CPU and main memory are playing solitaire waiting for you to stop picking your nose and press a key. Unless you're typing from home with a TRS-80 and a dial up modem (then your CPU and memory are sweating to the oldies trying to keep up).

      Web apps can be fast and latency free, just as native apps can be bloated pigs that take 3 minutes to load. It's just that the bar to make web apps is a billion times lower than it is to write native code. That's a godsend for web designers who can't grow a pair and learn how 'real software' works and crappy web app quality is the result.

      But you know, some times 'good enough' really is 'good enough' and most of the time web apps are good enough. Many more times web apps 'could'
      be good enough if done right.

    2. Re:Why does this get asked every N months? by aaaaaaargh! · · Score: 1

      It's just that the bar to make web apps is a billion times lower than it is to write native code.

      What do you mean by that? It's a hundred times easier and less complicated to make an app in, say, Lazarus or Qt than to create a working web app of any kind.

  41. Pry it from my cold dead hands by Taantric · · Score: 1

    You can pry desktop apps from my cold dead hands. I'll switch to web apps aka cloud apps when the NSA is a long forgotten memory and we are all singing Kumbaya in the streets while holding hands.

  42. Re:Could Browsers Settled on an Alternate Language by gwstuff · · Score: 1

    Canvas works perfectly fine on Safari for iOS and Chrome for Android (we use it in a production app). So you are suggesting that instead of using DOM, you just draw widgets natively on the HTML5 Canvas. That's a pretty neat idea :-) It doesn't address the JS being the "Lingua Franca" issue though. Google's GWT compiler lets you write your code in Java and then targets Javascript as a back end. But that wires you to Java.

    Another technology that makes for a multi-language environment is Google's NativeClient. But that has too much dependence on the underlying architecture for isolation, so it's probably going to be hard to keep it portable across all the platforms out there.

  43. grammar nitpick by jabberw0k · · Score: 1

    you meant, "a piece of software" -- there is no such thing as "a software" or for that matter "a hardware, a clothing, an information" -- you have a piece of hardware, a piece of clothing, a piece of information. Thank you.

    1. Re:grammar nitpick by Anonymous Coward · · Score: 0

      You must be fun at a parties.

  44. Re:Could Browsers Settled on an Alternate Language by hackula · · Score: 2

    Most of the criticism I see around javascript comes from people who know almost nothing about javascript, much less writing quality javascript. Read "Javascript, the good parts", and js becomes an extremely powerful and flexible language. Trying to cram OOP into a language centered around functional paradigms seems to be the source of most people's issues with the language. As for the DOM... the DOM is a pretty sane system, until you need to support 3+ browsers of differing quality. The language is really not that big of deal anyway. Look at iOS, which uses a language many would say is no where up to snuff with other modern languages.

  45. The biggest issue by far: local file/device access by Anonymous Coward · · Score: 0

    For me, the biggest missing feature for Web apps is local file and device access.

    And no, we're not going to "just store everything in the cloud". The fact is that the industry pumps out a huge number of HDDs, SDD, flash drives, SD cards, etc., and those devices will always need a way of storing content onto them. Web apps have a very poor interface for reading those devices, and a truly awful interface for writing those devices.

    My prediction is that security concerns are going to prevent deployment of any truly flexible JavaScript APIs for accessing the local system. We've got some proposed APIs now, but they're badly crippled due to security concerns.

    Microsoft Word is probably the single most popular productivity app. It can access any local file / printer / etc. on my system. Until web apps can do that, they will be completely shut out from replacing Microsoft Word. Creating content locally will always have significant advantages over creating it in the cloud. (Mainly, all the big ones: performance, security, and flexibility.) Security concerns will prevent web apps from ever touching the local disk / printer / GPS / etc. without forcing the user to go through awkward and annoying GUI steps that are specifically designed to be intrusive for the sake of security. That fact alone will kill a huge swath of potential penetration for web apps.

  46. Re:Could Browsers Settled on an Alternate Language by hackula · · Score: 1

    I will become an accountant before I have to go back to using .Net and Visual Studio again. Everything works like a dream... until it doesn't. The Law of Leaky Abstractions was enough to move me to commit to learning a language that did not implicitly require an IDE.

  47. The question (based on RTFA) by gwstuff · · Score: 1

    The question in the post "Web Apps: Future of the Internet or forever second class citizen" amounts to:

    "In the future, are people going to predominantly build consumer software applications using web technologies such as HTML5 and Javascript, which are ubiquitously supported across all platforms, or are apps mainly going to be built in platform-specific environments."

    not:
    "In the future, are apps going to sit locally on 'mobile devices and computers' (from the article) or are they going to be accessed via websites always."

    This is probably the single biggest question every mobile developer faces early on. Do you build your app separately for every platform, so use XCode, Quartz etc. on iOS, do you use a cross-platform development environment such as Xamarin which targets the OS natively, OR do you just target the browser "as the OS" and as a result run across all platforms.

  48. Do factor in Win-8 by niftymitch · · Score: 1
    Do factor in Windows-8.
    Interesting bits are JavaScript bit bold and in your face.

    This is much of the core issue that involved MS litigation and the browser wars.

    As long as they play nice with standards this could prove interesting.

    --
    Truth is stranger than fiction, but it is because Fiction is obliged to stick to possibilities; Truth isn't. Mark Twain.
  49. Slashdot is a web app by Anonymous Coward · · Score: 0

    you insensitive clod!

  50. Native apps don't really add much by mc6809e · · Score: 1

    I understand the hopes of those that wish we'd move to native apps, but I just don't think those hopes will be realized.

    One of the biggest advantages in using HTML/Javascript is that is provides a semi-nice way to talk to Windows' API. There's lot's of Windows boilerplate that disappears when using HTML/Javascript.

    That's much of what HTML/Javascript is -- a nice veneer over a difficult API. But that veneer doesn't make the underlying system disappear. And many of the problems that HTML/Javascript appears to have are really the fault of Windows. Many of those problems don't go away with native apps with the additional hassle of adding all kinds of boilerplate.

    Of course that all applies to Windows PCs. Native apps are much more successful on an IPhone, for example, because the underlying API is much more sane. Microsoft has tried many times to make it easier to write for its OS -- MFC, .NET, etc, etc.

    Think about how quickly apps appeared for the IPhone and consider how few native apps exist for the PC relative to the total number of PCs out there.

  51. Re:Could Browsers Settled on an Alternate Language by Anonymous Coward · · Score: 0

    You're implying that Slashdot is a "web app".
    Stop that. It's stupid.

  52. Re:Not as long as we have to write them in javascr by hackula · · Score: 1

    AMD, CommonJS, requireJS, and many others allow you to write modular js. Take your pick. npm is the major selling point for me on js. None of the dll hell I had on .Net with large projects.

  53. Re:Not as long as we have to write them in javascr by hackula · · Score: 1

    Sure, if assembly was trivial to read and understand. Coffeescript is about as nice looking as languages get. Use that. With new code mapping capabilities being released, you could probably get by without really understanding any js.

  54. Second-Class by wzinc · · Score: 1

    As much as I like the idea, Rabin said, "But if a particular hardware feature becomes popular, standards to implement that feature in the browser will always follow,"

    Keyword: follow

    So if you want cutting-edge apps, go native.

  55. Re:Not as long as we have to write them in javascr by thelukester · · Score: 1

    JS/CSS/DOM are terrible technologies for producing heavy weight applications. JS is a slow prototyping language, CSS can't even vertically center without hacks, and DOM works fine for documents but is terribly slow for trying to make responsive interactive applications. I don't see this changing until (P)NaCl or some other tech comes along with a nice UI toolkit that's designed for applications and not documents.

  56. What if the server was on the device by wjcofkc · · Score: 2

    I've wondered if there could be a scheme where you have an app that in installs say, the sproutcore framework, server, and a minimal web server on a device. Further, use a rendering engine in such a way that you would not have to run it in a full browser. It would look just like an app and you could use it offline. Of course there is a matter of how to make something so crazy secure. Then I suppose the question is why do it at all. Fact of the matter is: I have no idea what I'm talking about. Any input from someone who does know what their talking about?

    --
    Brought to you by Carl's Junior.
  57. Turning back the clock by Ronin+Developer · · Score: 2

    Whether you want to call them web apps, thin clients, or terminal based apps - the premise is the same...the name just changes over time.

    Web apps will succeed where users can tolerate the inherent limitations of the basic network-based thin-client app paradigm and are content accepting a limited or common native hardware feature set.

    Native apps will succeed where people want the highest possible performance and instant access to the latest native platform features and are willing to sacrifice cross platform capability.

    Yes, there are hybrid tools that try to bridge the gap...some are better than others. Still, you lose something in the translation when you try to be a jack of all trades and master of none.

    To get the best of both worlds would imply that innovation has to stop until manufacturers all implement feature X into the common hardware feature set and the hooks in the "browser" to access them. And, you will need a persistent storage model that will allow web apps to have the same sort of performance that native apps possess. Only where the native app and web app are storing data on a server will that metric ever be even remotely close to a native, persistent store (unless we have FTL wireless networking).

    I recommend advocating web-based apps and/or native apps when they are appropriate to the requirements from both a business and user perspective. Unless you can do that, you are little more than a fanboy for whatever paradigm you have locked yourself into.

    Best part of it all? You can make money regardless of which way you to choose to go...Web, Native or Hybrid. That's what it's all about, right?

    1. Re:Turning back the clock by PurplePhase · · Score: 1

      I think you've got it right - for some ideal world lacking other impetuses.

      A more interesting question in my mind is: how to predict business' push for one type of app over the other(s)?

      Microsoft is in some respects falling by the wayside, so they've jumped on the subscription bandwagon for applications - not just support/service - which seems to contradict all of their previous practices as they nix MSDN subscriptions and forbid Windows versions of some Xbox games...

      Concurrently Google has been removing many services people like and charging more for things like map-related services while they play around with YouTube and other websites many netizens seem to love. But they're also pushing their own OS, browser, and now hardware...

      We live in interesting times, my friend.

      8-PP

  58. In the Enterpise? No-brainer by Lost+Spirit+67 · · Score: 2

    I develop web apps for the enterprise, and have for well over a decade. In the past few years tools like AJAX and HTML5 have made the user experience much richer, but in general even these weren't needed for web apps to take over the enterprise. Bulky, finicky fat-client apps were always a pain, which was why technologies like 5250 and VT220 were popular so long past their expected life spans. Many many businesses still run back end systems with these interfaces because they are simple to deploy and simple to maintain. Web apps are the best of both, and performance is more than good enough these days. For games, maybe not, but for the enterprise we're already there.

  59. Re:Could Browsers Settled on an Alternate Language by gl4ss · · Score: 1

    it works? damn I'll have to take a look at using it then, trying to make fancier things work with dom and css is just a bitch! I mean, covering desktop ie/firefox/chrome is no problem but covering mobile versions of those at the same time is. javascript itself isn't a problem for me, I like node.js despite it's limits too surprisingly lot(I've just been doing js for a year or so.. from java/c++ background it's not so bad). sure, you'll lose css but that's not that big of an issue when in all cases when I've been told to just "edit the css to make it flexible" is almost the same as saying "fuck you and the horse I put under you", and a widget system built for it would take care of most things. I suppose for input you'll have to either do a lot of work or hack in some html parts to take care of that.

    yeah, logically, the thing is to just go around the dom - it was never intended for application development. if web apps try to be first class apps that's pretty much the way to go... problem with html+css is usually that people who aren't executing things just see some css trick or another and then just want that implemented in something where it just doesn't work by adding two lines of css.

    native client & etc are really just about launchers. kind of defeats the purpose as run anywhere for now.

    --
    world was created 5 seconds before this post as it is.
  60. Re:Not as long as we have to write them in javascr by Anonymous Coward · · Score: 0

    Auto-translated code is not going to look anywhere near that nice. For performance, it'll probably look more like ASM.js to work around Javascript's many difficult-to-optimize constructs.

  61. Its not all about you by Anonymous Coward · · Score: 0

    I don't need to download & install a program on to my laptop to bank online.

    No, but your bank is convinced that they can make more money if they can get you to install an app, by reinforcing their brand and deploying hooks into you that web apps don't facilitate. And as soon as the possibility of making additional money was hypothesized, collecting that money became their need.

    I short, apps are not about you. They are about achieving the goals of the app makers.

  62. Revising your statements by SuperKendall · · Score: 1

    Installation period: web app, PER page download time. native app, application download. Winner, NATIVE app. O(1) vs O(n)...

    Approval process: Yes there absolutely a web app is more flexible. So much more flexible that if your site is hacked everyone gets the corrupted version instantly.

    Chances that your app gets removed: Since I've never had it happen in scores of native apps I've worked on, I would say the chances of that are really low outside of certain categories, that I don't develop for anyway...

    Effort for end-user to update their copy of your application: Web app: Have to remember you even exist. Native app: Update reminder.

    Competitors in the market: Come on, no way will native applications ever lose to web apps on this category. Native app development is inherently harder, and always will be, reducing competition.

    Restrictions on in-app purchases: totally with you on a web app being the most flexible... BUT will they submit payment info with you? Meanwhile on iOS they don't use "real" money to pay you, just iTunes. Which do YOU think is more likely?

    I've done in-app kinds of things on the web before and the conversion rate is an order of magnitude worse for web purchases than it is for native.

    Chances the end user deletes your application to save storage space on their device: They may - but it also means they saw my apps name again. With a web app you just fade into obscurity, if you are REALLY lucky stuffed into a bookmark folder that no-one looks at for several years.

    I'm nto saying there's no point to doing web development, there are lots of things I think belong on the web. But for real "applications" you are glossy over some huge advantages native applications have.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
    1. Re:Revising your statements by tepples · · Score: 1

      Installation period: web app, PER page download time. native app, application download.

      For one thing, this applies only if your web application uses a "page" model, not an AJAX model. For another, most of a web application should stay cached for weeks on end.

      Approval process: Yes there absolutely a web app is more flexible. So much more flexible that if your site is hacked everyone gets the corrupted version instantly.

      The same thing can happen if your native application's version control server or backup server gets hacked.

      Meanwhile on iOS they don't use "real" money to pay you, just iTunes.

      If iTunes isn't real money, then why is PayPal real money?

    2. Re:Revising your statements by SuperKendall · · Score: 1

      For one thing, this applies only if your web application uses a "page" model, not an AJAX model.

      No, then it's even worse, because you are not obviously going to a new page, but you get the same annoying delay as if you had...

      The same thing can happen if your native application's version control server or backup server gets hacked.

      Come on. It would have to be hacked, then a change made with no-one noticing, then it would have to go out to the app store in an update. It's farcically far-fetched and even if it did happen, still would take a LONG time to reach users because someone would still have to submit it to the app store... it could take months.

      If iTunes isn't real money, then why is PayPal real money?

      Because there are several orders of magnitude more people that CAN AND WILL pay you via iTunes instead of PayPal. I've used both systems. PayPal is great from the standpoint of being able to get you money but it's way more of an obstacle to the user than in-app purchases are.

      --
      "There is more worth loving than we have strength to love." - Brian Jay Stanley
  63. My perspective as a web application expert by Anonymous Coward · · Score: 0

    TLDR; multi platform dev is getting more expensive every year; web tech is getting more powerful every year; this internet thing isn't going anywhere and companies that can put their apps in browsers/webviews and give adequate experiences will do so.

    #1 Development in multiple platforms is expensive as hell, businesses that can take advantage of a single codebase written in HTML/Javascript and just executed in webviews on mobile/dev will do so and they will save tons of money. Phonegap, node-webkit, etc are all examples of where this is going.

    #2 Web application technologies aren't a one size fit all ordeal. Some apps are easy to make these days, list based apps, etc in javascript on mobile and desktop. Some web applications aren't: graphics, intense amounts of math, sound. But new technologies are coming in to fill the gaps every year, making the proportion of things that can be made in web technology larger and larger.

    #3 The biggest limitation to web apps right now isn't technology IMHO, its that people aren't trained how to give a lot of money to their web apps. There's no app store or in-app payment of the web that everyone knows of. Google is trying to change this with the Chrome webstore. People will dump dollars after dollars into Plants v. Zombies 2, but look at giving a dime to a website like it was asking for your first born.

  64. Two problems by SuperKendall · · Score: 1

    If you discover a big bug/security hole in your web app, though, and make a fix, it is fixed

    And if you are hacked, EVERYONE of your users is hacked also, instantly. There is some value even in the small buffer an Android app store deployment provides.

    And if your web server goes down ALL of your users are down. A native app can keep on trucking and upload updates to you later.

    Plus, with a web app, you have one code base across Android, iOS, Blackberry, Windows Phone, etc.

    Holy cow is THAT wrong. You have never done serious mobile web development.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
    1. Re:Two problems by DuckDodgers · · Score: 1

      If you are hacked, all of the people using your application between when you are hacked and when you take down the site until it's fixed are hacked. That's not all of your users, automatically. But yes, good point.

      If your web server goes down, you're in trouble. But so many applications depend upon a web service anyway, so you get the worst of both - a native app that still doesn't work correctly if the backend is not available.

      With the single code base across all applications, I mean it in the sense that it's all HTLM5 plus Javascript. Obviously you're going to have custom logic in the client or server based on the specific browser and platform the client is using - or you're going to use one of the third party libraries (modernizr, etc...) to handle the differences for you.

    2. Re:Two problems by SuperKendall · · Score: 1

      If you are hacked, all of the people using your application between when you are hacked and when you take down the site until it's fixed are hacked.

      But there's then also the downtime if you have to take it offline...

      But so many applications depend upon a web service anyway, so you get the worst of both - a native app that still doesn't work correctly if the backend is not available.

      You really cannot write a mobile app for which that is true, because mobile apps are just not going to be able to connect at times. A semi-disconnected state is where they fare best.

      That's why I think web-apps are a lot more practical for desktop use than mobile, all of the restrictions just make it very hard to write a web app that works well on mobile.

      With the single code base across all applications, I mean it in the sense that it's all HTLM5 plus Javascript.

      Language is the least of your issues with any application. The savings of being able to use teh same language across platforms is slight because all of the work in GUI is in testing.

      And with mobile web apps if you use too many libraries it bogs down the thing to unusablity on many devices. I really think there's a huge distinction between mobile web apps and desktop web apps...

      --
      "There is more worth loving than we have strength to love." - Brian Jay Stanley
    3. Re:Two problems by DuckDodgers · · Score: 1

      Good points. Thanks again for injecting a reality check across the discussion.

      But in the case of GUI testing, there are so many display resolutions and graphics processors and so forth in the Android world - which is the biggest target, of course - that your GUI testing is going to be extensive regardless of native vs. web if you target Android. iOS used to have a smaller number of targets, but now it's getting bigger (if not as big as Android).

      While mobile site performance is often pitiful, mobile devices are getting more powerful and web browsers are getting more efficient. Native will always trump web for performance, but for an awful lot of simple applications the difference doesn't matter and every year the subset of apps where it doesn't matter is increasing.

  65. Re:Could Browsers Settled on an Alternate Language by narcc · · Score: 1

    Javascript is a horrible language

    Why?

    Do you have any complaints about it that don't boil down to "I hate dynamic languages" or "classes are the one true way to do oop".

    That's what I thought.

    That you can just "jump in" and get things done is certainly a testament to the language, but you really need to take the time to learn about it before you can use it effectively. Most people don't take the time to learn it and just jump on the bizarre "JavaScript is horrible" meme. Don't be like them!

    If you need an easy introduction, there are quite a few talks by Doug Crockford on youtube. Just search for "Crockford JavaScript". Don't assume that you know JS just because you've used it for years!

    It really is the worlds most misunderstood language.

  66. Re:Could Browsers Settled on an Alternate Language by Anonymous Coward · · Score: 0

    Obligatory: Was it ever suitable for serious use?

  67. Offline web apps vs. online backup of native apps by tepples · · Score: 1

    Net's down? Web app: Welp, you're SOL, son - Native app: Net? What net. Winner, native app.

    Web applications can include an offline version using application manifests, IndexedDB, and an IndexedDB-compatible shim around the SQLite included in WebKit. Native applications can display an alert box and close if they fail to connect to the Internet service to which they were designed to connect. For example, good luck using the Facebook or Twitter application offline. Advantage neither.

    Your data leaking due to hackers or court subpoena? Web app: Just cross your fingers and pray it doesn't happen. You probably won't know until too late, anyways - Native app: At least your data and its protection is in your own hands.

    The court can just subpoena the server used by the native application's remote backup feature.

    Whut, you thought setting up payment system for your site is that easy, requires no expenses to maintain and has no transaction fees?

    Stripe, Authorize.Net, PayPal, and Dwolla charge transaction fees. Apple, Google, Microsoft, OUYA, and the like charge bigger transaction fees.

  68. No by Tom · · Score: 1

    The answer is, of course, No. Because the answer to questions asked in headlines is always no.

    The real answer is a bit more tricky. A simple no doesn't cut it, because for some use-cases, web-apps are really great. And for some, native apps are better.

    Asking "web- or native app?" is like asking "hammer or screwdriver?" - well, it depends on what you're trying to accomplish.

    --
    Assorted stuff I do sometimes: Lemuria.org
  69. Access to I/O by tepples · · Score: 1

    Access to input and output components like camera, joystick, and 3D graphics is not guaranteed in a browser. Apple, for example, refuses to open WebGL to anything but iAds. Winner, native.

  70. Bookmark == icon by tepples · · Score: 1

    consumers are resistant to installing new stuff. They don't like to clutter their mobile device screens with icons

    A bookmark of a web application is an icon.

  71. Dynamic languages in general by tepples · · Score: 1

    Do you have any complaints about it that don't boil down to "I hate dynamic languages"

    Why should such boiling down be shameful? Fully dynamically typed languages impose substantial runtime overhead and require manual creation of even those test cases that would be implicit in a language that has even an option for static typing.

  72. Check deposit with a camera phone by tepples · · Score: 1

    I don't need to download & install a program on to my laptop to bank online.

    In your opinion, should one have to download and install a program to take photographs and upload? Say you want to deposit a check. You can ride the bus to an ATM, ride the bus to a branch, ride the bus to the post office and mail it to the bank, or take a photo of the front and back of the check and upload the photos to the bank. Guess which of these is the easiest to do if your bank is in another state. Banks tend to require a native application for this because support in mobile browsers for photography is lacking.

    I don't need to download & install a program on to my laptop to read the news.

    In your opinion, should one have to download and install a program to play a video game that isn't turn-based? Safari for iOS doesn't allow web applications to display 3D graphics.

  73. Re:Could Browsers Settled on an Alternate Language by interval1066 · · Score: 1

    1) The fat arrow indirection pointer is a huge interpeter hole depending on how its implemented 2) Prototypal inheretance (need I say more?) 3) Code reuse in javascript is fake and dumb 4) protoypical behavior in js is very bad, almost as bad as PHP 5) only functions can create scope, making js a not very well implemented OOP language 6) No type security, again, almost as bad as PHP There are more, but I'm bored.

    --
    Python: 'And then suddenly you have a language which says "we're all stuck with whatever the whiniest coder wants".'
  74. Good native games by tepples · · Score: 1

    If every good native application in the iPhone app store, Google Play store, and Windows App Store has an equivalent web app version

    With WebGL disabled in Safari for iOS, good luck replacing every good native game with a good web application. And good luck being able to use a device's camera to take a picture in a web application.

    1. Re:Good native games by DuckDodgers · · Score: 1

      I'll grant you games, I don't ever see them being less than two or three generations behind in web vs. native. But in terms of camera, Firefox is making their own HTML5 APIs for manipulating the camera in Firefox OS and I believe they're trying to make it a w3c standard. If that technology becomes mainstream, there you go.

    2. Re:Good native games by tepples · · Score: 1

      Firefox is making their own HTML5 APIs for manipulating the camera in Firefox OS and I believe they're trying to make it a w3c standard.

      Except that Apple has the right to (and will likely) choose not to implement the proposed W3C photography API in Safari, just as it chose not to implement WebGL, to encourage developers to buy a Mac and pay the $99 + 30%. Apple has the power to prevent the technology from becoming mainstream.

    3. Re:Good native games by DuckDodgers · · Score: 1

      If the technology takes off on other platforms, Apple will follow sooner or later. They have a big portion of the market and the most profitable portion of the market, but they can't ignore a technology that the other 60% use, no matter what it is.

  75. Re:Could Browsers Settled on an Alternate Language by Brian+Feldman · · Score: 1

    I'm using the Google Web Toolkit to program JavaScript by writing Java. It seems to be working quite well. Learning DOM and CSS intricacies is the real bitch.

    --
    Brian Fundakowski Feldman
  76. The bar is the cost of a Mac by tepples · · Score: 1

    It's just that the bar to make web apps is a billion times lower than it is to write native code.

    What do you mean by that?

    To make a web application, you can own any brand of computer. To make a native application for OS X or iOS, you have to own a Mac in addition to whatever computer you might happen to already own. And I can cite statistics that there's over a 90% chance that this computer that you already own happens not to be a Mac.

  77. If your user's browser doesn't support a feature by tepples · · Score: 1

    Go to caniuse.com and find a feature that would prove useful to a particular web application. For example, look up camera and microphone access or 3D graphics. As long as a widely used browser (such as IE one version back or Safari for iOS) shows a red box for this feature, you have to build the application separately for each platform in order to avoid loss of business when users get an error message that a particular browser feature is absent.

  78. Re:Not as long as we have to write them in javascr by Anonymous Coward · · Score: 0

    Agreed, time for a new GUI-friendly and CRUD-friendly browser standard. JS/CSS/DOM fans keep telling us "it's just around the corner", but the corner is still fucked up.

    I suspect they keep backing it for job-security reasons: it takes a lot of skill to get a desktop-like feel, and they want to be in demand so that they get big bucks. As long as web GUI's remain a dark art that runs different on every version and vender, a selfish cabal of experts will make excuses to keep things as they are.

    Fuck your bucks, I want a decent GUI standard to work with to make useful browser-based tools without breaking the bank; and you greed-bags are standing in the way. Damned be you!

  79. Re:Could Browsers Settled on an Alternate Language by narcc · · Score: 1

    There are more, but I'm bored.

    And horribly wrong, but you don't know that. I'll also note that your complaints are exactly what I expected "I want broken classes" and "I don't like dynamic languages". Ridiculous.

    The fat arrow indirection pointer is a huge interpeter hole depending on how its implemented

    Nonsense. While I agree that it should never have been added (thanks coffeescript, for your worse-than-useless contribution) there are certainly no fundamental problems with it. God only knows what you mean by "huge interpreter hole", though "depending on how its implemented" implies that it's not a problem with the language. (I would also like to note that problems caused by "how its implemented" applies to every feature of every language ever.) I don't think you've thought this through.

    Prototypal inheretance (need I say more?)

    It's much much more powerful and flexible than class-based inheritance. Class-based inheritance is fundamentally broken. Just one example, the diamond problem simply doesn't exist with prototypical inheritance. If you really want to force yourself to use a broken and inferior model, you can very easily implement "traditional" classes in JavaScript.

    I blame the "new" keyword on this bit of absurdity. JavaScript included the new keyword, as far as I can tell, to make the language seem more familiar to people coming from C++ and Java. (A big mistake.) It was just too easy to pretend that objects in JavaScript were like objects in those languages. This lead a lot of people to think that objects in JavaScript were "broken" when in reality they're simpler, more powerful, don't suffer from the same problems as class-ical objects, ... I could go on.

    Code reuse in javascript is fake and dumb

    This makes absolutely no sense. While it could benefit from a proper module system, code reuse is still significantly simpler in JavaScript than it is in languages like C# and Java. I don't know what you mean by "fake" and "dumb" -- and I suspect that you don't know either.

    only functions can create scope, making js a not very well implemented OOP language

    This is equally incoherent. JavaScript, at one time, lacked block-level scope; but that had absolutely nothing to do with OOP. (Neither is JavaScript an "OOP language", whatever that's supposed to mean. It's closer to Lisp than it is to Java.) I'd ask you what bizarre reasoning brought you to that conclusion, but I suspect that you're just repeating something you heard and haven't actually thought it through yourself.

  80. Re:Could Browsers Settled on an Alternate Language by interval1066 · · Score: 1

    And horribly wrong, but you don't know that. I'll also note that your complaints are exactly what I expected "I want broken classes" and "I don't like dynamic languages". Ridiculous.

    I want broken classes??? How did you get that out of what I said?

    (prototypal inheretance) It's much much more powerful and flexible than class-based inheritance. Your off your rocker pal. Protoypal inheretance my have its uses but it IS NOT OOP. Protypal inheretance works fine in the template world and has its place, but is no replacement for pure OOp pradigms.

    This makes absolutely no sense.

    js code reuse relies on nesting, which is a BAD IDEA.

    This is equally incoherent. JavaScript, at one time, lacked block-level scope; but that had absolutely nothing to do with OOP. (Neither is JavaScript an "OOP language", whatever that's supposed to mean. It's closer to Lisp than it is to Java.)

    WHAT IS THAT SUPPOSED TO MEAN?

    I'd ask you what bizarre reasoning brought you to that conclusion...

    Use makes me say these "bizarre" things. Js claims to be an OOP language, yet the rules it follows is more like PHP.

    --
    Python: 'And then suddenly you have a language which says "we're all stuck with whatever the whiniest coder wants".'
  81. Re:Not as long as we have to write them in javascr by Anonymous Coward · · Score: 0

    it is not designed to help with development of large projects

    It is easy with the right framework. I use Ext JS at work. It uses an MVC pattern and provides a fantastic class system. It also comes with with a very full featured collection of widgets and data package. I can understand where you are coming from if you are thinking pure JS or jQuery, but Ext makes my life much much easier.

    As far as native support for classes/types, it is coming. ES6 will have classes and ES7 will have guards. As many stated below you can accomplish this today with a transpiler.

  82. Re:Not as long as we have to write them in javascr by Anonymous Coward · · Score: 0

    I responded to the parent regarding a JS framework named Ext JS. It also handles your concerns. Much of the dom work you would do in a traditional application is completely abstracted by a very robust and full-featured set of widgets. You can build your own components with an HTML template by extending a base class, but almost everything you should want to accomplish is already available as a component. You don't touch HTML/CSS very often. It is very object-oriented and contains a layout system that makes positioning components simple.

  83. Not less restrictive, just broader. by SuperKendall · · Score: 1

    For instance, Safari on iOS won't let you access the user's system logs (which other apps might occasionally write personal information to) but the containers that run native apps do.

    That's not true, what you can do is query the logging system

    While it may seem a fine distinction, you are still working through an API. A native app doesn't have "much less restrictive access" to the OS, it just has BROADER access.

    Pretty much all of the untethered jailbreaks have come from holes in Safari - not native apps - because Safari actually has lower level access into the system in terms of running a more powerful javascript engine.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
  84. One click install by SuperKendall · · Score: 1

    It's only a click to install an app too. Only there's a whole lot more web you have to fight for attention against, and more things that can go wrong in the process of delivering a web app to the user. Bad WiFi day for the user? A small hiccup in an app install, but it makes your web app look like garbage.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
  85. Why it is not actually better for most people by SuperKendall · · Score: 1

    Why is Google Docs better, at least in principle, than Microsoft Office? Because I can use Google Docs from Windows, from Linux, from Mac, from FreeBSD, from Android, from Tizen, from Blackberry, etc... etc...

    The thing is, people don;t have Windows AND Linux AND a Mac...

    The have a small number of devices, and if the data can be read on one and worked on on the other, good enough.

    That is true of most people, and why web apps have not mattered that much.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
  86. One other thing about real money... by SuperKendall · · Score: 1

    If iTunes isn't real money, then why is PayPal real money?

    I regularly get iTunes gift cards at a discount off face value, so do lots of people.

    Meanwhile whoever gets discounts off the money they send through PayPal? I think there's on introductory credit for getting a PayPal VISA, and that is it.

    That's why I say iTunes is less like "real" money to people, because you can load it up at a lesser expense than using real money.

    But none of that affects the application developer, they get the same amount on their end...

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
  87. Maybe by Anonymous Coward · · Score: 0

    However re-read the admission that native apps get the features first, then if they prove popular, the web standards get support for those.

    First, this adds an unavoidable time delay.
    Second, what if the feature you love or rely upon, is never deemed "popular"?
    Third, how long has this Jo Rabin been around? Have they never seen the standards committees tied up in knots, unable to even agree on what beverages should be served at meetings?
    Fourth, ever seen those standards that emerge into the world, all proud and shiny, only to be ignored by the vendors?

    The web today is something of a miracle. We've got standards that basically work, and enough agreement and practical support that they get used. Even HTML 5, which looked pretty shaky early on, seems to have finally gained traction. It's good.

    That said, don't be a pollyanna. Web standards are slow to emerge and never make everyone happy. Native support will always be better than the web standards that must codify them.

    If none of that convinces you. Here are just a small sampling of standards that failed, or never lived up to their potential:

    SGML
    XHTML
    XML (arguable I know)
    WS-anything
    SOAP
    ISDN
    SVG
    SMIL
    Semantic Web (don't get me started)

    Now watch the excuses flow! I'll get you started too: But but but... ISDN wasn't a Web standard! Except that it was the first serious, standardized effort at merging voice and data. As such it was a precursor to such things as DSL lines and, had it taken off, might have accelerated high speed internet access 2 decades before that finally happened.

  88. Re:Could Browsers Settled on an Alternate Language by narcc · · Score: 1

    I want broken classes??? How did you get that out of what I said?

    Class-based systems are fundamentally broken. We've known this since the 1980's. Get with the time, man!

    Your off your rocker pal. Protoypal inheretance my have its uses but it IS NOT OOP.

    No surprise there. You'll find that there's no consensus on what "OOP" actually is or entails. It's an ill-defined and incoherent concept. It's funny, you'll find that there's a lot of disagreement even about what languages are and are not "object oriented" -- which includes languages like Java and C++. If you want to have an "x is not OOP" argument, you can have it with someone else. I'm sure someone just loves that sort of thing, but it's a silly waste of time, as far as I'm concerned.

    Still, as I pointed out earlier, it's trivial to implement a class-ical system in a language like JavaScript. It would be stupid, of course, but if you want to use a fundamentally broken system like you find in languages like Java and C#, that's your business.

    As for the rest, it doesn't appear that you have the necessary background to make further discussion valuable for either of us.

  89. Re:Could Browsers Settled on an Alternate Language by Anonymous Coward · · Score: 0

    The fact that coffeescript exists and popular libraries like JScript change basic operators speaks volumes.

  90. Pros and Cons of Customizability by Mandrel · · Score: 1

    Web-apps are hosted on a competitive platform with open standards called a browser, which allows applications to be modified to the user's advantage by extensions and user-scripts. Native apps are locked down.

    From the user's perspective, advantage Web. From the developer's perspective, advantage native.

    Will customization be stopped by adding DRM to HTTP, forcing use of blessed browsers?

  91. Its all in the hardware by Anonymous Coward · · Score: 0

    Lately I have been developing a rendering pipeline and for years I had been oblivious to what has been going on in the mobile world. At a very basic level something running in a sandbox and/or VM still to this day has a hard time dealing with real memory address requests. This! Build a better mousetrap or GTFO. So again we start at the most basic level which is C. Higher level langs like .NET use a combo of interop and IDL to achieve results while the GC has become all important. The reliance on effective GC is the weak point. No one has time to hack on a custom managed stub or wrapper these days either. Perhaps it is time to innovate on the hardware- that's right I said it. Ferinstance what if your cellphone had a reflashable burner phone inside it? It would run essentially in a jail (y'know like BSD jail) with the intention of being rapidly disposed of. Hmm, too many cycles? Not the model of efficiency? We need to progress to the point resources are superfluous and ubiquitous. In order for the marriage of native and web to completely occur we need dedicated hardware for both to run side by side. Those aghast at this idea consider the innovation for the FPU it was dedicated and modular much like this approach. So many other things like this are now in all hardware so where is the dedicated web hardware? For now I will settle for superglueing my mobile device to my desktop because I find myself actually on both at the same time. Glue is no real replacement for an effective thin client but it will have to do until they hash out the licensing.

  92. Silly distinction by ceoyoyo · · Score: 1

    Web apps are just like native apps except they have to run under a comparability layer called a browser, have to be written in a shitty (for larger projects at least) language, can only do things some standards board has decided on, a decade or two after they became routinely available to native apps, and pretty much require that you have a network connection, at least some of the time, so they can talk to a third party frequently.

    You could have all the same "benefits" of a web app with a native app if you just gave your root password to the vendor. All the same data security too.

    1. Re:Silly distinction by TheSkepticalOptimist · · Score: 1

      Um no.

      To believe the web apps are just the same as native apps is silly, you even pointed out what is wrong with web apps.

      --
      I haven't thought of anything clever to put here, but then again most of you haven't either.
    2. Re:Silly distinction by ceoyoyo · · Score: 1

      What an excellent post! Do you have an actual argument, or do you just buy the "webapps are better!11!" line and feel the need to parrot it unsupported?

      Unless of course you're arguing that webapps are different by agreeing with me that they have to run in a hacked together interpreted environment and are crappy second class citizens as a result, in which case thanks, but your post is still useless.

  93. Re:Could Browsers Settled on an Alternate Language by LordLucless · · Score: 1

    Back in the day, the web was a fast, simple, stateless request/response document retrieval system. Then some markup was added to make the documents look pretty. Then CGI and server-side processing were added to make the content more dynamic.

    Ok, so far, so good.

    Then tricks were applied (eg- cookies) to break the statelessness, albeit in a limited way.

    Cookies don't break statelessness. Every transaction is still defined only by the state provided by the client. Cookies don't "break statelessness" any more than the query string does - anything you do with cookies, you can do with the query string.

    Then the prettiness of documents were improved with CSS and liquid design. Things got slow.

    Actually, things got faster because CSS let you abstract out a bunch of stuff into a file that was downloaded once, then cached, rather than bloating out your HTML with style instructions on every single page. The thing that "slowed" the web was the increase of rich media - images, sound and now video. But even then, those increases have been outperformed by available bandwidth.

    Then the scalability of the server side was improved with various frameworks like JSP, Struts, Rails, etc.

    Frameworks generally weren't created to increase scalability; they were created to reduce turn-around time for development. Because frameworks (supposedly, anyway) implement best-practices as part of their base install, it's frequently easier to make them scale than something hacked together entirely in-house, but scalability has been achieved by things like caching systems, load balancers and on-demand virtual machines, not frameworks.

    Then JavaScript was extended and made to do all sorts of unsecure things.

    Uh, like what? Javascript (or more accurately, the DOM model) doesn't really have that many more features than it had initially. It'd be more accurate to say that as development in javascript accelerated, and people did more complicated things with it, we found new vulnerabilities.

    AJAX came along and broke the request/response document retrieval model for good.

    How does requesting a document via javascript break the document retrieval model? HTTP doesn't care if you request a document by typing in the URL, clicking a link, or clicking a button that fires off a javascript request. You make the request, you get the document.

    Things got slow again, especially on newer mobile platforms.

    Things got faster. AJAX means you don't have to reload an entire page for a minor content change. Things were slow on mobile platforms, but that's not because of AJAX, it's because they were (for a long while) underpowered machines connecting along crappy connections. That's not due to any issue with HTTP, HTML, Javascript, CSS or anything - it's purely an infrastructure issue.

    Now the w3c wants to figure out how to run fat applications on this platform, ostensibly because it's shared in common across OSes.

    What exactly is a "fat" application? And who cares what the W3C are figuring out - people are already running applications on the platform. W3C have, at best, only ever codified existing practice. They've never been the ones pushing the envelope.

    --
    Just because you're paranoid doesn't mean there isn't an invisible demon about to eat your face
  94. Re:Could Browsers Settled on an Alternate Language by Myopic · · Score: 1

    Do you have any complaints about it that don't boil down to "I hate dynamic languages" or "classes are the one true way to do oop".

    Maybe he does, but he doesn't need any, because those two reasons are more than enough.

  95. Re:Could Browsers Settled on an Alternate Language by Myopic · · Score: 1

    Back in the day, the web was a fast, simple, stateless request/response document retrieval system.

    You forgot "and useless for anything but looking at plain text documents". On today's web, almost nobody ever looks at a plain text document, so it strikes me as pretty silly to pine for that web.

  96. Solve two major problems and it'll take off by Anonymous Coward · · Score: 0

    1) solve the communication issue. Push messaging.

    2) solve the background processing problem like background uploading of photos while new content loads.

  97. Local disk access is a big factor by JDWilsonJr · · Score: 1

    /securityConcerns

    If web pages could ever gain the same access to local disk that say, notepad.exe enjoys, then they would eventually have a shot at dominance.

  98. Apple ignored RFC 1867 for years by tepples · · Score: 1

    Apple [...] can't ignore a technology that the other 60% use, no matter what it is.

    For the first five versions of iOS, Apple ignored RFC 1867 uploads (<input type="file">) entirely.* Even in iOS 6, it's unavailable for content types other than photos and videos. In iOS 2 through 5, the only way to upload a blob of data from an iPod touch, iPhone, or iPad was through a native application developed on a Mac and approved by Apple.

    sooner or later

    Herein lies the problem. Apple can ignore a technology for long enough to move the rest of the market away from that technology. Case in point: The iPad led the way in abandoning Adobe Flash. And when the original iPhone came out in 2007, the RFC 1867 upload spec was already nearly twelve years old.

    * The fact that iOS has no traditional "file system" isn't entirely relevant. The uploaded data consist of a name and a blob and need not (and for security's sake should not) refer to any local path. The RFC specifies "a file selection mode appropriate for the platform", which on a mobile device might first present a list of applications that can provide blobs of the appropriate content type, as specified by the input's accept= attribute, and then present a list of blobs that the selected application can provide.

  99. Designed by committee by TheSkepticalOptimist · · Score: 1

    This is why web apps will never be as good as or exceed native apps.

    Web "standards" are committee driven and as such are prone to in-fighting and lack of universal and consistent adoption of those standards. I mean most browsers just achieved 100% w3c compliancy in the last year or so and none are HTML5 compliant, largely because HTML5 is still not fully ratified and is prone to different interpretations.

    So Web apps are always going to be a step or two behind native because the people creating the OS'es also create the toolset and API's to support the OS and they are always lock-in-step with the OS features. If there is a new powerful OS feature that is released on OS X or Android or Windows its going to take years before the web catches up and creates a standard to support it.

    That isn't to say that you can't build a good Web App. You may not need the state of the art OS features to create a good web app experience, but web apps will never be on par with native apps because you will never have multiple vendors coming to a quick consensus on what standard featureset a web API should have.

    --
    I haven't thought of anything clever to put here, but then again most of you haven't either.