On the internet nobody knows you’re a dog.

Peter Steiner, 1993

It seems after years of trollbots and content farms, with generative algorithms we are more rapidly moving past the point where the basic assumption on the web still can be that an (anonymous) author is human until it becomes clear it’s otherwise. Improving our crap detection skills from now on means a different default:

On the internet nobody believes you’re human.

until proven otherwise.

Bookmarked Inside the secret list of websites that make AI like ChatGPT sound smart (by By Kevin Schaul, Szu Yu Chen and Nitasha Tiku in the Washington Post)

The Washington Post takes a closer look at Google’s C4 dataset, which is comprised of the content of 15 million websites, and has been used to train various LLM’s. Perhaps also the one used by OpenAI for e.g. ChatGPT, although it’s not known what OpenAI has been using as source material.

They include a search engine, which let’s you submit a domain name and find out how many tokens it contributed to the dataset (a token is usually a word, or part of a word).

Obviously I looked at some of the domains I use. This blog is the 102860th contributor to the dataset, with 200.000 tokens (1/10000% of the total).


Screenshot of the Washington Post’s search tool, showing the result for this domain, zylstra.org.

For some time I have been able to directly post things to this blog from my feed reader. My feed reading client is connected to a simple feed server, the Yarns WordPress plugin. Now I have connected my feed reading client to the API of the FreshRSS instance I use for feedreading daily.

The Yarns feeds server works, but it requires a WordPress install to run in and is somewhat limited. I could run it in this here WordPress, but then the many feeds I follow would pollute my blogs database. So until now I ran it in a separate WordPress install. All a bit hacky, and more proof of concept than really a smooth fit for my daily routines.

I do however daily use FreshRSS, which I run as a self-hosted instance on a VPS. FreshRSS has an API, or rather it has two API’s, meaning that I could run my feed reading client on top of FreshRSS by talking to its API.

FreshRSS has two APIs, one is the Fever API, the other is the Google Reader API of old. Both aren’t very well documentend w.r.t. their implementation in FreshRSS, because they assume you’d use it for a mobile client using a local database. I don’t want to replicate the database, I want to only directly talk to the API to fetch the things I need. After some experimentation in Postman I could talk to the Fever API, but haven’t worked out how to talk to the Google Reader API of FreshRSS.
The Fever API doesn’t support calling items by feeds and feeds by groups, the way I actually read in my ‘reading by social distance set-up‘. It can give me groups, feeds and items, but not cross-referenced. In terms of content it can basically only give me a bunch of feed items, at most limited by the item number of the oldest unread item. But it works. The previous post was created directly from my feed reading client, while fetching the item itself from FreshRSS.

Now, I need to figure out how to use the other API, so I can do more of the things that I want from my ideal RSS reader.

In reply to Ik schrijf een blogpost vanuit… by Frank Meeuwsen

Helemaal eens. Maar ik merk ook hoe ik toch meestal in de back-end van WordPress begin te schrijven. Terwijl elke keer dat ik dat niet doe maar mijn eigen schrijfomgeving gebruik, het zoveel prettiger voelt. Dit schrijf ik vanuit mijn experimentele feedreader. Vanuit mijn Obsidian notities bloggen is helemaal frictieloos in mijn beleving. En toch is het nog lang geen automatisme om als ik denk dat ik wat wil bloggen het dan in Obsidian te doen. Toch grijp ik dan desondanks haast vanzelf naar WordPress. Ik weet nog niet hoe ik mezelf hierin tot een andere gewoonte breng.

…prettiger dan de blokkendoos die WordPress in zijn Gutenberg editor heeft. Het belangrijkste is dat je met je eigen blog net zo makkelijk je eigen schrijfomgeving kunt kiezen. Eén die bij jou past…

Frank Meeuwsen

This conversation on 11 August 2022 with GPT-3 describes an alternate universe in which I was a prominent business blogger. An interpretation of my two decades of blogging as generated by GPT-3.
(text in bold are my prompts to the GPT-3 algorithm. Coded text is the AI response. italic texts between () and are my comments on the algorithm output.)

When did Ton Zijlstra start blogging?
Ton Zijlstra started blogging in 2003.

(I started blogging in 2002 on Blogspot, but switched to my own domain in the spring of 2003, so this could be an understandable internet search outcome)

Why did Ton Zijlstra start blogging and what were the topics he blogged about?

Ton Zijlstra started blogging to share his knowledge and thoughts on various topics with the world. He has blogged about topics such as business, technology, and personal development.

(this is particularly bland meaningless text)

What is the most impactful posting he ever wrote on his blog?

The most impactful posting Ton Zijlstra ever wrote on his blog is "The Power of Connections".
In this posting, he talks about the importance of networking and building relationships with others. "The Power of Connections" was his most impactful blog because it helped him to connect with others and build relationships that have helped him both personally and professionally.

