De nieuwe Harstad “Onder de kasseien, het strand” is er bijna maar nog niet helemaal

Ik ben niet zo voor lijstjes, maar als ik onder dreiging van foltering een boeken top 3 zou moeten geven, dan zou “Max, Micha & het Tet-offensief” daar zeker in staan. Van auteur Johan Hardstad verscheen in 2024 al een nieuwe roman in het Noors onder de titel “Under brosteinen, stranden!” en volgens doorgaans goed ingelichte bronnen (ik mailde met de uitgever) zou in het najaar van 2026 de Nederlandse vertaling uitkomen. Op basis van de reviews op GoodReads opnieuw de moeite (ook al heb ik niet altijd goeie ervaringen heb met de Goodreads scores). En ja, sommige lezers maken in hun beoordeling melding van langdradigheid en van het zich dom voelen bij het lezen, maar ik kijk er toch enorm naar uit!

Dit is een ietwat opgekuiste automatische vertaling van de Noorse samenvatting;

“Onder de kasseien het strand” is een roman over de ontdekking van een kassei-achtig voorwerp. Wanneer je de kassei aanraakt, lijkt het alsof je in slechts zeven minuten een heel leven beleeft. Het verhaal speelt zich af in een jeugdgroep in Stavanger in de jaren negentig, maar met aanzienlijke tijds- en geografische omwegen naar plaatsen als de Sovjet-Unie, Berlijn, Warschau, Akureyri, Shanghai en niet in de laatste plaats het eiland Tristan da Cunha in de jaren zestig. Het boek wordt bewoond door van alles en nog wat: van jongeren uit de voorsteden op zoek naar de volgende industriële ventilator om zich ‘s avonds aan op te warmen, Koude Oorlogsspionnen met wankelende loyaliteiten in verschillende richtingen, lokale Zapatistas en marihuanahandelaren van twijfelachtig mentaal allooi, jonge geliefden en amateurradiovaders die allemaal weduwnaar zijn, zeelui van zowel de oude als de nieuwe school, IJslandse ecoterroristen, suïcidale alleenstaande moeders en zichzelf kwellende ziekenhuisdirecteuren, psychiatrische patiënten en sommigen die dat waarschijnlijk wel hadden moeten zijn, een avontuurlijke meteoroloog van Forus en een astrofysicus met een acute behoefte aan uitleg over niet-wetenschappelijke onderwerpen en met gastoptredens van mensen als Andrei Tarkovsky en Erich Mielke, onderzoekt de roman het idee dat de tijd misschien nooit aan onze kant heeft gestaan. Dit is een geweldig verhaal over wachten, tot het leven begint, tot dingen eindigen, wachten op het juiste, wachten op de dood en tevergeefs wachten. Het is een roman over Ingmar, Jonatan en Peter. En Ebba.

Ben je al in de war? Ik ook! Voor wie nu al iets meer te weten wilt komen, bekijk (een automatisch vertaalde) versie van dit artikel/ interview even, het zal één en ander misschien toch een beetje duidelijker maken. Of toch snel nog één zin uit het einde van dat artikel?

De roman, die zowel echt als fictief is, bevat zoveel kennis dat een arme lezer er zowel blij van wordt als even op adem moet komen.

Selah Sue via Vicky Canals Beatles X Radiohead

Back in the sixties Paul McCartney wrote and recorded Blackbird. The song was partly based on a Bach piece and features great guitar-playing really and talks about hope, empowerment and freedom.

Unrelated, Thom Yorke, suffering from post-“OK Computer” depression, wrote “Everything in it’s right place” on piano and recorded it with Radiohead in 1999, the song initiating their breakout of the confines of (alt-)rock. There are a lot of great alternative versions and covers, some of which I already mentioned here before.

Fast-foward to 2025 and Victoria Canal, a Spanish-American singer and pianist, released her own version of Blackbird which on social media she teased as “every blackbird in its right place”. Canals Blackbird is as intimistic as the original albeit a bit more subdued, maybe partly due to chord progression that borrows from EIIRP. Flying with broken wings in Vicky’s case can be taken somewhat literally; she was born without her right forearm and despite that she learnt how to play the piano with both hands. Although I’m no musician let alone a pianist, this disability likely impacts her piano arrangements by which she proves the “In der Beschränkung zeigt sich erst der Meister” to be so very true.

