More than 20 years ago, I wrote an editorial proposing what I called tinkerable software.
We expect houses to be tinkerable: ordinary people, not the original builders, can modify them in both small and large ways. Even those who don't want to tinker expect tinkerability from physical products. If our lawn mower breaks, we expect that the handy guy down the street can probably fix it, or that we can look up a small engine repair shop in the phone book.
A world of tinkerable software would be one with as many magazines about software product improvement as about home improvement or gardening or hot rods. I'd like to see that world.
Here's the multi-column "tweetdeck" version of the Mastodon web app:
I've tinkered with it somewhat. Columns 3-5 show three lists into which I've organized all the people I follow. Column 3 posts are from people whose posts I never want to miss. Column 4 is for people whose posts I'm OK missing if I'm falling behind (as has happened today – a problem with a social network that encourages conversation instead of snark). Column 5 contains posts that I'll read occasionally, perhaps when I'm taking a short break from doing something else.
There's so much I want to tinker with!
- If I click on a post, it and its replies appear in the far-right column. That's usually what I want. But suppose I'm reading a post with a link to a Youtube video or a blog post, and I don't have time to do the deep-dive now. I can click on the link to put it in a tab, but the original post will likely have gone away. And I've almost certainly forgotten who originally posted the link. So I can't give credit to the original poster, which bugs me. I'd rather have a column where I stash pending posts.
- For column 5, I probably don't want to read in chronological order. I probably want posts with the most favourites and boosts to bubble up to my attention.
- Some people – you know who you are! – produce long threads that are global-visibility posts interspersed with other people's posts instead of only thrusting the beginning of the thread into my timeline. I want the timeline to hide replies until I decide to expand the thread. Oh, and I want the head of the thread to indicate how many replies there are.
- Oh, and by the way, I want the ability to compose a thread and post it as a single human action (even if the software has to post one reply at a time behind the scene.)
- I want a timeline to have a "mark as unread" option. More generally, I want it to be visually much clearer the separation between what I've read and what I haven't, not just two halves of the timeline. Here's an example of the Night Owl Twitter client that shows what I'm currently reading, what's left to be read (above it), and what's already read, below it – except that the bottommost tweet is still marked unread.
And so on and on.
This will require a local database, a query language, and a tinkerable/programmable interface. Jon Udell has started along those lines. See, for example, "A Bloomberg terminal for Mastodon". I haven't explored that yet, so I don't know how it works or how much it could be turned into a general-purpose UI. (That is, one that doesn't require tinkering.)
I'm at best a very weak and out-of-date front-end programmer, and I'm lousy at making interfaces look purty, but I wonder if this might be an opportunity to finally build – or, better, help build – something that realizes that old dream. Right now, Mastodon users are too dependent on some programmers somewhere deciding how they ought to want to interact with Mastodon. The modularity of feeds and posts seems perfect for end-user tinkerable software.
Any projects (other than Jon's) working on something like this? Something I can support, including with money?