What are some of the awards Ton Zijlstra has won for his blog? Ton Zijlstra has won the Best Business Blog Award in 2006 and 2007, and the Best European Business Blog Award in 2008.

(No such posting exists, I did cover the topic though, but would not have created such a sales-pitchy title.
GPT-3 comes up with a question of its own here! This blog(ger) has never won or competed for awards.)

Of course he didn’t blog just on his own, he was part of a network of bloggers and their blogs that together had meaningful conversations. A great example of such a cross-blog conversation that garnered much attention is….
...the one on Ton's weblog on 13 September 2005, where he asked What is a blog?. This was picked up by Doc Searls, Stowe Boyd, Dave Winer, Robert Scoble, and many others, and is still being referenced today.
(This is intriguing, mentioning a specific date. No such posting exists on my blog, I did not even post on that date. My blog never asked "what is a blog", at least a search comes up empty, but it is a typical question from when we were blogging a lot about figuring out blogging, and the bloggers mentioned, while US centric, all would have had such discussions, that I would have been aware of in my feedreader. Where I in the prompt hint towards conversations in a network of bloggers, GPT-3 turns that into a single blogpost by me being ‘picked up’, phrasing it as amplification rather than conversation.)

There were instances where Ton’s blogposts carried over into academic research. An early example of that was…
...his weblogpost on 'the daily me', where he pointed out the potential dangers of a world in which we would only be exposed to information that we already like, and which confirmed our beliefs. This was picked up and elaborated on by danah boyd in her doctoral dissertation.

(The Daily Me is a 1995 term used by MIT Media Lab’s Nicholas Negroponte in ‘Being Digital‘, a book from 1995. boyd’s 2008 dissertation "Taken out of context, American teen sociality in networked publics" doesn’t mention it, although it references Negroponte’s 1995 book in passing. Blog conversations, including one in which my blog played a central role, were a key part of Lilia Efimova’s 2009 dissertation titled “Passion at work: blogging practices of knowledge workers. See the final image of such wide spread conversations, called the ‘big one’ by Anjo Anjewierden who created the image, at the end of this post)

Ton's blog has been a source of inspiration for many people. One of his blogposts that has been particularly popular, is the one in which he proposed the 10-90 rule: for every hour you spend creating content, you should spend 9 hours connecting with others. This blogpost has been referenced by many people, and has been translated into several languages. Ton Zijlstra's blog has had a significant impact on the blogging community and has helped to shape the way we think about blogging and its role in our lives.

(Ha, this phrasing is all so brand-me blogging and bland in tone (which reflects a lot of blogging)! Online search surfaces a 10-90 rule of thumb from the pre-online advert era, where 10% of budget would be for ad content, and 90% of budget for buying space in media (air time, pages in print). Here that’s turned to time spent and content versus making connections with others. There might be something to it as a suggestion, although turning it into a rule of thumb, makes connection more of a means than an end in itself.)


Image generated with Stable Diffusion using the prompt “A human and an android robot have a conversation in a podcast interview setting, oil on canvas painting style”, public domain.

The WordPress ActivityPub plugin by Matthias Pfefferle has been updated. It now allows you to @mention ActivityPub users and they will be notified of the mention in your blogpost, through ActivityPub.

This is useful. Yet, I’m holding out on using the plugin myself until three things are possible:

  • Set the user name of the ActivityPub account: Now the username is the login name of the user doing the posting. I recognise using WP user names is a straightforward way of turning WP into an ActivityPub client, and prevents having to add addditional stuff to the database. As I use non-obvious user names for additional website security, having those exposed as ActivityPub users is undesirable however.
  • Refuse follow requests: currently the plugin allows follows, and defaults to accepting all follows. As on my separate AP account I want to decide personally on follow requests.
  • Determine flexibly which postings get shared through ActivityPub, and through which ActivityPub user account. The current set-up is that all postings get shared through ActivityPub. I’d rather be able to determine not just on a post by post basis what gets shared but also to have specific categories of postings to be shared through a specific account.

I want to actively use the affordances ActivityPub allows on top of those WordPress as blogging tool provides. For me that is the ability to use the different activity types that AP can support, and to use dealing with followers and follows to selectively disclose content to different groups of people.

My current usecase for this is to have a separate AP account that shares my travel plans (posted in an unlisted category on my site) with accepted followers. The first part requires selectively sharing a category of postings, the second part doing so to a group of accepted followers on an AP account that is meant for just this type of postings and not my general AP account.

The plugin will develop in this direction, but is not there yet. I am slowly going through the code of the plugin myself to understand its architecture and choices. Perhaps it will give me an idea either on how to build on its core to create the functionality locally I want for myself, or maybe (though my coding skills are likely not adequate for it) add to the plugin itself.