And finally, in 2026, Selah Sue teamed up with Stéphane Galland (a renowned jazz drummer) and his son Elvin (keyboard & production) and in their repertoire they have a version of Blackbird that was based on Canals arrangement. For me that version is the ultimate one; it starts out as intimistic as Canals version and in the vocals you feel some of Selah’s pain, the longing to be free, to fly. But then little by little the band (and I have to mention those backing singers, that bass-player) picks up and the song becomes a jazz-anthem (does that exist) and although I have heard it at least 20 times since I “discovered’ it the first time (yesterday) I get goosebumps every time. I showed it to my wife yesterday and teared up while trying to explain why I’m so overwhelmed. But there was no need to explain, she felt exactly the same and we hugged.

If you want to see/ hear/ experience it, the best version is on VRTmax but you’ll need to create an account (and still you might not be able to access it due to geographic limitations) or you can look at this smartphone recording of this song in a concert;

Selah Sue - Blackbird (Live in Leuven 2026)

Gelezen; “Het achtste leven (voor Brilka)” van Nino Haratischwili

Ik volg de literaire mode niet zo, maar ik lees graag en het mag van mij wel Echte Literatuur (mijn vrouw gruwelt als ze dit leest) zijn. “Het achtste leven (voor Brilka)” is ondertussen 10 jaar uit in de Nederlandse vertaling en ik zag op Goodreads dat het boek daar een whopping beoordeling van 4,54 had. Het stond dus al een tijdje op mijn verlanglijstje en ik kreeg het in December voor mijn verjaardag dan ook van mijn liefste dochter cadeau. De volgende dag begon ik met hoge verwachtingen aan pagina 1 van de 1269.

We zijn nu een paar maanden verder en ik heb het vandaag uitgelezen. Een kleine drie maanden lezen, maar nee, ondanks die positieve beoordelingen op Goodreads voelde ik “Het achtste leven” niet. De achtergrond is écht wel interessant (Georgië voor, tijdens en na het communisme) en een goed geschreven familie-epos kan me dikwijls boeien, maar de personages voelden mij niet “echt” genoeg aan en de magische chocolade (ja, er wordt een geheim recept in de familie doorgegeven) leek me eigenlijk een overbodig en soms zelfs ergerlijk literair sausje eerder dan dat het een relevant ingrediënt van het verhaal was. De muziekliefhebber in mij tenslotte, hoorde de naar het Westen verbannen singer-songwriter Kitty Jasji ook helemaal niet zingen.

En toch was het ook geen slecht boek, anders had ik het gewoon niet uitgelezen. Meer nog, het laatste deel met de 12-jarige wegloper Brilka vond ik heel wat sterker uitgewerkt met misschien minder historisch drama maar met echte gevoelens. En zo had ik na 1269 pagina’s toch het gevoel een paar bekenden achter te moeten laten. Maar dat had van mij best zonder die gespikete chocolade gemogen.

Is programmeren echt zo moeilijk dan?

Scratch editor met bewegende katSinds begin dit jaar probeer ik als newbie coach te helpen bij CoderDojo Genk. Ik moet eerlijk zijn, ik ken nog niet écht veel van Scratch en nog veel minder van micro:bit, maar ik ga ervan uit dat dat wel zal komen. Soit, afgelopen weekend vertelde de moeder van 2 deelnemers me dat programmeren haar zo moeilijk lijkt. In de chaos van het moment heb ik daar amper op geantwoord, maar die opmerking heeft de schoolmeester in mij toch een beetje wakker gehouden. Want is programmeren echt zo moeilijk? Als een “leek” het werk van een échte developer op het scherm ziet, lijkt dat ongetwijfeld ondoorgrondelijke tekst met hier en daar enkele herkenbare Engelse woorden waar verder kop noch staart aan te krijgen is. Het succes van Scratch is dat het die letterspaghetti verbergt achter mooi gekleurde blokjes die logisch in elkaar kunnen worden geklikt om zo de basisconcepten van het programmeren spelenderwijze aan te leren. Maar zitten er achter die Scratch-blokjes eigenlijk geen eenvoudige ideeën die iedereen zou kunnen begrijpen?

