
Last day of snowboarding offered some nice weather.
Ran 10.34 km in 01:00:30 (05:51 /km).
This week I am snowboarding. So it is a week off my normal training program. But I didn't want to skip running completely, so I did this treadmill session.
If loss of a tool = loss of your skill & knowledge, then that tool isn't an asset, it's a liability. You're signing over your ability to do business to whoever sells & maintains that tool.
This reasoning resonates with me.
It also made me think about the presentation Peter Van Hardenberg - Local First: the secret master plan where he describes woodworkers making their own tools, called jigs, that help them build better.
Perhaps it is a good exercise in software to let go of a tool that we use and see if we can still do our job. And perhaps that might even lead to us thinking about and building new tools?
Ran 10.76 km in 01:06:00 (06:08 /km).
5x5min threshold intervals on the treadmill at 05:00 /km pace and an angle of 3 (degrees I guess).
I believe this was a steeper angle than my previous workout. I was inspired by "The Hardest Workout We Ever Do" | Uphill Treadmill Threshold feat. Megan! to try a steeper angle. (Megan din 12x5min at 8% grade. Wow!)
The knee pain that I have felt the previous weeks now seems to be completely gone. I'm so grateful for that. And reminded that I must keep doing my strength exercises.
Thanks for providing an example of private posts on the IndieWeb.
This is the first post I've seen on the IndieWeb that has multiple in-reply-to links. I guess that makes sense. Nice!
Yesterday I watched Peter Van Hardenberg - Local First: the secret master plan. I've come across Peter and Ink & Switch before. It caught my interest then, and it caught my interest now again.
This time I saw similarities between the local first concept and IndieWeb.
One of the requirements for local first (particularly in the context of collaboration) is the ability to diff different versions of a document and sync changes between different people. In the programming world, we have had this luxury for a long time with version control systems. But they want to enable that for all types of documents. This sounds so cool.
Ran 5.17 km in 31:17 (06:03 /km).
I found the URL design page particularly interesting.
I have given URL design some thought. I should maybe write up the thinking behind the current design.
However, I've sometimes gotten frustrated because I felt that I couldn't reach a perfect design. And perhaps there is no right and wrong. Only trade-offs as in other types of design.
I want to implement URL rewriting so that I can fix bad URL design with HTTP redirects so that old links can keep working while still promoting the newer better design.
I'm curious about how private posts could look like on the open web.
I see a need to share certain posts only with certain people and not have everything on my blog public. Today I have to share that in another way. And I'm not sure they can all co-exist on my blog and what that would look like.
Ran 16.10 km in 01:38:05 (06:05 /km).
Ran 3.89 km in 24:31 (06:18 /km).
Ran 5.04 km in 31:15 (06:12 /km).
Ran 2.59 km in 22:21 (08:38 /km).
Ran 5.29 km in 33:33 (06:20 /km).
This was such a nice read. I especially resonated with "posting versus publishing" and that a blog can be an "archive and long memory".
Ran 5.44 km in 35:38 (06:33 /km).
Ran 3.88 km in 29:03 (07:29 /km).
Ran 3.84 km in 24:59 (06:30 /km).
Ran 15.02 km in 01:33:07 (06:12 /km).
Ran 3.98 km in 25:49 (06:29 /km).
Ran 3.97 km in 27:31 (06:55 /km).
Ran 10.55 km in 01:06:00 (06:15 /km).
5x5min threshold intervals on the treadmill.
I've felt some slight pain in my knee this week, but during this session, I felt nothing. Happy about that.
I've now implemented a way to download mentions from Webmention.io and display them on my blog posts.
My blog is a static site. So the way it works is that I download mentions via the Webmention.io API. Then I extract only the information that I need to display the mentions on my blog. I save that information in json files that I can read when the website is generated. Right now, they look like this:
$ cat posts/2023/04/06/what-should-a-ci-server-do/mentions.json | jq
{
"https://blog.rickardlindberg.me/2026/01/24/how-does-ci-work-in-projects2.html": {
"wm-property": "mention-of",
"wm-received": "2026-02-04T19:41:15Z"
}
}
in #newsletter
This was amazing!
In What Skills Do Developers NEED To Have In An AI Future?, Trisha Gee says
Developers Are a Bridge Between the Silicon and End User
This was said in the context of the importance of "soft skills" for a developer.
This explanation of a developer resonates so much with me because it encompasses everything. On the one hand you need to be able to program the silicon at a low level. On the other hand you need to be able to communicate with the end user to figure out what to build.
It was also said in the context that how you realize an end user need might change with AI. You might write a prompt instead of writing code. But the developer's job is still to be that bride.
in #ai #development
Ran 10.37 km in 01:02:38 (06:02 /km).
Here is how I test microformats markup on my website.
First I install mf2py:
sudo dnf install python3-mf2py
Then I define this one-liner Bash function:
mf2test() { python -c 'import sys; import mf2py; import json; print(json.dumps(mf2py.parse(url=sys.argv[1])))' $1 | jq; }
And then I can test a website like this:
$ mf2test https://blog.rickardlindberg.me/2026/02/05/075110.html
{
"items": [
{
"type": [
"h-entry"
...
Nice! Makes me want to go snowboarding.
Ran 5.24 km in 33:36 (06:24 /km).
Ran 14.12 km in 01:21:34 (05:46 /km).
What is Rickard working on and thinking about right now?
Every month I write a newsletter about just that. You will get updates about my current projects and thoughts about programming, and also get a chance to hit reply and interact with me. Subscribe to it below.