46 comments

[ 3.2 ms ] story [ 99.5 ms ] thread
I try avoid installing apps unless it's something I really want and the app is far better than the web site. Apps these days are loaded with spyware. I assume that any mobile app will track me as much as it can possibly get away with. It's almost like voluntarily installing malware.

Web sites track too of course, but their capacity to do so is more limited. I fully revoke location, camera, and microphone from the browser, so all it can do is track me on the web and get a very rough idea of location via GeoIP. Desktop apps can also track, but mobile offers a lot more intimate information (especially location) and is constantly connected.

There was a video I saw recently where Tik Tok was spamming the copy from clipboard feature and it was appearing as a notification on iOS devices - kinda creeped me out.
Yeah, native apps are basically a black box in terms of what data gets “sent home.” At least with blockers such as uBlock Origin, scripts/requests directly from known tracking domains are denied.
There are many reasons:

1. They want the distribution effect of the app store. You can go from zero to king overnight if the app store features your product.

2. Unless you're building a dumb wrapper around a CRUD backend app, most apps need access to the state of the art API. Especially if you're aiming high, chances are, you won't be able to find a new app idea without using the new APIs because the old APIs have been experimented on by millions of developers already.

3. Apple has declared recently that they're going to cripple the browser localstorage and cookies so everything gets reset if you don't use them for 2 weeks. I think they will do this more and more (it's also good for user privacy so they do have a moral high ground)

#2 is just wrong. lots of powerful apps do most of their work on the back end, and lots more could just as easily be built with web apis.
re 3, How is that good for user privacy, and if it is then should they also be aggressively deleting native app storage? As a user, and a privacy conscious one at that, this would surprise and dismay me.
Such an oversimplified view of things... I guarantee at least 50% of apps cannot be built with Web APIs alone (especially on iOS where Apple is intentionally limiting Web API adoption to drive up their App Store revenues).
I think that there are still certain classes of app that benefit strongly from being native rather than just a web app.

To give an example, Christian Selig's Apollo iOS client for Reddit is lightyears ahead of both the Reddit mobile website and the official Reddit iOS app. By using the native iOS APIs and matching what people expect from gestures on an iOS app, he's able to create an amazing experience for users.

That doesn't seem like the best example, since you just said his native app is better than a native app. Perhaps he's just a better designer.
Fair point. What I was mostly trying to get across is that native mobile apps can leverage UX/UI features not available to mobile web apps (hence the comparison to the Reddit mobile web client).

Being/having a good designer definitely helps, but it seems to me that there are serious benefits to not being constrained by whatever web browser the platform you’re working on provides.

One of the 5-6 apps I use too. The website version of Reddit is a hot mess
With this comparison you should keep in mind that the new reddit mobile website seems to be designed to be as annoying as possible to force people into their official app.
This was what Jobs initially claimed to want, and Apple several times acted to enforce. For a while they were really negative on apps that were simply wrappers around websites.

But the market spoke, and now Apple seems to be very much on the other side of things along with nearly every company out there.

Some possible reasons: Bookmarks to websites get buried in long ever-growing lists of bookmarks, while installed apps take up precious visual screen space. Users are generally more tolerant of an app taking a couple of seconds to load than a website, and less tolerant of subsequent navigation taking time, and apps tend to match those expectations more closely than web pages. And maybe apps still deliver functionality that websites can't, or can't as easily. Oh, and an app, once downloaded, usually keeps working consistently, while websites often are updated or completely disappear.

For whatever reason, people seem to prefer apps to websites, and I'm not sure I see that changing much.

Almost all of those have been solved by Android's PWA implementation. I can go to an enabled site and add it to my apps list. After that, it looks and acts like any other app on the device [except that it doesn't take up any space on my phone :)]
iOS has PWA too although severely limited, notably in the areas of webcam and push support. And other proprietary phone features like contact lists.
It might take if distributed as TWA, given that then it gets FFI access to Android APIs. :)

However PWAs still fail short of stuff like 3D capabilities, given how limited they are versus the actual APIs, e.g. WebGL 2.0 vs OpenGL ES 3.2.

I keep hearing this, but it is not as if native applications are sitting still while PWAs catch up. By the time PWAs hit current native application levels of functionality--if they ever do--native applications will be operating at a higher level of functionality yet again.

I've got some PWAs on my phone, and they're great. They're also very simple compared to many native apps I use. And I think that will likely be the case for some time to come, and maybe forever on iOS for security reasons.

(comment deleted)
Another possible reason: being able to take a cut of every transaction that goes through the app ecosystem
> Even now with my own projects, a well optimised mobile website beats an app most times.

