Will Native Apps Die?

  • No. Native apps won't die.

    There seems to be an ebb and flow between "thin client" and "thick client" computing. Right now we're leaning heavily toward the "thin client" realm, with the emphasis on "Cloud this" and "Web that"; however, it's entirely possible that something will happen to bring that remote compute capacity back to the local device for the sake of efficiency.

    And even now, there are reasons to compute locally in a native language instead of remotely via an abstraction. Some of those reasons (speed, primarily) are beginning to be mitigated by new technologies, but the reasons will likely always exist for why a native app can be a better solution than a thin client style implementation.

    Probably what we'll see is an emphasis on APIs and intercommunication - this gives companies the power to do a lot of logic server-side, and just roll native apps for things that are difficult to do on the server. Implementations like Dropbox, Evernote, Wunderlist, and Netflix are good examples of this bridge between philosophies.

  • Answering while in a dream: Yeah native apps gonna die, web apps (I mean HTML css js) are gonna take over the world and everyone will live happily after.

    Answering while building web app (front-end): I wana write native apps man, this whole HTML,CSS,JS shit is a unbearable hack to build apps on something that was fundamentally designed to create linked documents, at every step I am just trying to use duct tape to build things.

    Answering after some more time: Hell, I am done with front-end development, I am good with my server-side, use whatever language/platform that solves the problem, build distributed scalable systems, kind of programming.

  • "native" and "cross platform" are not absolute terms. An Android application runs across many android-based operating systems (in the user's sense of the word), and even more different devices. A web application runs across even more systems, but on ChromeOS it is considered native.

    Developers will favor the most cross platform solution that can meet their needs. That's why we look at Javascript before we look at C before we look at Assembler. That's why nobody makes two different apps for Samsung Galaxy S4 with Touchwiz and the HTC One with Sense. The result is just as good, and much cheaper, if you make a single application and then, if necessary, optimize for the differences.

    Theoretically, one could argue that you already make a decision to cross-platform if you decide to make the same app available in two different languages: The differences in languages (e.g. length of words) can impact the user interface of your application. Yet how many iOS developers do you know who make a separate app for every language?

  • native apps will continue to be built so long as there are performance benefits, or increased access to native functionality, or finer grained control over UI or other benefits available to native applications. As I recall (I wasn't an owner of the original Iphone myself) it wasn't until a second version of iOS that an App store and third party native apps were allowed.

    How could you have a web app that interacts with a device without a native layer at some level? At some level, you have to have a native application, though a company could make their stack directly compatible with web applications.

    That said, I think you are going to continue to see people developing frameworks like Phonegap, because the idea of developing once has a variety of advantages for developers, and I/O is going to be the limiter on many processes.

  • We will end up mixing native and universal technologies. For now, make sure you do not consider cost as your first priority. Your app is about the user = UX & functionality. Your code is about performance.

  • Show me a Web runtime, with a UI framework, that is equivalent to the expressive power and control over the UX that native apps enable, and sow it running as efficiently w.r.t battery power as a native app environment, and then I will believe it is possible.