Shellsharks Blogroll - BlogFlock2026-07-13T01:35:04.036ZBlogFlockAdepts of 0xCC, destructured, Aaron Parecki, fLaMEd, Trail of Bits Blog, Westenberg, gynvael.coldwind//vx.log (pl), James' Coffee Blog, joelchrono, Evan Boehs, Kev Quirk, cool-as-heck, Posts feed, Sophie Koonin, <span>Songs</span> on the Security of Networks, cmdr-nova@internet:~$, Johnny.Decimal, Werd I/O, Robb Knight, Molly White, Hey, it's Jason!, Terence Eden’s BlogThe Trump administration is subpoenaing journalists to reveal sources. Their data security is more important than ever. - Werd I/O6a53abc59a650a00018af4172026-07-12T14:59:17.000Z<p>Link: <a href="https://www.nytimes.com/2026/07/11/us/politics/white-house-patel-investigation-times.html?unlocked_article_code=1.xFA.9q52.ZL9VNq1-BClg&smid=url-share"><em>White House Directed Patel to Oversee Investigation Involving Times Reporting, by Devlin Barrett, Glenn Thrush, and Maggie Haberman at the New York Times</em></a></p><p>The White House personally directed FBI Director Kash Patel to <a href="https://www.nytimes.com/2026/07/11/business/media/new-york-times-trump-subpoenas.html">issue subpoenas to journalists reporting on the President’s new Qatari-gifted Air Force One</a>.</p><blockquote>“The White House’s deep involvement in the case came after officials said that President Trump was enraged about the coverage of the Qatari-donated plane, which The Times reported Thursday lacks the same defensive countermeasures of the previous Air Force One.”</blockquote><p>These subpoenas were delivered by hand to some of the reporters at home, echoing <a href="https://www.theguardian.com/us-news/2026/jan/14/fbi-raid-washington-post-hannah-natanson">the FBI’s raid of a Washington Post engagement reporter’s home</a> earlier this year. In both cases, it’s highly likely that these were attempts to discover who leaked information to their respective newsrooms.</p><p>There’s lots to say about first amendment issues here, and commentators like <a href="https://dankennedy.net/2026/07/11/from-the-trump-regime-to-a-rogue-judge-in-new-jersey-the-first-amendment-is-under-assault/">Dan Kennedy at Media Nation</a> have pertinent thoughts. It’s clear that journalism is under attack by the administration, and <a href="https://www.npr.org/2025/04/25/nx-s1-5377624/pam-bondi-reporters-subpoena-leaks">they rescinded rules that protected journalists in leak investigations last year</a>. The <a href="https://pressfreedomtracker.us/">US Press Freedom Tracker</a> is a sobering read. But it’s also important to take a moment to talk about the technology side of this story.</p><p>When the administration wants to issue a subpoena to a newsroom, it has a few avenues available to it. The first is to issue it directly to the newsroom or to its reporters, as they did here. In some ways, this is the best outcome: then the newsroom knows about the subpoena and can actively fight it in court.</p><p>The other avenue is to subpoena the newsroom’s service providers. If source information is stored unencrypted on a service like Google Workspace, the administration could subpoena Google. If a gag order is added — which might well happen if it’s a criminal subpoena or labeled a matter of national security — then the newsroom would never find out and have the chance to fight it. This is true even if the service provider nominally promises to notify the newsrooms about subpoenas: a gag order is a gag order.</p><p>Larger newsrooms have strong data security practices for this reason: they know to create policies and architectures which force subpoenas to come through them. But not every newsroom has the capacity to build a strong security strategy. Which means for every story we hear about that involves these newsrooms, there may be many more that took place in secret.</p><p><a href="https://freedom.press/digisec/">The Freedom of the Press Foundation maintains digital security resources and runs training for newsrooms</a> and <a href="https://freedom.press/digisec/blog/source-protection/">specific advice about source protection</a>. <a href="https://www.eff.org/issues/security-education">The EFF also has some great resources</a>. More resources are out there. But there is more of a need than ever for every newsroom to make sure they have access to someone who can advise them on digital security both holistically and on a case-by-case basis. Not every newsroom can afford a permanent member of staff, but finding access to some kind of resource is vital.</p><p>Likewise, journalism funders should focus on providing access to experts, understanding that these issues are existential for the organizations they fund. Not only is this an attack on press freedoms, but it’s also an attack on trust. Every newsroom can do its reporting because sources feel safe to reach out to it; if their safety is in question, they may be less likely to leak, and we may be less likely to read the stories that help us make good democratic decisions. That’s what the administration seems to be banking on.</p>Another Ridiculous Interrail Holiday - 6,379Km and 13 Countries over 7 weeks - Terence Eden’s Bloghttps://shkspr.mobi/blog/?p=730072026-07-12T11:34:43.000Z<p>Last year, my wife and I went on a <a href="https://shkspr.mobi/blog/2025/06/5025-km-21-journeys-and-10-countries-in-30-days-an-interrailing-adventure/">5,025 Km Interrail adventure</a>. We got the month-long unlimited pass and saw 10 Countries in 30 Days. That was a bit too intense. So this year we got the 15 travel days in 2 months package. We grabbed the 1st class tickets when they went on sale in December.</p>
<p>Here's how our journey ended up:</p>
<img src="https://shkspr.mobi/blog/wp-content/uploads/2026/07/Long-Interrail-Journey.webp" alt="A map of Europe with several countries connected by a black line." width="1526" height="1505" class="alignnone size-full wp-image-73008">
<p>The trip included two ferries - one overnight - which had a small Interrail discount. In total we spent approximately 40 hours on trains over a 7 week trip.</p>
<p>This blog post looks at the practicalities of the journey and the experience we had while travelling. You are free to decide which cities you want to visit and which you want to skip. This worked (mostly) for us - you should write a blog post about your own experiences.</p>
<h2 id="london-to-brussels"><a href="https://shkspr.mobi/blog/2026/07/another-ridiculous-interrail-holiday-6379km-and-13-countries-over-7-weeks/#london-to-brussels">London To Brussels</a></h2>
<p>Eurostar St Pancras is dangerously crowded and needs tearing down. You can use <a href="https://www.realtimetrains.co.uk/search/detailed/gb-nr:STP?stp=WVS&show=all&order=wtt&toc=ES">RealTimeTrains to see your departure platform before it is announced</a> - that's useful for avoiding some of the queues.</p>
<p>The first-class service in Eurostar is lovely (even if it doesn't get you access to the lounge). Unfortunately, you need to book vegan meals a few days in advance - a deadline I missed. The veggie option was fine though.</p>
<p>Made it to Brussels where we hit our first snag.</p>
<h2 id="brussels-to-hamburg"><a href="https://shkspr.mobi/blog/2026/07/another-ridiculous-interrail-holiday-6379km-and-13-countries-over-7-weeks/#brussels-to-hamburg">Brussels to Hamburg</a></h2>
<p>We'd booked some of our tickets months in advance. What we hadn't realised is that construction work had been announced and our train would be getting is much later than we anticipated.</p>
<p>Neither Interrail (who we booked the seat reservations through) nor DB (who had our contact details) thought to tell us about the change in journey. Nevertheless, we jumped on a train and had a pleasant enough trip up to Germany.</p>
<p>The Interrail refund form is ridiculously complicated and asks for various screenshots. There really ought to be a big "DB Screwed Up" button for an instant refund. Still, after a couple of days the refund came through.</p>
<h2 id="hamburg-to-copenhagen"><a href="https://shkspr.mobi/blog/2026/07/another-ridiculous-interrail-holiday-6379km-and-13-countries-over-7-weeks/#hamburg-to-copenhagen">Hamburg to Copenhagen</a></h2>
<p>There's a DB lounge at the station. We received suspicious stares at our Interrail passes which then necessitated deep examination of our seat reservation by two people. Begrudgingly they let us in. There were comfortable seats and some free drinks. It was mostly quiet until various children started crying.</p>
<p>The train was gentle and slow. 1st class got a snack included - veggie but not vegan. For the first time since leaving the UK there were passport checks which were friendly.</p>
<p>At one point there was a quiet announcement in German. We didn't think much of it until everyone started getting off the train. Turns out one of the carriages had suffered a failure and we were turfed out at Nyborg. Approximately 1,000 passengers attempted to board the next available train - it looked like an utter crush. So we waited for the one after that.</p>
<p>We were treated to a train with spectacular panoramic windows as it went over The Bridge.</p>
<img src="https://shkspr.mobi/blog/wp-content/uploads/2026/07/big-windows.webp" alt="Standing in front of a big window with the water behind us." width="1024" height="1439" class="aligncenter size-full wp-image-73015">
<p>A friendly guard told us where to change. Arrived a little late and filled in the Interrail compensation form again.</p>
<h2 id="copenhagen-to-goteborg"><a href="https://shkspr.mobi/blog/2026/07/another-ridiculous-interrail-holiday-6379km-and-13-countries-over-7-weeks/#copenhagen-to-goteborg">Copenhagen to Göteborg</a></h2>
<p>The lounge in Copenhagen was basic but fine. A few bowls of fruit and a coffee machine but nothing else. Weirdly no train display.</p>
<p>The train had power sockets on the ceiling - along with headphone jacks! Was a little strange seeing cables dripping down from the ceiling. The 1st class seats were a little roomier than standard, but not much in it. Ticket inspector looked confused at Interrail passes but didn't challenge us.</p>
<h2 id="goteborg-to-oslo"><a href="https://shkspr.mobi/blog/2026/07/another-ridiculous-interrail-holiday-6379km-and-13-countries-over-7-weeks/#goteborg-to-oslo">Göteborg to Oslo</a></h2>
<p>Trains were frequent enough that we didn't bother with advance seat reservations. No 1st class, but the quiet zone was spacious enough. Again, a brief glance at the tickets rather than scanning them.</p>
<p>I was heartily impressed to see snack vending machines on a train! Better than someone pushing a cart through I reckon.</p>
<h2 id="oslo-to-stockholm"><a href="https://shkspr.mobi/blog/2026/07/another-ridiculous-interrail-holiday-6379km-and-13-countries-over-7-weeks/#oslo-to-stockholm">Oslo to Stockholm</a></h2>
<p>There were no signs on seats to say reserved and the service was very full. But we got our seats without a problem. There was free fruit and tea / water in the 1st class carriage. WiFi speeds were excellent.</p>
<h2 id="stockholm-to-helsinki-overnight-ferry"><a href="https://shkspr.mobi/blog/2026/07/another-ridiculous-interrail-holiday-6379km-and-13-countries-over-7-weeks/#stockholm-to-helsinki-overnight-ferry">Stockholm to Helsinki (overnight ferry)</a></h2>
<p>Annoyingly, the ferry terminal is a rather long distance from the nearest tram stop which was a bit of an arse.</p>
<p>The check-in to the ferry warns of extra costs if you have the temerity to use the staffed counters - but the automatic check in wouldn't work with our tickets. They wanted to check that we were eligible for the Interrail discount, so we showed them the app - we didn't have to spend a travel day though. They printed out our tickets and didn't charge us extra.</p>
<p>The boat itself was gorgeous. Obviously not full - many of the bars were empty and the disco was dead - but surprisingly they put on a full song and dance show as entertainment. We'd made reservations at one of the fancy restaurants, which was perfectly nice. It was breathtakingly beautiful outside.</p>
<img src="https://shkspr.mobi/blog/wp-content/uploads/2026/07/ferry.webp" alt="Two of us looking out over the islands." width="1024" height="729" class="aligncenter size-full wp-image-73017">
<p>The room was basic, but much easier to sleep in than an overnight train. Unfortunately, I fucked up with the timezones. Stockholm is UTC+1 and Helsinki is at UTC+2. I set my alarm an hour too early!</p>
<img src="https://shkspr.mobi/blog/wp-content/uploads/2026/07/timezone.webp" alt="Two clocks. One has a Finnish flag, the other a Swedish flag." width="1024" height="326" class="aligncenter size-full wp-image-73016">
<p>The breakfast buffet was very well stocked for veggie and vegans. Massive queue before opening but not too crowded.</p>
<h2 id="helsinki-to-tallinn-day-ferry"><a href="https://shkspr.mobi/blog/2026/07/another-ridiculous-interrail-holiday-6379km-and-13-countries-over-7-weeks/#helsinki-to-tallinn-day-ferry">Helsinki to Tallinn (day ferry)</a></h2>
<p>Terminal was a short walk from the tram. It was spacious and had plenty of seating. Again we couldn't use the automated check in and had to show our Interrail apps. Ferry was small but plenty of room to sit or go shopping.</p>
<h2 id="tallinn-to-riga"><a href="https://shkspr.mobi/blog/2026/07/another-ridiculous-interrail-holiday-6379km-and-13-countries-over-7-weeks/#tallinn-to-riga">Tallinn to Riga</a></h2>
<p>Slightly confusing process to buy the tickets as they only went on sale a few weeks before departure. No seat reservations for the first half of the journey - we were slightly worried by the number of people waiting for the three-carriage train. In the end there was plenty of space. Again, 1st class a bit roomier than standard but not dramatically so.</p>
<p>The ticket inspector gave a confused look at the Interrail pass and issued us with a receipt for €0.00!</p>
<img src="https://shkspr.mobi/blog/wp-content/uploads/2026/07/zero-receipt.webp" alt="A receipt for €0." width="480" class="aligncenter size-full wp-image-73013">
<p>The train had an onboard ticket vending machine with contactless payments and, delightfully, some bowls of water for dogs.</p>
<p>We changed at Valga which was simple - literally walk across the platform to the waiting train. It was a little more crowded, but plenty of seats.</p>
<h2 id="riga-to-vilnius"><a href="https://shkspr.mobi/blog/2026/07/another-ridiculous-interrail-holiday-6379km-and-13-countries-over-7-weeks/#riga-to-vilnius">Riga to Vilnius</a></h2>
<p>1st class was a bit crowded but pleasant until the boomer Brits started ignoring the quiet carriage signs. They were shut up by the guard. Complimentary sparkling water.</p>
<h2 id="vilnius-to-warsaw"><a href="https://shkspr.mobi/blog/2026/07/another-ridiculous-interrail-holiday-6379km-and-13-countries-over-7-weeks/#vilnius-to-warsaw">Vilnius to Warsaw</a></h2>
<p>There is a VIP lounge in Vilnius - but it is little more than a quiet space with a loo and water fountain. All the snacks and hot drinks were chargeable. We didn't actually have access to it this trip - but the Riga to Vilnius trip did. We scanned our previous ticket reservations to get in.</p>
<p>We weren't able to book seats - because the service said it was sold out. However the train was half empty. No 1st class, but there was WiFi and power, so no complaints from me.</p>
<img src="https://shkspr.mobi/blog/wp-content/uploads/2026/07/rain.webp" alt="Liz looking out into the rain." width="1024" height="771" class="aligncenter size-full wp-image-73018">
<p>On having our tickets checked we were told that there <em>was</em> 1st class, but we couldn't use it with our Interrail passes. As with most European trains, announcements were in English.</p>
<p>The change at Mockava was easy - we walked to the next platform. We'd booked seats in a little 6 seater cabin - sadly the air con was little more than homeopathic. Even cracking open the window did nothing but waft hot air over us. Fairly full train, toilets were adequate, but the heat was stifling. Even worse, no WiFi!</p>
<p>The train occasionally stopped for several minutes at a time. The crew just opened the doors to let a breeze in - very little health-and-safety culture here!</p>
<img src="https://shkspr.mobi/blog/wp-content/uploads/2026/07/Open-doors.webp" alt="Door opening on to the track." width="1024" height="1360" class="aligncenter size-full wp-image-73019">
<p>Mind you, we also saw people crossing the tracks to get to their platform. Yikes!</p>
<p>There were passport checks by armed guards. Brief and inoffensive.</p>
<h2 id="warsaw-to-berlin"><a href="https://shkspr.mobi/blog/2026/07/another-ridiculous-interrail-holiday-6379km-and-13-countries-over-7-weeks/#warsaw-to-berlin">Warsaw to Berlin</a></h2>
<p>Despite the extreme heat, it left on time. This 6 berth 1st class carriage was a bit bigger than the last - and the aircon actually worked.</p>
<p>We were treated to complementary water, juice, and a vegan snack bar! The train driver sounded their horn at every opportunity which wasn't exactly relaxing.</p>
<h2 id="berlin-to-munchen"><a href="https://shkspr.mobi/blog/2026/07/another-ridiculous-interrail-holiday-6379km-and-13-countries-over-7-weeks/#berlin-to-munchen">Berlin to München</a></h2>
<p>No vegan currywurst on the DB menu any more 😭.</p>
<p>Annoyingly, we were kicked off at Nuremberg - despite most announcements being made in English this one wasn't, but we figured it out. A train came fairly quickly, so we weren't too late.</p>
<h2 id="munchen-to-verona"><a href="https://shkspr.mobi/blog/2026/07/another-ridiculous-interrail-holiday-6379km-and-13-countries-over-7-weeks/#munchen-to-verona">München to Verona</a></h2>
<p>There is a 1st class DB lounge but it isn't open to OBB/Interrail scum. Luckily there were plenty of food options for vegans in station. No vegan currywurst on train but several other options.</p>
<img src="https://shkspr.mobi/blog/wp-content/uploads/2026/07/munchen.jpg" alt="Train display board." width="1008" height="759" class="aligncenter size-full wp-image-73012">
<p>This was one of two reservations which <em>demanded</em> that it be printed out onto paper and under <em>no circumstances</em> would it be accepted from a screen. That was a lie. Showing the code on-screen was fine.</p>
<h2 id="verona-to-milan"><a href="https://shkspr.mobi/blog/2026/07/another-ridiculous-interrail-holiday-6379km-and-13-countries-over-7-weeks/#verona-to-milan">Verona to Milan</a></h2>
<p>Such a frequent service that no reservations were needed. Annoyingly, the train windows were covered with graffiti so it was impossible to see out. Ticket inspector barely glanced at our tickets. WiFi didn't work. Crowded and a bit noisy. Air con just about coped with the heat.</p>
<h2 id="milan-to-basel"><a href="https://shkspr.mobi/blog/2026/07/another-ridiculous-interrail-holiday-6379km-and-13-countries-over-7-weeks/#milan-to-basel">Milan to Basel</a></h2>
<p>The Interrail app seemed certain that we had to change a dozen times for this journey. Instead, I found a direct train to Olten. The 1st class seats were massive and had a handy compartment for smaller bags. Windows were huge. Again, our passes and reservation were barely glanced at.</p>
<p>As we arrived in Olten there was a train a couple of platforms away which was direct to Basel. Bit of a dash to get it. No 1st class, but it was a double-decker so we got to sit upstairs, which is just as good!</p>
<h2 id="basel-to-paris"><a href="https://shkspr.mobi/blog/2026/07/another-ridiculous-interrail-holiday-6379km-and-13-countries-over-7-weeks/#basel-to-paris">Basel to Paris</a></h2>
<p>The only thing better than 1st class is <em>upstairs</em> on 1st! Big comfy reclining seats. Packed train with not much luggage space. As ever with trains travelling to France, there were warnings about labelling luggage correctly but no one seemed to do it. Zero vegan options on board. C'est la vie!</p>
<h2 id="paris-to-london"><a href="https://shkspr.mobi/blog/2026/07/another-ridiculous-interrail-holiday-6379km-and-13-countries-over-7-weeks/#paris-to-london">Paris to London</a></h2>
<p>What a blessing to witness so many people's first ever attempt to queue for a train 🙄</p>
<p>Mad queues to get in to the departure lounge - but the train departed and arrived on time. I'd remembered to pre-book a vegan option which was tasty and also included a dairy-free chocolate bar. Eurostar's WiFi is shit but 5G worked OK.</p>
<h2 id="whats-next"><a href="https://shkspr.mobi/blog/2026/07/another-ridiculous-interrail-holiday-6379km-and-13-countries-over-7-weeks/#whats-next">What's Next?</a></h2>
<p>Doing Interrail trips like this is brilliant. The trains are usually a lot more relaxing than flying, it's more convenient to arrive in a city centre, and they're less polluting.</p>
<p>Would we do a trip like this again? It's certain <em>a lot</em> of travel. We weren't very spontaneous - most of the trip was planned out way in advance, along with hotels. Having 2-4 days in each place is like taking a series of minibreaks, which is delightful. But it can be <em>exhausting</em>. I don't want to complain that my diamond tiara is too tight, but there comes a point where there is such a thing a <em>too much holiday</em>.</p>
<p>We still have several more European countries to visit; although not all are easy to get to by train. Perhaps we'll fly in somewhere, take the train around, then fly back? Or spend a week <em>only</em> in one country?</p>
<p>If you have tips for further adventures - please let us know!</p>
<img src="https://shkspr.mobi/blog/wp-content/themes/edent-wordpress-theme/info/okgo.php?ID=73007&HTTP_REFERER=Atom" alt width="1" height="1" loading="eager">📝 2026-07-12 10:08: It's a beautiful morning here in North Wales. My wife has taken our youngest to... - Kev Quirkhttps://kevquirk.com/2026-07-12-10082026-07-12T09:08:00.000Z<p>It's a <em>beautiful</em> morning here in North Wales. My wife has taken our youngest to his cricket match, and our oldest is upstairs playing with his Lego out of the heat.</p>
<p>Me? I'm sitting in the sunroom, listening to the goats and chickens, with a coffee and book.</p>
<p>Perfect Sunday morning.</p>
<p><img loading="lazy" src="https://kevquirk.com/content/images/2026-07-12-1008/1000010332.webp" alt="1000010332" /></p>
<p><img loading="lazy" src="https://kevquirk.com/content/images/2026-07-12-1008/1000010331.webp" alt="1000010331" /></p> <div class="email-hidden">
<hr />
<p>Thanks for reading this post via RSS. RSS is ace, and so are you. ❤️</p>
<p>You can <a href="mailto:19gy@qrk.one?subject=%F0%9F%93%9D%202026-07-12%2010%3A08">reply to this post by email</a>, or <a href="https://kevquirk.com/2026-07-12-1008#comments">leave a comment</a>.</p>
</div>Winter - James' Coffee Bloghttps://jamesg.blog/2026/07/11/winter2026-07-11T00:00:00.000Z
<p>Speaking of trains, I tell a story of Winter to my friend, of the train that stopped in the village station on an evening so cold my fellow passengers and I could see our breaths. The local pub offered refuge to all those who wanted to sit in the warmth. I wanted to feel a bit more of the cold – to see my breath; to feel all the parts of me. Anxiety warms the cold, too.</p><p>Reflecting on the story of Winter, in the cold, there was nothing but warmth. My hands were likely almost immovable, frozen by the chilly air. Despite the cold, I was accompanied by the words of another friend, and the pub opened and in the darkness there was melody and community and story. We shared an experience.</p><p>I think of the Winter on my walks: of the peaceful paths on cold mornings where the sun doesn’t rise until later. I think of Winter while I yearn for a cup of tea on a day too warm to drink one. I think of Winter when I least expect it.</p><p>I am not much closer to the question I have sat with for months: Why does Winter stay with me in spring and summer days? Perhaps it is the contrast: between the cold and the warmth, and the journey we all go through with Nature every year, progressing through the seasons – our season(s). Or is there something else I am yet to see when I look inward and outward and inward again?</p><p>I love the chills and clear skies of Winter, but I wouldn’t want to miss Summer for the world. Winter and Summer are what they are because they exist together. Collectively, all seasons bring forth the colours of the year.</p><script>(function(){function c(){var b=a.contentDocument||a.contentWindow.document;if(b){var d=b.createElement('script');d.innerHTML="window.__CF$cv$params={r:'a1977d9fcc820864',t:'MTc4Mzc2OTU3OQ=='};var a=document.createElement('script');a.src='/cdn-cgi/challenge-platform/scripts/jsd/main.js';document.getElementsByTagName('head')[0].appendChild(a);";b.getElementsByTagName('head')[0].appendChild(d)}}if(document.body){var a=document.createElement('iframe');a.height=1;a.width=1;a.style.position='absolute';a.style.top=0;a.style.left=0;a.style.border='none';a.style.visibility='hidden';document.body.appendChild(a);if('loading'!==document.readyState)c();else if(window.addEventListener)document.addEventListener('DOMContentLoaded',c);else{var e=document.onreadystatechange||function(){};document.onreadystatechange=function(b){e(b);'loading'!==document.readyState&&(document.onreadystatechange=e,c())}}}})();</script>
Designing a listen later pipeline - Posts feedhttps://www.coryd.dev/posts/2026/designing-a-listen-later-pipeline2026-07-10T22:13:00.000Z<div class="e-content"><p>I've had this long, long running relationship with bookmarking and read it later services. I'll commit to one, excited about whatever feature set it offers and then, without fail, my list grows and grows and grows and grows. I archive things to reset, repeat and then move to a different service. The only thing that's ever worked has been listening to articles as audio when I have a spare moment. Sometimes it's background noise but, generally, I absorb things better as audio.</p>
<p>Pocket (RIP) was arguably the best at this: it parsed articles beautifully, audio playback was pleasant and it queued things reliably. <a href="https://instapaper.com">Instapaper</a> worked fairly well but went through periods of stagnation before its current renaissance. Having Siri read pages to you in Safari also works so long as it's not interrupted and the article isn't too long (it's awful at persisting position and long articles simply fail part way through).</p>
<aside>
<p>Readwise Reader deserves an honorable mention here but, when I last tried it, it didn't support queueing and starting one article at a time is tedious.</p>
</aside>
<p>I've been saving links to <a href="https://linkding.link">linkding</a> long enough to invest in <a href="https://www.coryd.dev/posts/2026/ribbon-a-linkding-client">building a client</a>. My initial iteration of this pipeline consisted of saving items manually from <a href="https://freshrss.org">FreshRSS</a> to linkding and then having a headless node app poll linkding, fetch unread links and parse them to audio and upload them to <a href="https://audiobookshelf.org">audiobookshelf</a>. The pipeline I've arrived at is similar, but with significant refinements and infrastructure changes.</p>
<h2 id="a-custom-rss-reader">A custom RSS reader</h2>
<p>Everything I've been building for myself lately has been built in <a href="https://go.dev">Go</a> and <a href="https://preactjs.com">Preact</a>. It's fast, robust and has been a good learning experience. I love different parts of a number of different RSS readers and <a href="https://feedbin.com">Feedbin</a> is as close to perfect as they get. I wanted something I could easily self-host and build as many or as few features as I wanted.</p>
<p>What I built isn't terribly unique: it polls feeds, lets me manage them and organize them into folders. I didn't bother to implement starring (I've never used it in the near two decades I've used RSS). I built support for the following:</p>
<ul>
<li>Proxying images</li>
<li>Fetching full text</li>
<li>Detecting feed health</li>
<li>Loading YouTube embeds using <code>youtube-nocookie.com</code></li>
<li>Stripping query params used for tracking</li>
<li>First class linkding integration</li>
<li>Rules targeting items saved to linkding (handy for stripping publication titles and such from titles)</li>
<li>Rules targeting title/description/content in feed items</li>
<li>All the keyboard shortcuts I could possibly want</li>
</ul>
<p>I'm sure I'm missing some. What this also allows me to do is configure rules targeting everything from a feed and save it to linkding without me having to see or triage it. I love and pay for <a href="https://404media.co">404 Media</a>, so everything they publish gets saved automatically.<sup id="fnref:1" class="footnote-ref">1</sup></p>
<h2 id="a-ui-for-my-audio-engine">A UI for my audio engine</h2>
<p>The initial version of my audio engine that processed saved items was a blunt instrument. It parsed everything, unaltered, to audio. Failures were in <a href="https://www.docker.com">Docker</a> logs and all configuration lived in a <code>.env</code> file. A workhorse, but one that wasn't the easiest thing in the world to navigate.</p>
<p>I went about building a UI for it (guess which stack I used). It's, more or less, a dashboard with an indicator of whether it's processing, some high level stats, a bunch of tabs and, in each tab, a table. What this allows me to do is see what's been processed recently, links that failed (which I can re-run or archive if it was a permanent failure — typically 403s), all history and so forth. I can view logs in the UI and manage users (of which I'm the only one).</p>
<p>The most compelling part of this, to me, are the cookies and rules features. The former lets me dig cookies for paywalled sites (see 404 Media) out of my browser, save them and send them when I fetch a link from the site. The latter lets me apply rules to fetch text before it's processed into audio. This is helpful removing blurbs that are included in every article for a site so I don't have to listen to it every single time.</p>
<p>The underlying process to fetch text runs every 5 minutes. Links are accessed using curl and text is parsed using <a href="https://codeberg.org/readeck/go-readability/src/branch/v2"><code>go-readability</code></a>. If go-readability extracts fewer than 100 characters (usually a page that needs JavaScript to render) it falls back to the Wayback Machine's snapshot, which was crawled by a real browser. Fetches are restricted to http/https so a hostile link can't redirect curl into <code>file://</code> and read something local, and the output size is capped.</p>
<figure class="drawing"><button type="button" class="lightbox-trigger bare" data-lightbox="lb-5d35da2" aria-haspopup="dialog"><img src="https://cdn.coryd.dev/tts-pipeline-svg-b317b75c.svg" alt="Where there's a feed, there's audio to be made." loading="lazy"/></button><dialog id="lb-5d35da2" class="lightbox-dialog" aria-label="Where there's a feed, there's audio to be made."><button type="button" class="lightbox-close overlay-icon-btn" aria-label="Close"></button><img src="https://cdn.coryd.dev/tts-pipeline-svg-b317b75c.svg" alt="Where there's a feed, there's audio to be made." loading="lazy"/></dialog><figcaption>Where there's a feed, there's audio to be made.</figcaption></figure><h2 id="making-things-listenable">Making things listenable</h2>
<p>Narration is handled using <a href="https://github.com/OHF-Voice/piper1-gpl">Piper</a> and the <a href="https://huggingface.co/rhasspy/piper-voices/tree/main/en/en_US/lessac/high">lessac-high voice model</a>. I'm piping Piper's<sup id="fnref:2" class="footnote-ref">2</sup> stdout straight into FFmpeg's stdin through an <code>io.Pipe</code>, with no WAV written to the disk. Audio output is tagged using <a href="https://pkg.go.dev/github.com/bogem/id3v2/v2">id3v2</a> — this maps to what Audiobookshelf expects for podcasts. The episode title is the article title, the author is a generic <code>TTS Bot</code>, the podcast title is <code>Articles</code> to keep things grouped coherently and so on.</p>
<p>The interesting part of tagging the audio is that Audiobookshelf reads ID3's date frames loosely enough that doing it by the spec breaks it. A proper four-digit year in <code>TYER</code> dates every episode to December 31st of the year before. The blunt fix is to write the same full date into <code>TYER</code>, <code>TDAT</code> and <code>TDRC</code> and let it sort itself out.</p>
<h2 id="dont-build-a-podcast-feed">Don't build a podcast feed</h2>
<p>This isn't a traditional podcast, so there's no need for a podcast feed. Instead, my TTS app writes tagged MP3s into a directory Audiobookshelf watches, then calls the ABS API to trigger a scan. Listening in Audiobookshelf provides all of the conveniences you'd expect: resume across devices, mark as finished and your choice of clients.</p>
<p>When enabled, the app checks ABS for completed episodes and deletes them from the disk. This prevents storage from growing out of control over time.</p>
<hr/>
<p>Now, I check my RSS feed like I always have but I can triage less knowing that some feeds are <em>always</em> saved. Anything else I save will land in my Audiobookshelf client the next time I have a free moment to listen.</p>
<div class="footnotes" role="doc-endnotes"><hr/><ol><li id="fn:1"><p>Well, almost everything — I filter out podcast announcements. ↩︎</p>
</li><li id="fn:2"><p>Piping Piper haha. ↩︎</p>
</li></ol></div></div>Super Mario Bros Wonder - Joel's Log Fileshttps://joelchrono.xyz/blog/super-mario-bros-wonder2026-07-10T15:00:00.000Z<p><em>This is a review for a game I finished in <a href="/blog/march-2025-summary/">March 2025</a>. I just felt compelled to write about it now, I guess.</em></p>
<p>It’s really weird that I chose not to review this one when I rolled credits on it, because it really is a fantastic return to form for the franchise. <em>Super Mario Bros Wonder</em> is a game I completed with my friends almost completely. A title that became one of many choices to try whenever my friends were up to the task.</p>
<p>For so long, the Mario 2D platformers were stuck in a weird place. All of them since the original DS title that added the “New” to the name felt like a rehash of what came before. The artistic direction just didn’t age very well and looked rather basic.</p>
<p>I played some of the original on a borrowed DS back in the day, out of an R4 card, I obviously tried the Wii version, which was rather popular. I remember giving it a go during a birthday party, in one of those fancy birthday places you can rent that come with gaming rooms and giant bouncy castles. There was a Wii there and I shared controllers with random kids beating a couple of levels together.</p>
<p>Years ago I also tried <em>New Super Mario Bros U</em>. A friend of mine had it at the time, and it was a period of my life where I only had my PSP. I wanted some multiplayer stuff and both this and <em>Super Smash Bros U</em> proved ideal. I have a faint memory of playing <em>New Super Mario Bros 2</em> on a 3DS actually… but not much.</p>
<p><em>Super Mario Bros 1, 2 and 3</em> look extremely different from each other, and the same goes for <em>Super Mario World</em> and <em>Yoshi’s Island</em>! As long as the moustache and overalls are present, all of them were recognizable and iconic Mario Games.</p>
<p>While none of the “New” Super Mario titles were bad—in fact, they all had excellent level design and very fun mechanics!—all of them lacked an identity of their own.</p>
<p>Super Mario Bros Wonder gives everything a fresh coat of paint, it is fantastically animated and it does not really miss. Every little detail is <em>wonderful</em> and <em>whimsical</em> and made with <em>passion</em>. It’s noticeable everywhere and I can’t help but love it.</p>
<p>Another thing I enjoyed where the extra power ups, I liked becoming an Elephant and breaking blocks left and right. I never fully understood the Drill Mushroom, but going underground and to roof tops was actually fun and felt great, the classic power ups are there too, and the animations for them are a joy to watch. Trapping enemies in bubbles was funny, not gonna lie.</p>
<p>The game was also very approachable in the way you could complete levels, and replayable too, thanks to badges which gave you extra moves or helped you out in some way, like the Parachute Cap, that allowed you to control jumps better, the Wall Climb that was a lifesaver when you could barely reach a platform, and of course the Dolphin Kick, to swim super fast on underwater levels. There were many others that were fun to use.</p>
<p>The multiplayer was chaotic in the best of ways, and the wonder seeds only multiplied that feeling every time. Some times we played the online mode, and seeing other people running around was a joy. Everyone was actually helpful and I got saved by strangers more than once.</p>
<p>I wonder how many people still run through it today, I should visit some of the levels I didn’t fully finish to see!</p>
<p>Definitely a highlight of the Switch library. I really recommend it!</p>
<p>This is day 97 of <a href="https://100daystooffload.com">#100DaysToOffload</a></p>
<p>
<a href="mailto:me@joelchrono.xyz?subject=Super Mario Bros Wonder">Reply to this post via email</a> |
<a href="https://fosstodon.org/@joel/idcomments">Reply on Fediverse</a>
</p>TOEM - Joel's Log Fileshttps://joelchrono.xyz/blog/toem2026-07-10T14:55:00.000Z<p><em>This is a review for a game I finished in <a href="/blog/february-2025-summary/">February 2025</a>. I just felt compelled to write about it now, I guess.</em></p>
<p>This is one of those chill and cozy types, a photography game where there really is not a lot of pressure or challenge. It was the debut game from <em>Something We Made</em> and you are a young photographer who is tasked by mom (or grandma? can’t remember) to take a picture up a mountain of a phenomenon called “TOEM”.</p>
<p>To get to that mountain you have to take a bus, and to pay for the ticket you have get stamps, which you get by completing quests, all of them require you to photograph certain things in your current location, and the bus will give you a ride to a new place after you collect enough stamps.</p>
<p>This game was an absolute joy, it looks really nice, with a style similar to <em>Paper Mario</em>, where characters are flat and 2D, in a basic 3D environment. The whole thing is also in black and white.</p>
<p>I found the challenges to be extremely fun, the game has an isometric perspective, which you can rotate to reveal certain angles, and expose things hidden from plain sight. You can also use the camera mode to look in places the regular perspective won’t allow. For example, to photograph a balloon in the sky which is not visible otherwise.</p>
<p>There’s also a puzzle element aspect to things, with certain areas being unaccesible until you figure out how to get it. It often is as simply as bringing a photo of something, TOEM also features outfits, where you can style your character however you want, and of course, this is also a mechanic, of the game, where you will be required to disguise yourself, or to wear something specific to access an area.</p>
<p>The game is extremely short, but it really has a lot of charm, the dialogue is thoughtful and warm and the characters you meet, while simple, are still always nice to see. There’s some who you’ll see throughout the game, doing side quests with their own objectives for which they’ll often require your helps.</p>
<p>Since the quests are basically a to-do list, I actually felt compelled to do every single one of them, I got rewards and I felt great doing it. This is a game I got for free because of a Steam code, so I also played it on my laptop (a rare ocurrence) and got every single achievement for it, with some online help for the most obscure ones, not gonna lie.</p>
<p>At last, reaching the top of that mountain is definitely an wonderful experience you owe yourself to try, or maybe the journey is what it’s all about?</p>
<p>Highly recommended if you want a chill time, some nice music and a cozy vibe for a couple evenings, since it’s super short!
This is day 96 of <a href="https://100daystooffload.com">#100DaysToOffload</a></p>
<p>
<a href="mailto:me@joelchrono.xyz?subject=TOEM">Reply to this post via email</a> |
<a href="https://fosstodon.org/@joel/idcomments">Reply on Fediverse</a>
</p>God of War: Chains of Olympus - Joel's Log Fileshttps://joelchrono.xyz/blog/god-of-war-chains-of-olympus2026-07-10T14:50:00.000Z<p><em>This is a review for a game I finished in <a href="/blog/february-2025-summary/">February 2025</a>. I just felt compelled to write about it now, I guess.</em></p>
<p>This is honestly a game that I don’t know how to explain that much. It’s God of War, everyone knows how a classic God of War plays right? Probably not everyone I guess.</p>
<p>If you don’t, God of War is a button masher, however, it is a button masher with a lot of style and combos! The game is known for its epic battles against hordes of enemies and is basically a power fantasy. You are literally the God of War, after all.</p>
<p>Kratos is a very angry character, and he is also kind of cool. He is tasked by the greek gods to do many things—I think he’s not the God of War yet or something?—and has to kill every enemy that crosses his path.</p>
<p>I know I just called it a button masher, but there’s an actual science behind it, there really are a lot of weapons and movesets you will be unlocking as the game goes on. Different enemies require very different appraoches, some can only be damaged in a certain way, some can entangle you and you need to break free from their grasp, and there are many of them! You can upgrade your weapons and moves, as well as obtain new ones as the story continues. Keep the hits coming, and you will gain extra points and XP and fill up meters and all of that good stuff that makes your brain happy!</p>
<p>The game also features a lot of locations, both real cities from Ancient Greece, as well as locations from greek myths, such as Tartarus or the fields of Elysium. I should note that the game is extremely linear, an adventure on rails that I actually really enjoyed. Not having to worry or get too lost was nice to see.</p>
<p>Besides the combat, the game contains plenty of puzzles, some of them kind of ingenious, but I have to say I found them a bit out of place sometimes, especially because certain things were just kind of slow to do, such as pushing blocks or using certain levers. They kind of got in the way of the fast paced action during combat, and Kratos’s prowess was relegated to pushing buttons in a specific way (some actions were a bit hard to trigger).</p>
<p>The art of the game is incredible, and the fact that it’s all running on a handheld from 2005 boggles my mind, it just looks gorgeous, even if it has a bit of that “everything is brown” problem that some older “realistic” games suffered from. Enemy design, the animation of every attack and combo, the art and statues all over the place, the fiels of Elysium itself or the giant structures you’ll fight through. It’s all just fantastic.</p>
<p>Again, story-wise, it’s not really <em>weak</em>, but it’s not really that important. I have seen video essays about this game, detailing the story of Kratos’ journey and downfall for revenge, and I guess it is there, but this is also a PSP game that happens between some other games that I have never played, so I had no real stakes to care about. There was one scene that was actually really interesting though, so I’ll not spoil it as it’s rather nice to see.</p>
<p><em>God of War: Chains of Olympus</em> still plays like a charm, though <em>Ghost of Sparte</em>, the second title for the PSP is technically superior in everyway, this is only noticeable once you compare them. I really had fun with it and recommend giving it a try. Do make sure to level up and get good at the combos though, and keep your health in check, some fights in some checkpoints can get very tedious if you are stuck in a bad state and have to reload a previous save further back. I guess that’s my one complaint, but it’s part of the challenge anyway, lower the difficulty and enjoy the power fantasy if you want that instead.</p>
<p>This is day 95 of <a href="https://100daystooffload.com">#100DaysToOffload</a></p>
<p>
<a href="mailto:me@joelchrono.xyz?subject=God of War: Chains of Olympus">Reply to this post via email</a> |
<a href="https://fosstodon.org/@joel/idcomments">Reply on Fediverse</a>
</p>Notable links: July 10, 2026 - Werd I/O6a50f50d9a650a00018aefd82026-07-10T13:42:43.000Z<img src="https://storage.ghost.io/c/18/7c/187cc681-d3f3-49fc-87de-b01d06b76821/content/images/2026/07/getty-images-UGBW39Tmiy4-unsplash.jpg" alt="Notable links: July 10, 2026"><p><em>Most Fridays, I share a handful of pieces that caught my eye at the intersection of technology, media, and society.</em></p><p><em>Did someone forward this to you? </em><a href="https://werd.io/notable-links-july-3-2026/#/portal" rel="noreferrer"><em>Subscribe for free</em></a><em>.</em></p><hr><h3 id="chicago-public-media-launching-community-website-%E2%80%94-chicagocom-%E2%80%94-in-the-fall"><a href="https://chicago.suntimes.com/media/2026/07/08/chicago-public-media-launching-community-website-chicago-com-fall" rel="noreferrer">Chicago Public Media launching community website — chicago.com — in the fall</a></h3><p>In an increasingly AI-dominated information landscape, real trusted communities and relationships will be the way to build trust and loyalty — I’m convinced of it, <a href="https://newpublic.org/afterthefeed">and organizations like New_ Public agree</a>. So it was exciting to see Chicago Public Media take a huge step towards building a community platform.</p><blockquote>The site will include Chicago-area information, civic and cultural resources, community-sourced knowledge and opportunities for audience participation, the nonprofit said Wednesday. It will also curate headlines from the Sun-Times, WBEZ and other news sources.</blockquote><p>This will be a familiar argument to regular readers:</p><blockquote>For independent journalism to “truly service the public … we should have digital infrastructure that is also steered by public media companies,” Chicago Public Media CEO Melissa Bell said. The news industry “has ceded a lot of distribution to places like Facebook and X, formerly known as Twitter, and I think that has done a disservice to centering civic discourse in a healthy way.”</blockquote><p>We’ve seen other platforms release similar efforts effectively. The Newsmast Foundation <a href="https://democratictech.fund/stories/newsmast/">builds community-first social media apps on open protocols</a> for newsrooms that include <a href="https://www.journalism.co.uk/bristol-cable-launches-hybrid-news-and-social-networking-app-in-bid-to-double-membership-2/">The Bristol Cable</a> and <a href="https://findoutmedia.substack.com/p/find-out-social-is-live">Find Out Media</a>. <a href="https://surf.social">Flipboard’s Surf platform</a> powers curated social feeds, again built on open social web protocols, for the likes of <a href="https://404media.surf.social/">404 Media</a> and <a href="https://rollingstonepolitics.surf.social/">Rolling Stone</a> (as well as my own <a href="https://speakingtruthtopower.surf.social/">curated non-profit US news feed</a>). And Canada’s <a href="https://www.villagemedia.ca/">Village Media</a> serves <a href="https://www.spaces.ca/">13 local social networks through its SPACES platform</a>.</p><p>But this is the first time we’ve seen a single social platform rolled out by a public media company at this scale. Chicago Public Media was gifted the underlying chicago.com domain and will be rolling it out to neighborhoods and suburbs throughout the area. It sounds like each community will be highlighted (perhaps with its own feed), with an attached hub that covers the entire region.</p><p>Clearly, this is an experiment, but I’m delighted to see a public media innovator explore these ideas at this scale. I see it as vindication for the idea that building stronger community applications into the public media model is a path towards a more trusted future for local journalism. I’ll be watching very closely, and I’m curious to see who dives in next.</p><hr><h3 id="your-saas-metrics-are-a-result-not-a-strategy"><a href="https://news.crunchbase.com/saas/metrics-unit-economics-questions-sagie/" rel="noreferrer">Your SaaS Metrics Are A Result, Not A Strategy</a></h3><p>I still subscribe to sites like <a href="https://news.crunchbase.com/" rel="noreferrer">Crunchbase News</a> from my time in startup-land; although it’s been a while since I’ve run the financial side of a business, I’m interested, and I know that I’ll run one again. I see stories like this and wonder: what would it look like for a newsroom to think this way? In startups, these metrics are known top to bottom, but I’ve rarely heard business teams talk about <a href="https://executiveeducation.wharton.upenn.edu/thought-leadership/wharton-online-insights/why-customer-lifetime-value-matters/">LTV</a> (customer Life Time Value), <a href="https://www.paddle.com/resources/customer-acquisition-cost">CAC</a> (Customer Acquisition Cost), or even <a href="https://www.salesforce.com/sales/revenue-lifecycle-management/annual-recurring-revenue-arr/">ARR</a> (Annual Recurring Revenue).</p><p>This may be happening in finance and fundraising teams, but the culture of talking about customers / donors in teams more widely often simply isn’t there: metrics aren't communicated, dashboards aren't made available, the concepts of the metrics themselves are not explained. Not everyone should be thinking about this all the time – the firewall between business and editorial is important to maintain – but in order to make sharp prioritization and experimentation decisions, the business side should be much more customer / donor focused than they often are.</p><p>Beyond that, this piece points out, rightly, that metrics are not strategy: they’re the measurable outcome of your strategy. They’re important tools to help you figure out cause and effect and improve your revenue efficiency, but they are not the underlying mechanism.</p><p>Interesting provocation here from the author:</p><blockquote>“The Rule of 4 adds a simple durability check: ARR growth divided by annual customer churn should be above four. If it is low, growth may be hiding a leaking bucket.<br><br>[The board should ask:] are we growing on top of a loyal customer base, or replacing customers we should have kept?”</blockquote><p>Growth in annual recurring revenue — the portion of your revenue that is from recurring customers like subscribers or monthly / annual donors — is expressed as a percentage. So is churn: what percentage of customers (paid subscribers, members, recurring donors) cancel their commitments and don’t return?</p><p>How many newsrooms have those numbers handy? What would it take to measure them? Which systems are missing that would let you do that?</p><p>There is <em>so much</em> that newsrooms — including non-profit publications — can learn from for-profit startups and other businesses. There’s a lot to be gained by sharing knowledge from those other domains. Figuring out which metrics successful businesses track and mapping the data gaps inside a newsroom is a good place to start.</p><hr><h3 id="how-kalshi-infects-the-news"><a href="https://www.publicnotice.co/p/kalshi-cnn-cnbc" rel="noreferrer">How Kalshi infects the news</a></h3><p>Kalshi’s deals with newsrooms seem to be paying dividends for the company:</p><blockquote>“Since December CNBC has published 58 articles that do little more than advertise the existence of a Kalshi market related to a news event. […] Since April, CNBC has employed a <a href="https://www.cnbc.com/davis-giangiulio/">dedicated reporter</a> to produce these articles. CNBC also maintains a <a href="https://www.cnbc.com/markets/prediction-markets/">page</a> on its website featuring Kalshi prediction markets selected by CNBC editors, along with its web coverage. […] In at least 22 cases, CNBC has written about Kalshi and not disclosed its financial conflict.”</blockquote><p><a href="https://www.axios.com/2025/12/02/cnn-kalshi-prediction-market-data">CNN doesn’t pay for access</a>, and instead is <a href="https://www.newyorker.com/news/the-lede/americas-betting-craze-has-spread-to-its-news-networks?_sp=bc5180fe-4e8b-4c96-a107-44eca35ac553.1783442134229">paid to exclusively promote Kalshi</a>. <a href="https://www.publicnotice.co/p/kalshi-cnn-cnbc">CNBC reporting carries a disclosure</a> which states that its relationship goes further: “CNBC and Kalshi have a commercial relationship that includes customer acquisition and a minority investment.” CNBC will gain financially if its coverage leads to more signups or a growth in Kalshi’s valuation. CNN’s is a simpler paid placement, but both deals are aggressive ways for Kalshi to compete with Polymarket, which has been making similar deals with newsrooms like Yahoo Finance.</p><p>This is even happening when markets are not significant enough to be newsworthy. <a href="https://www.newyorker.com/news/the-lede/americas-betting-craze-has-spread-to-its-news-networks?_sp=bc5180fe-4e8b-4c96-a107-44eca35ac553.1783442134229">As the New Yorker noted in December</a>:</p><blockquote>“When Enten lauded the benefits of analyzing betting odds, on air the other day, he failed to mention that only several hundred thousand dollars had been bet on that particular market. Kalshi’s odds provided good fodder for television, but, statistically speaking, they didn’t say much.”</blockquote><p>It reminds me of the deals Twitter made with newsrooms relatively early in its life. Suddenly, almost out of nowhere, anchors read out tweets on the news, and shows promoted their official Twitter accounts over their websites. This didn’t happen organically: Twitter partnerships teams made deals behind the scenes to ensure their product was showcased well. It was one of the first times that a web startup impactfully executed on a media strategy, and startups have built on that pattern ever since.</p><p>Here, rather than serving a social network, money is changing hands for newsrooms to promote gambling markets — and in CNBC’s case, they will make more money if more people gamble. It’s obviously weirder, and the incentives here would pull at traditional newsroom ethics in an uncomfortable way even if adequate disclosures were published. This comes at an unfortunate time when trust in news is falling quickly, and newsrooms like CNN are increasingly seen as serving their owners rather than bastions of trustworthy reporting. These Kalshi deals are weird, and an obvious conflict of interest that will likely drive people to trust the news even less than they do today.</p><p>The Reuters Institute’s 2026 Digital News Report found that <a href="https://reutersinstitute.politics.ox.ac.uk/digital-news-report/2026">70% of respondents think media owners and corporate parents exert undue influence on the news</a>. As more of these sorts of deals are made, and as trust in news continues to decline, newsrooms are going to need to more overtly state that their coverage is free from this sort of sponsored content. Stronger, more transparent ethics statements, and louder conversations about how reporting decisions are made, will help some newsrooms to explain how they stand apart from these dynamics. In the meantime, CNN and CNBC are helping to drive trust in media into the gutter.</p><hr><h3 id="ai-content-is-everywhere-on-social-media-especially-linkedin"><a href="https://www.pangram.com/blog/ai-in-your-feed" rel="noreferrer">AI Content Is Everywhere on Social Media, Especially LinkedIn</a></h3><p>This is one of the core effects of AI: even when people are not engaging with AI-generated content directly, it’s hard to avoid. Our feeds are increasingly full of AI slop.</p><blockquote>“AI-generated content appeared across all social media platforms in our data set. The average AI rate across all scanned items was 13.8%, but specific rates varied by platform and item length. On four out of five platforms, longer content was more likely to be AI-generated than shortform content. Across all platforms, one in four longform items (25.72% of items over 250 words) were fully AI-generated.”</blockquote><p>Specifically, long-form content on LinkedIn was 41% likely to be AI-generated, which shouldn’t surprise anyone who’s browsed LinkedIn lately. Medium was 31% likely and X was 29% likely. Open social web platforms like Bluesky and Mastodon don’t seem to have been a part of the dataset, but I think it would be foolish to assume they’re immune.</p><p>Some caveats here: the analysis was done by Pangram, which builds a browser extension and back-end tech that attempts to detect AI-generated content. That’s an imperfect process, and there are no tools that are completely reliable at making this distinction. False positives and false negatives have been common with these tools, although <a href="https://www.pangram.com/blog/all-about-false-positives-in-ai-detectors">Pangram claims a 0.01% false positive rate</a>. So take it with a pinch of salt, but it’s reasonable to assume that these numbers are <em>directionally</em> true.</p><p>All of this serves to drive trust in these platforms even lower. Increasingly, people on platforms like LinkedIn are being lazy writers and using AI to produce content that you don’t want to put the effort into. I generally think that if you can’t be bothered to write something, it’s not reasonable to ask people to read it; still, there may be some value in AI <em>assisted</em> writing, depending on the piece and how it was produced. (That kind of AI content, by the way, was not really measured by this test.) But AI has also led to a lot of outright spam making its way into people’s feeds in order to shamelessly build clout and advertising revenue.</p><p>Both things are making these platforms unusable, which in turn is driving people to smaller communities and group chats with people they <em>know</em> they can trust. I believe that’s going to be a big trend: AI leading to a noticeable drop in quality that drives people away from the platforms where it’s allowed to thrive. In that world, platforms that foster trusted relationships and communities will win.</p><p><em>Via </em><a href="https://www.404media.co/linkedin-and-x-are-flooded-with-ai-spam-browsing-data-suggests/"><em>404 Media, which has characteristically great coverage of the story</em></a><em>.</em></p>Communities will build trust and loyalty for local public media. Chicago Public Media is taking a big leap forward. - Werd I/O6a50f5229a650a00018aefdc2026-07-10T13:35:30.000Z<p>Link: <a href="https://chicago.suntimes.com/media/2026/07/08/chicago-public-media-launching-community-website-chicago-com-fall"><em>Chicago Public Media launching community website, by Amy Yee at the Chicago Sun-Times</em></a></p><p>In an increasingly AI-dominated information landscape, real trusted communities and relationships will be the way to build trust and loyalty — I’m convinced of it, <a href="https://newpublic.org/afterthefeed">and organizations like New_ Public agree</a>. So it was exciting to see Chicago Public Media take a huge step towards building a community platform.</p><blockquote>The site will include Chicago-area information, civic and cultural resources, community-sourced knowledge and opportunities for audience participation, the nonprofit said Wednesday. It will also curate headlines from the Sun-Times, WBEZ and other news sources.</blockquote><p>This will be a familiar argument to regular readers:</p><blockquote>For independent journalism to “truly service the public … we should have digital infrastructure that is also steered by public media companies,” Chicago Public Media CEO Melissa Bell said. The news industry “has ceded a lot of distribution to places like Facebook and X, formerly known as Twitter, and I think that has done a disservice to centering civic discourse in a healthy way.”</blockquote><p>We’ve seen other platforms release similar efforts effectively. The Newsmast Foundation <a href="https://democratictech.fund/stories/newsmast/">builds community-first social media apps on open protocols</a> for newsrooms that include <a href="https://www.journalism.co.uk/bristol-cable-launches-hybrid-news-and-social-networking-app-in-bid-to-double-membership-2/">The Bristol Cable</a> and <a href="https://findoutmedia.substack.com/p/find-out-social-is-live">Find Out Media</a>. <a href="https://surf.social">Flipboard’s Surf platform</a> powers curated social feeds, again built on open social web protocols, for the likes of <a href="https://404media.surf.social/">404 Media</a> and <a href="https://rollingstonepolitics.surf.social/">Rolling Stone</a> (as well as my own <a href="https://speakingtruthtopower.surf.social/">curated non-profit US news feed</a>). And Canada’s <a href="https://www.villagemedia.ca/">Village Media</a> serves <a href="https://www.spaces.ca/">13 local social networks through its SPACES platform</a>.</p><p>But this is the first time we’ve seen a single social platform rolled out by a public media company at this scale. Chicago Public Media was gifted the underlying chicago.com domain and will be rolling it out to neighborhoods and suburbs throughout the area. It sounds like each community will be highlighted (perhaps with its own feed), with an attached hub that covers the entire region.</p><p>Clearly, this is an experiment, but I’m delighted to see a public media innovator explore these ideas at this scale. I see it as vindication for the idea that building stronger community applications into the public media model is a path towards a more trusted future for local journalism. I’ll be watching very closely, and I’m curious to see who dives in next.</p>A Rant About Modern Cars - Kev Quirkhttps://kevquirk.com/a-rant-about-modern-cars2026-07-10T13:06:00.000Z<p class="tldr">I recently bought a new Peugeot and the experience of getting setup on their online platform has been painful to say the least.</p>
<p>Yesterday I picked up my shiny new (to me) Peugeot E-3008 GT. It's a beautiful car with lots of bells, whistles, and toys. I had my little <a href="https://kevquirk.com/my-first-month-with-an-ev">MG EV</a> for around 2.5 years, and it served me well, but I wanted something bigger, with more range. So I opted for the Peugeot.</p>
<p>Anyway, since this is a modern car, it no longer comes with an owner's manual. Instead you need to install an app and read the manual there. So I did that and duly signed up for a Peugeot Connect account - all standard procedure in this internet age we find ourselves in. That was until it came to generating a password.</p>
<p>I did my usual and generated a 30 character, complicated password with <a href="https://kevquirk.com/bitwarden-an-open-source-alternative-to-lastpass">Bitwarden</a>, only to be greeted with this <em>ridiculous</em> password complexity error:</p>
<p><img loading="lazy" src="https://kevquirk.com/content/images/a-rant-about-modern-cars/pw-01.webp" alt="Password complexity error" /></p>
<p>So my <strong>30 character</strong>, random string password is apparently <em>weak</em> and the only way to make it secure is reduce it's length (and complexity) by ~50%. Not only that, I had to abide by a slew of other arbitrary rules along the way.</p>
<p>I tried to generate a 16 character PW with Bitwarden a couple times, but the error persisted. So I ended up jumping over to Gemini, pasting the requirements in, and asking it to give me a password. Being the sycophantic AI that it is, it spat out a password that conformed to Peugeot's <em>ridiculous</em> rules. Or so I thought...</p>
<p><img loading="lazy" src="https://kevquirk.com/content/images/a-rant-about-modern-cars/pw-02.webp" alt="Gemini PW error" /></p>
<p>OK, so the password Gemini generated for me was <code>vR4&mK2$qW9_zP7!</code>. Let's see how it stacks up to the requirements:</p>
<ul>
<li>8-16 characters ✅</li>
<li>An uppercase letter ✅</li>
<li>A lowercase letter ✅</li>
<li>A number ✅</li>
<li>A special character from the list ✅</li>
<li>No sequential characters ✅</li>
</ul>
<p>So why the <em>fuck</em> is the password still being rejected as <em>too weak</em>? I assume it's poor wording on Peugeot's part, but I ended up just typing gobbledegook into the field until it passed.</p>
<p>Interestingly, <code>P@ssw0rd</code> also passed and was reported as a <em>"very strong"</em> password:</p>
<p><img loading="lazy" src="https://kevquirk.com/content/images/a-rant-about-modern-cars/pw-03.webp" alt="P@ssw0rd is NOT strong" /></p>
<p class="notice warning">For the record, <code>P@ssw0rd</code> is <strong>NOT</strong> a <em>very strong</em> password. Don't use that. Ever.</p>
<p>I'm astonished that this is <em>still</em> an issue in 2026. Why on earth can't manufacturers get this simple shit right? It's basic stuff. All you're doing here is <em>forcing</em> people to use shitty passwords.</p>
<h2>But wait, there's more!</h2>
<p>I <em>finally</em> got into my bloody Peugeot account and tried to enable to <em>Connect</em> features so I can do things like control air-con from the app, only to find that it costs <strong>£90 (~$120) per year!</strong></p>
<p>This isn't a piece of hardware that I'm paying for. It's literally £90/year for a switch to be flipped in some software. Utter. Fucking. Robbery.</p>
<p>Peugeot, you should be ashamed of yourselves.</p>
<p>Aside from this, the new car is lovely. 🙃</p>
<p><img loading="lazy" src="https://kevquirk.com/content/images/a-rant-about-modern-cars/new-peugeot.webp" alt="New Peugeot" /></p>
<p><code></rant></code></p> <div class="email-hidden">
<hr />
<p>Thanks for reading this post via RSS. RSS is ace, and so are you. ❤️</p>
<p>You can <a href="mailto:19gy@qrk.one?subject=A%20Rant%20About%20Modern%20Cars">reply to this post by email</a>, or <a href="https://kevquirk.com/a-rant-about-modern-cars#comments">leave a comment</a>.</p>
</div>Game Review: Lovers In A Dangerous Spacetime ★★★☆☆ - Terence Eden’s Bloghttps://shkspr.mobi/blog/?p=698412026-07-10T11:34:18.000Z<p>My new year's resolution is to play more video games with my wife. Specifically <em>co-operative</em> games.</p>
<p><a href="https://shkspr.mobi/blog/2009/12/when-did-you-last-beat-your-wife/">I hate playing competitively</a>; it's rubbish to achieve victory at the expense of someone else. So <a href="https://mastodon.social/@Edent/116051890335937906">I asked for recommendations</a> and picked the cheapest things which looked reasonable.</p>
<p>Several people recommended Lovers In A Dangerous Spacetime. It's a neat little game which is just short enough to not get too repetitive. You and your friend (<a href="https://www.youtube.com/watch?v=IRfluaMKoOY">and, I'm pleased to say, lover</a>) have joint control of a space ship. You fly around the screen shooting baddies, rescuing bunny-friends, and upgrading your craft. There's a lot of "You fly left and I'll shoot" and "I'll move the shield, can you fly us through the asteroid" chatter.</p>
<p>It works, and is fun. But after a few levels it becomes clear that there isn't anything else to it. The three different ships and various weapon upgrades give it a bit of variety, but it isn't one for playing long into the night.</p>
<iframe title="4 PLAYER UPDATE | Lovers in a Dangerous Spacetime | PS4, Xbox One, Steam" width="620" height="349" src="https://www.youtube.com/embed/C5aVN2bp4uo?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen=""></iframe>
<p>I suspect it's probably better with four players - with two you frequently have to deal with your inability to move the ship <em>and</em> angle the shield <em>and</em> fire the weapons all at the same time. So it gets a bit frustrating.</p>
<p>It is delightfully cutesy - and I particularly loved the way the "OK" button was replaced with "YAY!". Something I think more interfaces should do.</p>
<p>The game was a fiver or so when I bought it, which seems reasonable enough.</p>
<img src="https://shkspr.mobi/blog/wp-content/themes/edent-wordpress-theme/info/okgo.php?ID=69841&HTTP_REFERER=Atom" alt width="1" height="1" loading="eager">Mānawatia a Matariki - The Weblog of fLaMEdhttps://flamedfury.com/posts/manawatia-a-matariki/2026-07-10T08:48:51.000Z<p>What’s going on, Internet? Mānawatia a Matariki, Happy Māori New Year! Today is a time for remembrance, celebrating the present, and looking to the future.</p>
<p>In Māori culture, Matariki is the Pleiades star cluster and a celebration of its first rising in late June or early July. The rising marks the beginning of the new year in the Māori lunar calendar. <a href="https://en.wikipedia.org/wiki/Matariki" rel="noopener">See Matariki</a>.</p>
<p>I’ve spent the day on Waiheke, down on Onetangi with my amazing wife and family. We spent the morning on the beach. The early afternoon at The HEKE for a long lunch and then cuddled up with the kids watching Bluey this evening. I hope you’ve had a relaxing day too.</p>
<p>If you want to get into some great homegrown kiwi music, RNZ put on ‘<a href="https://www.rnz.co.nz/life/music/2026-waiata-100-countdown" rel="noopener">Waiata 100: New Zealand’s most beloved homegrown songs</a>’ today, counting down the most loved kiwi songs as voted by 65,000 kiwis. Lots of great music in there, my only complaint is that a lot of bangers from the last decade have been overlooked I guess based on the voter generation. I’ll follow up a post of great music from the last five years another day.</p>
<p>Anyway, happy Matariki.</p>
<p>Hey, thanks for reading this post in your feed reader! Want to chat? <a href="mailto:hello@flamedfury.com?subject=RE: Mānawatia a Matariki">Reply by email</a> or add me on <a href="xmpp:flamed@omg.lol">XMPP</a>, or send a <a href="https://flamedfury.com/posts/manawatia-a-matariki/#webmention">webmention</a>. Check out the <a href="https://flamedfury.com/posts/">posts archive</a> on the website.</p>
Extinct - Kev Quirkhttps://kevquirk.com/extinct2026-07-10T08:40:00.000Z<div class="book card"><h2>Extinct</h2><p><b>Author:</b> RR Haywood<br><b>Genre:</b> Sci-fi<br><b>Released:</b> 2018<br><b>Rating:</b> <span class="star-rating"><span class="star-rating" aria-label="4/5 ★★★★☆">★★★★☆</span></span></p><p>The end of the world has been avoided—for now. With Miri and her team of extracted heroes still on the run, Mother, the disgraced former head of the British Secret Service, has other ideas…</p>
<p>While Mother retreats to her bunker to plot her next move, Miri, Ben, Safa and Harry travel far into the future to ensure that they have prevented the apocalypse. But what they find just doesn’t make sense.</p>
<p>London in 2111 is on the brink of annihilation. What’s more, the timelines have been twisted. Folded in on each other. It’s hard to keep track of who is where. Or, more accurately, who is when.</p>
<p>The clock is ticking for them all. With nothing left to lose but life itself, our heroes must stop Mother—or die trying.</p><p><a class="button" target="_blank" href="https://www.goodreads.com/book/show/36991055">Learn more on Goodreads ➡</a></p></div>
<hr>
<p>I've really enjoyed this series - I'm a big fan of Haywood's writing, as regular readers will already know, <a href="https://kevquirk.com/tag/rr-haywood">I've read a few of his books</a>. This one took me a little while to get through though; not because it was bad, just because I've had a lot going on at home, so haven't had much time for reading recently.</p>
<p>Haywood recently released book #4 in this series, Rebirth, which I've already bought. But I don't know if I should take a break from the series. I have the <a href="https://www.piercebrown.com/redrisingsaga">Red Rising books</a> on my Kindle and everyone keeps telling me how good they are, so I may jump over and start those.</p>
<p>Any recommendations?</p> <div class="email-hidden">
<hr />
<p>Thanks for reading this post via RSS. RSS is ace, and so are you. ❤️</p>
<p>You can <a href="mailto:19gy@qrk.one?subject=Extinct">reply to this post by email</a>, or <a href="https://kevquirk.com/extinct#comments">leave a comment</a>.</p>
</div>📝 2026-07-10 09:19: I have just eaten a GIANT bowl of granola, fresh fruit, Greek yoghurt, and home... - Kev Quirkhttps://kevquirk.com/2026-07-10-09192026-07-10T08:19:00.000Z<p>I have just eaten a <strong>GIANT</strong> bowl of granola, fresh fruit, Greek yoghurt, and home grown honey (by one of our neighbours). I have zero regrets, but I may skip lunch today. 🤣</p> <div class="email-hidden">
<hr />
<p>Thanks for reading this post via RSS. RSS is ace, and so are you. ❤️</p>
<p>You can <a href="mailto:19gy@qrk.one?subject=%F0%9F%93%9D%202026-07-10%2009%3A19">reply to this post by email</a>, or <a href="https://kevquirk.com/2026-07-10-0919#comments">leave a comment</a>.</p>
</div>Gardens - James' Coffee Bloghttps://jamesg.blog/2026/07/10/gardens2026-07-10T00:00:00.000Z
<p>A pink symmetry on the peaceful pond catches my eye. “It’s a lotus!” I have made lotuses with paper before, but cannot remember the last time I saw one (have I noticed one before in the way I did today?). The vivid colours are striking: pink petals define the shape of the flower, with a yellow centre. “I can see why Monet painted lotuses and lily pads,” I said. Their beauty caught my eye at first sight. Around, there is a lotus emerging from green leaves. I wonder when it will bloom.</p><figure><picture><img alt="A pink lotus next two a large lily pad and surrounded by several smaller ones. There is a blooming lotus in the bottom left corner too." loading="lazy" src="https://editor.jamesg.blog/content/images/2026/07/IMG_4919-2-Large.jpeg" style=" max-width: 130%;"/></picture><div class="alt"><label><input aria-label="Toggle image alt text on screen" type="checkbox"/>ALT</label><div class="content">A pink lotus next two a large lily pad and surrounded by several smaller ones. There is a blooming lotus in the bottom left corner too.</div></div></figure><p>⁂</p><p>With petals made of air, petals of delicate white, and a beautiful symmetry, I am mesmerised by another flower. The botanic gardens are full of colours – of flowers I have never noticed to the extent I have today.</p><p>“Cornflower,” reads the plaque. I search for the name when I get home, too. Perhaps next time I see one of these flowers I will be able to recall them by name, and, when I do, I might think about the story of when I first noticed one: while surrounded by colour in the botanic garden, petals, symmetrical as a snowflake, stood out.</p><figure><picture><img alt="A white cornflower is in the centre of the image, surrounded by blooming blue cornflowers. The white cornflower has several white flowers that stem from its pink centre. There are gaps between each flower that look like petals." loading="lazy" src="https://editor.jamesg.blog/content/images/2026/07/IMG_4925-2-Large.jpeg" style=" max-width: 130%;"/></picture><div class="alt"><label><input aria-label="Toggle image alt text on screen" type="checkbox"/>ALT</label><div class="content">A white cornflower is in the centre of the image, surrounded by blooming blue cornflowers. The white cornflower has several white flowers that stem from its pink centre. There are gaps between each flower that look like petals.</div></div></figure><script>(function(){function c(){var b=a.contentDocument||a.contentWindow.document;if(b){var d=b.createElement('script');d.innerHTML="window.__CF$cv$params={r:'a191eca919dda924',t:'MTc4MzcxMTIxMg=='};var a=document.createElement('script');a.src='/cdn-cgi/challenge-platform/scripts/jsd/main.js';document.getElementsByTagName('head')[0].appendChild(a);";b.getElementsByTagName('head')[0].appendChild(d)}}if(document.body){var a=document.createElement('iframe');a.height=1;a.width=1;a.style.position='absolute';a.style.top=0;a.style.left=0;a.style.border='none';a.style.visibility='hidden';document.body.appendChild(a);if('loading'!==document.readyState)c();else if(window.addEventListener)document.addEventListener('DOMContentLoaded',c);else{var e=document.onreadystatechange||function(){};document.onreadystatechange=function(b){e(b);'loading'!==document.readyState&&(document.onreadystatechange=e,c())}}}})();</script>
Finished reading Wasteland Warlords 3 - Molly White's activity feed6a4ff47491f30f1ebedf6e682026-07-09T19:20:20.000Z<article class="entry h-entry hentry"><header><div class="description">Finished reading: </div></header><div class="content e-content"><div class="book h-entry hentry"><a class="book-cover-link" href="https://www.mollywhite.net/reading/books?search=Wasteland%20Warlords%203"><img class="u-photo book-cover" src="https://m.media-amazon.com/images/S/compressed.photo.goodreads.com/books/1703146411i/202378461.jpg" alt="Cover image of Wasteland Warlords 3" style="max-width: 300px;"/></a><div class="book-details"><div class="top"><div class="title-and-byline"><div class="title"><i class="p-name">Wasteland Warlords 3</i> </div><div class="byline">by <span class="p-author h-card">James A. Hunter</span> and <span class="p-author h-card">Eden Hudson</span>. </div></div><div class="book-info">Published <time class="dt-published published" datetime="2024">2024</time>. 141 pages. </div></div><div class="bottom"><div class="reading-info"><div class="reading-dates"> Started <time class="dt-accessed accessed" datetime="2026-07-09">July 9, 2026</time>; completed July 9, 2026. </div></div></div></div></div><img src="https://www.mollywhite.net/assets/images/placeholder_social.png" alt="Illustration of Molly White sitting and typing on a laptop, on a purple background with 'Molly White' in white serif." style="display: none;"/></div><footer class="footer"><div class="flex-row post-meta"><div class="timestamp">Posted: <time class="dt-published" datetime="2026-07-09T19:20:20+00:00" title="July 9, 2026 at 7:20 PM UTC">July 9, 2026 at 7:20 PM UTC</time>. </div></div><div class="bottomRow"><div class="tags">Tagged: <a class="tag p-category" href="https://www.mollywhite.net/reading/books?tags=fantasy" title="See all books tagged "fantasy"" rel="category tag">fantasy</a>, <a class="tag p-category" href="https://www.mollywhite.net/reading/books?tags=humor" title="See all books tagged "humor"" rel="category tag">humor</a>, <a class="tag p-category" href="https://www.mollywhite.net/reading/books?tags=litrpg" title="See all books tagged "litRPG"" rel="category tag">litRPG</a>, <a class="tag p-category" href="https://www.mollywhite.net/reading/books?tags=post_apocalyptic" title="See all books tagged "post-apocalyptic"" rel="category tag">post-apocalyptic</a>. </div></div></footer></article>Finished reading Wasteland Warlords 2 - Molly White's activity feed6a4ff43591f30f1ebedf6e2e2026-07-09T19:19:17.000Z<article class="entry h-entry hentry"><header><div class="description">Finished reading: </div></header><div class="content e-content"><div class="book h-entry hentry"><a class="book-cover-link" href="https://www.mollywhite.net/reading/books?search=Wasteland%20Warlords%202"><img class="u-photo book-cover" src="https://m.media-amazon.com/images/S/compressed.photo.goodreads.com/books/1700344924i/202378402.jpg" alt="Cover image of Wasteland Warlords 2" style="max-width: 300px;"/></a><div class="book-details"><div class="top"><div class="series-info"><i>Wasteland Warlords</i> series, book <span class="series-number">2</span>. </div><div class="title-and-byline"><div class="title"><i class="p-name">Wasteland Warlords 2</i> </div><div class="byline">by <span class="p-author h-card">James A. Hunter</span> and <span class="p-author h-card">Eden Hudson</span>. </div></div><div class="book-info">Published <time class="dt-published published" datetime="2023">2023</time>. 159 pages. </div></div><div class="bottom"><div class="reading-info"><div class="reading-dates"> Started <time class="dt-accessed accessed" datetime="2026-07-07">July 7, 2026</time>; completed July 8, 2026. </div></div></div></div></div><img src="https://www.mollywhite.net/assets/images/placeholder_social.png" alt="Illustration of Molly White sitting and typing on a laptop, on a purple background with 'Molly White' in white serif." style="display: none;"/></div><footer class="footer"><div class="flex-row post-meta"><div class="timestamp">Posted: <time class="dt-published" datetime="2026-07-09T19:19:17+00:00" title="July 9, 2026 at 7:19 PM UTC">July 9, 2026 at 7:19 PM UTC</time>. </div></div><div class="bottomRow"><div class="tags">Tagged: <a class="tag p-category" href="https://www.mollywhite.net/reading/books?tags=fantasy" title="See all books tagged "fantasy"" rel="category tag">fantasy</a>, <a class="tag p-category" href="https://www.mollywhite.net/reading/books?tags=humor" title="See all books tagged "humor"" rel="category tag">humor</a>, <a class="tag p-category" href="https://www.mollywhite.net/reading/books?tags=litrpg" title="See all books tagged "litRPG"" rel="category tag">litRPG</a>, <a class="tag p-category" href="https://www.mollywhite.net/reading/books?tags=post_apocalyptic" title="See all books tagged "post-apocalyptic"" rel="category tag">post-apocalyptic</a>. </div></div></footer></article>Why are you always happy? - Joel's Log Fileshttps://joelchrono.xyz/blog/why-are-you-always-happy2026-07-09T16:00:00.000Z<p>Yesterday at work something very weird happened. During our lunch break, the conversation focused on me, at least for a couple minutes.</p>
<p>My group sat next to another coworker, she’s older in age than most of my group, from another generation that would often work more than the others unprompted and at the same time complain that she’s doing too much and nobody else does anything. At least that’s what my coworkers say about her when she’s not present, but I don’t really see a reason to share the critiques.</p>
<p>She’s rather friendly at lunch time and my group and hers get along well, even if they throw shade at her, they do that for pretty much everyone—I suspect every single group at work gossips about each other in the same way.</p>
<p>Today, she made a question directed at me, the title of this post, and people started to give answers and share their thoughts about me.</p>
<p>They said things about how I eat carelessly and don’t really gain much weight. I am a bit fat but it’s true that I don’t look it, though people who know me for a long time can see my body has gotten bulkier than in my early college years. They also said I’m young and naive, even though I’m quite aware of some things they are not, and just because I rarely talk, doesn’t mean I don’t listen or think about things.</p>
<p>Perhaps, they said, is that my first job has been very acomodating, that I didn’t have to fight as much as them to get where I am. I never had a job where I was heavily pressured into things or shouted at or with the usual Mexican work culture of getting overworked and underpaid, and of course, I am in no danger of losing my position anytime soon.</p>
<p>Eventually they made a few questions and realized that I am not married, and that I still live with my parents. That ended up becoming a joke and sort of a final answer to close the topic. And well, it’s true, I can use my money in a lot of ways that bring me joy, and not having to worry about rent or buying groceries is a huge plus.</p>
<p>Many of these things are true, and some are not so true, but neither reason is why I’m always “happy.”</p>
<p>By the way, all the shade and critiques and jokes like these are very common in my country, we call it <em>carrilla</em> and while it can get close to bullying, it’s actually playful and friendly, and doesn’t mean to hurt anyone. Mexicans can be very offensive and is hard to accept for a lot of people, just wanted to mention it in case anyone here feels like this is wrong, abusive or something.</p>
<p>During the discussion I did answer questions, I laughed at some ridiculous claims, I acknowledged how I hadn’t gone to the gym for ages and many other things. I participated, but I never actually answered why I am like this most of the time.</p>
<p>Honestly, it’s kind of a corny answer, and it’s also an incomplete one. There are many factors that have made me into who I am.</p>
<p>I kind of wanted to reply in a playful manner, give them <em>carrilla</em>, point out how they’d be happier too if they stopped complaining about everything and actually did something they were passionate about, besides drinking or partying when they are all five years older than me!</p>
<p>Again, <em>carrilla</em> is not something serious, they’d get it, I obviously lack knowledge about their lives and ignore a lot of things, but we would laugh which is what matters.</p>
<p>Though a part of me finds it true. I wish conversations didn’t revolve around work gossip and complains sometimes.</p>
<p>A topic of conversation that popped up was about the new generations, how we are stuck to our phones, how we have so many means of communication yet we remain silent and shy. It was an interesting observation, and I wondered why that is.</p>
<p>I can’t easily bring up what videogame I am playing at work, it is difficult for me to share which book I’m reading, and even if I mention a somewhat popular TV show or movie, these adults just don’t seem to be aware of what’s new! Or they’d ridicule me for doing that instead of adult things, I guess.</p>
<p>Like, seriously, I would love to chat about things, anything that I am passionate about. Or listen about anything they are passionate about, but nobody seems to do anything interesting, or at least nobody is interested in opening up and talk about it.</p>
<p>And even then, when I am almost always silent and rarely talk about me, they can tell how happy I am all the time.</p>
<p>Of course this isn’t true, I am not always happy, I get stressed out about many things, I worry about the future of the world, I care about my friends and people around me going through difficult times, many losses have been had this year than I ever expected. I am sad when people get into dumb arguments online, I have cried because of moments like that before.</p>
<p>I’m human going through life and wants people to get along with. I guess focusing on different things, trying to see them through different angles. I also write, and that really is great, even if I can get a bit smug because of it. I’m not better than them, or superior in anyway due to this mindset.</p>
<p>I don’t know, it’s not just videogames or books, which I enjoy don’t get me wrong. I have true friendships, online, and in person. I have a hope that things will get better. I am content with what I have, and I have faith, which sustains me through it all.</p>
<p>I am curious, what is the impression you cause on other people? Are you also a cheerful person? or are you often seen as a grumpy one? It’s funny because I always thought I’d seem grumpy and serious, but I guess I’m just happy during lunch time because I get to eat!</p>
<p>In any case, it’s more than being single and living with my parents—but I can’t deny that helps a lot too.</p>
<p>This is day 94 of <a href="https://100daystooffload.com">#100DaysToOffload</a></p>
<p>
<a href="mailto:me@joelchrono.xyz?subject=Why are you always happy?">Reply to this post via email</a> |
<a href="https://fosstodon.org/@joel/116890886089318112">Reply on Fediverse</a>
</p>As social networks fill up with AI slop, trusted relationships and communities will win. - Werd I/O6a4fc47f9a650a00018aefd22026-07-09T15:55:43.000Z<p>Link: <a href="https://www.pangram.com/blog/ai-in-your-feed"><em>AI Content Is Everywhere on Social Media, Especially LinkedIn, by Max Spero at Pangram</em></a></p><p>This is one of the core effects of AI: even when people are not engaging with AI-generated content directly, it’s hard to avoid. Our feeds are increasingly full of AI slop.</p><blockquote>“AI-generated content appeared across all social media platforms in our data set. The average AI rate across all scanned items was 13.8%, but specific rates varied by platform and item length. On four out of five platforms, longer content was more likely to be AI-generated than shortform content. Across all platforms, one in four longform items (25.72% of items over 250 words) were fully AI-generated.”</blockquote><p>Specifically, long-form content on LinkedIn was 41% likely to be AI-generated, which shouldn’t surprise anyone who’s browsed LinkedIn lately. Medium was 31% likely and X was 29% likely. Open social web platforms like Bluesky and Mastodon don’t seem to have been a part of the dataset, but I think it would be foolish to assume they’re immune.</p><p>Some caveats here: the analysis was done by Pangram, which builds a browser extension and back-end tech that attempts to detect AI-generated content. That’s an imperfect process, and there are no tools that are completely reliable at making this distinction. False positives and false negatives have been common with these tools, although <a href="https://www.pangram.com/blog/all-about-false-positives-in-ai-detectors">Pangram claims a 0.01% false positive rate</a>. So take it with a pinch of salt, but it’s reasonable to assume that these numbers are <em>directionally</em> true.</p><p>All of this serves to drive trust in these platforms even lower. Increasingly, people on platforms like LinkedIn are being lazy writers and using AI to produce content that you don’t want to put the effort into. I generally think that if you can’t be bothered to write something, it’s not reasonable to ask people to read it; still, there may be some value in AI <em>assisted</em> writing, depending on the piece and how it was produced. (That kind of AI content, by the way, was not really measured by this test.) But AI has also led to a lot of outright spam making its way into people’s feeds in order to shamelessly build clout and advertising revenue.</p><p>Both things are making these platforms unusable, which in turn is driving people to smaller communities and group chats with people they <em>know</em> they can trust. I believe that’s going to be a big trend: AI leading to a noticeable drop in quality that drives people away from the platforms where it’s allowed to thrive. In that world, platforms that foster trusted relationships and communities will win.</p><p><em>Via </em><a href="https://www.404media.co/linkedin-and-x-are-flooded-with-ai-spam-browsing-data-suggests/"><em>404 Media, which has characteristically great coverage of the story</em></a><em>.</em></p>