Shellsharks Blogroll - BlogFlock https://blogflock.com/list/xJ8yq 2026-09-03T13:47:00.000Z BlogFlock shellsharks 2026-09-03 14:47: Why do so many calendar apps offer Sunday as the first day of the week?... - Kev Quirk https://kevquirk.com/2026-09-03-1447 2026-09-03T13:47:00.000Z Kev Quirk <p>Why do so many calendar apps offer Sunday as the first day of the week? It's <strong>not</strong> the first day of the week, it's the last.</p> <p>Why is that even an option FFS?</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=2026-09-03%2014%3A47">reply to this post by email</a>, or <a href="https://kevquirk.com/2026-09-03-1447#comments">leave a comment</a>.</p> </div> A reasonably practical guide to validating RFC 9421 HTTP Signatures for ActivityPub in PHP - Terence Eden’s Blog https://shkspr.mobi/blog/?p=74429 2026-09-03T11:34:12.000Z Terence Eden’s Blog <p>If you're reading this, you've probably been hitting your head against a brick wall trying to parse and decipher the new HTTP Signatures sent by Mastodon and other Fediverse servers.</p> <p>This is a basic and somewhat incomplete guide to accepting these signatures. I'm sure there are various gotchas, but it works with the signatures I've seen in the wild.</p> <h2 id="shut-up-and-show-me-the-code"><a href="https://shkspr.mobi/blog/2026/09/a-reasonably-practical-guide-to-validating-rfc-9421-http-signatures-for-activitypub-in-php/#shut-up-and-show-me-the-code">Shut Up And Show Me The Code!</a></h2> <p>OK, wow, no need to be a dick about it! Here's how I validated a real signature that my server received.</p> <pre><code class="language-php">$verified = openssl_verify( data: '"@method": POST "@target-uri": https://example.viii.fi/inbox "content-digest": sha-256=:tFdB/ENGczHMlZMDb66pXoUi2d0OqH2iBHdnN/WV1mc=: "@signature-params": ("@method" "@target-uri" "content-digest");created=1787780262;keyid="https://mastodon.social/users/Edent#main-key"', signature: base64_decode( "sIfmNsM/Q8iG6AJlne1IkZVjQSVFDEYIPsnoSOXQY+W3Eb4+SOn9o4J5SQmFOP+Jecjf3ioFwUdsrFjAGkUUOHPvSbNWkGKtNuGm+C6r3aI3JBCFGPqX3ITgZYV76CF7JJJ5hPGaG8YH/XdmxVIeFfD3M39FQCncMyyq7xJJvwKKP1mzS5s1vNQie8hbQ9owRjtqvoWcmM9GEYCUHNcMPLjZc+CBrj8sfBbNTYgIFI4UtirOaRJvYymxXjmXuzeVYxQujMjAjgobxQ8QFv0zlYsHk+gS5EYyafpJG9zmfCFSoF9+ZwqKNADmuADbISD9LZIH/bmkPoNXhxaeFPqYog==" ), public_key: "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsYMEs4waqk/6gaS+xn1T\nYygElTtNIFNkBcEdEBMaeoGVhyZiVKtSjJCS4z+X+394PKvcfSTcFILIt2GI2jOB\nHD0M2fFgxc8mmdSdCQkgEh9jF3bFI3kopDvzYf726iioYKlHXKpfPKvFt7EJgKH7\naCtS25NQkek3YUd6y3VBcT3R6Xhze9P3QNoZMIsFXklgXDKj+EllfbUqLf1vxt3s\nmD9ETxy2bJi9FheE0uY2WhARn49XAvwczM5Wzt+zqxVEtgpi5v2+ZZAVKhDnJkiC\nCCuI6hrSnKNIx/5mSlX0a0S5h5d03djrCkYsqmwelu01rhOXP2grsz4BXp0y2wrO\n3QIDAQAB\n-----END PUBLIC KEY-----\n", algorithm: "sha256" ); echo $verified; </code></pre> <p>Copy and paste that into PHP and you should see that <code>$verified</code> is true.</p> <h2 id="now-explain-the-code"><a href="https://shkspr.mobi/blog/2026/09/a-reasonably-practical-guide-to-validating-rfc-9421-http-signatures-for-activitypub-in-php/#now-explain-the-code">NOW EXPLAIN THE CODE</a></h2> <p>Say please.</p> <h2 id="please"><a href="https://shkspr.mobi/blog/2026/09/a-reasonably-practical-guide-to-validating-rfc-9421-http-signatures-for-activitypub-in-php/#please">PLEASE!!!</a></h2> <p>Along with the message sent to your server, you will have received HTTP headers like this:</p> <pre><code class="language-_">content-digest: sha-256=:tFdB/ENGczHMlZMDb66pXoUi2d0OqH2iBHdnN/WV1mc=: signature: sig1=:sIfmNsM/Q8iG6AJlne1IkZVjQSVFDEYIPsnoSOXQY+W3Eb4+SOn9o4J5SQmFOP+Jecjf3ioFwUdsrFjAGkUUOHPvSbNWkGKtNuGm+C6r3aI3JBCFGPqX3ITgZYV76CF7JJJ5hPGaG8YH/XdmxVIeFfD3M39FQCncMyyq7xJJvwKKP1mzS5s1vNQie8hbQ9owRjtqvoWcmM9GEYCUHNcMPLjZc+CBrj8sfBbNTYgIFI4UtirOaRJvYymxXjmXuzeVYxQujMjAjgobxQ8QFv0zlYsHk+gS5EYyafpJG9zmfCFSoF9+ZwqKNADmuADbISD9LZIH/bmkPoNXhxaeFPqYog==: signature-input: sig1=("@method" "@target-uri" "content-digest");created=1787780262;keyid="https://mastodon.social/users/Edent#main-key" </code></pre> <p>The <code>signature-input</code> tells you how to construct a "Signature Base". You have to build a text string which places the various components in the order specified and separated with a newline:</p> <pre><code class="language-_">"@method": POST "@target-uri": https://example.viii.fi/inbox "content-digest": sha-256=:tFdB/ENGczHMlZMDb66pXoUi2d0OqH2iBHdnN/WV1mc=: "@signature-params": ("@method" "@target-uri" "content-digest");created=1787780262;keyid="https://mastodon.social/users/Edent#main-key" </code></pre> <p>Where <code>@method</code> is the HTTP method used to send data to your server (usually <code>GET</code> or <code>POST</code>), and <code>@target-uri</code> is the URl the message was sent to (usually your inbox).</p> <p>The <code>publicKey</code> is slightly trickier. As you can see, the <code>signature-input</code> ends with <code>keyid="https://mastodon.social/users/Edent#main-key</code></p> <p>If you make a signed request to that URl, you'll get back an ActivityPub Actor document. It will look something like this:</p> <pre><code class="language-json">{ "@context": [ "https://www.w3.org/ns/activitystreams", "https://w3id.org/security/v1", ], "id": "https://mastodon.social/users/Edent", "webfinger": "Edent@mastodon.social", "type": "Person", "name": "Terence Eden", "publicKey": { "id": "https://mastodon.social/users/Edent#main-key", "owner": "https://mastodon.social/users/Edent", "publicKeyPem": "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsYMEs4waqk/6gaS+xn1T\nYygElTtNIFNkBcEdEBMaeoGVhyZiVKtSjJCS4z+X+394PKvcfSTcFILIt2GI2jOB\nHD0M2fFgxc8mmdSdCQkgEh9jF3bFI3kopDvzYf726iioYKlHXKpfPKvFt7EJgKH7\naCtS25NQkek3YUd6y3VBcT3R6Xhze9P3QNoZMIsFXklgXDKj+EllfbUqLf1vxt3s\nmD9ETxy2bJi9FheE0uY2WhARn49XAvwczM5Wzt+zqxVEtgpi5v2+ZZAVKhDnJkiC\nCCuI6hrSnKNIx/5mSlX0a0S5h5d03djrCkYsqmwelu01rhOXP2grsz4BXp0y2wrO\n3QIDAQAB\n-----END PUBLIC KEY-----\n" }, </code></pre> <p>The <code>publicKeyPem</code> is the string you need. There's no need to convert the <code>\n</code> to literal newlines.</p> <h2 id="is-that-it"><a href="https://shkspr.mobi/blog/2026/09/a-reasonably-practical-guide-to-validating-rfc-9421-http-signatures-for-activitypub-in-php/#is-that-it">Is that it?</a></h2> <p>Not quite! All we've done so far is verify the headers. It is possible that these are genuine headers but attached to a fraudulent body.</p> <p>This takes us back to the header <code>"content-digest": sha-256=:tFdB/ENGczHMlZMDb66pXoUi2d0OqH2iBHdnN/WV1mc=:</code></p> <p>That says that the body of the message sent has a Base64 encoded SHA256 hash of <code>tFdB/ENGczHMlZMDb66pXoUi2d0OqH2iBHdnN/WV1mc=</code>.</p> <p>To calculate your own content digest in PHP:</p> <pre><code class="language-php">$digestCalculated = base64_encode( hash( algo: "sha256", data: $body, binary: true ) ); </code></pre> <p>Does your digest match the one sent along with the headers? If not, something dodgy is going on.</p> <h2 id="putting-it-all-together"><a href="https://shkspr.mobi/blog/2026/09/a-reasonably-practical-guide-to-validating-rfc-9421-http-signatures-for-activitypub-in-php/#putting-it-all-together">Putting it all together</a></h2> <p>The steps are:</p> <ol> <li>Get the headers.</li> <li>Get the body.</li> <li>From the headers' <code>content-digest</code> extract the algorithm and hash.</li> <li>Using the body, calculate your own hash using the algorithm from <code>content-digest</code>.</li> <li>Does your hash match the sent hash? If not, stop. If so, proceed.</li> <li>From the headers' <code>signature</code> extract the base64 encoded signature.</li> <li>From the headers' <code>signature-input</code> extract the signature-input string.</li> <li>From the signature-input string extract the order of the Signature Base.</li> <li>Construct the Signature Base.</li> <li>From the signature-input string extract the keyid.</li> <li>Get the Public Key from the keyid.</li> <li>Use <code>openssl_verify()</code> to verify the Signature Base and the base64 decoded signature, against the Public Key using SHA256.</li> </ol> <p>Note, <a href="https://docs.joinmastodon.org/spec/security/#http-message-signatures">Mastodon <em>only</em> uses SHA256</a>. I think it should explicitly say which algorithm it is using <a href="https://github.com/mastodon/mastodon/issues/29905#issuecomment-5440336919">and have raised the issue</a>.</p> <h3 id="in-code-form"><a href="https://shkspr.mobi/blog/2026/09/a-reasonably-practical-guide-to-validating-rfc-9421-http-signatures-for-activitypub-in-php/#in-code-form">In Code Form</a></h3> <p>This is how you do it in PHP. Please read this carefully as there are some hard-coded assumptions.</p> <pre><code class="language-php"><?php // Validate the Digest. // It is the hash of the raw input string, in binary, encoded as base64. // The format is content-digest => <algorithm>=:<base64 encoded hash>: $digestString = $headers["content-digest"]; // The Base64 encoding may have multiple `=` at the end. So split this at the first `=`. $digestData = explode( separator: "=", string: $digestString, limit: 2 ); // Hashes are in lowercase, but have a `-` in their name. // This is not what hash_algos() expects. $digestAlgorithm = str_replace( search: "-", replace: "", subject: $digestData[0] ); // The hash is surrounded by `:` characters. $digestHash = str_replace( search: ":", replace: "", subject: $digestData[1] ); // Check if the hash algorithm is one known about to PHP. // If not, reject and record an error. if ( !in_array( needle:$digestAlgorithm, haystack: hash_algos() ) ) { return false; } // Manually calculate the digest based on the data sent. $digestCalculated = base64_encode( hash( algo: $digestAlgorithm, data: $input, binary: true ) ); // Does our calculation match what was sent? if ( !( $digestCalculated == $digestHash ) ) { return false; } // The signature format is signature => <signature name>=:<base64 encoded hash>: $signatureString = $headers["signature"]; // The Base64 encoding may have multiple `=` at the end. So split this at the first `=`. $signatureData = explode( separator: "=", string: $signatureString, limit: 2 ); $signatureName = $signatureData[0]; // The signature is surrounded by `:` characters. $signatureB64 = str_replace( search: ":", replace: "", subject: $signatureData[1] ); // The signature-input format is complicated! $signatureInputString = $headers["signature-input"]; // Get the parameters. Assume there is only one signature. $signatureParamsString = explode( separator: "=", string: $signatureInputString, limit: 2 )[1]; // Get the different elements of the signature. $signatureInputData = explode( separator: ";", string: $signatureInputString ); // Construct the data. $signatureInput = []; foreach( $signatureInputData as $signatureInputParts ) { $partsData = explode( separator: "=", string: $signatureInputParts ); // Strip quotes from keyid and parentheses from sig1. if ( "keyid" == $partsData[0] ) { $partsData[1] = str_replace( search: "\"", replace: "", subject: $partsData[1] ); } if ( $signatureName == $partsData[0] ) { $partsData[1] = str_replace( search: ["(", ")"], replace: "", subject: $partsData[1] ); } $signatureInput[ $partsData[0] ] = $partsData[1] ; } $signatureStructure = $signatureInput[$signatureName]; $signatureKeyID = $signatureInput["keyid"]; // Remove quotes. $signatureStructure = str_replace( search: "\"", replace: "", subject: $signatureStructure ); $signatureStructureData = explode( separator: " ", string: $signatureStructure ); // https://www.rfc-editor.org/info/rfc9421/#section-2.5 $signatureBase = ""; foreach ( $signatureStructureData as $signatureStructureParts ) { if ( "@method" == $signatureStructureParts ) { // https://www.rfc-editor.org/info/rfc9421/#name-method $signatureBase .= "\"@method\": " . strtolower( $_SERVER["REQUEST_METHOD"] . "\n" ); } if ( "@target-uri" == $signatureStructureParts ) { // https://www.rfc-editor.org/info/rfc9421/#section-2.2.2 // Change the domain name to your own. $signatureBase .= "\"@target-uri\": https://EXAMPLE.COM" . $_SERVER["REQUEST_URI"] . "\n"; } if ( "content-digest" == $signatureStructureParts ) { $signatureBase .= "\"content-digest\": $digestString\n"; } } // https://victoronsoftware.com/posts/http-message-signatures/#how-the-signature-is-created $signatureBase .= "\"@signature-params\": $signatureParamsString"; // Get the signing user's public key. // This is usually in the form `https://example.com/user/username#main-key` // This is to differentiate if the user has multiple keys. // This may need to be a signed request. You will need to write your own getDataFromURl() function to get the sending user's key. $userData = getDataFromURl( $signatureKeyID ); $publicKey = $userData["publicKey"]["publicKeyPem"]; // Verify the request $verified = openssl_verify( data: $signatureBase, signature: base64_decode( $signatureB64 ), public_key: $publicKey, algorithm: $digestAlgorithm ); // Convert the result to boolean. if ( $verified === 1 ) { $verified = true; } elseif ( $verified === 0 ) { $verified = false; } else { $verified = null; } return $verified; </code></pre> <h2 id="further-reading"><a href="https://shkspr.mobi/blog/2026/09/a-reasonably-practical-guide-to-validating-rfc-9421-http-signatures-for-activitypub-in-php/#further-reading">Further Reading</a></h2> <ul> <li><a href="https://www.rfc-editor.org/info/rfc9421/">RFC 9421 HTTP Message Signatures</a></li> <li><a href="https://victoronsoftware.com/posts/http-message-signatures/">Understanding HTTP message signatures: A developer's guide</a></li> <li><a href="https://www.otoroshi.io/docs/tutorials/http-message-signatures-rfc9421/">Sign and verify HTTP messages (RFC 9421)</a></li> <li><a href="https://darutk.medium.com/verification-of-http-message-signatures-501bbdc7dfec">Verification of HTTP Message Signatures</a></li> <li><a href="https://github.com/macgirvin/HTTP-Message-Signer">HTTP-Message-Signer in PHP</a></li> </ul> <h2 id="thanks-to-nlnet"><a href="https://shkspr.mobi/blog/2026/09/a-reasonably-practical-guide-to-validating-rfc-9421-http-signatures-for-activitypub-in-php/#thanks-to-nlnet">Thanks to NLnet</a></h2> <p>This blog post was funded in part by the work I'm doing for my NLnet NGI0 grant. Thanks!</p> <p><a href="https://nlnet.nl/project/ActivityBot/"><img src="https://shkspr.mobi/blog/wp-content/uploads/2026/08/NGI-logos.webp" alt="NLnet logo." width="900" height="200" class="aligncenter"></a></p> <img src="https://shkspr.mobi/blog/wp-content/themes/edent-wordpress-theme/info/okgo.php?ID=74429&HTTP_REFERER=Atom" alt width="1" height="1" loading="eager"> Drawing for St Jude: Petrichor - Robb Knight • Posts • Atom Feed https://rknight.me/blog/drawing-for-st-jude-petrichor/ 2026-09-03T10:48:36.000Z Robb Knight <p>If you missed it, Adam and I are raising money for St Jude this month and you can <a href="/stjude">donate here</a>. One of the rewards I offered this year <a href="http://localhost:8084/blog/get-okay/">and last</a> is I will do a drawing of whatever the donator wants. These vary from the very simple "a horse" to the detailed like "a platypus on a unicycle in Japan at night". <a href="http://georgeprobably.omg.lol/">George</a> ordered one with this in the notes:</p> <blockquote> <p>Did you know, petrichor is "the smell of dirt after rain"? It's a pleasant smell that indicates that life is returning. Like Spring, but your smell. What's your petrichor?</p> </blockquote> <p>I don't think I'd ever heard of "petrichor" but it's nice to learn things. Not only is George making me draw he's making me think which is pretty rude. After a bit of clarification I thought on this for a day or two about what smell makes me the most happy it's Marmite on crumpets, no contest.</p> <figure><img src="https://cdn.rknight.me/site/2026/st-jude-drawings-petrichor.jpg" alt="A drawing of a plate of crumpets with a jar of marmite next to it" /></figure> Morning impressions - James' Coffee Blog https://jamesg.blog/2026/09/03/morning-impressions 2026-09-03T00:00:00.000Z James' Coffee Blog <p>Opening the window, a vivid dancing shadow of the trees between the glass and the sun appears the wall, illuminating yesterday’s ideas written across my whiteboard. The shadow is a temporary, moving work of art, detailing the contours of leaves and, when I stand in front, the stray hair from my head still unbrushed from having woken up half an hour prior. As the minutes pass, the impression of the trees becomes hazier, more abstract: the sun is moving. The limited conditions that made the art possible fade by the minute.</p><p>I think of all the possibilities of morning: of the songs to be sung by the birds – on the forefront of my mind as I hear the soothing, familiar call of a pigeon outside – and the way the light wakens both outside and inside. The artwork is intensifying again; perhaps one of the clouds outside was obscuring it temporarily. The trees once again dance, moving with the September wind. I stop and notice a faint breeze coming from the window; I, too, feel the September breeze, a cooling touch after a warm summer.</p><p>I take a sip of my warm tea whose temperature contrasts with the cool air outside, and, a moment later, look out the window, seeing amber leaves and rainy roads, and the peace of morning – essences of Day. I look forward to the day ahead.</p><script>(function(){function c(){var b=a.contentDocument||(a.contentWindow&&a.contentWindow.document);if(b){var d=b.createElement('script');d.innerHTML="window.__CF$cv$params={r:'a352f447cee666d1',t:'MTc4ODQxOTYzMQ=='};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> fishing - James' Coffee Blog https://jamesg.blog/2026/09/03/fishing 2026-09-03T00:00:00.000Z James' Coffee Blog <p>trees and canopies<br/>shelter for the fisherman<br/>stoic as a river: he is still<br/>in movement<br/>engaged like a painter<br/>watching the moment.</p><p><em>This poem was inspired by Jules-Louis Dupré's "</em><a href="https://www.nationalgallery.org.uk/paintings/jules-louis-dupre-willows-with-a-man-fishing" rel="noreferrer"><em>Willows, with a Man Fishing</em></a><em>".</em></p> <a class="tag" href="https://www.nationalgallery.org.uk/paintings/jules-louis-dupre-willows-with-a-man-fishing">Willows, with a Man Fishing</a> My mom may get into Sci-Fi books - Joel's Log Files https://joelchrono.xyz/blog/mom-sci-fi-books 2026-09-02T23:10:00.000Z joelchrono <p>My parents are great, but they are also of a different generation, and despite the amount of people around their age that I’ve met online that somehow align with many of my hobbies, everyone is different, and well, that’s the case for them.</p> <p>Something I admire about my mom is how she still learns, she studies a lot and gets into online courses of all kinds. Unfortunately, she also is prone to being scammed by Facebook ads or misinformation spread through videos and posts there. I have managed to correct some things but well, I have a job and can’t be there always, she still takes my judgement seriously when I mention how what she saw is wrong, for the most part.</p> <p>However, when it comes to my videogames, my science fiction books, my manga or animated films, or whatever things that are generally childish or immature to her… well, I just can’t change her mind about it! I guess my careless and jovial personality doesn’t help much…</p> <p>Umm, enough talking about family dynamics!</p> <p><em>To be honest though, I never really tried to convince her to get into Science Fiction at any point, so maybe if I had pushed for a conversation about it I could have made her see things the way I do, but it is how it is. I do like the lasers and aliens and weird gadgets so maybe she just saw it as that since she has only really been exposed to Star Wars and the like.</em></p> <p>What I wanted to say is that someone somewhere finally told her that Science Fiction is not something to dismiss, but a genre that can talk about pretty deep and thought provoking things through stories and scenarios that mirror the real world. And she actually took that person seriously!</p> <p>So, at last, she asked me for some recommendations from the books I already have and… welp, I kind of failed.</p> <p>Most of my existing library is in English, which she doesn’t speak, and I only have a couple of books in Spanish: <em>Nineteen Eighty Four</em> by Orwell, <em>Brave New World</em> by Huxley, a Jules Verne anthology and an H.G. Wells anthology.</p> <p>Out of all of those options I decided to suggest her <em>Brave New World</em>, since it was something I thought may interest her. I have read a bunch of the books by Wells and Verne, as well as 1984, but the sexual scenes from the latter and the size and paper quality of the anthologies I have kind of took them out of the picture (I bought them like eight years ago and I was unable to judge paper quality as a teenager so shut up). BNW seems to have something to say about sexuality, but I haven’t read it and can excuse myself with that. She’s an adult either way so whatever.</p> <p>I made <a href="https://polymaths.social/@joel/statuses/01M1FFD936949TYTNKARFN3S6N">a post about this on my socials</a> and many people suggested a lot of books with Spanish translations. I guess it only speaks to how bad my writing must be because I wasnt actually looking for suggestions, just sharing what happened? Like, I guess I made it sound like I am not aware of Sci-Fi books in Spanish?</p> <p>I was just sharing my thoughts on the matter, not looking for recommendations hehe. I have been thinking about writing a post about the books I’d recommend to get into the genre in the first place, actually.</p> <p>But I’m grateful though! It was nice to see and I got a couple of interesting links to skim through soon enough.</p> <p>I just hope the book I picked isn’t boring or hard to get into. I probably should have bought her an actually good edition of some Jules Verne adventure! I’ll keep you all updated…</p> <p>Also I talked about <a href="/blog/this-is-my-genre/">why Sci-Fi is my favourite genre</a> before, in case you’re curious!</p> <p>This is day 28 of <a href="https://100DaysToOffload.com">#100DaysToOffload</a></p> <p> <a href="mailto:me@joelchrono.xyz?subject=My mom may get into Sci-Fi books">Reply to this post via email</a> | <a href="https://fosstodon.org/@joel/117204017762644945">Reply on Fediverse</a> </p> 2026-09-02 09:16: I've recently switched to Gnome's default apps for email etc. So instead of #Thunderbird doing... - Kev Quirk https://kevquirk.com/2026-09-02-0916 2026-09-02T08:16:00.000Z Kev Quirk <p>I've recently switched to Gnome's default apps for email etc. So instead of #Thunderbird doing all the things, I have Geary, Calendar, and Contacts. Most of the time I only need email, so it's nice having a much simplified UX.</p> <p>I also like how integrated into Gnome they all are.</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=2026-09-02%2009%3A16">reply to this post by email</a>, or <a href="https://kevquirk.com/2026-09-02-0916#comments">leave a comment</a>.</p> </div> Outer Wilds: a once in a lifetime experience - Joel's Log Files https://joelchrono.xyz/blog/outer-wilds 2026-09-02T03:00:35.000Z joelchrono <p>You have probably heard of this one, it is an award winning title that came out around 2019 and has been making the rounds as one of the best videogames of all time. I had heard of it when it came out, often confused with <em>Outer Worlds</em> which came out in the same year, but other than it being about exploring space, I didn’t know much about it. Last year, when I beat <a href="/blog/1000xresist/">1000xRESIST</a>—another incredible game you should definitely play—my friend <a href="https://moddedbear.com">Jeremy</a> kept pushing me to try this one next. I completed like six more games before I finally gave it a go early this year.</p> <p><strong>This review is spoiler-free, and even so, I’d rather you go play the game right now instead.</strong></p> <p>There is something to be said about a game that can go on without you, where you can spend countless hours without reading a single thing and explore every nook and cranny there is, while at the same time, there is not giving you a reason to do anything at all. There is no quest, there are no pop-ups, and there is no rush.</p> <p>All you have is your own resolve and your own hunger for knowledge and understanding, that will be your only pursue and reward.</p> <p><img src="/assets/img/blogs/2026-09-01-cover.webp" alt="Cover of the game" /></p> <p><em>Outer Wilds</em> puts you inside a toy-sized, fully simulated solar system, where each planet is completely different from each other and has unique behaviours and mysteries to discover. It will work without you, and you will work within it.</p> <p><strong>The only caveat about the game is this:</strong> It is played in first person perspective, and the physics and orientation in zero gravity can cause dizziness. If you get motion sickness, this game is not for you, and I am incredibly sorry.</p> <p>You can take control of a spaceship that will absolutely kill you with its sketchy auto-pilot system, dozens of times, however, it will also provide you with a pretty awesome sense of control and simulated physics all around, you’ll have to learn how to land properly, how your velocity works and how each planet’s gravity affects you in the void of space! (The auto-pilot is actually pretty good—just make sure there’s no obstacles between you and your destination.)</p> <p>With only a few tools at your disposal, you are pretty much on your own. The game doesn’t feature any upgrades or unlockables, there are no level ups, no collectibles, and no storage system either.</p> <p>One of your tools will be your Scout Launcher, a probe you can aim and shoot at anything. It can take pictures, be a light source and detect hazards around you. Shoot it through a hole in the wall you can’t access and see what’s on the other side!</p> <p>Another tool is the Signalscope, which let’s you detect signals from outer space (or things that are right next to you) and also zoom in to things far from you that might peak your interest. Keep a look out for any interesting signals and sounds around you.</p> <p>The most important tool is the Translator. In the story you will learn that you are the first astronaut from the village’s space program—fittingly named “Outer Wilds Ventures”—you are going to able to translate all the ancient writings from an alien civilization whose remains are spread all over the solar system. The knowledge found in them are what is likely to hook you into figuring out more.</p> <p>There’s also a computer with a ship log, which keeps track of the information you’ve gathered, and let’s you pin certain locations on a map of the whole solar system. You can also pin any celestial body from the map to auto-pilot to it.</p> <p><strong>And this is about as much as I can tell you of this game, without ruining every surprise it has for you.</strong></p> <p>I am not going to explain what each planet has to offer, I don’t want you to know even a slice of what the story is about, I also don’t want to describe the encounters or discoveries you will make, I won’t even quote a single line of text in the game. Every single one of those things is unique for your playthrough, and you deserve to cherish each moment.</p> <p><em>Outer Wilds</em> doesn’t force you to do anything, it doesn’t tell you in what order you should visit the planets, it doesn’t tell you the main objective or why you are there. It does give you a push, it does give you leads, but no more than that!</p> <p>It is all about exploration, all about curiosity, about wonder, making your own journey, and connecting your own dots.</p> <p>Come up with your own theories, try the craziest of stunts on your ship, and learn how to master and move on the environment around you.</p> <p><strong>It is the kind of game you can only play once, the solution is right in front of you the whole time.</strong></p> <p>The game has a story, the game will hook you, the game has a motive, everything happens for a reason, the whole system is like a puzzle, but at the same time, it doesn’t need you, it’s alive and well and beautiful and horrifying.</p> <p>The artstyle of the game is great, it is cute, it is mesmerizing, it is also scary, and it will fill you with a sense of awe. The game adopts a very interesting design language, where the things that matter are incredibly obvious, and the places that don’t will look rather empty, this is to lead you into areas with things you can see or interact with, keeping everything at a small, cozy scale. Funnily enough, the game will somehow pull off incredible landscapes and perspectives that will, as I already said, fill you with a sense of wonder, as you see how beautiful the universe can be.</p> <p>The music is a masterclass of environmental storytelling, it will make you feel every emotion, sadness, hope, peace. It is an incredible work of art on its own, and it compliments every moment in a wonderful manner. You will grow fond of it, you will also dread it. Every piece carries a lot of weight, and it just hits at the right time. That soundtrack is a must-buy. Andrew Prahlow is a genius.</p> <p>Well, honestly, everyone who worked on this game clearly gave everything they had on it, the writing is absolutely incredible too. It is funny and sassy, it could also fill you with hope, it may as well make you cry and care about something beyond you. I have already said enough.</p> <p>Am I hyping it up too much? Perhaps I am, perhaps you will try it and get lost and lose motivation, perhaps you will get hooked for a couple hours and then get stuck somewhere and lose all steam. I played this game in two big moments. From January 6 to 23, and from August 7 to 22. I understand why you may stop, why it may look like things are not clicking and why you may want to move on, perhaps you were there already, and abandoned the game.</p> <p>I implore you to return, start over if you must but I have a feeling you will get by just with the clues at your disposal and the knowledge you have gained already. Soon something will happen that will finally make things fit inside your head, and it will be smooth sailing from there…</p> <p>Technically speaking, the game is marvelous, the features and mechanics of its underworkings are miraculous. I played it on my Nintendo Switch and the performance was not ideal, however, it is not a game that requires perfomance or a stable framerate to be enjoyed. I do recommend getting it on a more powerful device though. I still put 32 hours into the Switch edition, and I will soon play the DLC there too, a whole game of its own, from what I’ve heard.</p> <p>Normally I would plague this review with screenshots, but I just don’t want to show anything else now, just stop reading this and give it a go.</p> <p><strong>Please, play it, and tell me all about it when you do.</strong></p> <p>This is day 27 of <a href="https://100daystooffload.com">#100DaysToOffload</a></p> <p> <a href="mailto:me@joelchrono.xyz?subject=Outer Wilds: a once in a lifetime experience">Reply to this post via email</a> | <a href="https://fosstodon.org/@joel/117199257711370170">Reply on Fediverse</a> </p> Time - James' Coffee Blog https://jamesg.blog/2026/09/02/time 2026-09-02T00:00:00.000Z James' Coffee Blog <p>Flowers fade into fall. Every day brings us closer to autumn. I walk around for a while, admiring details I have seen a hundred times and yet, each time, find something new to see, and then stand for a moment and watch as people wander in the park, or sit and spend the moment solo, or together. Time seems to slow down here: we meander rather than rush, we have space to pause and breathe and gaze out into the grass ahead with nothing in particular in our minds. In parks, I can sit with the motion of my day while not feeling like I have to prepare to do something else.</p><p>Looking ahead, I think about distance, a concept that has been on my mind for the last few months – distances through spaces, time, distances from memories, distances to moments up ahead to which I am looking forward, the distance between the writer and their stories, how spaces create distance, or, indeed, bring people closer together. With that thought in mind, I start thinking about distance in terms of closeness – how parks and museums and trains and music and stories and towns and cities bring us together. These words bring you closer to a moment in my life, when I gazed out onto a green park with people wandering up and down paths, and when I felt like I could stand still.</p><p style="text-align: center;">⁂ ⁂ ⁂ </p><p>“Romance & Reality” is written on the directions on a white plaque on a white museum wall. Walking ahead, I feel the granite floors beneath my feet, and see the Grecian, and apparently also Roman, decorative features. I notice the Latin inscription on a plinth in the hallway.</p><p>Walking in, I am immediately attracted to a painting that always seems to catch my eye. One glimpse makes me want to walk closer. The magnetism of this painting derives from and is embedded in its colour. I look forward onto a hazy riverscape and look around to see a painting I always remember for its fidelity of reflection, in a room that marks the beginning of my journey today.</p><p><em>The hazy river has reflections too – the yellows of the sun and the deep blues of the castle are reflected in the river.</em> Reflections can be conveyed even in a haze: there is a spectrum of reflection; from haziness to definition. I look at the castle in the centre of the painting and wonder how paintings encourage us to look at a particular point, reflecting on colour and position and precision and tradition.</p><p>The light of the sun is cast over a distance in the painting, from the near centre to the periphery. In the centre the sun and the castle exist together: Nature and the built environment, co-existing.</p><p>I take two steps back. I feel like I am seeing a new painting. White hues enter the foreground of my newfound impression of the work. Are these hues a heavy mist that has not yet dissipated? The title of the work states the painting depicts a sunrise, so such mist is possible. I think back to the beautiful fogs of cooler mornings where the droplets of water suspended in air disperse slowly with the burgeoning sunlight. I think about how the painting in front of me brings a haze to life, with all the colours of morning.</p><p>I feel the softness in my breath as I reflect on how calm galleries make me feel.</p><p style="text-align: center;">⁂ ⁂ ⁂</p><p>When I visit galleries I sometimes have an idea of what I want to see. Today I wanted to see a still life painting. I remembered exactly into what room I would need to go: a lowly-lit space in the back of the museum. When I entered, I saw a single still life with fruit and a lobster on one wall.</p><p>Looking at the painting, I saw Nature and colour and wealth and light and shadows and time and ethics and detail and contrast. I am standing looking at a moment, just as I was when looking at Turner’s painting, except this one has been clearly arranged for the viewer. Artists capture time. Am I capturing time with these words, a timeline of moments that become a written work?</p><p>I see the ephemerality of wealth in the still life. The expensive fruits will one day age. I think back to a CharliXCX song. <em>Nothing lasts forever.</em></p><p>There is meaning everywhere: in the choice of material for the walls, in the art, in the existence of museums themselves. Here, I have space to be with and to interpret time.</p><p style="text-align: center;">⁂ ⁂ ⁂</p><p><em>Romance & Reality</em> — In McCulloch’s waterfall, one of the first paintings to welcome me to the Scottish art section of the building, I see movement and change and seasons and Nature. What must it be like to hear the water fall? Does the water glimmer with the moonlight?</p><p>The colours of the crevice between the tall hills in the background reminds me of a rainbow, even though it is likely not intended to be a rainbow. I see this every time I look at the painting.</p><p>Looking at the waterfall, I see, as with other paintings, moments suspended in time, moments that become alive alive with our observation and imagination. I think about how many rainbows have been seen at waterfalls. I think about the building on the edge of the water. Is it a mill? It is so close to the end of the waterfall.</p><p>The plaque says the scene is “probably imaginary”. I think about how galleries both let us visitors imagine and let us see the imaginations of others.</p><p style="text-align: center;">⁂ ⁂ ⁂</p><p><em>Is that a Renoir?</em> This painting had a magnetism too. <em>But it is in the Scottish art section.</em> A lady stands in front of the painting studying it in depth. The information plaque informs me the piece, alive with greens and drops of sunlight carefully painted by the artist, was painted by Sir Guthrie. The piece, “Midsummer”, “epitomises Scottish Impressionism”. I stand transfixed before the painting for a minute or two, imagining what it must be like to be in the garden the painting depicts.</p><p style="text-align: center;">⁂ ⁂ ⁂</p><p>I think of how paintings can capture beauty: of Nature, of people, of places, of time. </p><script>(function(){function c(){var b=a.contentDocument||(a.contentWindow&&a.contentWindow.document);if(b){var d=b.createElement('script');d.innerHTML="window.__CF$cv$params={r:'a34b284bacb8e95a',t:'MTc4ODMzNzg3NQ=='};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> AI companies are at risk of making Silicon Valley's harmful mistakes all over again - Werd I/O 6a97131054916700015c22eb 2026-09-01T18:01:52.000Z Werd I/O <p>Link: <a href="https://restofworld.org/2026/ai-safety-bias/"><em>AI safety is designed in the West, and failing users everywhere, by Rina Chandran in Rest of World</em></a></p><p>Amnesty International believes that <a href="https://www.amnesty.org/en/latest/news/2022/09/myanmar-facebooks-systems-promoted-violence-against-rohingya-meta-owes-reparations-new-report/">Facebook was complicit in the genocide against the Rohingya people in Myanmar</a>:</p><blockquote>“In 2017, the Rohingya were killed, tortured, raped, and displaced in the thousands as part of the Myanmar security forces’ campaign of ethnic cleansing. In the months and years leading up to the atrocities, Facebook’s algorithms were intensifying a storm of hatred against the Rohingya which contributed to real-world violence.”</blockquote><p>It wasn’t that anyone at Facebook actively wanted to enable a genocide: they just didn’t care about <em>not</em> enabling one. Their teams were warned at least fifteen times, but mitigating this obvious harm was deprioritized in favor of other things. They were focused on their own world, with its epicenter in Menlo Park, California. Ultimately, although Facebook was not the source of the genocide, its use contributed significantly, leading to Rohingya deaths. By prioritizing growth in Myanmar but not staffing for local needs, it invested in its valuation rather than preventing harm in a country it didn’t care about.</p><p>So it’s more than a little concerning to see AI vendors making the same mistakes. As Rina Chandran writes in Rest of World, failures in the Global South caused by Silicon-Valley-centric product development <a href="https://restofworld.org/2026/ai-safety-bias/">are becoming more common</a>:</p><blockquote>“For example, in Tigrinya, spoken by about 9 million people in Eritrea and northern Ethiopia, machine translation rendered smallpox as syphilis, gonorrhea as diabetes and ‘you have been given intravenous antibiotics’ as ‘you have been given intravenous insecticides.’”</blockquote><p>While international efforts like <a href="https://www.gov.uk/government/publications/ai-safety-summit-2023-the-bletchley-declaration/the-bletchley-declaration-by-countries-attending-the-ai-safety-summit-1-2-november-2023">the Bletchley Declaration</a> aim to mitigate what are considered to be frontier risks of AI, it asks for little accountability for the other harms that inevitably arise from product teams that aren’t rooted in the interests, needs, norms, and values of diverse international communities. Those harms can add up to become deep wounds in themselves, but it’s also worth asking another question.</p><p>As Rest of World points out:</p><blockquote>“At the heart of the issue ‘is the question of who gets to define what counts as a safety problem in the first place,’ Elizabeth Orembo, a fellow at Research ICT Africa, a think tank, told <em>Rest of World</em>. Big tech firms tend to focus on model risks such as deception, autonomous behavior, cyber capabilities, and aiding bioweapons, she said. They do not pay much attention to deployment risks including discrimination, exclusion, surveillance, language failures, and the inability of affected communities to seek remediation.”</blockquote><p>Can affected communities be co-owners of those risk frameworks, including the resulting product roadmaps, or are they, once again, just expected to let technology happen to them?</p><p>Facebook was warned fifteen times that it was doing the wrong thing in Myanmar, and still did nothing. AI companies are retreating from even the weak commitments they previously made. They need to be forced to do the right thing: if not by markets and investors, then by international regulation.</p> August 2026 Summary - Joel's Log Files https://joelchrono.xyz/blog/august-2026-summary 2026-09-01T17:20:00.000Z joelchrono <p>August was a very interesting month, given the arrival of Blaugust, the summer vacation and a lot of my gaming progression done during all of it. I have recently realized how little I have to say about the month itself here when I keep saying a bunch of stuff for my weeknotes. For a while I’ve seen some people saying I should stick to either monthly or weekly stuff, and perhaps they have a point.</p> <p>At the same time, I like this format quite a bit, so let’s get to the media I enjoyed during the last 31 days of my life, shall we?</p> <p><img src="/assets/img/blogs/2026-09-01-month.webp" alt="Collage of the Month" /></p> <h2 id="podcasts">Podcasts</h2> <p>This has been the worst month of the whole year, in fact, it has been the worst month in all of my podcast statistics. I barely listened to 14 hours of audio, and I think it has a lot to do with the fact I had visits and couldn’t sleep to podcasts as I usually do. I would probably use my earphones, except that I somehow lost them for a whole week too! Because people were invading my living space, I couldn’t search for them as comfortably and by the time I found them it was too late.</p> <ul> <li> <p><strong>Into the Aether</strong> - 6.6 hours. Brendon and Stephen are also on hiatus for a couple weeks, so I had even less episodes to listen to than usual.</p> </li> <li> <p><strong>The Rest is History</strong> - 3.5 hours. I’ve been listening to one of their series on the Great War, so that’s been interesting.</p> </li> <li> <p><strong>Land of Eem: Actual Play</strong> - 1.5 hours. Since I want to get better at GMing, listening to how others run the game is helpful!</p> </li> <li> <p><strong>The Ten Minute Bible Hours</strong> - 1.4 hours. Back to this one after a long while, still on Matthew of course.</p> </li> </ul> <h2 id="gaming">Gaming</h2> <p>I’d say this was the main hobby that completely took over this month, especially combined with the tabletop session we had!</p> <ul> <li> <p><strong>Outer Wilds</strong> - A game I started on January, abandoned for months and only returned to in the middle of August. This title immediately gripped me all over again, and it didn’t let me go until I finally rolled creadits. This adventure was so good, I simply had to keep going. It was a rather profound experience and it will linger inside my head for quite a while. Remember, don’t look anything up, simply go and play it, as long as you are okay with some zero gravity maneuvres in a 3D space, you should be okay. I don’t want to say anything else!</p> </li> <li> <p><strong>Hollow Knight Silksong</strong> - After finishing OW, it was about time I returned to Pharloom once again. I made a bunch of progress this time around, finally unlocking Act 3 after defeating the final boss one more time. I have also accessed a whole new area and gone through a couple of gauntlets and new bosses. I have a feeling this will take me another twenty hours or so which I am really looking forward to playthrough.</p> </li> <li> <p><strong>The Legend of Zelda: Ocarina of Time 3D</strong> - I returned to this game later in the month and completed the Jabu Jabu’s Belly dungeon. It took me a while to figure out how to beat the miniboss for some reason, but everything else was pretty nice! I am finally ready for the next adventure in the game, which will be going to the Temple of Time, and using the Ocarina to access the chambers within, and fight for Hyrule’s future!</p> </li> <li> <p><strong>Fire Emblem Awakening</strong> - This month was mostly dedicated to the leveling up characters and doing side quests. For some reason I have been unable to follow up on the main story—okay, the reason is Outer Wilds and other games—but I am still really looking forward to putting more time into this tactics game.</p> </li> <li> <p><strong>Donkey Kong ‘94</strong> - This has proven to be absolute platforming perfection. Donkey Kong has so many interesting mechanics for its time, it is kind of ridiculous how well it holds up today. I have completed half of the stages now and I will definitely continue for September, it shouldn’t take much longer to beat.</p> </li> <li> <p><strong>Minecraft</strong> - Only played this one for a day, with some friends on a LAN party on our private server! I started to finally build a house and make it pretty. I was messing around with block textures and stuff to make it a bit livelier, but there is a lot of work left to do, and I don’t even have a rooftop yet.</p> </li> <li> <p><strong>Super Mario 3D World</strong> - We are so close to the finale of this game, my friends and I have been doing steady progress. and we continue to collect all the stars and stamps in the game! It’s incredibly fun to just get everything there is.</p> </li> <li> <p><strong>Risk of Rain Returns</strong> - Played this with a friend of mine, just the two of us versus the world. We barely managed to get to the second portal in the game, it really is kinda difficult!</p> </li> <li> <p><strong>Faster Than Light</strong> - Before our Minecraft session I quickly booted this up on my Laptop and had a fun time on a run. I didn’t last long though and my ship was destroyed in the end.</p> </li> </ul> <hr /> <ul> <li><strong>Land of Eem</strong> - After so many months we finally returned to this TTRPG, and it was absolutely glorious. I’m really happy that we managed to go back even if it was a bit improvised. Most of my players forgot a lot of their abilities and features of the game such as how XP works and the like. We still had a lot of fun though and I’ve read some parts of the core rulebook again to improve for our next play.</li> </ul> <h2 id="books">Books</h2> <ul> <li> <p><strong>The House on the Borderland</strong> by William Hope Hodgson - I read this while listenint to the soundtrack of Resident Evil. I’m only at 40% of the book and I’ve already been taken to some dreadful cosmic horror trips. Not bad at all, I can see how Lovecraft was inspired by this one, I have to say. I will definitely finish it soon.</p> </li> <li> <p><strong>Clarkesworld Magazine #211</strong> by Neil Clarke - The first issue I’ve ever read and it was a very nice surprise! I already <a href="/blog/clarkesworld-211/">shared a review so</a>, give it a read!</p> </li> <li> <p><strong>Leviathan Falls</strong> by James S.A. Corey - The finale of an epic saga. I should also write my overall thoughts on the whole thing. For now <a href="/blog/leviathan-falls">the review</a> is already available though.</p> </li> </ul> <h2 id="manga">Manga</h2> <ul> <li> <p><strong>Centuria</strong> - Chapters 39-47. This shonen manga featuring some dark fantasy and eldritch horror elements has been rather interesting! I started it late in July so I’ve read a bunch more of it this month.</p> </li> <li> <p><strong>Spy x Family</strong> - Chapters 138-139. Because of all the gaming I forgot to keep up with this one until last week. It continues to be as fun as every though!</p> </li> <li> <p><strong>Hunter x Hunter</strong> - Chapters 397-401. This epic adventure finally returns from hiatus, and its ongoing arc is rather convoluted after a little while. There are a lot of pages and a lot of texts to go through so my progress has been slow. I do like the build-up though.</p> </li> <li> <p><strong>Blue Lock</strong> - Chapters 355-356. Another one that I fell behind on because of priorities.</p> </li> <li> <p><strong>Fly Me to the Moon</strong> - Chapter 289. Same thing as the rest!</p> </li> </ul> <h2 id="movies">Movies</h2> <ul> <li> <p><strong>Spider-Man: Brand New Day</strong> - This really is the best Spider-Man film since Sam Raimi’s <em>Spider-Man 2</em> and I really, really enjoyed it. I loved the cinematography, the story, the new characters and how the rest of the Marvel world is interconnected with Peter Parker. Really enjoyable adventure so far!</p> </li> <li> <p><strong>Edge of Tomorrow</strong> - This is one of those sci-fi films that has gotten better over time. Groundhog’s Day with an alien war in the middle. It’s still a pretty refreshing concept and very well done, a blockbuster that delivers, what else can I say?</p> </li> <li> <p><strong>Sunshine</strong> - The sun is dying and a crew of movie stars is sent to the send a bomb to revive it all over again. This was a really interesting watch, with some great visuals and a bit of an <em>Alien</em> feeling to it, given the conflicts between the people in the ship and the series of events that happen. Loved that final sequence quite a lot.</p> </li> </ul> <h2 id="music">Music</h2> <p>I would also like to point out listening to a bunch of Resident Evil’s soundtrack while reading <em>The House on the Borderland</em> as well, extremely immersive.</p> <ul> <li><strong>FTL</strong> by Ben Prunty</li> <li><strong>Outer Wilds</strong> by Andrew Prahlow</li> <li><strong>Hades</strong> by Darren Korb</li> <li><strong>Minecraft - Volume Beta</strong> by C418</li> <li><strong>Hyper Light Drifter</strong> by Disasterpiece</li> </ul> <h2 id="finishing-thoughts">Finishing thoughts</h2> <p>And just like that, August is done! The month is over and there are a lot of things still to say. I have to admit I am not really feeling too accomplished with the goals I’ve been sharing so I’ll stop with that for now.</p> <p>Anyway, this is already enough, until next time!</p> <p>This is day 26 of <a href="https://100DaysToOffload.com">#100DaysToOffload</a></p> <p> <a href="mailto:me@joelchrono.xyz?subject=August 2026 Summary">Reply to this post via email</a> | <a href="https://fosstodon.org/@joel/idcomments">Reply on Fediverse</a> </p> Android Auto Has Been Hammering My Phone’s Battery - Kev Quirk https://kevquirk.com/android-auto-has-been-hammering-my-phones-battery 2026-09-01T12:25:00.000Z Kev Quirk <p>I've noticed recently that my phone needs to be charged way more often than I used to have to do it. I used to be able to go for nearly 2 days on an 80% charge, but I started having to charge <em>daily</em>. Sometimes even multiple times per day!</p> <p>My first thought was that my 2.5 year old Pixel 9A might be starting to show signs of age, and the battery was on its way out. But I have always had charging optimised, so it only charges to 80%. Looking at the health of my battery in settings, it shows the health as <em>normal</em> and reports a 100% capacity. So it's not the battery.</p> <p><img loading="lazy" src="https://kevquirk.com/content/images/android-auto-has-been-hammering-my-phones-battery/battery-health.webp" alt="battery-health" /></p> <p>The final straw came when I went to bed one evening with a charge of around 65%, only to wake up the next morning with just 30% of my battery remaining. How the <em>fuck</em> had my phone used so much battery while I was sleeping??</p> <p>I checked which apps had used all that battery and to my surprise it was Google Maps and Android Auto.</p> <p><img loading="lazy" src="https://kevquirk.com/content/images/android-auto-has-been-hammering-my-phones-battery/battery-screenshot.webp" alt="battery-screenshot" /> <em>6.5 hours of "screen time" while I was asleep!</em></p> <p>Ok, something is clearly fucked with Android Auto here, but I've been using it for <em>years</em> and it's been fine, so what's changed?</p> <h2>New car</h2> <p>The only thing that has really changed from an <em>Android Auto</em> perspective was that I'd <a href="https://kevquirk.com/a-rant-about-modern-cars">got a new car</a> which now used wireless Android Auto instead of having to plug a cable in.</p> <p>After some research, it turns out that wireless Android Auto is an absolute resource hog.</p> <p>Unlike standard Bluetooth audio, the wireless projection that Android Auto uses forces your phone to continuously compress and stream a high frame rate video feed over a Wi-Fi link, all while aggressively hammering the GPS and cellular radios too.</p> <p>To make matters worse, if the car is parked anywhere near the house, the phone can get stuck in a persistent background polling loop that blocks deep sleep, basically turning the handset into an expensive pocket radiator.</p> <p>Nice in winter, but not so bueno when you need your phone and it has a dead battery!</p> <h2>The fix</h2> <p>The fix, dear reader, was rather simple. <strong>Disable wireless Android Auto</strong>. However, in practice it was more difficult than I had expected.</p> <p>I had to enable developer options within Android Auto's settings so the "<em>disable wireless Auto</em>" option became available. Why is that even a "developer option"? It should be a standard option IMO.</p> <p>Then I had to fiddle with the car's settings to not force wireless Android Auto, but instead prefer plain old Bluetooth. By doing this it allows me to still use Android Auto when I plug a USB C cable in, but by default it only uses Bluetooth.</p> <p>The infotainment display in my car is pretty nice, so I'm not really missing anything by not using Android Auto. Plus, it annoys me that Navigation <em>always</em> shows up - I don't need it most of the time, so why waste the computing power and screen real estate?</p> <p>Anyway, it's been a few days now and my battery is back to lasting me a couple of days. Worst case I need to quickly pull out my phone to open Spotify or my podcast app, AntennaPod, before I drive away, so the car picks up the media stream.</p> <p>If I really need it, full Android Auto is only a USB C cable away, and I <em>know</em> it won't hammer my battery after I get out of the car.</p> <h2>Final thoughts</h2> <p><a href="https://kevquirk.com/a-rant-about-modern-cars">I've ranted about how complicated modern cars are before</a>, but this is just another example of how annoying it is. I'm a technical person, so can work this out for myself, but many of my friends and family would have had no chance in figuring this shit out, let alone fixing the problem.</p> <p>It's too much - they're too intrusive. I don't need to be connected everywhere. I don't need phone notifications in my car, and I usually don't need a sat nav - plus my car has it's own sat nav! I just want a way to stream media from my phone, without it getting as hot as the surface of the sun and wasting a tonne of battery power. Is that too much to ask?</p> <p>Anyway, it's fixed now (I think). If you're having battery issues on your phone, it might be worth checking your wireless phone connection to your car too.</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=Android%20Auto%20Has%20Been%20Hammering%20My%20Phone%E2%80%99s%20Battery">reply to this post by email</a>, or <a href="https://kevquirk.com/android-auto-has-been-hammering-my-phones-battery#comments">leave a comment</a>.</p> </div> Book Review: ActivityPub by Evan Prodromou ★★★★⯪ - Terence Eden’s Blog https://shkspr.mobi/blog/?p=74414 2026-09-01T11:34:18.000Z Terence Eden’s Blog <img src="https://shkspr.mobi/blog/wp-content/uploads/2026/08/activitypub.jpg" alt="Book cover with a parrot on it." width="200" class="alignleft"> <p>As part of <a href="https://shkspr.mobi/blog/2026/08/activitybot-is-the-recipient-of-an-nlnet-grant/">my grant from NLnet</a> to improve my Fediverse bot project, I'm spending time making sure I understand all the fundamentals of ActivityPub. The problem with Internet standards is they're scattered all over the place. Abandoned forums, half-maintained wikis, mailing lists with obscure rules, and monolithic blocks of text.</p> <p>Sometimes you just want one book which collates all the info and presents it in a consistent format. This is <em>nearly</em> that book.</p> <p>Evan Prodromou has the unenviable task of making the whole ecosystem easy to understand. Thankfully he does that well. Things are logically laid out, there are comprehensive descriptions of even the most obscure parts of the spec, and it builds up nicely from the fundamentals. Oh, it's also surprisingly light-hearted.</p> <blockquote><p>This principle is so important and long-winded that web architects have given it an acronym, HATEOAS. (We often pronounce it “HATE-ee-OH-us,” which sounds like a breakfast cereal nobody wants to eat. This is one reason web architects aren’t allowed to name breakfast cereals.)</p></blockquote> <p>There's an excellent checklist for all the steps needed when building a minimal ActivityPub server.</p> <p>As with all O'Reilly books, it is a beautifully typeset ePub. Even better, it was supplied DRM-free through Kobo.</p> <p>About the only significant thing missing is details of how to verify RFC 9421 HTTP Signatures. That's understandable as they're pretty new, but a bit annoying as that's what a lot of servers are sending now. Similarly, there's a good write up of how to publish a poll, but not much about voting or publishing the results.</p> <p>The "Far Horizons" chapter is particularly exciting - giving a speculative overview of what AP <em>could</em> be used for. I, for one, am particularly looking forward to putting my Internet Connected Fridge on social media 😆</p> <p>Ultimately ActivityPub is a living and evolving set of standards. No book can possibly keep up with all the changes happening to it - but Evan does a brilliant job of bringing together all the moving parts and creating a coherent picture of the standard.</p> <p>Highly recommended if you're interested in understanding the fundamentals of the Fediverse!</p> <img src="https://shkspr.mobi/blog/wp-content/themes/edent-wordpress-theme/info/okgo.php?ID=74414&HTTP_REFERER=Atom" alt width="1" height="1" loading="eager"> Inside Ukraine's Kill Zone - Kev Quirk https://kevquirk.com/inside-ukraines-kill-zone 2026-09-01T10:18:00.000Z Kev Quirk <div class="link card"><h2>Inside Ukraine's Kill Zone</h2><p class="post-author">by Reuters</p><p>Really interesting (and saddening) look at the front line in the Ukraine/Russia war.</p><p><a class="button" target="_blank" href="https://www.reuters.com/graphics/UKRAINE-CRISIS/KILL-ZONE/znpnojmknvl/">Read post ➡</a></p></div> <hr> <p>Saw this on <a href="https://www.densediscovery.com/" rel="noopener noreferrer">Dense Discovery</a>. It's a really interesting look at how the shape of warfare has changes from soldiers with weapons, to drone-based attacks.</p> <blockquote> <p>The days of heavy mechanised manoeuvres are over; a drone costing a few thousand dollars can disable a tank worth millions.</p> <p><cite>-- Reuters</cite></p> </blockquote> <p>I served in Iraq and Afhganistan with the British Army in the early 00's. Back then <a href="https://en.wikipedia.org/wiki/General_Atomics_MQ-1_Predator" rel="noopener noreferrer">drones were used</a>, but were in their infancy. The fact that we've completely moved to this kind of warfare in ~20 years in scary.</p> <p>I learned a lot in this post. It's both interesting and extremely saddening. My thoughts are with all those involved in this needless conflict.</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=Inside%20Ukraine%27s%20Kill%20Zone">reply to this post by email</a>, or <a href="https://kevquirk.com/inside-ukraines-kill-zone#comments">leave a comment</a>.</p> </div> Thoughts on Blaugust 2026 - Joel's Log Files https://joelchrono.xyz/blog/thoughts-on-blaugust-2026 2026-09-01T05:50:00.000Z joelchrono <p>Well, the month is over, and with that, Blaugust is gone as well! This is the second time I have participated on this challenge, and it has also lead to quite a lot of interesting interactions and a decent amount of posts.</p> <p>To be honest, I was unable to reach the goal of 31 posts for the whole month. I wanted to give that a try and I even did two posts per day some times when I missed some previous days. However, as usual, some other matters got in the way! My siblings were visiting, my sister’s boyfriend was visiting, and I also had a few days of vacation which I decided to spend on other hobbies unrelated to writing.</p> <p>As such, I ended up with a total of 19 blogposts for the whole month, one less than July which didn’t have an event tied to it! I basically wrote the usual, and well, that’s pretty good, although my pacing was all over the place, with some weeks much fuller than others and the like.</p> <p>Not many people can afford to write in the same way I do, so I am content, even if it’s not a particularly impressive amount given my previous history.</p> <p>Here is a quick list of some of my favorite moments and things that happened because of this event!</p> <ul> <li>I started chatting with Sam from <a href="https://thetangent.space">The Tangent Space</a> about our blogging, videogames and specifically how epic Outer Wilds is.</li> <li> <p>My post about <a href="/blog/not-paranoid-but-respectful/">how we should react to slop</a> was one of many responses to <a href="http://82mhz.net/posts/2026/08/are-we-becoming-too-paranoid-about-ai-slop/">Andreas</a>, who had a fantastic Blaugust too.</p> </li> <li> <p>My post on <a href="/blog/iconic-moments-in-gaming">iconic gaming moments</a> inspired Victoria to do a <a href="https://gaudetetheology.wordpress.com/2026/08/16/iconic-moments-in-gameing-tabletop-edition">tabletop edition!</a></p> </li> <li> <p>My post on <a href="/blog/about-books-and-their-translations">books and tranlsations</a> inspired Marisable to write a <a href="https://marisabel.nl/public/blog/RE_about_books_and_their_translations">blog reply!</a></p> </li> <li> <p><a href="https://notes.jeddacp.com">Jedda</a> found this event very helpful to process her recent losses and grief.</p> </li> <li> <p><a href="https://burgeonlag.com">Naty</a> participated for the first time ever, and got a Silver Award just like me.</p> </li> <li><a href="https://syls.blog">Syl</a> actually beat me this time around, I’m going to steal some of her post ideas for future dates.</li> </ul> <p>And here are some of the post ideas I am yet to draft or post, which didn’t make it in time for Blaugust!</p> <ul> <li>A very long review about Outer Wilds.</li> <li>A retelling of my second session GMing the <em>Land of Eem</em> TTRPG with friends</li> <li>A post about the Max Steel franchise and its influence during my childhood</li> <li>A post/reply inspired by Syl’s <a href="https://syls.blog/my-favorite-game-screenshots/">favorite game screenshots</a></li> </ul> <p>I could share a bit more but I’d rather get working on them and publishing something more soon!</p> <p>All in all, I now posses the <strong>Silver Award</strong> for Blaugust 2026! after publishing more than 15 posts during the month, and I can continue to write whatever I want as usual. Not like I ever stopped doing that, but still!</p> <p>This is day 25 of <a href="https://100DaysToOffload.com">#100DaysToOffload</a></p> <p> <a href="mailto:me@joelchrono.xyz?subject=Thoughts on Blaugust 2026">Reply to this post via email</a> | <a href="https://fosstodon.org/@joel/idcomments">Reply on Fediverse</a> </p> Not home alone, Outer Wilds obsession - w35 - Joel's Log Files https://joelchrono.xyz/blog/2026-w35 2026-09-01T01:48:30.000Z joelchrono <p>I will write a separate post sharing some thoughts about Blaugust, but here are some of my notes for this week between August 25 to 31, 2026.</p> <ul> <li> <p>📺 After beating <em>Outer Wilds</em> I have watched all sorts of playthroughs, supercuts, essays, reviews, interviews, and any sort of related media about this game! I also purchased the soundtrack on Steam (if only it was available on Bandcamp…). Some of the videos I’ve watched are by About Oliver, Cynthetic, CDawgVA, Joseph Anderson, Chert’s Research Notes and Goragle. I also gifted the game to two friends.</p> </li> <li> <p>🏠 Stayed at home for most of the week, first I had vacation on Monday and Tuesday, then I got out of work early on Thursday and Friday. This gave me lots of time for gaming and movies!</p> </li> <li> <p>🕵️ During half of the week my sister’s <em>boyfriend</em> was still visiting, and my parents left for a trip, so I was kind of the third wheel there and I made absolutely sure he knew I was around… Okay but seriously, the guy did prep lunch for everyone a couple times so maybe he’s not so bad.</p> </li> <li> <p>🌳 There was this person who was going to do a bunch of yardwork in our house so I had to keep an eye on things there as well. There was this tree with roots that got in the way of our plumbing—the reason my restroom flooded a lot lately–and it had to be removed. We had planted four more trees further away from the house to replace it!</p> </li> <li> <p>🥪 My eating habits when I’m alone are never particularly great, a lot of cereal bowls and bread and chips and snacks were consumed for the sake of me staying alive for another day. Don’t worry, I got normal food at work, and I actually cooked some quesadillas and also chicken later in the week!</p> </li> <li> <p>🚲 Hate to say it but my cycling habit fell off at last. I need to pick it up again, at least I am aware of what is going on and can work on it. I really need to get a grip on this. Perhaps I don’t like going to the gym via bicycle lol.</p> </li> </ul> <figure> <img src="/assets/img/blogs/2026-08-31-week.webp" /> <figcaption>A lovely panel with Anya and Yor sleeping, some Silksong screenshots with a low health bar, and some iconic scenes from Ocarina of Time</figcaption> </figure> <h2 id="gaming">Gaming</h2> <ul> <li> <p><strong>Hollow Knight: Silksong</strong> - With <em>Outer Wilds</em> out of the way, I’ve returned to this as my main Nintendo Switch game. I fulfilled all of the requirements and more to unlock Act 3 and defeated the final boss one more time, in order to change the fate of Pharloom! But of course, the fact there’s an Act 3 means there’s a lot more to do now to actually fix things. Alas, I have faced against plenty of perilous foes already. and having a lot of fun despite the higher difficulty.</p> </li> <li> <p><strong>The Legend of Zelda: Ocarina of Time</strong> - I continued my adventure through Jabu Jabu’s Belly and ended up defeating the main boss. This means that I have now acquired the three stones I needed, and after an iconic cutscene where I meet Ganondorf chasing after the princess, I am now heading to Temple of Time to continue with the legendary story we all know and love. Awesome stuff!</p> </li> <li> <p><strong>Minecraft</strong> - Finally returned to the Minecraft server I have with my friends. I started to build a new house and it’s going quite well! I still don’t have a rooftop but I also have no complaints, I had fun trying to come up with a fun house design I must say.</p> </li> <li> <p><strong>Faster Than Light</strong> - Started another quick round of this title, I didn’t do a lot of progress and ended up with another destroyed ship! I should probably try some of the <em>Advanced</em> content or at least a different ship design to mix things up.</p> </li> </ul> <h2 id="reading">Reading</h2> <ul> <li><strong>Spy x Family</strong> - Chapters 138-140. With Loid out of commission for a little while, Anya and Nightfall end up in a bit of a convoluted quest to help Twilight on his mission, each one on their own secret spy-ish ways! Some pretty fun moments and interesting developments too.</li> </ul> <h2 id="watching">Watching</h2> <ul> <li> <p><strong>Edge of Tomorrow</strong> - For some reason, I was feeling like watching a movie with a time loop in it. This is actually a fantastic sci-fi action film and I absolutely love it. The aliens are pretty neat, the emotional mfor oments actually hit, and well, I don’t know, I really enjoy it! I had seen it before, though I didn’t pay a lot of attention to it then, it’s good stuff. I may re-read the <em>All You Need is Kill</em> manga now.</p> </li> <li> <p><strong>Sunshine</strong> - For some reason, I was feeling like watching a movie with a dying sun in it. What a film this turned out to be, I also watched it because I heard of it from Brendon Bigley in one of the <em>Shore Leave</em> patreon episodes of the <em>Into The Aether</em> podcast. Gillian Murphy and a bunch of other movie stars show up. The concept of and the cinematography of this is awesome.</p> </li> </ul> <h2 id="around-the-web">Around the Web</h2> <h3 id="youtube">YouTube</h3> <p>I am omitting all of the Outer Wilds videos I watched, it was quite the challenge.</p> <ul> <li><a href="https://youtu.be/1ThOtTPm7pQ">How Kerbal Space Program Was Made & Why NASA Took it Seriously</a></li> <li><a href="https://youtu.be/yLt-CyqzYtM">I Did Something New With The OLDEST form of Animation</a></li> <li><a href="https://youtu.be/cVqqNigImtU">This instrument is beautiful (and dangerous!)</a></li> <li><a href="https://youtu.be/iDe8ss2IR5A">I Built Zelda’s Master Cycle… Then Raced It</a></li> <li><a href="https://youtu.be/8p7k5Y-k3Uc">You’re Playing Video Games Wrong</a></li> </ul> <h3 id="blog-posts">Blog Posts</h3> <p>Blogposts for everyone, you better enjoy them so much!</p> <ul> <li><a href="https://www.jamesleighton.com/the-games-i-play/">The Games I Play</a></li> <li><a href="https://syls.blog/sublime-moments/">Sublime Moments</a></li> <li><a href="https://www.rubenerd.au/documentaries-used-to-be-so-chill/">Documentaries used to be so chill</a></li> <li><a href="https://marisabel.nl/public/blog/I_do_not_own_a_book_shelf">I do not own a book shelf</a></li> <li><a href="https://thetangent.space/2026/reading/">How’s that year of reading going, anyway?</a></li> </ul> <p>This is day 24 of <a href="https://100daystooffload.com">#100DaysToOffload</a> and 18 of <a href="https://nerdgirlthoughts.game.blog/2026/07/15/blaugust-2026-is-coming">#Blaugust2026</a></p> <p> <a href="mailto:me@joelchrono.xyz?subject=Not home alone, Outer Wilds obsession - w35">Reply to this post via email</a> | <a href="https://fosstodon.org/@joel/117193401360407973">Reply on Fediverse</a> </p> Wonders of Web Weaving, Episode 17 - James' Coffee Blog https://jamesg.blog/2026/09/01/www-17 2026-09-01T00:00:00.000Z James' Coffee Blog <p><a href="https://web-weaving.jamesg.blog/17" rel="noreferrer">The seventeenth episode of Wonders of Web Weaving is out</a>:</p><blockquote>In Episode 17, <a href="https://shellsharks.com">Mike</a> interviews <a href="https://jamesg.blog">James</a>, the author of "with words, wonder" (formerly James' Coffee Blog) about, among other things, identity and personal websites, writing on the web, communicating the potential of personal websites, and more.</blockquote><p>I hope you enjoy the episode!</p><p><a href="https://web-weaving.jamesg.blog/subscribe/" rel="noreferrer"><em>Wonders of Web Weaving also has an RSS feed</em></a><em> you can use to follow along from wherever you get your podcasts.</em></p><script>(function(){function c(){var b=a.contentDocument||(a.contentWindow&&a.contentWindow.document);if(b){var d=b.createElement('script');d.innerHTML="window.__CF$cv$params={r:'a3429acaab942ccd',t:'MTc4ODI0ODE5Mw=='};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> <a class="tag" href="https://jamesg.blog">James</a> <a class="tag" href="https://shellsharks.com">Mike</a> <a class="tag" href="https://web-weaving.jamesg.blog/17">The seventeenth episode of Wonders of Web Weaving is out</a> <a class="tag" href="https://web-weaving.jamesg.blog/subscribe/">Wonders of Web Weaving also has an RSS feed</a> Published on Citation Needed: "Issue 109 – Reg Crypto" - Molly White's activity feed 6a95b24552b01ca28c3ff2a2 2026-08-31T16:56:37.000Z Molly White <article class="entry h-entry hentry"><header><div class="description">Published an issue of <a href="https://www.citationneeded.news/"><i>Citation Needed</i></a>: </div><h2 class="p-name"><a class="u-syndication" href="https://www.citationneeded.news/issue-109" rel="syndication">Issue 109 – Reg Crypto </a></h2></header><div class="content e-content"><div class="media-wrapper"><a href="https://www.citationneeded.news/issue-109"><img src="https://www.citationneeded.news/content/images/size/w2000/format/webp/2026/08/109-header.png" alt="A screenshot of a Trump press conference where he is flanked by crypto executives. Boxes around the border show who they are and how much they’ve contributed to his campaign."/></a></div><div class="p-summary"><p>The SEC’s “Reg Crypto” aims to carve out exemptions, the CFTC wields emergency powers to shield prediction markets from state regulators, and a Trump family crypto firm gets a bank charter</p></div></div><footer class="footer"><div class="flex-row post-meta"><div class="timestamp">Posted: <a class="u-url" href="https://www.citationneeded.news/issue-109"><time class="dt-published" datetime="2026-08-31T16:56:37+00:00" title="August 31, 2026 at 4:56 PM UTC">August 31, 2026 at 4:56 PM UTC</time>. </a></div><div class="social-links"> <span>Also posted to:</span><a class="social-link u-syndication mastodon" href="https://hachyderm.io/@molly0xfff/117191159087486372" title="Mastodon" rel="syndication">Mastodon</a><a class="social-link u-syndication bluesky" href="https://bsky.app/profile/molly.wiki/post/3mufejzqfhs2x" title="Bluesky" rel="syndication">Bluesky</a><a class="social-link u-syndication youtube" href="https://www.youtube.com/watch?v=_HSmHy4gXco" title="Youtube" rel="syndication">Youtube</a></div></div><div class="bottomRow"><div class="tags">Tagged: <a class="tag p-category" href="https://www.mollywhite.net/feed/tag/crypto" title="See all feed posts tagged "crypto"" rel="category tag">crypto</a>, <a class="tag p-category" href="https://www.mollywhite.net/feed/tag/crypto_lobby" title="See all feed posts tagged "crypto lobby"" rel="category tag">crypto lobby</a>, <a class="tag p-category" href="https://www.mollywhite.net/feed/tag/sec" title="See all feed posts tagged "SEC"" rel="category tag">SEC</a>, <a class="tag p-category" href="https://www.mollywhite.net/feed/tag/trump_administration" title="See all feed posts tagged "Trump administration"" rel="category tag">Trump administration</a>, <a class="tag p-category" href="https://www.mollywhite.net/feed/tag/world_liberty_financial" title="See all feed posts tagged "World Liberty Financial"" rel="category tag">World Liberty Financial</a>.</div></div></footer></article> Nine Fifth Wave Emo Bands Worth Checking Out​ - Cool As Heck https://cool-as-heck.blog/nine-fifth-wave-emo-bands-worth-checking-out 2026-08-31T14:53:17.000Z cool-as-heck <div>Emo has a habit of being pronounced dead every few years, right before a new crop of bands revives it under a slightly different name. The current revival is no exception. People call it the fifth wave, and while the label is loose and a little contested, it's the term the scene uses for itself.<br> </div> <h2 id="what-emo-actually-is">What emo actually is</h2> <div>If you're not familiar with what emo is, the word is short for "emotional hardcore." It started in the mid-1980s in Washington, D.C., when bands like Rites of Spring and Embrace took hardcore punk's volume and intensity but wrote about interior life instead of politics. The name was meant as a slight and stuck anyway.</div> <div><br></div> <div>From there the genre branched a few times:</div> <ul> <li>First wave (mid-80s): Rites of Spring, Embrace, Dag Nasty. Hardcore kids writing about feelings.</li> <li>Second wave (mid-90s): the Midwest scene, Sunny Day Real Estate, American Football, Cap'n Jazz. Quieter dynamics, cleaner and more intricate twinkly guitar work.</li> <li>Third wave (early 2000s): emo crossed over. My Chemical Romance, Fall Out Boy, Taking Back Sunday moved it from basements to arenas.</li> <li>Fourth wave (2010s): the "emo revival." Modern Baseball, The Hotelier, Into It. Over It., The World Is a Beautiful Place. DIY again, literate and sad.</li> <li>Fifth wave (late 2010s to now): harder to pin down, which is sort of the point.</li> </ul> <div>The fifth wave borrows the twinkly guitar language of the second wave and the hooks of the third, but it grew up online. These bands tour small rooms, built audiences through streaming and TikTok, and write with a self-awareness that comes from having the entire history of emo a click away. They also blur into adjacent genres, so you'll hear the same bands filed under Midwest emo, pop punk, and post-hardcore depending on who's writing the playlist.</div> <div><br></div> <div>Here are nine bands worth checking out, each with a song to start with.</div> <div><br></div> <h2 id="like-roses">Like Roses</h2> <div>Like Roses formed in the Bay Area, California, and frontwoman Amy Schmalkuche's voice does most of the heavy lifting. Their single "Easy" caught fire in 2023 and landed them a deal with Hopeless Records; the debut full-length <i>Closure</i> followed in 2024. It's anthemic, emotionally direct emo with a pop-punk engine and a genuine edge.</div> <div><br></div> <div>Listen: <a href="https://www.youtube.com/watch?v=SnGSMd1gNok">Like Roses, "Easy"</a> </div> <div><br></div> <h2 id="ben-quad">Ben Quad</h2> <div>From Oklahoma City, Ben Quad started as a jokey emo project and got serious fast. The 2022 EP <i>I'm Scared That's All There Is</i> was full of screamy, mathy, occasionally silly songs that turned out to be a lot smarter than they let on. Signed to Pure Noise Records, they followed it with <i>Ephemera</i> in 2024. They describe themselves as "post-emo," and it fits.</div> <div><br></div> <div>Listen: <a href="https://www.youtube.com/watch?v=LoH32hLSvWk">Ben Quad, "You're Part of It"</a> </div> <div><br></div> <h2 id="arm-s-length">Arm's Length</h2> <div>Arm's Length is from Belleville, Ontario, and their debut album <i>Never Before Seen, Never Again Found</i> (2022) is one of the most-loved records in the current scene. "Object Permanence" and "Garamond" are the tracks people name when they recommend them. Big, bruised, sing-along emo with a distinctly Canadian melancholy.</div> <div><br></div> <div>Listen: <a href="https://www.youtube.com/watch?v=7Piz6XtvHNs">Arm's Length, "Object Permanence"</a> </div> <div><br></div> <h2 id="pool-kids">Pool Kids</h2> <div>Pool Kids come out of Tallahassee, Florida, fronted by Christine Goodwyne. Their self-titled 2022 album is full of tricky, mathy guitar parts and sharp songwriting that rewards repeat listens. "That's Physics, Baby" and "Arm's Length" are the standouts. It's emo that sounds like a band that rehearses a lot, in the best way.</div> <div><br></div> <div>Listen: <a href="https://www.youtube.com/watch?v=m71t00tUIEM">Pool Kids, "That's Physics, Baby"</a> </div> <div><br></div> <h2 id="savings">savings</h2> <div>savings started as a solo project for Sam Wilmot in Albuquerque, New Mexico, before growing into a full band. The EP <i>Get Well Soon</i> (2023) introduced them, and <i>How Do You Feel?</i> (2025) pushed their sound toward shoegaze and indie without losing the Midwest emo core. The lowercase name is intentional.</div> <div><br></div> <div>Listen: <a href="https://www.youtube.com/watch?v=EC8fTg_0pes">savings, "Chin Up, Champ!"</a> </div> <div><br></div> <h2 id="saturdays-at-your-place">saturdays at your place</h2> <div>saturdays at your place formed at Western Michigan University in 2021 and are about as Midwest emo as a band can get, hailing from Kalamazoo. The trio of Esden Stafne, Gabe Wood, and Mitch Gulish pairs intimate lyrics with twinkly guitar parts and heavy instrumental hooks. "eat me alive" is the song that broke them; the 2023 EP <i>always cloudy</i> is the deeper cut.</div> <div><br></div> <div>Listen: <a href="https://www.youtube.com/watch?v=YBDqBeDB_K8">saturdays at your place, "eat me alive"</a> </div> <div><br></div> <h2 id="origami-angel">Origami Angel</h2> <div>Origami Angel is the duo of Ryland Heagy and Pat Doherty from Washington, D.C., and they're one of the biggest names in the fifth wave. Their sound is bright, hooky, and relentlessly fun, with a self-contained universe they call "Gami." <i>Somewhere City</i> (2019) and the double album <i>Gami Gang</i> (2021) made them, and <i>Feeling Not Found</i> (2024) kept the streak going.</div> <div><br></div> <div>Listen: <a href="https://www.youtube.com/watch?v=zai1co_Ap8s">Origami Angel, "24 Hr Drive-Thru"</a> </div> <div><br></div> <h2 id="leisure-hour">Leisure Hour</h2> <div>Leisure Hour is a three-piece from Muncie, Indiana: Grace Dudas, Raegan Gordon, and Isaiah Neal. They play loud, fast Midwest emo with three-part harmonies, and they built their following on relentless DIY touring. <i>The Sunny Side</i> (2024) was self-released; <i>...and to think</i> landed on Counter Intuitive Records in early 2026. "Ode to Muncie" is their hometown anthem.</div> <div><br></div> <div>Listen: <a href="https://www.youtube.com/watch?v=f5I_lClPrZk">Leisure Hour, "Ode to Muncie"</a> </div> <div><br></div> <h2 id="jail-socks">Jail Socks</h2> <div>Jail Socks is a trio from Charlotte, North Carolina. Their debut album <i>Coming Down</i> (2021) came out on Counter Intuitive Records and is one of the catchiest emo records of the last few years, with post-hardcore bite under the hooks. "Peace of Mind" and "Point Pleasant" are the songs to start with.</div> <div><br></div> <div>Listen: <a href="https://www.youtube.com/watch?v=LTg2MAFhhG8">Jail Socks, "Peace of Mind"</a> </div> Review: Ruined Theatre's A Midsummer Night's Dream ★★★★☆ - Terence Eden’s Blog https://shkspr.mobi/blog/?p=74461 2026-08-31T11:34:08.000Z Terence Eden’s Blog <p>The whole point about Shakespeare is that you can set the play on an intergalactic space station or an American high school and keep virtually the rest unchanged. What happens when you transpose Dream from a proscenium arch to a living wood? As the sun sets over the trees, what sprites will come out to entertain us?</p> <p>Ruined Theatre brings a brilliant cast of seasoned West End performers to strut their hour among the ruins of Abbey Wood. Hey, gentrification has its benefits, OK?</p> <p><a href="https://www.instagram.com/ruined_theatre/"><img src="https://shkspr.mobi/blog/wp-content/uploads/2026/08/msnd.webp" alt="Poster for the show, an explosion of colour." width="1024" height="527" class="aligncenter"></a></p> <p>I don't know how many times I've seen "Dream", but I know I've never seen it performed in an actual wood during summer. Booking the tickets a few weeks ago during England's heatwave, it sounded perfect. A warm, dusky evening, accompanied by færies and asses. The British weather, of course, had other ideas.</p> <h2 id="the-show-must-go-on"><a href="https://shkspr.mobi/blog/2026/08/review-ruined-theatres-a-midsummer-nights-dream/#the-show-must-go-on">The Show <em>Must</em> Go On</a></h2> <p>The storm clouds were, as the bard wrote, heavy, black and, pendulous. Outside it may be raining, their makeup may be flaking, but everyone knows that Shakespeare is best played when defying the elements, right?</p> <p>Even in the rain, it was great! Theseus and Hippolyta as selfie-obsessed poseurs made for a delightful start. Recasting Athens as Lesnes was a great touch. And then we were led through the woods. Rather than traipse us from scene to scene, we settled in to a clearing - bringing our own camping chairs with us - and watched the magic unfold.</p> <p>Half the fun is in watching children and teenagers giggling at Hermia's rage and Bottom's overconfident bombast. But you can't go wrong with actors studiously ignoring the downpour and professing their (misplaced) love for each other. Honestly, who'd lie down in the mud just to make us chuckle? How many laughs can you ring out of a man with an ass's head? Lord, what fools these mortals be!</p> <p>It is a fairly straightforward production. Aside from modern dress there wasn't much updating of the text other than trimming it down. The smoke machine might have been an eerie touch on a still summer's night, billowing around us, instead the wind took it before it had a chance to settle. The incidental music worked well - especially the intertextuality of Pyramus & Thisbe playing to the Romeo+Juliet soundtrack - but the speakers were over-driven and distorted. A small crimp on an otherwise fine production.</p> <h2 id="reflections-in-a-dappled-pond"><a href="https://shkspr.mobi/blog/2026/08/review-ruined-theatres-a-midsummer-nights-dream/#reflections-in-a-dappled-pond">Reflections in a dappled pond</a></h2> <p>I'm fairly sure I once played Demetrius in a youth production. Or possibly Lysander. I know I got to kiss Helena. Or possibly Hermia. The mind plays funny tricks as you age. Some of the more dreary prose becomes light and airy. The laughs which felt forced come more easily. The gender politics a little more nuanced.</p> <p>You can never go back, of course. But you will always remember your first stage kiss with Hermia (or possibly Helena) with great affection. Seeing Shakespeare again and again and again in a hundred different variations just helps you realise what a master storyteller he was.</p> <img src="https://shkspr.mobi/blog/wp-content/themes/edent-wordpress-theme/info/okgo.php?ID=74461&HTTP_REFERER=Atom" alt width="1" height="1" loading="eager">