13 ms·
The web apps that will eat mobile
- mikece 8y agoProgressive Web Apps have the potential to be massively disruptive to apps as we know them now... and that's before the near-native speeds that WASM will bring are factored into the equation. After making the mistake of going all-in on Xamarin in 2014 I realized, much to my chagrin, that the future of mobile is HTML, CSS, and JavaScript. Sure, there are cases where certain features require vendor-native apps for now, for example if you want to register a service that runs in the background without the app being launched. Currently that's not possible with mobile web or hybrid but there's no reason the mobile OS cannot look for and hook JavaScript -- or WASM -- code and run it as part of a background service. Could be as simple as specifying in the app manifest one or more code files which contain logic for background processes along with instructions like "run this only when the app is active, run it all the time, or run it on this cron schedule." A completely different question is whether vendors like Apple will refuse to support something like this because it circumvents the need to deliver via the app store (and the $$$ they collect through the Apple Developer Program) but there's no reason background services and processes can't be implemented in JavaScript.
- jjoonathan 8y agoPeople openly booed Steve Jobs in 2007 when he announced that the iphone would only support webapps. Obviously Apple changed their tune, but it would be funny if they started dragging their heels in the other direction.
- mikece 8y agoApple didn't have the app store and it's 30% rake of all transactional revenue at the time. Jobs was somewhat notorious about being adamantly opposed to something one day and then announcing to the world that Apple had created a best-in-class product that he previously said they would never make. I seem to recall him saying they would never make a tablet device -- that it wasn't so critical to surf the web on the toilet as people seemed to think it was. Until the iPad was ready for launch. And we learned in the Walter Isaacson biography of Jobs that the iPad project existed before the iPhone project did!
- hrayr 8y agoAlso don't forget his famous comments on no one will watch video on small screens and no need for big phones. I don't think any of his comments were lack of insight, rather it was him playing the market until he was ready.
- elboru 8y agoCome on, so even his mistakes were not mistakes?
- iainmerrick 8y agoBasically yes. This is his famous "reality distortion field."
- lazerpants 8y agoIndeed. Somehow people even manage to forget that he died of a typically curable cancer because of his hubris.
- ams6110 8y agoPancreatic cancer is serious business. It's not "typically curable" by any stretch. The 5-year survival rate is 1% - 15% depending on how early it's detected. That said, his holistic approach to treatment didn't help him at all.
- lazerpants 8y agoHe had a neuroendocrine islet tumor, not pancreatic adenocarcinoma. It has a much higher survival rate... as long as you don't try to treat it with acupuncture. https://www.forbes.com/sites/alicegwalton/2011/10/24/steve-jobs-cancer-treatment-regrets/#2f6a0e947d2e https://www.forbes.com/sites/alicegwalton/2011/10/24/steve-j...
- hrayr 8y ago
- vbezhenar 8y agoI have the same thoughts. Phones were too slow few years ago, web standards were not mature, so well written native apps were in obvious advantage. Now phones have proper CPUs, lots of RAM, so web apps for many tasks won't be distinguishable from native apps. Web standards are good too. May be Apple will curate list of blessed websites and allow them to launch background services, using icloud payments, etc. This way they'll continue to have their cut and their control.
- fauigerzigerk 8y ago5G could help close the gap as well.
- stephenr 8y agoThe javascript development community hasn’t exactly shown it has great engineering chops to solve basic problems yet, its a bit soon to be betting the farm on web apps replacing native ones.
- badkungfu 8y ago> A completely different question is whether vendors like Apple will refuse to support something like this because it circumvents the need to deliver via the app store (and the $$$ they collect through the Apple Developer Program) but there's no reason background services and processes can't be implemented in JavaScript. I could see Apple et al resisting, but wouldn't a store still be useful for discoverability and giving the sense that an app is trustworthy? I agree stores would not be _required_ though, and I think that diminishes the value of a store and therefore the cost of listing your app in one.
- mikece 8y agoI would take an app search engine -- or several of them -- or a curated lists of "new and interesting PWAs" that anyone can create and maintain versus a gatekeeper (or a collection of gatekeepers with differing standards) who demands to be paid before you can appear as an eligible entity for the platform.
- xamarinthrw 8y agoCan you tell us a bit about your Xamarin experience? I want to create an app where the users would be regular mom and pop- my primary users would be windows and Android and a few iOS (iphone). Would you recommend I go the Xamarin way? Who is xamarin good for and who not?
- mikece 8y agoI refer to my period as a Xamarin contractor as "bomb technician programming." The biggest advantage of Xamarin is also the greatest source of its problems: anyone who programs C# can start a Xamarin.Forms app and get a proof-of-concept sufficiently advanced to show their boss who will run it up the chain and get it approved as a project. And THEN the devs -- who are awesome web developers -- begin to realize just how much they don't know about mobile and that they've coded themselves into more than a few corners and aren't sure how to get out... and I know this from first-hand experience from my first couple Xamarin projects. There comes a point where you realize that knowing C# is only part of the solution. You wouldn't take an accomplished ASP.NET MVC developer who has only done web work and assign them to an Akka.net or advanced, massively concurrent, highly-multi-threaded Windows Service project and expect them to succeed right away just because it's all C#. Same idea... different platform. Xamarin is great for people who want to use C# to write mobile apps and know the underlying platforms well enough to know where the landmines are and how to side-step them. There's undeniable time-savings in being able to write non-platform-specific code one time and just link to it from the Xamarin.iOS and Xamarin.Android project. It's also possible to write cross platform apps very, very quickly with Xamarin.Forms if you understand where the issues are there as well... But it's even faster to just write a mobile web site. When I am asked for my recommendations for a mobile app idea my first question always is: "Can this be done with a mobile web site (which is PWA these days)?" If yes, why go further? If you really want the app store exposure then packing up your PWA as a hybrid app isn't all that difficult so mobile web is still my first choice. It's not unless you have specific, unambiguous needs that mobile web or hybrid cannot handle that going native -- Xamarin or otherwise -- is recommended. Keep it simple, deliver value, and go home happy and a little richer.
- HillaryBriss 8y ago
- al2o3cr 8y agoI can't imagine why they'd "drag their feet" on doing free work to enable pseudo-apps with "near-native" performance and nonstandard UX. Snark aside, I've heard very little marketing around PWA that explains why users should want them - almost everything is focused on benefits for developers.
- htormey 8y ago“According to Google’s data, for native apps 80% of time is spent in each users’ top 3 apps. Just 3 apps!“ I also probably spend a large percentage of my time online on a handful of websites. That doesn’t mean the other 20% of my time isn’t incredibly valuable and not worth building an app/website for. As an advertising company Google have plenty of incentives to push PWAs. Apple, who own the minority hardware platform with the most affluent users, do not. So long as this is the case their will be a strong monetary incentive to build Apps as the PWA experience will always feel a little off. A non technical point glossed over by this article is the discoverability app stores afford the end user. I see this in person all the time: I tell someone about a new service or online store and the first thing they do is search the App Store for an app not the web. In summary I think companies will build PWAs as either a complement to an existing mobile app or as a first product when they don’t have the budget to build an app.
- mromanuk 8y agoI was looking for this comment. I concur, is in Google interest to push PWA.
- mkirklions 8y agoNo mention of writing apps in React Native?
- bigato 8y agoit's out of fashion already :-p
- Cthulhu_ 8y agoYeah, Flutter is the new React Native. Or something, I've lost track of what's hip, :p.
- jbergens 8y agoAccording to this article, yes, it is. On the other hand it is a really, really easy to convert a react native app to a web app with react so it might have been a very good choice of technology anyway.
- mkirklions 8y agoBasically my thought when I chose RN. Although, after building my backend with php + frameworks, I already have a web app. Im just hoping I wont need to update an IOS app every time apple breaks it. Also, I'm looking to avoid buying an apple computer and doing the compiling only 1 time. I hope...
- danvayn 8y agoThey didnt mention any frameworks actually. Normally I expect company web blogs to include some introspection into tools evaluated or used by them, but I guess this is more of a fluffy piece.
- judah 8y agoPWAs indeed have a bright future. Apple's iOS Safari remains terribly lagging behind in PWA support. Even the latest iOS 12 beta support for PWAs is utterly broken[0], including full reloads on suspend/resume, local storage gets blown away on reload, no icon, incomplete support for web manifest, and much more[1]. A charitable interpretation of this would be, Apple hasn't felt the need to keep its PWA support up to par with the other browsers due to the success of its App Store. A cynical interpretation is that Apple is deliberately dragging their feet because PWAs undermine their $99/year + 30% app price + 30% in-app purchases business. [0]: https://twitter.com/firt/status/1003761267155394561 https://twitter.com/firt/status/1003761267155394561 [1]: https://twitter.com/tomayac/status/1003910651151085568 https://twitter.com/tomayac/status/1003910651151085568
- jmull 8y ago"A cynical interpretation is that Apple is deliberately dragging their feet because PWAs undermine their $99/year + 30% app price + 30% in-app purchases business." That interpretation doesn't make sense. The $99/year/active developer is a nominal amount -- sofa change to Apple -- that couldn't sanely affect the Safari development roadmap. The 30% is a much a larger amount (though still small to Apple's scale), but PWAs don't compete for that money; a PWA developer looking to monetize their app doesn't have an alternative monetization platform/store with anything like the reach into the iOS device market. Put another way: a PWA developer looking to monetize their app is surely going to release it through the Apple app store anyway.
- Fuddh 8y agoI agree that the $99/year/developer isn’t that much for Apple. The 30% of all sales is probably significant though - the App Store has a lot of users. I don’t necessarily agree that PWA developers have no way of monetising their apps though - if I’m not mistaken they could use ads and subscriptions for their services. These would normally grant a cut to Apple if they were done through the App Store, hence the incentive for apple to delay the implementation of PWAs.
- 8y ago
- djanogo 8y agoThere are two ways to write mobile app... 1. Write native app's for both the platforms, pay once and cry once. 2. Write web mobile apps, realize how sub par the experience is, rewrite in native. Pay twice, loose competitive advantage, and cry twice. This is what, 3rd or 4th iteration of web app's are going to take over mobile cycle?. My first instinct about any blog that promotes this turd is, either their business depends on selling this solution or the person is huge web guy and never really worked on complex native apps.
- xamarinthrw 8y ago> turd > conflict of interest > ~simpleton Says the guy that deliberately says: "both the platforms". Talk about ingrained propaganda
- chii 8y ago> realize how sub par the [mobile web app] experience is why is this a given?
- pjmlp 8y agoA proven experience since Symbian introduced the Web Runtime in 2011, with a few dead OSes pushing for a Web only experience?
- oblio 8y agoThere is such a thing as "good enough". The cheap plastic solution tends to win when that happens. We weren't there in 2011, maybe we're not there in 2018, but the writing's on the wall.
- pjmlp 8y agoWhen that happens, the browser would have turned into a general purpose VM running apps via WebAssembly with WebGL/WebGPU for rendering, thus becoming native as well. The writing is on the wall with the ongoing efforts on .NET, Java, Go, Unity, Unreal and who knows, someone might even port Flash to it.
- tvorog 8y agoWeb app can be easily blocked by government. Look at telegram in Russia. Native app still useful without vpn.
- xamarinthrw 8y agoThis doesn't even make sense. Blocking is blocking of network connection. Native apps still need that to talk back home
- tvorog 8y agoTelegram uses push notifications to update its server ips.
- evgen 8y agoNative apps can be a bootstrap shim for a more distributed back-end. PWAs are not going to be loading off onion nodes or ephemeral distributed networks any time soon. Native apps, especially those that can side-load or update without the app stores, will always be more resistant to these sorts of attacks.
- shapiro92 8y agothe problem noone mentions with PWAs is that simple users do not know what A2HS means. They dont know what a PWA is so in the end we are talking about a web page that is mobile friendly.
- Cthulhu_ 8y agoWith a popup asking to be added to the home screen. A lot of mobile websites I visit (usually if my HN reader app can't parse the content) either have one of those, or have it hidden somewhere in the other popups - sign up for our newsletter, agree to our cookies, fixed headers, etc.
- jklinger410 8y agoAs soon as we can "install" PWAs natively and launch them like an app from our phones they will go unused. The way the browser is currently being used to serve PWAs on mobile doesn't make any sense. No one wants to bookmark a website onto their phone and then have it load up inside a browser. It's clunky and dumb. Not sure why this is taking so long but it is holding back the wide spread use of PWAs.
- berns 8y ago> Dramatically, a huge change has happened again thanks to a move from Apple. This time with Safari. A few paragraphs later: > -There’s still no Web Push or Background Sync on iOS (and it will take time). And here is a response from Apple[0]: > As we indicated we were doing last year, we’ve implemented the core ServiceWorker spec - https://w3c.github.io/ServiceWorker/ https://w3c.github.io/ServiceWorker/ - in trunk WebKit. Web Push is a different spec that we’ve made no comment on one way or another. [0]: https://bugs.webkit.org/show_bug.cgi?id=182566 https://bugs.webkit.org/show_bug.cgi?id=182566
- millstone 8y agoThese apps seem to solve a developers’ problem, not a users’ problem.
- jbergens 8y agoAs long as people wants new apps quickly (now) and cheaply (free) the developers problems are _very_ important. Making those problems smaller or disappear makes it quicker and/or cheaper to develop apps and the companies paying for the apps will like that.
- jaegerpicker 8y agoIt's also false gold for the developer, it seems like less work but PWA's (in my experience) are almost always a worse experience for the User and require far more work to get them up really usable, if it's possible at all. Lot's developers are trying to sell this technique because they can't be bothered to learn something new. The reality is that it's a worse experience at the end of it for both the developer and the user.
- judah 8y agoIt solves some users' problems too. For example, it makes web apps available offline. It makes apps instantly updatable without having to install anything, which is a better experience for the user; apps are always up-to-date.
- bsbechtel 8y agoUnpopular opinion here, but I just don't see PWAs living up to the hype. Yes, there are lots of technical advantages, they're catching up to native apps in capabilities, and there is reduced friction by bypassing app stores. However, the ingrained user behavior of downloading apps from the app store, trust of knowing what you're downloading by doing so (yes, even on Android), and browsability on mobile falling behind searching the app store from a ux standpoint make me think there are still some big barriers to PWAs taking the mobile world by storm. Yes, they'll have their place, but I don't see them living up to the hype often promised by their evangelists.
- jaegerpicker 8y agoI very much agree, we evaluated PWA vs native recently and found PWA(on iOS) to be a really poor decisions. We likely build one for Android as the experience is better there but it's very poor on iOS and unlikely to get better anytime soon(next 1-2 years).
- oblio 8y agoAt this point, isn't Apple actively delaying PWAs? It seems like it, based on their recent sluggishness in adopting web standards in Safari.
- yoz-y 8y agoWeb "standards" for PWA's are pushed out willy-nilly by Google. Just because it is preferable for Google to push towards everything on the web, it does not mean that all browser vendors should create new APIs that were declared "as standard" in their draft version and pushed out into Chrome. Service Workers, for example, are just a working draft and somehow not having the spec implemented is considered as lagging. PWAs are fine for some uses. However I think it would be better for everybody if the vendors were extra cautions when creating and approving these standards as these APIs tend to crystallise and browsers end up supporting a lot of deprecated cruft. I was young when MS was doing the same thing with IE6 but I still remember the pain in the ass making anything remotely compatible was. And back then we were not talking about access to stuff like microphone or background activity.
- thinkingemote 8y agoPWAs feel to me as if they are a way for websites to get around adblocking or any kind of extra browser extension. They are the equivalent as a website wrapper webview as a native app. I equate a PWA similar to an Electron-based stand alone web app (e.g. like Discord). Am I incorrect in my assumptions about PWAs? I know you can run them in browsers, but the intended use is to launch them in their own browser window as a separate process, right?
- EGreg 8y agoWeb apps have a bright future, with only Safari lagging behind. (Did you know Steve Jobs originally envisioned AL mobile apps to be web based?) I have emailed Jonathan Davis (web-evangelist@appl..) from Safari several times over the last few years asking when Push Notifications will finally be supported. Without this, websites need to rely on email as a retention mechanism. But here’s the thing with all this. It’s a lot to build and support all these operating systems, where things constantly change. Even more to have an integrated unified solution. Take for instance onboarding. New people click an invite link and go to your site. First you want an instant social experience. That’s easy enough: just have each invite have a unique link confirming that phone number or email, and when they arrive show them all the friends who uploaded hashes from their Contact list where they are found. And show all the content they have already engaged with. But wait, phone numbers only have 10^7 possibilities roughly, so that’s a trivially reversible space. SO now go read about the state of the art from Signal and others and figure out your own more secure solution. And after this you want the user to download the native app so you can send notifications to them, they can upload their Contact list and find their friends, invite people easily etc. Seems easy: just redirect them to the store. But wait. You want attribution for campaigns, and you want to resume sessions. How to do it? Well you could use SFSafariViewController to get the web cookies but that’s been deprecated in iOS so now you need to to use SFAuthenticationSession. Wouldn’t it be nice if there was a project that would take care of all this shifting stuff for you so you can focus on building the core of your app? Well that’s why I started Qbix initially. We keep adding free open source plugins to solve these individual problems: https://github.com/Qbix?tab=repositories https://github.com/Qbix?tab=repositories Go ahead and grab them, we plan to maintain them as the OSes change since we use them in our ow apps. But this is literally the tip of the iceberg. Most of the questions have to do with social and communty features like roles, permissions, realtime sync, offline notifications, user authentication across apps, payments, and so on. If you want something that will let you develop new web based apps at record speed or support turning existing websites/apps into social apps with accounts (think turning git into github) without reinventing the wheel you are welcome to the code https://github.com/Qbix/Platform https://github.com/Qbix/Platform It is licensed under AGPL so if you want to keep your code private and not open source it to your website visitors then you’d have to contact us for a license, which at this point is probably like $100 a year regardless of users. But for FOSS projects and weekend stuff it’s totally free, to promote the improvements of the ecosystem. Here is the vision long term: https://www.youtube.com/watch?v=pZ1O_gmPneI https://www.youtube.com/watch?v=pZ1O_gmPneI Oh also we aren’t happy with the state of mobile browsers when it comes to supporting content addressable routing, verification of resources, encrypted web push notifications secure access to contacts by websites, and so on. So we are building the Qbix Social Browser: https://projects.invisionapp.com/m/share/TKHYMVSJNW2 https://projects.invisionapp.com/m/share/TKHYMVSJNW2
- oneshot908 8y agoHow many years have we been hearing this tale? And yet almost every major web site continues to bend over backwards to persuade us to install their battery-killing surveillance system oops I mean mobile app. So the solution now is even more battery-killing HTML + Javascript + Secret Sauce? Hell no... PS Just say no to push like the Hulk says no to Banner. All IMO of course but these days, I use my phone for Yelp, Google Maps, weather, GMail, stock prices, and little more. The improvement in battery life from 6-8 hours to 2+ days has been astounding and what it's drove me to the viewpoint I just espoused. Am I missing something here?
- zerostar07 8y agoMajor sites have devs to waste. For the rest of us web is a valid alternative. Strange, i use my phone mostly to browse stuff. I prefer the web version of Gmail cause i can switch between accounts and i also avoid all those annoying notifications.
- oneshot908 8y agoOn the flip side, if your service has craptastic web performance, I just won't use it. The mobile-web currently drives me crazy on phones (doubly so with nonsense like FB blocking access to messages unless I request the desktop site), and I find it barely usable on tablets.
- blub 8y agoWe've been hearing this tale for more than a decade and native apps are still better at pretty much everything. :) Web devs are a very optimistic bunch.
- oneshot908 8y agoAnd why wouldn't they be? the fewer abstraction layers between the app and the hardware, the more efficient it will usually be, no?
- vbezhenar 8y agoThey are not better at a single and simple thing: cost of development for multiple platforms. And it means everything, unless you're swimming in money.
- jeffbax 8y agoI'm down for enhancing what sites I only go to on occasion can do for me as a user, but that PWAs will replace Native is IMO not desirable (particularly every website asking me to allow notifications these days -- turn that right off immediately) A PWA will never be nicer than Tweetbot, but if it means I no longer get harassed to install an app for EVERYTHING it will have a place alongside native
- Brakenshire 8y agoAt least we do have a solid cross-browser implementation of Service Workers, that will allow a lot of quiet optimization in the background to make websites feel a lot snappier.
- mromanuk 8y agoDoubt it. Just look at recent history (2011), back then the hype was "HTML5"[0]. [0]: https://www.allbusiness.com/web-apps-vs-mobile-apps-which-is-the-future-16672651-1.html https://www.allbusiness.com/web-apps-vs-mobile-apps-which-is...
- dfansteel 8y agoI’ve read this exact same article every year for ten years and in that time the web has become increasingly slower and more personally invasive while apps have become more capable and faster. Pardon me if I take this all with a grain of salt.
- archagon 8y agoAll that text and not a word about monetization! I realize that selling binaries directly or via IAP isn't all that lucrative these days, but plenty of developers still make a living doing it. How, exactly, are you supposed to sell a PWA? I assume they're meant to be a value-add for the main product, which is probably SAAS/subscription/ad-based, but I think a world without a good way to sell software directly—a world exclusively centered around services, not software—would be a sad one indeed. EDIT: I just remembered that, I guess, Android lets you sell PWAs directly through the Play Store. But if you're not installing them from the web, then what's the point?