I seriously doubt that, if my 8 core macbookpro has issues with half of the web (event my own react projects of sizable complexity start to have issues), doubt mobile devices don't. And I honestly can't speak for Android, but being both and iOS and React developer, iOS performance in pretty much anything compared to React is amazing.

Also, the second part, I have been doing research lately, and while the dev.to or HN crowd says they visit the mobile websites, market research shows that people spend around 90% of their time in apps versus 10% in mobile web, so seem users find them relevant.

I know developers don't like 'closed' systems and love the web, but I (and most people I know) personally prefer a app over a mobile experience 99% of the time.

> I (and most people I know) personally prefer a app over a mobile experience 99% of the time.

I do as well, and that is what I do for side projects, however 100% of my professional work regarding mobile devices can be done in 100% mobile Web.

They are just plain CRUD apps for accessing services, easily done by sequences of forms.

We just don't do React and friends, rather SSR with minimal JavaScript for dynamic stuff.

> people spend around 90% of their time in apps versus 10% in mobile web, so seem users find them relevant.

Which apps? 50% of the time is spent in their most popular app, and 97% of the time is spent in their 10 most popular apps. Considering that the top spots are taken by fb/instagram/whatever, what's left for discovery? I'd argue that the 10% spent on the browser is 99% of the discovery that users do, probably via links from their favourite apps.

It seems the app space is way more overcrowded than the web.

There are a lot of things you just can't do well on the web. I'm writing an iPad drawing app that renders using Metal. It barely sips any power, while doing a great deal more work than Electron apps like Slack do.

It was much easier for me to write without the limitations of the browser and the web APIs getting in my way. Apple's APIs have a few warts, too, of course, but they are easier to work around.

As long as iOS Safari still hasn't implemented push notifications, apps are needed to fill that gap. Everything from a messaging to news, even a weather app benefits from push notifications.
If you're willing to give up some control over presentation, you can offer an rss feed and users can subscribe to it with their app of choice. It's pull rather than push, but it also saved you the trouble of maintaining an app.
I have almost no apps on my iPhone, and rarely use it other than calls, text, News, photos and maps. When I use it for web surfing, which is how I access News, I use Firefox, not Safari.

As for myself, I decided from the start not to develop "apps" for iOS or Android and instead keep building "web apps" instead. My apps are all business tools so I really don't need any special access or permissions to make them usable.

I will say LocalStorage sucks and I wasted too much time trying to make it not suck. In the end I gave up so Apple's and others decisions to stomp on it won't really affect me or my apps' users.

But Local-First assets and data management are something that developers will have to demand and there seems to be little thrust for that right now. Still, the shine is most certainly wearing off the hype developers were attracted by for these platforms so we might start seeing some movement that direction soon now.

I've been working on a local-first, offline-first, web app for desktop PCs that uses CouchDB installed on the user's PC instead of a CouchDB in the Cloud. Used this way with a web app CouchDB is somewhat akin to a sandboxed runtime engine for web apps on the client side. And the increase in performance of the app is quite noticeable. I think it's fair to say it runs at near native speed.

Configured with service workers to run offline first the web app only checks the server to see if any updates have been issued and if not it never sends any data over the internet.

It's very easy to provide the user an option to sync their local CouchDB with one in the Cloud, and they can turn that option on and off. When it's on they can access their data with any device and "Live Sync" the data between the Cloud CouchDB and their Desktop CouchDB.

Now, it's beyond my skills to develop it but it seems to me that a sandboxed runtime engine for web apps on mobile devices would be a good thing for us all. Of course, I don't think Apple and Google think so, but they do most definitely depend on indie developers to entice people to use their devices.

Have you used say gmail on web vs app, or youtube web vs app. You may not have much of a need for a apps in your life or you are opting for an inferior experience and making your life harder.
The YouTube iOS app is worse than using their app. Their app doesn’t do picture in picture and you click on an embedded video it takes you out of the browser if you have it installed.
While I completely understand your thinking, it makes me sad — web tech stack is the worst solution for UI apps one can imagine, and yet we have no choice but use it to reach more users and decrease distribution of our apps.

I recently started to use Flutter for web projects as well, with a nice bonus of having iOS/Android/desktop native apps automagically. But the proper solution would be to rethink the stack browsers provide for developers.

Native apps are still more pleasant and performant enough that they make users happier than mobile web apps and PWAs. Web apps have become better, so native apps are not mandatory to achieve acceptable levels of performance, but at the same time, the cost of developing and releasing a good native app has fallen, so the utility of native relative to incrementally improving a mobile web app is still quite good.

