I’ve been thinking a lot about blogging recently. From the moment that I added the initial Micropub support to this blog, to the recent flurry of activity with the implementation of metaWeblog API. Blogging is my favourite thing on the Internet (that and interacting with Bookish communities over YouTube and Discord). One of my favourite niches are retrocomputing and native apps. I don’t see why we can’t use the computers we love to blog. In this post I’ll talk mostly about blogging, but I’ll spice it up with considerations to bring older machines back into blogging as well. If you don’t care about older machines, that is OK, there is still valuable content here, just ignore the sections about older devices.
Recently I had a ton of fun implementing Mercury protocol (a subset of Gemini protocol) on MacOS 9 (I think Gemini is a little gem), and that got me thinking: Blogging should be an ideal activity for an older machine. By older, I don’t mean running Linux on a Core 2 Duo. That is just normal computing, even if performance is a bit annoying. Working on a native app and rekindling my love for blogging got me back into the mood to implement blogging clients. I believe we should have both feed readers and blogging clients for all our machines.
Native vs Web applications
I don’t believe that the Web is the best solution for having feed readers and blogging clients everywhere. It is for sure the easiest, as long as the device you’re using has modern web browser, you’re good to go. I’ve never used a Web interface that was better than a good native interface. Of course there are crap native apps that compare poorly to well-crafted Web applications, I’m not saying that all native apps are better than Web apps, I’m saying that given both a very good Web interface and a very good native interface, that I usually prefer the native one.
Native applications have the following advantages:
- Integrate better with the operating system.
- Consume fewer resources.
- Easy to work offline.
- Can be built without reliance on backend servers.
There is a lot of effort and knowledge that has been poured into graphical user interface toolkits and libraries over the last fifty years, we’d be fools to simply throw them all away in favour of reinventing all the wheels with Web interfaces for everything. There are many reasons to opt to ship a Web interface, the most common ones are because it is easier to make it work in multiple platforms than developing natively, and also because it has an easy value proposition that keeps the company that produced it relevant and able to extract profits from those who use their service. Most desktop applications don’t need their mothership once they’re running. I have many apps I love that are working just fine even though their parent companies folded.
Another important observation is that for the kind of workflows that would label one as a power-user, native interfaces tend to provide more features than Web interfaces which are usually targeted at a broader demographic.
The Key Blogging Apps
In my opinion there are two key blogging app categories. One can have an app that does both, much like Mozilla Suite used to do Web Browsing, Web development, Mail, and News. Those are all distinct categories. Having them in the same app may make that app more attractive, but having them as independent apps also make sense.
Reading blogs is one of such key categories. We call apps in that category feed readers and they used to be way more popular. Google came in and sucked all the activity into their own feed reader only to kill it later basically destroying the awareness of such apps to new Internet users. To bring back blogging, we need to bring back awareness that feed readers exist. They are not extinct, there are brand new feed readers popping up every month, they are just under the surface. The bloggosphere needs to push feed readers more, I don’t mean push specific apps, but foment awareness over the concept of using a feed reader and curating your own feed.
Curating your own feed is one of the most important selling points of feed readers. Our current web is governed by large organisations who will prioritised shareholder profit over everything else. Social Networks are the main enemy of blogging. They are silos with algorithms designed to extract attention and value from their users by keeping them inside their platform for as long as possible while inciting emotional responses. Anything that makes a user react and keep inside the platform is good for the shareholders, it doesn’t matter if it is a flamefest, a conspiracy cesspool, or hate crime, if it keeps people spending time inside the social network it is good for the shareholders.
That is why social networks hate blogging. Blogs are by definition independent of each other, a user reading multiple blogs is hopping from web site to web site (or using a feed reader), getting away from what generates profit for the social networks. Their algorithms will penalise blogs, they’ll throw downwards anything that moves the user away from the platform. A good example of this is how Instagram doesn’t allow links. You can’t create a post and link to your blog for further reading.
As a user, dear reader, I believe you want to be in control of your own feed. I don’t mean that in the sense of creating an echo chamber that exposes you only to things you already agree with, I mean that it is your choice to decide what you should be exposed to. You should be the one curating a diverse feed, one that prioritises you and your values. Not one that is built to generate money for someone else.
The first step towards that is using a feed reader. Going from blog to blog to see if they have a new post is a delicious time waster. I love doing that with my favourite blogs, but using a feed reader allows me to suck in content from hundreds of blogs in a fraction of the time that it would take me to open and check each of them out by hand. Feed readers come in basically three varieties:
- Feed Reader as a Service: These are like old Google Reader. Someone is hosting a web accessible feed reader and you’re a user in their system. Some good examples of this are Feedly and The Old Reader.
- Self-hosted feed reader: It is the same technology as above, but you host it on a server you control instead. This usually requires some tech-savvy user to set it all up. My favourite example is Miniflux, which is also available as a SaaS.
- Native application: An application on the user’s device. Be aware that many feed reader SaaS offer native applications, those are not what I’m talking about here because those apps still need to connect to the SaaS to provide feed reading features. What I mean by native feed reading application is an app that is self-contained and need only to be able to reach the blog servers in the feed to provide features to the user. An example of such apps is NetNewsWire.
A feed reader allows one to be in control over their content consumption. In my opinion, native applications are more liberating. They provide more power-user features and they don’t tie me into someone else SaaS.
The second category are blogging clients, those are the applications that allow one to post to their own blog. Most blogging engines come with a Web interface for posting. A good example of web interface is Wordpress which the most popular blogging engine ever and probably runs more than 40% of the whole Web (available as a service or self-hosted). Having your own blog allows one to participate in the blogosphere, to be a part of the conversation. Instead of sitting in the audience, just absorbing content, you can be on the stage helping the play. Blogging clients are tools for those who want more than a simple web interface. I for example love that I can compose blog posts using a rich native interface, save them on my machine to post later, and benefit from tight integration with the operating system and file system. All that without needing to be online. We’re so used to ubiquitous networking that many of us forgot how refreshing it is to use offline-first desktop applications.
Some of us post to multiple blogs or syndicate their content into multiple silos. A blogging client allows us to use a single application to do all that. Right now, I’m composing this message using Mars Edit while offline. I can chose to post it either to my online blog or to the decentralised platform Secure Scuttlebutt, all from the same interface.
Decoupling blogging from being a Web-Browser-only experience
Leveraging feed readers and blogging clients, one can have their blogosphere experience outside a web browser. I don’t know about you, but my capacity for attention and focus has decreased by some orders of magnitude in the last years. When I’m browsing the web, I’m tempted to open a gazillion tabs and switch among them like a crazy squirrel that can’t choose between fourteen equally appetising acorns. It is also very easy to keep doing context switches between long form text consumption (blogs), microblogging (twitter, mastodon), all the instant message and chat apps (work-related stuff) and more. When I close the browser and use my feed reader and blogging client, I’m in a zone of focus. It is a simple workflow, checking things out and composing responses or commentaries if something sparks my interest.
I can synchronise my feed reader, go outside without Internet and read all the blog posts. In most cases it doesn’t matter if I’m connected or not (unless there is some embedded videos or images), in those cases I can simply mark the post as unread and come back to it once I’m connected. I can also compose my posts using an application made specifically for that, I can’t do a context switch and end up on something unrelated. It is a blogging client, all I can do here is work with blog posts.
That doesn’t mean I think that blogs should go independent of the Web, I just think that a Web Browser should just be yet another tool of the blogosphere. Having more tools increase the choices available to each user, that is a good thing. Casual bloggers might want a simple experience, power-users might want a ton of features in a more complex software. To each their own.
A benefit of decoupling the blogs from Web Browsers is that it unlocks the opportunity for platforms that don’t have a modern web browser to participate in the blogosphere. I’m talking about retro computers, older PDAs, and whatever you want to use. In the case that the device you want to use can’t handle modern TCP/IP and encryption, there is always the option of running some kind of middleware on a modern device such as a Raspberry Pi and interfacing your limited device with it. A feed reader can be constructed in a way that it presents itself as a serial terminal for older retro computers. That sounds like a cool project.
A way to bring older computers to the blogosphere
Many computers with amazing keyboard (I’m looking at my eMate 300) can’t really participate on the Web. That doesn’t mean we should give up on them. I believe that one could craft a small set of services to run at home on a Raspberry Pi that could be at the same time a feed reader and a blogging client for retro computers. It could even include a small blogging engine to generate the blog and upload making it completely self-contained.
- It could render and serve a feed reader interface using the Mercury and Gemini protocols. Those are much easier to implement on older machines that can do TCP/IP.
- It could have a serial text-based interface like old BBS, thus opening 8-bit micros to the blogosphere.
- It could implement vintage network or RPC mechanisms that are sill available on older machines (blog posting via AppleEvents for example).
Creating such system is more a matter of connecting some plumbing using either Linux or a BSD on a Pi than actually developing everything from scratch. The reason behind doing all of this in a Raspberry Pi and not a VPS or serverless platform is that you can ditch some security measures inside your local home network making it easier for older machines to communicate with the Pi. You don’t want insecure software being accessible over the Web.
Decoupling blogging from the Web
What?! Yeah, you’re now thinking I’m crazy, but let me unpack this for you. All the sections above are building up to the idea that by leveraging native apps, we can have blog reading and writing outside Web browsers and even in older machines. If we consider that simply having OPML and RSS/ATOM files is enough to build a feed reader experience, then these files could be served outside the Web. They could come to your feed reader over newer decentralisation protocols such as Hypercore and IPFS. Your older device can’t participate on those networks, but the Pi mentioned in the section above can.
A developer could build a decentralisation-first blogging engine. One that generates static files and not only upload it to a Web-accessible server but also provides the content to Hypercore and IPFS networks. In such scenario, one can eliminate the need of having a Web server to be a blogger. Your blog could be hosted on a Pi at your home, served to readers over Hypercore or IPFS.
Not needing a server or enrollment on a service to be a blogger opens a lot of opportunity for people to participate in the blogosphere. It becomes a lot easier, just install and app and you’re a part of it. There are of course many challenging caveats such as what happens if you’re not online and someone wants to read your blog. All those can be solved. A multi-pathway solution like POSSE from IndieWeb can be adopted where a local native app running on your home network generates your blog and uploads it to decentralisation networks and the Web. You’re in control over your platform and there is less gatekeeping.
A cutting-edge Raspberry Pi running all the clever decentralisation protocols generating a blog that can be read on the Web and outside the Web, while still allowing the author to write the posts on their beloved C64 or Mac Classic. We can have it all, if we just step outside social networks and stop thinking that Web Browsers are the pinnacle of blogging.
Everything I said here is already available or requires some minimal plumbing to work. None of this makes the Web less useful, or makes a blog less available to Web readers. It is about unlocking agency and features for the blogosphere, not about damaging the Web.
Why did you type all this?
I’m really excited about blogging, decentralisation, and I love my older machines. I just want to do all of this at the same time. Blogging can be more than just Wordpress and a Web Interface.