Links The RSS feed for Links.

Link to good posts and articles on the web.

  • ๐Ÿ”— Birchtree: Where did the MP3s come from?

    Not to make everything a comparison to what we’re living through now, but I do think that it’s notable that one of the most nostalgic, good-vibes products of many of our youths was fundamentally built on stealing from artists.

    Seems to me that the nostalgia comes from having media that you “own.” Maybe not in a purely legal sense, but certainly from a technical one. To be able to manipulate media as plain files on a file system, that you can move and play anywhere, is something that’s been lost with the move to streaming.

    The good news is that it’s still possible to get music as MP3 files, legally even. Bandcamp and Qobuz are two I tend to visit, and both are quite good. And yes, it may not have everything you’re looking for, but it has more than you think. Enough for me to go there to look for something before resorting to the streaming services.

  • ๐Ÿ”— Simon Willison: Gemini 3.1 Flash TTS

    Google released Gemini 3.1 Flash TTS today, a new text-to-speech model that can be directed using prompts.

    Oof! This looks like a pretty good TTS system. The example Simon gave was quite convincing. I had a play myself using Simon’s online tools, giving the model this prompt:

    Say dynamically: “[surprised]Wow, impressive! [neutral] Although I do wonder if this is worth the two cents I paid. Would be nice if I chose the right word to say. [mocking] Impression? [laugh] So cute!”

    (Some context, I wrote “impression” instead of “impressive” in my first test).

    Here’s the result (it’s a download link download to avoid the post showing up on the podcast feed): gemini-speech.wav

    Pretty decent.

  • ๐Ÿ”— Robert Birming: How to kill a blog

    What can you do to prolong [your blog’s] life?

    It’s very simple. Don’t go niche.

    Blog about whatever you feel like. Some posts get more attention than others. It’s not important.

    Love it! And so true.

  • ๐Ÿ”— Kaptur: Sora - A Solution Without a Problem

    A fascinating exploration on the failures of Sora, why the engagement of AI-generated video wasn’t there, and what real video and photography has that the AI-generated counterpart just doesn’t.

    Via: Om Malik

  • ๐Ÿ”— The Axios supply chain attack used individually targeted social engineering

    they scheduled a meeting with me to connect. the meeting was on ms teams. [โ€ฆ] the meeting said something on my system was out of date. i installed the missing item as i presumed it was something to do with teams, and this was the RAT.

    Ah, an interesting way to get someone to install something: throwing up an install prompt minutes before needing to join a meeting. Exploiting probably the most annoying aspect of video conferencing software.

  • ๐Ÿ”— Googleโ€™s New Sideloading Restrictions for Android Include a 24-Hour Waiting Period

    Ugh! Google is just dead set on ruining Android, aren’t they. If I wanted a locked-down mobile OS, I would’ve bought an iPhone. At least that way I would’ve had access to better apps. ๐Ÿ˜’

    Via: Daring Fireball

  • ๐Ÿ”— Pixel Envy: On Software Quality

    I am somewhat impressed by the breadth of Appleโ€™s current offerings as I consider all the ways they are failing me, and I cannot help but wonder if it is that breadth that is contributing to the unreliability of this software. Or perhaps it is the companyโ€™s annual treadmill.

    I’m almost certain that the devs at Apple are not happy with shipping software that doesn’t match this quality threshold. They’d fix all this issues with Tahoe and iOS 26 if they could (well, the one’s that are not just bad designs). They just don’t have the time to do so.

    Hardware takes months to setup, and once the lines are ready, it’s expensive to change them. So there’s huge resistance to change it near the end of the release cycle. Software’s malleability, in this respect, is a blessing and a curse. So easy to change, meaning that those making the decisions don’t see a cost in making these changes in the 11th hour. After all, it’s “just” software. But established software products are also resistant to change, and adding more cruft on the top just makes the change harder. Rather than fix things, devs spend all their time trying to get the bodged code working in concert while trying to meet the deadlines set from those that need features to sell. The result is lower quality software.

    There’s no escaping the “scope, quality, time: pick two” maxim.

  • ๐Ÿ”— Steve Yegge: You Should Write Blogs

    An oldie but a goodie.

    The last big problem I grapple with is biting off too much for a single blog. I find that if I can write a blog in a single sitting, it’ll usually seem worth publishing, at least at the time. [โ€ฆ] If I can’t write it in one sitting, I feel like I don’t have something concrete enough to say. [โ€ฆ] I can only do that with coding, not writing.

    Yeah, I suffer from this too. I need to hit publish soon after writing the first draft, otherwise the resistance to finishing it gets too great.

  • ๐Ÿ”— Six Colors: Appleโ€™s Creator Studio has a rough App Store roll-out

    But if youโ€™ll forgive me, I find it hard to get too worked up about icon designs when Apple is putting ads for a professional creative suite in its free productivity apps. Which is the greater offense [sic] to the user experience?

    I was a little worried that Apple would put ads in the version of Logic Pro I bought and paid for a few years ago. Fortunately that isn’t the case (points for restraint, I guess). But it sucks they’ve decided to do this in software that’s bundled with the OS. Getting ideas from Microsoft, maybe.

  • ๐Ÿ”— LMNT: Interface Sound Effects

    Playing Nintendo games […] makes me wish macOS was flooded with lots of interface sound effects. For clicking down, up, resizing windows, minimizing windows, zooming windows, dragging windows, clicking buttons and checkboxes and radio buttons, dragging sliders, etc.

    The most notable interface sound I can remember was Windows 98, which made a mouse click sound when double clicking a folder in the explorer. This was when tapping on trackpads to simulate a mouse click were becoming a thing, so this was probably meant to be more utilitarian than whimsical.

  • ๐Ÿ”— Steve Yegge: Software Survival 3.0

    Interesting post from Steve Yegge about the qualities of software that could survive in a world of agents. Seems more geared towards their fitness for agent use, but there were some notes about human use too. Food for thought.

    (Oh, and Steve, I’m glad you’ve settled on a blogging platform but did it have to be Medium?)

  • ๐Ÿ”— TawakiCam Live

    Live penguin camera stream set-up on Antipodes Island (for now). For anyone who likes penguins, which I think is everyone.

    Via: @georgepenney.bsky.social on Bluesky

  • ๐Ÿ”— Greg Morris: Envy: The Only Sin That Never Feels Good

    Someone’s life looks better than yours on Instagram and suddenly you’re either tearing yourself down or posting something designed to make them feel worse about theirs. You see someone’s project launch and instead of starting your own, you either convince yourself you’re not good enough or you start picking holes in what they’ve built. Both responses come from the same uncomfortable place. Neither helps you.

    Yep, envy sucks. It comes unbidden and leaves you feeling crappy. This resonated with me.

  • ๐Ÿ”— Wikipedia: Rubber-tyred tram

    Some follow-up on my speculation of how this one-rail tram vehicle that I saw in Italy works. Turns out that the single rail is used for guiding the vehicle, and the one pantograph variant does use the rail for the return current. But there is a two trolly-poll variant that only uses the rail for guidance, and can disconnect from it to form a bog standard trolleybus. Bit weird to consider the rail at all at that point, but still quite intriguing.

  • ๐Ÿ”— Steven P. Wickstrom: Over 300 words to use instead of SAID

    Filing this for later when I want to write some fiction (it could happen).

    Via: summeroakes.bsky.social on Bluesky

  • ๐Ÿ”— Simon Willison: How Rob Pike got spammed with an AI slop โ€œact of kindnessโ€

    Rob Pike (that Rob Pike) is furious […] Rob got a 100% AI-generated email credited to โ€œClaude Opus 4.5 AI Villageโ€ thanking him for his contributions to computing. He did not appreciate the gesture.

    Got a lot of emotional swings while reading this: outrage that someone would use AI agents to send spam like this, understanding as to what actually happened, then distaste with those responsible in their belief that the time wasted receiving emails like this is an acceptable external cost.

    But really, the whole experiment seems irresponsible. I can understand the want to see what these models could do, but come on: don’t given them access to a computer open to the Internet without any supervision. Rob Pike, a notable computer scientist that would be known to all these models, is right to be outraged. I would be too if I received this sort of unsolicited slop.

  • ๐Ÿ”— Weird Medieval Guys: How birds got human names

    Magpies were originally known simply as โ€œpiesโ€ until the nickname โ€œMagโ€, short for Maggie, short for Margaret was added to the front sometime in the Middle Ages. Before it began to be treated as a single word, it was rendered as โ€œMag Pieโ€, a sort of fanciful full name for the creature.

    Fascinating. This is, shall we say, the “money” quote of the linked post, but the rest is still quite an interesting read.

  • ๐Ÿ”— (AI) Smells on Medium

    Just in case you need another reason to avoid Medium. Apropos of nothing, the post also includes some links about writing blog posts for developers which look interesting.

    Via: lobste.rs

  • ๐Ÿ”— LinkedIn: Games

    That’s right, LinkedIn Games. For those that love their professional networking cum. social networking cum. messaging app but felt it needed more features. I’ve not tried these yet, I’ve only learnt about it today. But some might be enjoyable.

  • ๐Ÿ”— Andre Franca: Small Web, Big Voice

    Really enjoyed this post from Andre. I agree that some may view having a blog in 2025 as being irrational. I guess the belief is that it’s harder to get the exposure or virality with a blog than it is by simply posting on the socials (as if reach or cash is the only reason to do anything online). I’m not sure I agree, but even if that were true, it depends if that’s something you want. If it’s just to have a place that you can call your own, then I’d argue having a blog, even in 2025, makes total rational sense.

    Via: Kev Quirk

  • ๐Ÿ”— Nikita Prokopov: Needy Programs

    A thought provoking post.

    And even if you give up and create [an account for a program that requires one], they will never leave you alone: theyโ€™ll ask for 2FA, then for password rotation, then will log you out for no good reason. Youโ€™ll never see the end of it either way.

    The topic of passkeys came up at work yesterday. A colleague made the suggestion that passkeys should be mandated across everything, with very few exceptions. The reasons he gave are decent, of course: protecting accounts from unwanted intrusions. Yet I didn’t really agree with him. I know for myself I find them a little annoying, and knowing a few people who aren’t as steeped in technology as I are, I do wonder how well they would receive such a mandate. Probably in a similar way to Nikita here.

    And it’s a tricky balancing act, because they are more secure than passwords. And so is asking for 2FA, and password rotations, and logging you out after a while (that’s to avoid a session token from leaking and falls into the wrong hands, and being usable for ever). And sometimes they’re necessary: there are a lot of arseholes out there. But they are annoying, and when it comes to authentication, it’s usually the default position of any developer to say “lock down all the things,” without considering tradeoffs.

    So yeah, I don’t have a good answer here. Not even sure there is one.

    Via: Manton Reece

  • ๐Ÿ”— Android Developers Blog: Android developer verification

    Under the heading “Empowering experienced users” (emphasis original):

    Based on this feedback and our ongoing conversations with the community, we are building a new advanced flow that allows experienced users to accept the risks of installing software that isn’t verified.

    In other words: side loading should be possible without verification. This is good.

    Via: Hacker News

  • ๐Ÿ”— Raph Koster: Game design is simple, actually

    I’m only half way through this, but I’m finding this post on the theory of game design absolutely riveting. I’ve already got a bunch of linked posts ready to go, marking this one as the entrance to a good ol’ blogging rabbit hole.

    Via: Simon Willison

  • ๐Ÿ”— Birchtree: Browser agent modes are fucking stupid

    The demos seem designed for people who don’t book their own plane tickets, who aren’t concerned with cost when doing anything, and who haven’t been grocery shopping in a decade.

    I’ve not used any AI browser agents, mainly because I have no personal need of them, so I can’t lay claim to how relatable these demos are. But it is amusing to consider the people coming up with these demos being so out of touch that they would benefit from getting out more often than I do. And this is from someone who doesn’t get out that often. ๐Ÿ˜€

  • ๐Ÿ”— Annie’s Blog: Duck duck duck dichotomy

    I was a bit late in coming to this one but this post really resonated with me.