Web vs Mobile Apps

Why NetNewsWire is Not a Web App

My computer is not a terminal. It’s a world I get to control, and I can use — and, especially, make — whatever I want. I’m not stuck using just what’s provided to me on some other machines elsewhere: I’m not dialing into a mainframe or doing the modern equivalent of using only websites that other people control.

A world where everything is on the web and nothing is on the machines that we own is a sad world where we’ve lost a core freedom.

I want to preserve that freedom. I like making apps that show the value of that freedom.

I love how Brent Simmons describes his feelings about his computer here. This describes what I also find to be something deeply important to me.

I think this article pairs well with my previous post. Here, Brent is reacting to ICEBlock getting removed from app stores. One way to prevent a subset of enshittification is to use software where you retain complete control over your data. The problem is that Apple and Google are gatekeepers for software that runs on their platforms and they fight hard to maintain that position, especially Apple.*

The Web remains a powerful open alternative to proprietary mobile platforms. However, as a developer, the Web has some considerable downsides. Mainly the developer becomes responsible for any user data hosted on their servers, both in financial and legal terms.

Earlier this year I contemplated building something in the RSS reader space. I even got as far as creating a prototype Web app that I self host and use pretty much every day. The issue of Web vs Mobile app is one thing I got stuck on when thinking about how I could take what I built and make it a available to others. Ideally, I wouldn’t have needed to host any server based components which would have defaulted me into building a native Mobile app. But this held little appeal due to needing to learn native development or at least selecting a cross platform Web based technology like React Native, which maybe would have been fine but then I’d still be stuck with the app store for distribution. For something like an RSS reader, it felt important to me that it be a available to anyone with a connection to the Web, which eliminates the app store model. There’s many reasons why I didn’t take this project further, but not having a good answer here is one of them.

One thing I didn’t try but do want to come back to is the progressive Web app approach. In this model, my app would utilize the browser for any data storage needs and I’d the only thing my server would be responsible for is distributing the HTML, CSS, and JavaScript code for my app. This would be ideal but I’m not sure all the major browsers are in a place with data storage that my app would have functioned as intended. But this is an area I need to do more research on to fully understand the capabilities and limitations.

*: Google is better than Apple here as they allow you to install apps you’ve downloaded including open app stores like FDroid. I hope Apple moves in this direction as well.