Developers may not like that this is the case, but I expect users will like being provided a better experience for some time, and that we’re likely to see companies develop natively for new platforms faster than native apps for mature devices will be folded.

There are challenges retaining users and bringing them back to a webapp instead of a native app. That being said I also am hugely in favour of web apps because the likelihood of people visiting my site is higher than them downloading my app. So user acquisition is easier but retention is hard. I do like the idea of email notifications as a replacement for push notifications - I think others such as Twitter/FB notifications could also work.
Apple’s app clips and Googles instant apps are meant to fix that
Instant Apps was out since 2017. In the 3 years since, I don't think I've once seen a prompt to install an instant app out in the wild, ever.
It is mostly used by games as modern version of demos.
The argument was, the web and its tech is too slow for phones, we need apps.

This is no longer true and apps are a pain in the rear when it comes to all the integrations you have for mobile aware sites.

How can app content be crawled, don't ask it's a major pain. How do you track usage like site clicks, ouch! How about integrations like commenting or site support chat, good luck, there might be one for your app.

Not to mention the 30% vig to Apple and Google, or the lock-in.

Many thought apps would bring money back into what sites were giving away and ok, it did -- for Apple and Google.

Can we please stop making "apps" now?

The lock-in and the App Store/Play store rules are not nice.

But, a world of PWAs only is not the panacea.

How you are going to monetize your PWA? I imagine a few options: 1. Your “app” is a SaaS 2. Your app is paid by ads 3. Your app is free

Guess who loves no. 2... that’s why Google loves PWAs, it’s part of their business strategy.

Not every app fits in the SaaS model, and sadly there is a trend now to use more and more subscriptions. I love to have a viable “option 4”: I pay for an app version once, without selling my data or attaching my CC to a subscription.

So please don’t stop making wonderful apps like ProCreate, MindNode, Affinity... and others that don’t have a subscription model and are great.

None of these points make any sense, so lets go through them one by one.

1. First of I don't even understand what you mean here. Crawling the content of your own application? Or you mean that all content should be crawlable by others and if so, why should that be a given?

2. Mobile analytical software has come a long way since the early days (I know, I was there and am here now). There are suites available now that do automatic click capturing out of the box, or you could simply roll your own small viewhierarchy interaction listener and feed events from there. It is honestly real easy to do when you know what you are doing.

3. Like point 2, there is a ton of suites that cater to this aspect with mobile first SDKs ready for use. There is also nothing wrong with rolling your own (it is only real time messaging between two parties after all) or simply send the user to your external web page's support chat when needed (not every feature under the sun needs to be in the mobile app).

4. Not all mobile apps run on subscriptions or fees that would be paid through the Apple App Store. As an example I point to the whole field of financial applications. And on Android you are free to do payments through other means than the Google Play services, and thus not pay 30%. Yes it is a inconvenience to the user, but it is possible (just like payments on a website will usually take the user through a flow previously not used by him before, instead of all webpage payments going through PayPal)

To conclude, I think there is plenty of room and velocity in the mobile application space. And I think the same can be said about the web space. The two can coexist, as each has aspects to it that superceed the others.

We just need to stop making slow, ad clogged, non mobile friendly web pages as well as lowest bar, slow and insecure mobile applications.

[edit: minor spelling edits]

The distribution alone in the App Store make it worth it. Websites traffic dies down when you dont do anything but the App Store will consistently get passive users viewing
Please stop making terrible web apps - all these "revolutionary" re-invent-the-wheel frameworks are not making things any better, they are still a major pain to use and highly inefficient. Native apps will always have a better experience for anything other than general web browsing/reading/searching.
Privacy oriented apps like, "Signal" are more relevant than ever.
As a consumer, apps are a privacy concern. Firefox lets me tightly control what websites do, but apps can silently track me. They also often use notifications to increase engagement. Apps often benefit the makers more than the users.

As a maker, apps are a pain in the butt. I can get a website online in a few minutes, and it stays there forever. Every app I've made is now gone because I got tired of keeping up with app store requirements. I never made an iOS app because I won't pay 100€ for the privilege.

Most apps are just copy cats, the gold race is long gone.
No and apple needs to be broken up to permit innovation 3.0
I guess If I were to develop an app (free but with ads) for the browser then I would be worried about ads blockers, that doesn't work if my app is a native app.
that doesn't work if my app is a native app

It works if one’s ad blocker is pi-hole. To me it is one of the main features of pi-hole: it blocks everything, not just web ads.

But your point is taken.

Applications have never been more relevant. In my opinion, we should return to native-only programs and have only semantic HTML in our browsers.