Ik probeer even met een denkbeeldig spelletje waar je een vliegtuigje moet besturen;

  • in elk computerprogramma (software) zitten er acties; toon een vliegtuigje en een achtergrond, … (dus dikwijls “uitvoer” naar de gebruiker van de software)
  • er is logica om de gebruiker toe te laten om die actie te beïnvloeden (de invoer of input), bijvoorbeeld het pijltje naar boven of beneden om het vliegtuigje te besturen
  • die invoer wordt getoetst aan “als … dan” voorwaarden (testen): dalen of stijgen is afhankelijk van welk pijltje wordt ingedrukt, maar een voorwaarde kan even goed controleren of de positie van het vliegtuigje te laag vliegt waarop het crasht of landt (een nieuw actie dus)
  • software zal dikwijls informatie bijhouden (en soms tonen) in “variabelen“, bv. de huidige positie van het vliegtuigje of een score of het aantal levens dat je nog resten in een spel
  • als scores worden bijgehouden kan om de high scores te tonen een lus gebruikt worden. zo een “loop” kan een vast aantal keer doorlopen worden (zoals een top 5 om de eerste vijf resultaten uit een al geordende lijst), maar een lus kan ook doorlopen worden tot er aan een voorwaarde voldaan is (bijvoorbeeld als je een oneindig aantal pogingen krijgt om woord te raden, in dat geval blijf je in die lus tot je het woord geraden hebt).

Is dat echt alles? Nee, er komt natuurlijk meer bij software development kijken; het opvangen van fouten, de code veilig maken voor hackers, de code leesbaar en onderhoudbaar houden voor collega’s zorgen voor technische documentatie, zorgen voor automatische testen en het communiceren met databases of andere software om maar een paar zaken te noemen. Vanzelfsprekend bevat zowat elk stukje software honderden of duizenden acties, voorwaarden, loops, variabelen en databank velden, maar bovenstaande concepten geven wel een beeld met welke betrekkelijk eenvoudige basisblokken software wordt geschreven.

Programmeren is in de eerste plaats dan ook volgens een bepaalde logica nadenken. De juiste vragen stellen en proberen, falen, je afvragen waarom het niet werkt en met dat nieuwe inzicht opnieuw proberen tot het werkt. Dat heb ik dikwijls ook geantwoord op de Coderdojo aan de Scratchende kinderen/ tieners; “Wat denk je zelf dat er moet gebeuren?” en “OK, probeer het eens en kijk of het werkt”. En zo leer ik ook beetje bij beetje Scratchen 🙂

How to go block-less with the WordPress ActivityPub plugin

Being the web performance zealot I am, I strive to having as little JavaScript on my sites as possible. JavaScript after all has to be downloaded and has to be executed, so extra JS will always have a performance impact even when in the best of circumstances it exceptionally does not impact Core Web Vitals (which are a snapshot of the bigger performance and sustainability picture). Hence when adding blocks in WordPress, I check if the block is entirely rendered server-side and if not I look for alternatives to avoid multiple files from wp-includes/js/dist (and in the case of some 3rd party blocks the entire React JS and more) being loaded.

For that reason I tested the WordPress ActivityPub plugin with the reactions block loaded as per these guidelines and indeed it triggers the loading of hooks.min.jsi18n.min.jsurl.min.js, api-fetch.min.js (all in wp-includes/js/dist) and 2 files from the plugin itself (/wp-content/plugins/activitypub/build/reactions/view.js and /wp-content/plugins/activitypub/build/remote-reply/view.js).

To be able to reduce the dependency on those JavaScript files, 2 questions needed to be answered; how to have reactions (which I like a lot) without the JavaScript-driven rendering and what is that remote-reply thing.

