Live data from Hacker News

Web vs. native: let’s concede defeat

quirksmode.org

21–30 of 515 posts

Re: Web vs. native: let’s concede defeat

#21
post #15

Earlier quoted context omitted.

I'm using React Native as a web developer who wants to create a native app. Native performance with the familiarity and simplicity of web devlopment. I don't know why anyone would build a Cordova app anymore.

does react native support android yet?

About 4 months away now I think. But you could conceivably use something like Reapp until React Native supports Android. That's what I'll likely end up doing. Not ideal but React Native has already saved me so much time I'm not worried about the Android problem really.

Re: Web vs. native: let’s concede defeat

#22

This post leads me to believe the author probably assumes there will always only be a handful of native platforms. I think, if we're lucky, the ecosystem will be far more diverse. In the future I envision, noone in their right mind would ever think native is the way to go.

This post leads me to believe the author probably assumes there will always only be a handful of native platforms.

No offense, but I'd trust PPK's beliefs about the mobile ecosystem more than any random HN user.

Re: Web vs. native: let’s concede defeat

#23
> Is it the web’s purpose to emulate native by inserting yet more features?

Certainly not. In my opinion, the problem with the web is that it has become too complicated. In an effort to make the web simpler for the ordinary user, the web has actually become a more complicated place for the (advanced) developer.

HTML, CSS and javascript have grown so complicated that they lack certain desirable properties, such as verifiable security, flexibility. For instance, a developer has no choice of programming language, but has to resort to javascript; we are stuck with the cooperative multitasking of the 80s (webworkers support only message-passing, no shared state); also, the developer has no choice of render engine, and to make matters worse, the developer has to write code that is compatible with about five different platforms (desktop/phone/tablet). And of course, the fact that those platforms are not identical is also due to the fact that the web is too complicated.

I'm hoping that in the future, we can make the web more simple and elegant for the developer. We need simpler primitives, not the complicated and restrictive building blocks that we have seen thus far.

Re: Web vs. native: let’s concede defeat

#24
Native apps are by definition less portable than web based ones.

As a developper I look at native app development the same way I saw the web in the early 00's. Different platforms, screen sizes, versions, programming languages, paradigms ...etc.

Re: Web vs. native: let’s concede defeat

#25
post #5

Unless you're making something that needs really good performance (3D gaming for example) building a hybrid app wins every time. Something based on Cordova (eg PhoneGap, Ionic) with Crosswalk can get you to about 90% of the performance of a native app, with about 1/2 of the development time because it's all built with web technology. 90% is easily good enough for most applications. Cordova wraps a uiWebView in some b…

Yes and no.

One thing that is more and more important is batterylife. The more layers involved, the more energy they suck.

Re: Web vs. native: let’s concede defeat

#26
post #11

This post leads me to believe the author probably assumes there will always only be a handful of native platforms. I think, if we're lucky, the ecosystem will be far more diverse. In the future I envision, noone in their right mind would ever think native is the way to go.

Answer me this: What is the point of a plethora of platforms, if nobody in their right mind develops native?

It seems we have different assumptions we're basing our arguments on.

I get the impression that the huge diversity of linux distros is enabled primarily by the fact that more and more development these days is web and not native.

Re: Web vs. native: let’s concede defeat

#27
post #11

This post leads me to believe the author probably assumes there will always only be a handful of native platforms. I think, if we're lucky, the ecosystem will be far more diverse. In the future I envision, noone in their right mind would ever think native is the way to go.

Answer me this: What is the point of a plethora of platforms, if nobody in their right mind develops native?

Well, the cross platform support will get really good ;)

Re: Web vs. native: let’s concede defeat

#28
I feel we’ve gone too far in emulating native apps. Conceding defeat will force us to rethink the web’s purpose and unique strengths — and that’s long overdue.

This, a million times. Mobile websites and mobile apps have completely different strengths. The current trend is to develop them both with the same HTML-based toolchains and make them as similar as possible, which ends up being to the detriment of both.

Users don't want mobile apps that are simply a website packaged up behind the "icon on the homescreen". Those apps lack the essential benefits of native: fast and seamless access, smart use of local data, integration with device services like notifications...

There's nothing more annoying to a mobile user than an "app" that takes 10 seconds to start up because it first loads a browser engine, then makes a hundred HTTP requests to fill up that embedded browser with content. (And if the 3G network happens to be clogged, the app may end up showing nothing after 20 seconds.)

For developers, Cordova/PhoneGap-style tools are not a panacea either. It's easy to get an 80% solution done, but then you run into problems with mobile browser performance, browser differences between devices (even Android devices with the same base OS can have very different web view browser engines), etc. With all that, the last 20% of a Cordova app may well take 80% of development time, and that's rarely been budgeted in.

Shameless plug: my startup Neonto makes a UI design tool that creates usable iOS and Android code from visual layouts. It's a great way to remove the friction in creating real native apps: http://neonto.com

Re: Web vs. native: let’s concede defeat

#29
post #15
post #5

Unless you're making something that needs really good performance (3D gaming for example) building a hybrid app wins every time. Something based on Cordova (eg PhoneGap, Ionic) with Crosswalk can get you to about 90% of the performance of a native app, with about 1/2 of the development time because it's all built with web technology. 90% is easily good enough for most applications. Cordova wraps a uiWebView in some b…

I'm using React Native as a web developer who wants to create a native app. Native performance with the familiarity and simplicity of web devlopment. I don't know why anyone would build a Cordova app anymore.

In my case it's very simple - so I can deploy the same code to the web. Not many people will want to do that though.

Re: Web vs. native: let’s concede defeat

#30
Perhaps what we really should be thinking is that 90% of applications can, in theory, be made using either web standards, native or a mix of both.

Unfortunately lots of websites and web apps are not very well developed. They serve bloated HTML that hasn't been minified, let alone compressed. The page is unresponsive or blank until a dozen JavaScript files have been loaded. Hardly anything is cached. jQuery is loaded to do select a single element and animate it when CSS would have done.

Most well written, architectured and developed web[site|app]s will not be too different in UX for end users than a native app. Sure, you can't write a great 60 fps first person shooter game for the web, but there's nothing saying you shouldn't be able to create an RSS reader or photo sharing app or social network or anything else with either the web or native.

Post reply on HN