Starting with the latter; “remote-reply” handles the federation of local comments on reactions (comments) from the Fediverse, showing a modal window where the commenter is asked what ActivityPub account they want to post the reaction from. I decided this was not that important for me and –with some help from Matthias @pfefferle who always gives great support- came up with a couple of lines of code to not “do” remote-reply on this blog.

Now that Fediverse reactions block is very nice and I did want reactions showing on my blog, so I started looking at the database and the ActivityPub plugin code and saw that all Fediverse reactions were stored in the wp-comment en wp-comment-meta db-tables and were in fact accessible with the WP_Comment_Query class. With quite a bit of trial and error I ultimately ended up with a totally server-side generated solution that looks pretty nice (and similar to the JavaScript-rendered one).

If you’re interested, you can find the code in this gist, but don’t expect it to be good. Some negatives include no language handling, unminified CSS inline and the placement of the reactions might not work on every theme as I hook into the comments_template action to try to show them just before the comments. But who knows it might just work for you as well?

As seen on YouTube; Angine de Poitrine live on KEXP

Angine de Poitrine live on KEXP. French-Canadian Dada-ist instrumental rock-techno-jazz maybe? A bit of Can, Primus, King Crimson and Sun Ra and a whole lot of virtuoso drums and guitar loop-pedal juggling. If I could I’d go straight for the moshpit but it’s just me in my homeoffice so …

Some of the YouTube comments (not a cesspool, for once) are spot on;

Aside from their insane technical skills, the fact that the guitarist can keep the looper in time whilst playing a microtonal guitar on top of odd timesignatures blows my mind. All hail!

No artificial intelligence without original thought could come up with something this bizarre and enthralling.

my wife isn’t going to appreciate a single second of this

Anyway, just look & listen;

Angine de Poitrine - Full Performance (Live on KEXP)

Zijn er Meshcore-users in de Limburgse Maasvallei?

Ik steek het op de Fediverse, waar ik sinds een paar weken (maanden?) regelmatig posts langs zag komen over Meshcore als technologie/ software voor gedecentraliseerde ad-hoc netwerken voor tekst-gebaseerde berichten op basis van LoRa radio. Ik heb me zo een Sensecap T1000-e gekocht, meshcore geflasht (vanuit Chrome, poef) en verbonden met m’n Fairphone met de Meshcore app en … niks. Adverts gestuurd, eerst braaf 1 hop, daarna floods. Maar nee, niemand te zien. Alleen op de wereld!

Anderzijds mag me dat niet verwonderen; zelfs met de GSM is de ontvangst hier in de bossen aan de rand van het Kempisch plateau abominabel. En die Sensecap met interne antenne, dat is ook niet van dien aard om kilometers ver te zien/ zichtbaar te zijn. Ik veronderstel dat ik eerstdaags eens naar het panoramapunt op de Mechelse Heide moet wandelen, daar heb ik misschien iets meer kans?

Maar bij deze; als U in de Limburgse Maasvallei woont en af en toe een Meshcore-toestel aan hebt staan, geef dan gerust een seintje! En vertel er direct bij welke frequentie U frequenteert misschien? 😉

w.social invite code

Screenshot of the w.social landing page where an invitation code has to be entered.So regarding that new EU social network (which is said to be decentralized but unclear if that implies ActivityPub which would make it more relevant in my book); entering a string in the “invitation code” and clicking “continue” does not result in an XHR request to the server and there’s a lot of JS on the page to handle the invitation code.

This implies the code is checked in the browser so the correct code(s) is somewhere in the JavaScript. So it should be possible to reverse-engineer it, no? 😉

Any takers for this challenge?

blog.futtta.be on the fediverse

Pretty sure no-one is waiting for this, but after having spent a couple of years on the Fediverse (Mastodon in my case) I decided to add ActivityPub support to my WordPress installation via the ActivityPub plugin.

I have the WP Rest Cache plugin active, so I’m expecting things to gently hum along, without (most likely) or with these posts gaining traction.

Kudo’s to Stian and Servebolt for assisting me to get the webfinger endpoint to work, which is … not self-explanatory on hosts that have unoverrideable configuration on the .well-known folder 🙂