Manton Reece: Recent Episodes

None

View Details

My blog has probably shifted way too much to the political, but that’s how it goes in an election year. Personal blog, personal opinions. But I’ve got some new Micro.blog improvements to talk about this week! Starting tomorrow.

View Details

Chris Enns:

I wish we could have a day or two each month where we all collectively agreed to post about things we enjoy, love, appreciate, or celebrate. No rage farming, click baiting, or rants allowed. Just for one day.

That would be nice! I might fail at this test, but it’s a good goal.

View Details

Just watched Biden’s statement on the shooting. Very good. He is the President and our Democratic nominee. To me, the debate about replacing him is over. The campaign is chaotic enough already. I still think he can win, but it’s going to be close, and it’s going to be work. 🇺🇸

View Details

Saying that Trump is a threat to democracy is not a call for violence. He caused January 6th. He refuses to accept the last election or the next one. He is chaos. Even after being shot, he’s shouting “fight” to the crowd. Everything he touches becomes more dangerous. Vote. 🇺🇸

View Details

Just posted a new Core Intuition: A Billion-Dollar Flop. We check in about the Vision Pro, then think about how Apple plays the long game and what we can learn about balancing marketing features vs. app polish.

View Details

Rust judge dismisses the case against Alec Baldwin after prosecutors withheld evidence, saying:

If this conduct does not rise to the level of bad faith, it certainly comes so near to bad faith as to show signs of scorching prejudice.

This case always seemed unnecessary to me. There’s gotta be more pressing issues to tackle.

View Details

Here’s a sneak peek at a reorganized theme editor, moving a few things around to fix long-standing usability problems. When it’s ready (next week?) should be much easier to do quick edits without a bunch of clicks through managing themes.

View Details

Working on a couple different things, bouncing between them. One of those weeks where I can’t make up my mind what’s most important.

View Details

Joe Biden has always rambled, and it hurts him as he gets older. But here’s the deal. One candidate sounds confident but everything he says is nonsense. One candidate sounds mumbling but everything he says is correct. C’mon man! 🇺🇸

View Details

I’m going to watch Biden’s press conference in a couple hours. But I already know it won’t change anyone’s opinion unless Biden magically looks 10 years younger. Curious if reporters will try to ask any questions that aren’t about how old he is. NATO summit this week was kind of big news.

View Details

Insightful post by Jason Fried on “directional” decisions, the kind of decisions that are strategic and bring a lot of other smaller decisions along with them:

Make a directional decision and you’re now pointed this way or that way. Make a directional decision and you either shut something off or open something up. Make a directional decision and you’ll get a hundred no’s for the price of one.

When a product seems rudderless, it’s probably because there weren’t any of these decisions.

View Details

Love these upcoming covers for A Song of Ice and Fire. I never finished reading past book 2 years ago and would like to pick up the series again.

View Details

I think I’m going to love this USA basketball team. Nice move swapping in Derrick White. 🏀

View Details

The latest Washington Post / ABC News poll has the race tied. Voters thought Biden was old before, they still think that. Biden or Harris, the election will be decided by swing voters and misinformation. Millions don’t know he is convicted, don’t know about Jean Carol, don’t know about Roe. 🇺🇸

View Details

Morning work at Cherrywood Coffeehouse. You know it’s old-school Austin because just saw what looked like a tiny baby scorpion crawling underneath the windowsill. Crept away, so hopefully I’m wrong or it doesn’t stick around. ☕️

View Details

Dave Winer replying to my post yesterday:

The way the twitter-alikes do discourse is not the only possible way, and imho, and, as I’ve said before (in 2007!), most of what passes for discourse on twitter is actually spam, and that goes for Masto, Threads, Bluesky and Facebook (aka FriendFeed).

I’ve long thought that platforms should be free to evolve in their own ways. Just like we don’t need a monoculture of a single dominant platform, we don’t need a single UX either.

View Details

Looking at my tweets from 17 years ago, they often had no faves, no replies, and no retweets (which didn’t really exist yet). And it was fine. There was value even with very limited engagement, just as there is with blogging today.

View Details

Sad to see the TUAW archive taken over by… whatever that is. AI-slopified. Brings back a lot of memories, though, going back through the Wayback Machine. The interview of me at WWDC 2007 seems lost to time, into the void of wherever Blip.tv content went. Also a tweet from that week.

View Details

Ben Thompson on Apple joining and then leaving the OpenAI board:

…joining the board of OpenAI emphasizes the narrative that Apple needs OpenAI, suggests that OpenAI is far more integral to Apple Intelligence than it actually is, and puts Apple in the firing line for any future OpenAI controversies. This was a bad idea, and the company is right to back out.

In the short term, it sounds like the OpenAI integration in iOS 18 will ship months before the full Siri + Apple Intelligence is ready. So you could say Apple does need them. Long term, there will be less and less need for a partner.

View Details

Ben Werdmuller, linking today to a story on Ghost federation:

I’m also convinced there’s room for another fediverse-compatible social network that handles both long and short-form content in a similar way to Substack’s articles and Notes. If someone else doesn’t build that, I will.

Yeah, it’s weird how no one has built this and certainly no one has been actively hosting thousands of blogs with long and short-form content, a social timeline, and fediverse integration for years. 🤪

View Details

Here’s a screenshot of the new Get Info window in the latest Mac app for Micro.blog, released today. Makes it possible to quickly grab the auto-generated text for uploaded photos on the Mac.

View Details

Exhausting day yesterday so I crashed early last night. Unfortunately a couple of our servers crashed too. 🙁 Looking into options to prevent this.

View Details

Small fan I keep in my laptop bag. Doesn’t completely solve Texas summer but helps a tiny bit. Need to find a USB-C version. ☀️

View Details

Last post about Biden for a while. Dave Winer makes a point I’ve wanted to blog about:

  1. If Biden gets disabled, or dies, before or after the election – VP Harris steps up.
  2. Now everyone can relax.

I’m not worried that Biden will die or have to resign halfway through his term. That’s why we have a vice president. Kamala will finish the job, make history, then run for re-election. 🇺🇸

View Details

This political cartoon by Dave Whamond is so good. “C’mon man!”

View Details

I’m starting to accelerate my challenge to visit all 88 state parks in Texas. Had a few slow months and realized it would take four years to finish at that pace. Way too long. I think two years is about right.

View Details

I have mixed feelings about where we go in the Democratic party. I think I’ll be relieved if Biden steps aside because it resets everything about this campaign. The people voted for Kamala Harris too and she will be able to articulate the message against Trump more clearly.

On the other hand, Biden has been a very effective president. He never gets the credit he deserves, and this post-debate rollercoaster is no exception.

I was thinking about one line from his interview last Friday. Asked about Mark Warner assembling senators to convince Biden to drop out:

Mark is a good man. […] He also tried to get the nomination too. Mark and I have a different perspective. I respect him.

Now imagine Trump being asked that question. Trump only cares about himself so he’ll quickly attack any perceived disloyalty. Maybe that difference in respect is partly why Biden has been so effective with bipartisan legislation. He’s been around a while. He’s pragmatic.

After the interview, I watched John Fetterman answer questions about his support for Biden. When Fetterman makes up his mind about something, he sticks with it. He couldn’t care less what you think and I sort of love that about him:

Donald Trump is back, and what do Democrats do? We panic and piss our pants. After a bad debate and after 34 convictions — felonies — the Republicans show up and they dress like him and go all-in on Trump.

Maybe we could learn something here and just say, “Stand by our president through this.” After 50 years, and after almost four years as a great president, I think he’s entitled to make his case after a debate that we can all agree was rough. But I know what that’s like. I am not the sum total of a bad debate, and certainly the President isn’t either.

Last week I grew increasingly frustrated with the opinions section of The New York Times. It felt like half their home page was opinion, overshadowing the actual reporting. I cancelled my subscription. There are many places on the web to read opinions. More than ever, we need major news outlets to focus on reporting, not influencing. (I’m going with The Washington Post for a little while. Let’s see how they do.)

People are worried that Biden might lose. Good, be worried. If more people were worried in 2016, Hillary would be wrapping up her 2nd term right now.

View Details

Lunch at LBJ State Park. Picked up a turkey melt sandwich from a food truck in Johnson City, Cast Iron Punk.

View Details

Joe Biden in a written statement today:

Not the press, not the pundits, not the big donors, not any selected group of individuals, no matter how well intentioned. The voters - and the voters alone - decide the nominee of the Democratic Party. How can we stand for democracy in our nation if we ignore it in our own party? I cannot do that.

If Biden is having trouble communicating on television, maybe he should write more. Seriously. If we want a reality TV star for president, there’s the other guy. 🇺🇸

View Details

Many of the hot takes about fair use for AI training are either “AI is stealing content” or “everything on the web is free”, but the discussions in between those extremes are more interesting. Let’s explore it with a thought experiment. This blog post isn’t a declaration that I’ve figured it all out. It’s just to get us thinking.

First, review how blogging and fair use has worked since the beginning of the web. Every day I read a bunch of news articles and blog posts. If I find something I want to write about, I’ll often link to it on my blog and quote a few sentences from it, adding my own comment. Everyone agrees this is a natural part of the web and a good way for things to work.

An example outside the web is Cliff Notes. Humans can read the novel 1984 and then write a summary book of it, with quotes from the original. This is fine. It also indirectly benefits the original publisher as Cliff Notes brings more attention to the novel, and some people pick up their own copy.

Now, imagine that C-3PO is real. C-3PO is fluent in six million forms of communication, and he has emotions and personality quirks, but otherwise he learns like the rest of us: through experience.

C-3PO could sit down with thousands of books and web sites and read through them. If we asked C-3PO questions about what he had read, and then used some of that in our own writing, that seems like fair use of that content. Humans can read and then use that knowledge to create future creative works, and so can C-3PO. If C-3PO read every day for years, 24 hours a day, gathering knowledge, that would be fine too.

Is that different than training an LLM? Yes, in at least two important ways:

  • Speed. It would take a human or C-3PO a long time to read even a fraction of all the world’s information.
  • Scale. Training a single robot is different than training thousands of AI instances all at once, so that when deployed every copy already has all knowledge.

Copyright law says nothing about the speed of consumption. It assumes that humans can only read and create so much, because the technology for AI and even computers was science fiction when the laws were written. Robots and AI cannot only quickly consume information, they can retain all of it, making it more likely to infringe on a substantial part of an original work.

Maybe copyright law only applies to humans anyway? I don’t know. When our C-3PO was reading books in the above example, I doubt anyone was shouting: “That’s illegal! Robots aren’t allowed to read!”

The reality is that something has fundamentally shifted with the breakthroughs in generative AI and possibly in the near future with Artificial General Intelligence. Our current laws are not good enough. There are gray areas because the laws were not designed for non-humans. But restricting basic tasks like reading or vision to only humans is nonsensical, especially if robots inch closer to actual sentience. (To be clear, we are not close to that, but for the first time I can imagine that it will be possible.)

John Siracusa explored some of this in a blog post earlier this year. On needing new laws:

Every new technology has required new laws to ensure that it becomes and remains a net good for society. It’s rare that we can successfully adapt existing laws to fully manage a new technology, especially one that has the power to radically alter the shape of an existing market like generative AI does.

Back to those two differences in LLM training: speed and scale.

If speed of training is the problem — that is, being able to effectively soak up all the world’s information in weeks or months — where do we draw the line? If it’s okay for an AI assistant to slowly read like C-3PO, but not okay to quickly read like with thousands of bots in parallel, how do we even define what slow and quick are?

If scale is the problem — that is, being able to train a model on content and then apply that training to thousands or millions of exact replicas — what if scale is taken away? Is it okay to create a dumb LLM that knows very little, perhaps having only been trained on licensed content, and then create a personal assistant that can go out to the web and continue learning, where that training is not contributed back to any other models?

In other words, can my personal C-3PO (or, let’s say, my personal ChatGPT assistant) crawl the web on my behalf, so that it can get better at helping me solve problems? I think some limited on-demand crawling is fine, in the same way that opening a web page in Safari using reader mode without ads is fine. As Daniel Jalkut mentioned in our discussion of Perplexity on Core Intuition, HTTP uses the term user-agent for a reason. Software can interact with the web on behalf of users.

That is what is so incredible about the open web. While most content is under copyright by default, and some is licensed with Creative Commons or in the public domain, everything not behind a paywall is at least accessible. We can build tools that leverage that openness, like web browsers, search engines, and the Internet Archive. Along the way, we should be good web citizens, which means:

  • Respecting robots.txt.
  • Not hitting servers too hard when crawling.
  • Identifying what our software is so that it can be blocked or handled in a special way by servers.

This can’t be stressed enough. AI companies should respect the conventions that have made the open web a special place. Respect and empower creators. And for creators, acknowledge that the world has changed. Resist burning everything down lest open web principles are caught in the fire.

Some web publishers are saying that generative AI is a threat to the open web. That we must lock down content so it can’t be used in LLM training. But locking content is also a risk to the open web, limiting legitimate crawling and useful tools that use open web data. Common Crawl, which some AI companies have used to bootstrap training, is an archive of web data going back to 2008, often used for research. If we make that dataset worse because of fear of LLMs misusing it, we also hurt new applications that have nothing to do with AI.

Finally, consider Google. If LLMs crawling the web is theft, why is Google crawling the web not theft? Google has historically been part of a healthy web because they link back to sites they index, driving new traffic from search. However, as Nilay Patel has been arguing with Google Zero, this traffic has been going away. Even without AI, Google has been attempting to answer more queries directly without linking to sources.

Google search and ChatGPT work differently, but they are based on the same access to web pages, so the solutions with crediting sources are intertwined. Neither should take more from the web than they give back.

This is at the root of why many creators are pushing back against AI. Using too much of an original work and not crediting it is plagiarism. If the largest LLMs are inherently plagiarism machines, it could help to refocus on smaller, personal LLMs that only gain knowledge at the user’s direction.

There are also LLM use cases unrelated to derivative works, such as using AI to transcribe audio or describe what’s in a photo. Training an LLM on sound and language so that it can transcribe audio has effectively no impact to the original creators of that content. How can it be theft if there are no victims?

I don’t have answers to these questions. But I love building software for the web. I love working on Micro.blog and making it easier for humans to blog. Generative AI is a tool I’ll use when it makes sense, and we should continue discussing how it should be trained and deployed, while preserving the openness that makes the web great.

View Details

Johnson City Coffee Co. ☕️

View Details

I wrote a weird blog post draft about AI last week that I wasn’t sure what to do with. Inspired by listening to the latest ATP in the car today to publish it. One thing that resonated with me: people have strong feelings about AI, but blog posts are a good way to explore what we think about it.

View Details

Enchanted Rock. It’s too hot today so I can’t be bothered to hike to the top, but it’s still nice.

View Details

Mark Gurman says that some of the core parts of Apple Intelligence will arrive with iOS 18.4 next year. This is sort of consistent with what Apple said at WWDC, but I think users will be confused that a new Siri is rolling out piecemeal.

View Details

Everyone who has implemented ActivityPub from scratch knows that there are implementation-specific quirks that trip up developers, making compatibility between apps more difficult. Some of these issues are being clarified by the Social Web Community Group. Test suites will help too. Micro.blog has had ActivityPub support for years and we’re still finding edge cases.

With Ghost making progress on adding ActivityPub, I tried following their first test account today and immediately ran into a small issue. It’s simple so I think illustrates the kind of problem that developers might hit. You only need to know what JSON looks like to follow along.

When you download an actor’s profile, you get a bunch of fields like the inbox to send requests to, the user’s full name, and the user’s profile photo. The photo is set in a field called icon (or image). If you skim through the ActivityPub specification, you’ll see this example:

"icon": [ "https://kenzoishii.example.com/image/165987aklre4"] Pretty simple. The field is an array with a single URL to the image. But most implementations don’t follow that example. Mastodon and Micro.blog both use something like this, which is in the more complete ActivityStreams spec:

"icon": { "url": "https://micro.blog/manton/avatar.jpg", "type": "Image", "mediaType": "image/jpeg"} Which one is correct? Both, of course! Back to the ActivityPub documentation for icon:

A link to an image or an Image object which represents the user’s profile picture

Now let’s check out what Ghost is doing:

"icon": "https://ghost.org/favicon.ico" This is a third variation of the same field, this time using a simple URL value. Not an array and not an object with multiple fields.

As programmers, we often try to follow Postel’s law: “be conservative in what you do, be liberal in what you accept from others”. In other words, we should gracefully handle all these different JSON responses, but we should only send out the best one, the one that is documented by the standard. And yet the standard is itself not very explicit about this.

I’m not attempting to blame anyone for this. Certainly not Ghost who has just barely got their implementation up and running and will likely have many changes coming in the next few months. But if you imagine this icon variation spread out across the whole suite of specs — not just ActivityPub but ActivityStreams, WebFinger, HTTP Signatures, and others, with potentially dozens of minor differences — you see why interoperability has sometimes been a challenge.

View Details

The world has changed since The New York Times was founded in the 1850s. It used to be that opinion sections and letters to the editor were great places to hear a diverse set of perspectives. Now the whole web is that. Journalists are straining their credibility when we most need the facts.

View Details

The New York Times, The Washington Post, and other major news outlets should scrap their opinion sections. There are more than enough places on the web to hear what people think. Cable news is already overrun with non-news. Let’s refocus on reporting, not influencing.

View Details

We subscribed to the Alamo Drafthouse season pass for the summer. Makes it easier to decide to go to pretty much any movie. 🍿

View Details

Back from the early screening of Fly Me to the Moon at Alamo — fun movie! — and watched the Biden interview with Stephanopoulos. Not bad. Wish the convention was sooner so we could officially nominate either Biden or Kamala Harris and be done. 🇺🇸

View Details

Even folks who assumed the best intentions with Apple’s DMA compliance can surely see that the iOS “notarization” process is in violation of any reading of the DMA. Apple has created a new tier of app review. It’s wrong. See more with Epic Games on 9to5Mac.

View Details

I updated the Micro.blog for Mac app today. Several improvements including an easy way to just see draft blog posts.

View Details

A new spin-off project from omg.lol: Spake. This is similar to what we were trying to do in Micro.blog with microcasting. Short-form podcasts or audio narration for posts that are much easier to get started with.

View Details

Patriotic delivery robot. Kirk Watson and Lloyd Doggett spoke briefly after Mueller’s parade. Paraphrasing Doggett: we have a choice this year between democracy and a path leading to autocracy. 🇺🇸

View Details

What’s bothering me this week is that I’m feeling like I felt when we were in limbo between election day 2020 and when the votes were counted a few days later. It’s probably going to be fine, but maybe it won’t be. 🇺🇸

View Details

Nick Heer summarizes the OpenAI sandboxing news, initially covered by The Verge. I think the “security risk” of this is largely overblown. Many apps (including my own!) store files on your Mac with the assumption that no one else has access to your computer.

View Details

Finished reading: The Assassin’s Blade by Sarah J. Maas. A set of novellas that take place before the main series. 📚

View Details

After I blogged about a new text editor for Micro.blog, I ran into a couple tricky problems and work stalled. If 37signals does open source their Writebook editor, which I believe is the plan, I think I could use it with a couple tweaks. It’s pretty close.

View Details

Jason Fried introducing Writebook:

It’s a dead simple platform to publish web-based books. They have covers, they can have title pages, they can have picture pages, and they can have text pages. […] Writebook is our love letter to truly independent, zero-cost web publishing on the open web.

I’m playing around with this. I might’ve used it for my book if I hadn’t already adapted a Micro.blog theme for it.

View Details

John Gruber posting to Threads:

I feel great about Kamala Harris as the Democratic nominee. Go back and watch her in Kavanaugh’s confirmation hearing. She’s smart, sharp, aggressive, and emotive.

Hillary Clinton the day after the 2016 election:

I know we have still not shattered that highest and hardest glass ceiling, but someday someone will, and hopefully sooner than we might think right now.

If Joe Biden steps aside, Kamala Harris should be the nominee. She was part of the ticket we voted for in the primary. She’s been tested and is ready. Still, it’s Biden’s call. 🇺🇸

View Details

There are a lot of interesting stats in this Cloudflare blog post about AI bots. I still worry that we might over-correct when blocking LLM training. For example, CCBot is mentioned, but Common Crawl goes back 15+ years and has a variety of non-AI uses.

View Details

After today’s blog publishing change, I’m seeing posting about twice as fast for my blog. Your milage may vary, depends on whether replies are included on your blog. I’ve also done some tests with more CPUs and plan to upgrade a few servers if I can bear the cost.

View Details

Good new ad from the Biden campaign:

The same Trump Supreme Court that overturned Roe v. Wade, ruled that the President can ignore the law, even to commit a crime, because Donald Trump asked them to. He’s already led an insurrection… Donald Trump can never hold this office again.

🇺🇸

View Details

We are starting to open up Micro.blog’s notes feature to our standard plan. Private notes with end-to-end encryption and sharing. It used to be limited to Micro.blog Premium. On the web, you’ll see a “Notes” link in the sidebar. Will be fully rolled out with updates to the native apps soon-ish.

View Details

New laptop sticker. Always iced coffee.

View Details

I’m a little puzzled about why the new proposed fediverse:creator tag is only for approved web sites. Just a slow rollout? Clearly it’s most useful for news organizations with multiple writers, where there’s not a one-to-one mapping between author and fediverse account.

View Details

Texas Sage while out walking. Can’t tell in the photo but the bees are happy too.

View Details

MacStories has written an open letter asking for AI regulation:

…a wide swath of the tech industry, including behemoths like Apple, Google, Microsoft, and Meta, have joined OpenAI, Anthropic, and Perplexity, to ingest the intellectual property of publishers without their consent, and then used that property to build their own commercial products.

This letter is a great idea. We need regulation and an update to copyright law. I don’t like the repeated use of the word “theft”, though. It risks oversimplifying the gray areas in LLM training (and Google crawling).

View Details

Last week’s debate was a wake-up call for our muddled framing of the issues at stake this year. There are only two things we should be talking about: abortion and democracy. Every other question can have a quick answer and then pivot to those two things. 🇺🇸

View Details

Finally experimenting with Bluesky’s Starter Packs. I created a test pack with a handful of people in the suggested list. When signed in, love how it can be viewed as a timeline of posts. Nice touches to this implementation that I think we could borrow for blog-based recommendations / blogrolls.

View Details

Chris Paul to the Spurs? I did not see that coming. 🏀

View Details

Trail bridge at Bastrop State Park. Trees are slowly coming back after the 2011 fire.

View Details

I’ve been inspired by what feels like a renewed push for massive solar infrastructure, so recently bought a small solar panel from Jackery. Excellent for road trips and camping. I have a couple batteries and use the panel with the small Explorer 100 Plus. (This is going to sound like a Jackery ad.)

View Details

Excellent article in The Washington Post about an Infinium plant in Corpus Christi producing diesel fuel from water and (mostly) renewable energy. Pairs really well with the Terraform founder interview on Stratechery I blogged about earlier this month.

View Details

The Philadelphia Inquirer:

Biden had a horrible night Thursday. But the debate about the debate is misplaced. The only person who should withdraw from the race is Trump.

🇺🇸

View Details

Went to see the first chapter of Horizon tonight and love what they’re doing with it. So much time to let characters and plot lines develop. 🍿

View Details

Kora Kora Coffee in Gruene, Texas. ☕️

View Details

I’m not one to impulsively cancel subscriptions when I disagree with the leadership or when there’s a misstep, but I’m really starting to question sticking with The New York Times. It’s not a partisan thing. Their coverage feels weak in all the moments when we need it to be exceptional.

View Details

Morning at Guadalupe River State Park.

View Details

Camping in Texas in the summer is not fun, but I keep thinking I’ll figure out how to solve it with technology, each time getting a little closer. It won’t be below 80° until 2am tonight.

View Details

Just posted a new Core Intuition. Daniel and I talk about the latest news with Apple and the EU’s DMA, then I complain a little about Micro.blog not getting approved yet for using the Threads API. Planning to resubmit the app with a new screencast after the weekend.

View Details

I watched all of Joe Biden’s campaign speech from today. Wish he was half as good last night as he was today. He’s got a cough, but he looked so much better.

I don’t speak as smoothly as I used to. I don’t debate as well as I used to. But I know what I do know. I know how to tell the truth. I know right from wrong.

Not sure how this is going to play out, but I’m feeling better. 🇺🇸

View Details

Dave Winer blogs about a new experiment to make a collection of blogrolls by following a site’s blogroll looking for other blogrolls. This is important because blogrolls can effectively be a social graph, a way to discover and follow other bloggers.

View Details

I updated the Micro.blog blogroll plug-in today, adding more control over whether to show the blog’s domain name (now defaulting to not show it) and optional “about” text when setting up a recommendation. The help page has been updated with examples.

View Details

Jason Snell makes the case for hand controllers and other changes to the Vision Pro:

I’ve got a Vision Pro and a Meta Quest 3. And yet the Quest 3, which costs about one-seventh of the price of the Vision Pro, is a vastly superior platform when it comes to playing certain kinds of games. Games just require precision positioning (through detailed movement tracking), and input (via on-controller buttons) that waving your hands and tapping fingers together in Vision Pro just can’t match.

Jason has good ideas for improving Vision Pro, but I think the problem is more fundamental than that. visionOS is a bust.

Most users don’t want to strap a computer to their face. Most developers don’t want to dedicate time to redesigning their apps. Some people love the Vision Pro, and that’s great for them, but it’s not a mainstream product.

I said on Core Intuition last year that it will be 20 years before technology catches up to Apple’s vision of spacial computing, with normal-looking AR glasses that can do most of what the Vision Pro can do. I think there will be compelling AR glasses before then, but they won’t run visionOS as we know it today.

As I blogged about when I said Apple needs a flop:

Maybe we’re at a crossroads for the company. Apple was great as the underdog, when they were humbled, fighting to out-innovate the competition. What came after the Lisa? The Macintosh. After almost going bankrupt? Think Different and the iMac. After the butterfly keyboard? Some of the best MacBooks ever made.

Apple has lost something on the path to becoming a $3 trillion company. They’re not going to get it back, because it’s something that’s hard to define, something that slips through your fingers when you try to do too much. The larger a company gets, the less capable they are of reaching beyond obvious products. The iPod formula of “we’re not first, but we’re the best” is no longer working. Everyone else is innovating too.

I said this year that we’re at “peak Apple”, and I still believe it:

Apple has been an inspiration for me for 30 years. A massive success. I think this is as good as it gets for them. They are simply too big to fundamentally rethink anything for what’s next.

There may never be another company like Apple. Still, I hope there’s room somewhere under the boots of the mobile duopoly for a new upstart. A product that is built natively for the open web, with a new take on how devices can be part of our lives, untethered from Apple and Google. If I squint a little I can almost see it happening.

View Details

The current Supreme Court is broken. If Joe Biden wants to change the narrative, announce that he’s working with Congress to expand the court with an additional four justices. A couple to be nominated now, a couple for later presidents. 🇺🇸

View Details

It’s a new day. Pick yourself back up. There’s a lot to do. What’s next? 🇺🇸

View Details

My favorite moment and the most clear line from Biden against Trump: “Something snapped in you when you lost the last time.” We got bogged down in policy tonight, which is pointless because Trump doesn’t know anything or believe in anyone except himself. 🇺🇸

View Details

You know who had a great debate against Trump? Hillary Clinton. I’m not saying she should jump in and rescue the Democrats — although I’d be good with it! — but to say that an election is more complicated than one thing. Biden could’ve been better. He had a few good moments. It’s on us now. 🇺🇸

View Details

There’s a really substantive conversation on MSNBC right now about the president’s job as a communicator vs. a decision-maker, and all the things Biden has accomplished, the historical context with FDR and others, etc. I’m still conflicted about what this debate actually means. 🇺🇸

View Details

Debate halftime! Biden is just warming up, everyone. Trump is, of course, constantly lying. It’s ridiculouss that we even have to be here as a country, and I feel sad that Biden has to shoulder everything himself. He’s not perfect but he’s good and who we have to hold up sanity. 🇺🇸

View Details

Happy for LeBron that Bronny is going to the Lakers. Such a unique chance to play together that’s unlikely to happen in the league again. 🏀

View Details

Just another night in America, where the President of the United States has to debate a convicted felon. 🇺🇸

View Details

Jeremy Keith on how human-curated bookmarks could help adapt to a web filled with AI content:

It used to be that when you found a source you trusted, you bookmarked it. Browsers still have bookmarking functionality but most people rely on search. Maybe it’s time for a bookmarking revival.

View Details

Threads API access was rejected for Micro.blog. 🙄 Going to redo the submission and record new demo screencasts for app reviewers. I’ve got dozens of real users using this, quite frustrating to jump through hoops for something so basic.

View Details

I like the idea of a smaller e-ink reader, whether it’s running Android or not, so I’m almost tempted by this weird device that John Moltz reviewed at Six Colors. Still happy with the Kindle Paperwhite, but if it was just a little narrower I’d take it with me even more often.

View Details

Anyone who enjoys writing or photography or sharing anything online should have their own microblog at their own domain. Haven’t we learned by now that posting exclusively on other people’s platforms is a dead end? Might as well write on scraps of paper outside and let the wind take them.

View Details

NBA draft tonight! Spurs have the 4th and 8th picks. Last season’s record was bad, but the team started winning games late in the season. Back in the playoffs soon. 🏀

View Details

Some progress with the Threads API, the issue with the Meta dev dashboard not updating to show API calls has been fixed. However, there’s still no way to submit the app for review. Expecting an “App review” option in the sidebar, but it’s not there.

View Details

Nick Heer on the latest DMA news and UTM rejection:

Perhaps there are legitimate security concerns in the UTM emulator. The burden of proof for that claim rests on Apple, however, and its ability to be a reliable narrator is sometimes questionable. Consider the possible conflicts of interest in App Tracking Transparency rules raised by German competition authorities.

Apple’s handling of the App Store is getting so old. It’s exhausting that there is always drama, always bad faith efforts, always two steps forward, one step back. Here’s what I blogged 13 years ago:

Apple, want to charge 30%? Go for it. Want to make the submission rules more strict? Fine. Want to adjust how you run the App Store to reflect what’s happening in the market? No problem. Just give developers an out. We are going to be back here year after year with the latest controversy until exclusive app distribution is fixed.

Maybe nothing I’ve written in 20 years of blogging has proven more true than that statement. Enough already! Just let us build apps that customers want and distribute them outside the store without gimmicks. That’s what the DMA is about and Apple knows it.

View Details

Can’t believe I didn’t know about this Snow White Cafe, in operation since 1946… until now:

Its interior, which was decorated with murals of characters from Disney’s first animated feature, Snow White and the Seven Dwarfs, has been gutted.

There is plenty of lore surrounding the Disney murals. Some say the artwork was drawn by Disney artists who worked on the original feature — and it may have been, though there’s no way to prove it.

Would’ve loved to visit it when I was in LA a couple years ago. Too late.

View Details

For folks beta testing automatic cross-posting from Micro.blog to Threads, if you like to tinker, we are now including the Threads post ID and permalink in each blog post metadata. See this help page for how to access it from custom themes.

View Details

When a company withholds a feature from the EU because of the DMA — Apple for AI, Meta today for the fediverse — they should document which sections of the DMA would potentially be violated. Let users fact-check whether there’s a real problem.

View Details

Threads has rolled out seeing replies from other platforms, filling one of the biggest holes in their fediverse support. Nice to see the progress. There is still quite a bit to do (replies to those replies, moving accounts) but it feels much closer to complete.

View Details

Molly White makes a point that I’ve also been trying to articulate about AI crawling, but I think her post is better than my first attempts. Some level of open access is an important part of what makes the web special:

…“only allow humans to access” is just not an achievable goal. Any attempt at limiting bot access will inevitably allow some bots through and prevent some humans from accessing the site, and it’s about deciding where you want to set the cutoff.

View Details

If you’re keeping score, Hillary has now written three books since losing the 2016 election. An inspiration in getting back up after a failure that would destroy most of us. What’s next?

View Details

Excellent post by Jason Snell on the upcoming era of orchestrated apps, where much of what we do with our iPhone might be using AI as a bridge between multiple apps and their local data:

When everything is orchestrated properly, all the capabilities of all your apps are put into a big soup, and the AI system at the heart of your device can choose the right capabilities to do what you need it to do—without you having to specify all the steps it needs to take to get there.

This is a good strategy for Apple because it leverages their strengths with privacy and a complete ecosystem of apps. However, there’s a problem, something I’ve written about a few times including recently in this post about Siri before WWDC. What if you want the same functionality on your HomePod? Or on your Mac that doesn’t have the same apps installed? App intents are local to each device, potentially creating a disjointed experience when not at your iPhone.

If an assistant doesn’t have consistent functionality everywhere, something in the illusion is broken. Apple’s solution can still be good, but I think it will always come up a little bit short. (They may make up for it by having an overwhelming advantage in third-party apps that use intents, and the fact that most people’s computing is predominantly or only on their phones anyway.)

A different take would be for the apps and intents to be synced with the cloud, so that they are universally available to your assistant from all devices. There are privacy trade-offs on this path, but I think ultimately it’s where many people will want to go.

Google is probably best positioned for this alternative, more cloud-based approach to AI. They already have your private email, and I’m not sure most people consider whether it’s encrypted or just sitting around on Google servers. I wouldn’t rule out OpenAI either, since something like this is clearly part of their vision. Whoever it is, I could see Apple and another company rising to become a new sort of duopoly for AI. Apple as the private, mostly on-device option, and someone else as the always available, cross-platform assistant.

View Details

As usual, Hillary Clinton is right. From an op-ed today on what to watch for in the debate:

Mr. Biden is one of the most empathetic leaders we’ve ever had. Listen to how sincerely he talks about women’s rights, the struggles of working families, opportunities for people of color and the courage of Ukrainian men and women risking their lives for democracy. Mr. Trump can’t do that because he cares only about himself.

🇺🇸

View Details

Had a dream last night that for the upcoming presidential debate, Biden’s team decided to use all of his time on stage to act out Biden’s answers in the style of a broadway musical. What the…? Trump tried to follow along but he didn’t prepare for the debate and was lost. No idea what this means. 🇺🇸

View Details

One good thing about Akamai acquiring Linode: they appear to have a better plan for reaching 100% renewable energy in data centers. According to this, most of my servers are in the 75% renewable range. Better than Texas as a whole, although we do see spikes that high, when it’s windy and sunny.

View Details

Riley Testut posts about no longer trusting Apple with app notarization:

When we first met with the EC a few months ago, we were asked repeatedly if we trusted Apple to be in charge of Notarization. We emphatically said yes.

However, it’s clear to us now that Apple is indeed using Notarization to not only delay our apps, but also to determine on a case-by-case basis how to undermine each release

iOS notarization for marketplaces needs to be reverted to how it works on the Mac. Bad actors can still be stopped without adding another layer to app review.

View Details

In John Gruber’s article about Apple Intelligence, he writes about the server impact:

As things stand, with only devices using M-series chips or the A17 or later eligible, Apple is going to be on the hook for an enormous amount of server-side computation with Private Cloud Compute. They’d be on the hook for multiples of that scale if they enabled Apple Intelligence for older iPhones, with those older iPhones doing none of the processing on-device.

Also, people are going to use this more than today’s Siri. How often will it need to go to the cloud? Seems very difficult to predict the scale.

View Details

Still no way for me to submit my app to Meta to approve the Threads API. 🙁 I can add more beta users, but it’s difficult to track via replies, so I know I missed a couple people. If you don’t have access, email help@micro.blog with your Micro.blog username and Threads username.

View Details

Finally got my R1. The hype has worn off, so not sure it has a place in my life for regular use. Nice little device, though, and very orange.

View Details

It’s bizarre to see developers effectively siding with Apple over the DMA. The EU is trying to make things better for developers. We can nitpick whether the DMA is well-written, too broad, etc. But there are specific sections that address real problems with the App Store that Apple won’t fix on their own.

View Details

European Commission preliminary findings that the App Store is in breach of the DMA. Even if there’s some compromise, this should lead to improved rules for developers. Still unresolved is whether the CTF is valid, and how much Apple is going to fight to keep it.

View Details

I was wondering when someone would bring up that the Internet Archive ignores robots.txt, and today’s Stratechery is the first I’ve seen to raise that point. I view most debates through the lens of what is good for the open web. There’s now so much of an anti-AI undercurrent, we risk over-correcting.

View Details

Decided to promote the “Edit Sources & Cross-posting” screen to its own link in the sidebar. It’s called simply “Sources”. This is a powerful part of Micro.blog and needs more visibility. (Using a feed icon, even if one day we might have other feed reader-related sidebar things.)

View Details

We saw the new Zilker Eagle today while going to Barton Springs. It looks really nice. Unfortunately it derailed on the switch while we were at the pool. No one was hurt because it goes extremely slow. 🚂

View Details

Somehow on my recent trip I’ve gotten a scratch in the middle of my iPhone screen. I was already thinking about upgrading. Bad timing but this is going to drive me crazy over the next few months.

View Details

This article in The Washington Post about AI energy use has a lot in it, but still seems to paint an incomplete picture. Not a single mention of Apple? If Apple can roll out AI in millions of devices and still use 100% renewable for servers, should be within reach for others too.

View Details

Finished reading: Blood Over Bright Haven by M. L. Wang. This was excellent. It must’ve been a challenging book to write, fascinating magic and ambitious take on society. Really something special. 📚

View Details

Great post by Anil Dash on how the board of directors for an organization actually works. I learned a lot. The timing of this post could not be more perfect for me right now.

View Details

Still no option for me to submit our Threads feature to Meta for review. Tried contacting developer support but that submission fails for unknown reasons. The issue seems to be that the Meta dev dashboard is not recognizing all the successful API calls we are already making.

View Details

I really dislike the Mastodon setting to require HTTP signatures for everything. It makes basic features like just grabbing some JSON for an actor more difficult. The user’s profile is on the public web anyway! We need apps that work natively with the web on its own terms, not more protocol layers.

View Details

Perplexity CEO addresses the recent questions about crawling, but I don’t think his answers are going to satisfy anyone. He is partially correct, though, that there is confusion about crawling to train models vs. ad-hoc downloading web pages. New info is that they outsource some crawling, which seems bad if that’s your core business. Seems fixable.

View Details

“I only came back to myself when I decided something: all emotions are just energy, just potential fuel for action. Everything I felt about what I saw—the guilt and the terror—wasn’t poison. It was power.” — from Blood Over Bright Haven 📚

View Details

On this week’s Core Int, we talk about the latest AI controversy including with Perplexity and how we think about robots.txt. Then Daniel gives an update on Swift Concurrency.

View Details

Great collection from Michael Tsai of posts on a range of reactions to Apple blaming the DMA for delaying Apple Intelligence in Europe. I don’t feel too strongly about it, but we know Apple is frustrated with the regulation, could be slow-rolling it as a tactic.

View Details

John Gruber blogs about how Trump personally measures up to the Ten Commandments that he apparently now supports showing everywhere. (Also can we add an 11th commandment to not post in all caps? Trump increasingly sounds deranged.)

View Details

Randomly stumbled on an old clip of Steve Jobs, thanks (no thanks) to the Threads algorithmic timeline distracting me. There still hasn’t been a tech leader in the last decade with his stage presence. One of a kind.

View Details

If you sent me an @-mention yesterday about automatic Threads cross-posting, I’ve invited you on Threads and enabled the feature for your account in Micro.blog. Here’s a quick video on YouTube about it. Don’t forget to accept the invite too, under your Threads account → Settings → Website Permissions.

View Details

I don’t travel as much as a bunch of people I know, but the combination of road trip and flight over the last couple of weeks has left me kind of unmoored with work. My brain is still catching up to the fact that we’re 2/3 of the way through June already. Way behind in email.

View Details

I tried this AI-based social network Butterflies and it’s as bizarre as you’d expect. It’s more like a game. I don’t see this kind of thing taking off in “real” social networks. Infinite content will just reinforce the infinite algorithmic feed, which is unhealthy enough already.

View Details

Forgot to mention if you’re sending me your Threads username… You will have to go to your Threads account settings → Website Permissions to approve the tester invite for Micro.blog.

View Details

Micro.blog cross-posting to Threads is a bit in limbo because I’m not even sure how to submit the app for review. But we can have 500 testers! Reply with your Threads username if you’d like to be added. I will process any requests later today and “Add Threads” will show up on Account → Edit Sources.

View Details

Working with the Threads API reminds me of how frustrating it was to work with Facebook’s main app API years ago, and any silo API that requires manual approval like the App Store. The bureaucracy is at odds with Meta’s claim of supporting the open web and fediverse.

View Details

Rough Point. This view brought to you by a contribution from the Doris Duke Charitable Foundation.

View Details

Last night in Newport. Another lighthouse, with the sunset at Castle Hill.

View Details

The New York Times: Biden gives legal protections to undocumented spouses. Biden’s administration has been effective and consequential. All he really needed to do was get us out of the pandemic, but there’s been a lot more. He deserves our vote. 🇺🇸

View Details

The upcoming Zelda where you can play as Zelda looks fantastic. Love the design and approach to solving puzzles.

View Details

Because of the recent pushback against AI bots, I’ve added a help page to Micro.blog with details about how to block crawling of your blog.

View Details

Congrats to the Celtics. The NBA finals had a couple good moments, but the result never seemed that much in doubt. Only watched a little of game 5 tonight because for some reason this hotel TV has lots of channels but not ABC? I’m sure there’s a reason, can’t be a good one. 🏀

View Details

I get the distrust of AI bots but I think discussions to sabotage crawled data go too far, potentially making a mess of the open web. There has never been a system like AI before, and old assumptions about what is fair use don’t really fit. But robots.txt still works! No need to burn everything down yet.

View Details

Brant Point Lighthouse, Nantucket.

View Details

Springline Coffee. ☕️

View Details

The Breakers. Beautiful walk along the cliffs and in the mansion. The Vanderbilts really had a stunning amount of wealth.

View Details

Drift Cafe, Newport. ☕️

View Details

Newport Bridge from Goat Island.

View Details

Our WWDC episode of Core Intuition is out! We talk about visiting San Jose, Apple Intelligence, and more.

View Details

Last month I got sucked into an auction for Disney artwork and came away with a sequence of drawings of Scrooge in Mickey’s Christmas Carol, from 1983. They arrived! Need to figure out how to frame them.

View Details

Jason Snell paints a picture of Apple as sort of irritatedly getting on board the AI hype train. On the OpenAI deal, I don’t think either side has clearly won. It brings to mind Draft Day: “This is a good deal… This is a good deal for both of us.”

View Details

What if personal domain name registrations could essentially renew on auto-pilot, regardless of changing or expired payment, for decades? It has always bothered me that blogs are like self-published books that self-destruct when expired. After lots of waffling, I think I’m ready to tackle this.

View Details

Now that I’m back home from WWDC, my excitement about installing the betas has evaporated. Will probably wait until Apple Intelligence is enabled. Doesn’t seem much for new APIs I can use it.

View Details

Good interview from Kara Swisher with Mira Murati, CTO of OpenAI. She led the GPT-4o announcement and in an alternate timeline was CEO for more than a few days. They talk data deals, the voice controversy, disinformation, and the promise of AI in education.

View Details

Gandy’s Creamery in Brady, Texas. No trespassing.

View Details

Stellar Coffee in Roswell. ☕️

View Details

Stopped overnight in Roswell, New Mexico to visit with the aliens. Queueing up the audiobook The Terraformers for the final leg back to Austin. I had started with the e-book a couple weeks ago. 🛸

View Details

One thing I didn’t appreciate before this year’s WWDC is how limited Apple’s on-device models could be. Apple is going for easy wins and generally not biting off more than they can chew. Summarizing or rewriting text is something LLMs are great at, with almost no risk for getting derailed with hallucinations. So it shouldn’t have been surprising that Apple is doing so much themselves with their own models, and punting to ChatGPT for what Craig Federighi called “broad world knowledge” that is beyond Apple’s own models.

The only thing that struck me as strange in the WWDC keynote was image generation. I didn’t expect Apple to do that and I still don’t see why they needed to. It opens up a can of worms, something that was discussed well on this week’s episode of Upgrade. See the chapter on “AI feelings”.

The rest of the strategy is really good, though. The on-device models are small, but they can be supplemented with cloud models for more advanced tasks. And because it will be transparent to the user whether a local or cloud model is used, Apple can add bigger models to newer iPhones as RAM increases, for example, and the user won’t know the difference. Tasks will just become faster and more sophisticated.

This does require the user’s buy-in on Apple’s premise: that “private cloud compute” is just as secure and private as on-device data. On first glance this doesn’t seem technically true. As soon as the data leaves the device, you’re in a different world for things to go wrong. But Apple has built up a lot of trust. If user’s accept the private cloud — and, importantly, if users even realize that Apple’s cloud is completely different than OpenAI’s cloud — it gives Apple a new strength that others don’t have, even if that strength is propped up mostly on goodwill.

Personally I have no concern with the cloud approach for my own personal data. I expect Apple’s solution to be robust, likely bordering on over-engineered for what it actually needs to do, but that builds confidence.

Ben Thompson is optimistic about Apple’s AI strategy too. From a daily update on whether other companies could displace iOS:

I’m unconvinced that large language models are going to be sufficiently powerful enough to displace iOS, and that Apple’s approach to productize LLM capability around data that only they have access to, while Aggregating more powerful models, is going to be successful, but time will tell. Relatedly, the speed with which a wide array of model builders delivered useful models both gives me confidence that Apple’s models will be good enough, and that there isn’t some sort of special sauce that will lead to one model breaking away from the pack.

I’m not sure. There is no telling whether there will be another GPT-level advance in a couple years. Already OpenAI has some technologies like the voice matching that are so powerful that OpenAI almost seems scared to even release them. If there is a breakthrough, it may be difficult for other companies to replicate it right away, giving a single player a years-long advantage.

At the same time, there is just enough friction in Apple Intelligence that even with the improvements to Siri, it may feel slightly crippled compared to a hypothetical new voice assistant. As I wrote in a blog post before WWDC:

While it’s true that the iPhone will continue to dominate any potential non-phone competition, I think there is a narrow window where a truly new device could be disruptive to the smartphone if Apple doesn’t make Siri more universal and seamless across devices. This universality might sound subtle but I think it’s key.

It’s unlikely for Apple to be displaced. People love their phones. I think there is still an opening for something new — a universal assistant that works everywhere, can do nearly everything, and is a joy to use. But we may never get there, or “good enough” may be fine, in which case Apple is really well-positioned.

View Details

In 1979 my uncle wrote a book about solar power — or more specifically, although I haven’t read it, about how the fossil fuel industry had too much influence on the future. 45 years later, solar panels are now cheap and widely deployed. Nearly free energy, falling like rain. It can change so much.

View Details

Wind turbines as the sun sets in New Mexico.

View Details

Finished reading: Sunbringer by Hannah Kaner. This was excellent. Loved the way it revealed more of who the characters are and built up toward the end, setting up what I assume will be a third and final book. 📚

View Details

Freight trains in the middle of nowhere, Arizona.

View Details

A couple days after the WWDC keynote, starting to see a couple cracks in Apple’s AI strategy. I’ll blog more later. But I think the architecture for small on-device models and larger models in the cloud that are extremely locked down is very smart. This is flexible and can scale, if users accept it.

View Details

Yesterday was a blur. I was planning to camp at Lake Havasu but it’s just too hot, so I continued driving to Flagstaff. Really long day. Caught up on nearly all the WWDC-related podcasts plus progress on audiobooks.

View Details

This text without any vending machines is like a cruel mirage in what feels like the middle of the desert of southern California this afternoon, outside Boron.

View Details

Nice live blog at The Verge of the interview session with iJustine. Nilay Patel comments:

I think Apple really wants to seem transparent and open about their AI plans, especially around privacy, and having Federighi and Giannandrea this much on the record in basically every publication is a good way to do it.

View Details

Random shot of San Jose light rail train, interrupted by a bus.

View Details

Lots of details in this Apple blog post about the new AI models. Looks like the on-device models are similar to other small-ish LLMs, and the server models are roughly comparable to GPT-3.5. GPT-4o is still bigger, which is why the OpenAI partnership fits. I think Apple’s strategy here makes sense.

View Details

Vaguely keeping up with the Platform State of the Union in the hotel lobby. Thinking I’ll update to macOS Sequoia later, but not on this wi-fi.

View Details

Apple’s little custom icon to indicate what’s an AI summary is nice. I’ve been using a robot icon for summaries in Micro.blog, but maybe Apple’s icon will catch on.

View Details

So far so good with Apple Intelligence. I have a lot of questions but the framing seems right, with the private cloud compute and working with app data. LLMs will make Siri so much better at interpreting your questions.

View Details

iPhone mirroring seems… really strange. Can’t wait to try it, though.

View Details

Math Notes is super impressive. No mention of AI or machine learning but it’s gotta be all over this.

View Details

I know social networks aren’t Apple’s thing, but I still think it would be cool for them to have a platform for sharing personal spacial videos (and photos) for visionOS shot on iPhones. Would help the content problem.

View Details

Good morning from San Jose! With this first guess in Wordle, I thought this would be a “2” day, but nope. Maybe Apple’s luck with the keynote will be better.

Wordle 1,087 4/6

⬛🟩🟩🟩⬛
⬛🟩🟩🟩⬛
🟩🟩🟩🟩⬛
🟩🟩🟩🟩🟩

View Details

Finished reading: Crown of Midnight by Sarah J. Maas. Fast-paced. This was a stronger book than the first one. 📚

View Details

I’m always surprised when coffee shop wi-fi is way slower than LTE tethering. It’s great the cell networks are usually so fast now, but it feels all backwards (and in a way, kind of wasteful).

View Details

Field of Light in Paso Robles. I was expecting something different and beautiful, and it was that. But it also made me wonder if we’re in an era of synthetic art, where ideas matter more than craftsmanship. (This is about AI too.) Glad I stopped here to see it.

View Details

Bad Boys opens with $21 million box office Friday, on track for $50 million for the weekend. I’ve been curious about whether Will Smith gets a second chance. No legal charge was filed at the Oscars, so the punishment was a 10-year Academy ban, which we’re a couple years into. Sometimes we don’t forgive even after someone has served the time, and I think that’s problematic.

View Details

Santa Ynez Valley.

View Details

Santa Barbara from the pier.

View Details

I’m experimenting with an OpenAI-based assistant powered by my own writing. It is wild. See this transcript of me testing it with a couple questions. It does hallucinate sometimes, but as a powerful search or just for fun, this could be something.

View Details

Working this morning at Honey Cup, a little coffee shop in Thousand Oaks. Finally have uninterrupted time to solve the increasingly slow posting in Micro.blog. Turns out a database index wasn’t good enough and hit some kind of tipping point recently, pushed from “fast enough” to “slow”. All good! ☕️

View Details

Nick Heer on the eroding trust in tech as companies plow ahead with new features:

These product introductions all look like hubris. Arrogance, really — recognition of the significant power these corporations wield and the lack of competition they face.

Clearly a big part of WWDC’s keynote is going to be about trust and privacy. I don’t think things are as bad as many people think — OpenAI’s API, for example, doesn’t use user data to train models, but I bet most people assume it does. But Apple has built the trust and they should emphasize it.

View Details

Four hostages freed in assault in Gaza. I wonder how this affects feelings about the war from Israelis. To be honest, and I’m sorry this is dark, but it is a war… I was assuming that most of the remaining hostages were dead.

View Details

Each time I take an extended solo road trip, I learn something new about how to make life a little easier. Something that has worked well for me the last couple trips: when it’s time to do laundry, drop clothes off at a cleaners or wash-and-fold place. More pricey but saves so much time.

View Details

Only just skimmed through Mark Gurman’s comprehensive WWDC article. Most of the AI rumors sound about right, but I glossed over a few details so there still might be minor surprises. My most pressing question: can I wait to get a new phone? I like my iPhone 14 Pro.

View Details

Made it to the coast, settling in at Point Mugu State Park. Way too crowded, almost left, but I like my tree.

View Details

Listening to Pivot today, Scott Galloway goes on a tangent about how Hillary Clinton would’ve been a great president, and how so many things would be different today if as a country we hadn’t screwed up the 2016 election. We’ll be paying the price for years. Not sure I’ll ever fully get over it. 🇺🇸

View Details

Whenever I’m anywhere near Los Angeles, I think, “I should stop at Disneyland for the afternoon.” It never works out, but I always check maps to be sure. If the Splash Mountain redesign was ready, I’d be especially tempted today. 🏰

View Details

Just posted our preview for next week’s WWDC, Core Int episode 602. Lots more about AI and other thoughts leading up to the conference.

View Details

NBA finals time. Feels like Boston is the more complete team but I have no real idea how this series is going to go. Also congrats to Doris Burke! First woman to be a game analyst in the NBA finals and in fact in any men’s championship series in the major US sports. 🏀

View Details

I don’t ask Siri hard questions. Today I threw her a softball while driving down I-15, “What time zone is Las Vegas in?” She has no clue. These are the kind of simple problems an LLM will solve.

View Details

Hiking in the sun yesterday, it was a bit of a wake-up call, especially with the looming heat wave. I had planned to camp at Death Valley tonight, but gonna skip it and detour to Vegas to catch up on work. NBA finals game 1, which might be a dangerous time to be in the gambling capital of the world.

View Details

Great post on TechCrunch by Sarah Perez about Bridgy Fed’s support for Bluesky. The social web can be multiple protocols. We need more platforms that embrace the web wherever users are, shifting away from monoculture.

View Details

Redis has ballooned in size again, after sizable reductions in memory usage last year to make things more stable. Going to have to tackle this tomorrow, hopefully the primary server will be fine through the night. We do have better redundancy now, but it’s not being utilized like it could be.

View Details

Catching up on a bunch of random online things as I wait for the day to cool down enough to feel like cooking dinner. Just spent way too much time drafting replies to posts and then not sending them. 🤪 Need to step away from the computer and read a book.

View Details

This is a pretty simple one, another addition to my blog post series about upgrading my Honda Element. These rain guards attach above each window, so you can crack the window while it’s raining and not get water in the car. They just stick on, but they seem surprisingly sturdy.

View Details

Jason Snell, writing about how Apple may frame the announcements next week at WWDC:

Apple has the chance to depict itself as the adult in the room, a company committed to using AI for features that make its customers’ lives better–not competing to do the best unreproducible magic trick on stage.

It’s probably a safe bet that Apple will do all the obvious things with AI: on-device models for developers to use, integration with iWork apps, something with Photos. But it’s anyone’s guess how far they will actually go, especially with Siri, or potentially even brand new apps.

View Details

Bryce Canyon National Park. Didn’t catch this view at the right time for the best lighting, but it really is extraordinary. Hiked down and up and now I’m so exhausted just going to chill for the afternoon.

View Details

Siri is much too limited and inconsistent. The only time I ever use Siri is when driving, for responding to text messages and dictating notes. Many people will have different use cases, and so when people say “Siri sucks” they probably all mean different things.

There are many things that could be improved in Siri, but to me it all comes down to just two fundamental shifts:

Universal Siri that works the same across all devices.

The illusion of Siri as a personal assistant is broken when basic tasks that work from your phone don’t work from your watch or HomePod. I’ve long thought and discussed on Core Intuition how Apple has tied Siri too closely to devices and installed apps.

That’s not to say that controlling installed apps isn’t useful, in the way that Shortcuts and scripting are useful. I expect Apple to have more of that at WWDC next week. But in addition to extending Siri with installed apps, to make it truly universal there should be a way to extend Siri in the cloud, just as Alexa has offered for years.

Standalone devices like the Human AI Pin and Rabbit R1 have been criticized as “that should be an app”. While it’s true that the iPhone will continue to dominate any potential non-phone competition, I think there is a narrow window where a truly new device could be disruptive to the smartphone if Apple doesn’t make Siri more universal and seamless across devices. This universality might sound subtle but I think it’s key.

Large language models.

This is obvious. Talking to ChatGPT is so much more advanced and useful than current Siri. With ChatGPT, you can ask all sorts of questions that Siri has no clue about. Sure, LLMs are wrong sometimes, and I’d love for Siri to be uncertain about some answers. If there was a way to have some kind of weighting in the models so that Siri could answer “I’m not sure, but I think…” that would go a long way to dealing with hallucinations. Generative AI is less like a traditional computer and more like a human who has read all the world’s information but doesn’t really know what to do with any of it. That’s okay! But we wouldn’t blindly trust everything that human said.

There are many other improvements that would come along with using even medium-sized LLMs on device for Siri, such as dictation. OpenAI’s Whisper model is almost 2 years old now and way better than Siri.

Apple is going to talk a lot about privacy and on-device models at WWDC. A dual strategy for LLMs is the way to go, with models on your phone that can do a bunch of tasks, but some kind of smarts to switch gears to using LLMs in the cloud when necessary. I’ve done a bunch of experiments with open-source LLMs on my own servers, and it requires a lot of RAM and GPU to get reasonable performance. If we use “parameters” as a rough metric for how much horsepower LLMs need, note that Meta’s Llama 3 (which is pretty good!) is a 70 billion parameter model. GPT-4 is rumored to be nearly 2 trillion parameters. If Apple can’t get GPT-4 level quality and performance on device, they should not hesitate to use the cloud too.

Looking forward to WWDC next week! Should be a good one.

View Details

Micro.blog-hosted blogs have had good uptime the last couple months, but of course two servers crashed while I’m settling in at my campsite in Bryce Canyon National Park. Is this some kind of joke? 🤪 Luckily quite good LTE here tonight.

View Details

Glen Canyon.

View Details

When driving directions in maps lets you know there’s a much slower route available, every once in a while you should take it.

View Details

Love these book updates from Brandon Sanderson, on Reddit:

Finished the last interlude today at 5:21. That is a wrap: Wind and Truth, Book five of the Stormlight Archive, is finished. Tomorrow morning, I’ll hand it off to the proofreading and copyediting team. 491k words.

I couldn’t be more excited about this book. Still thinking about re-reading books 1-4 later this year. There is so much in this series, it’s hard to take it all in with one reading.

View Details

I’ve blogged before about AI hallucinations, but I wanted to tie together a few new posts I’ve read recently. Let’s start with Dave Winer:

To people who say you get wrong answers from ChatGPT, if I wanted my car to kill me I could drive into oncoming traffic. If I wanted my calculator to give me incorrect results I could press the wrong keys. In other words, ChatGPT is a very new tool. It can be hard to control, you have to check what it says, and try different questions. But the result, if you pay attention and don’t drive it under the wheels of a bus, is that you can do things you never could do before.

This is essentially my mindset too. AI makes mistakes. Humans make mistakes. The key is to know what AI is good for and to not let it run wild unattended. This is why with Micro.blog we’ve been so focused on very limited use cases:

  • Podcast transcripts, for which AI is shockingly good. Gotta be close to 99% perfect, and it’s easy to edit transcripts to fix mistakes.
  • Summarizing bookmarked web pages, also really accurate. I’ve yet to see any mistakes.
  • Photo keywords and accessibility text. Super useful and if it occasionally gets something slightly wrong, it’s usually inconsequential and still a huge step forward.

On a recent SharpTech podcast, Ben Thompson also makes this point that we have different expectations for computers and humans. We expect computers to always be right. Calculators and spreadsheets don’t lie. But generative AI is something new, and we can’t hold it to the same standards we had before.

That’s not necessarily to say you’re holding it wrong if you ask Google how many rocks to eat. It’s up to AI companies to better convey when assistants aren’t sure about an answer. I don’t know if this is technically possible with how today’s models work, but hopefully folks are looking at it.

Finally, Allen Pike had a post this week that was fascinating, about how AI will evolve now that it has chewed up all the data on the internet. I have mixed feelings about this… There’s a lot of uncertainty, and also I don’t love that we might be improving AI models while neglecting making the web better. But it is still too early to really judge how this is going to play out.

View Details

Winding up along the Animas River. I’m in the last car of a 15-car train, so around the curves it’s a great view ahead. A beautiful route. 🚂

View Details

Good morning from Colorado! All aboard the Durango & Silverton Railroad. 🚂

View Details

Traffic completely stopped on I-40 earlier today because of road work, and I had a view from a side street of this ridiculous line of 18-wheelers stretching seemingly forever. Hardly any normal cars, just trucks. Seemed especially inefficient as a freight train went by.

View Details

Finished reading: Slow Productivity by Cal Newport. Some good ideas in this, formalizing what we often have an instinct about with our work day but maybe haven’t put into practice. 📚

View Details

Woke to slight rain. Really bad visibility on the small Texas highway meandering back to the interstate, probably couldn’t see more than 50 feet. Along the side of the road, spaced rows of hay bales fading off into the mist.

View Details

Left late from home today, but still arrived at Caprock Canyons State Park before dark. Not pictured, there was a band playing at the visitors center, a nice welcome.

View Details

Ben Thompson’s interview with Casey Handmer of Terraform pretty much blew my mind. Smart, optimistic. I suddenly have the urge to go buy some solar panels.

View Details

Just some clouds.

View Details

In a blog post about Journal, John Gruber makes a detour to highlight the lack of full import and export in Apple Notes:

I worry that import and export aren’t priorities for Apple. Apple Notes can import RTF and plain text files, but its only option for exporting is, bizarrely, PDF — which is a file format Notes can’t import. A good system for import/export would allow for full fidelity round-tripping. You should be able to export to a file or archive format that Notes can also import, without losing any formatting, metadata, or image attachments. Notes doesn’t even try.

That’s a no-go for me. I’m now using Micro.blog for notes, and I wouldn’t even consider anything without Markdown import and export. Of course Apple isn’t going anywhere and I expect Notes to be supported essentially forever in some form, but iCloud sync is opaque. If there’s ever a hiccup, I want a backup of the actual plain text files.

View Details

From The Information:

In mid-2023, some employees of Apple’s system intelligence and machine learning team, which implements features like computer vision, text analysis and natural language in Apple’s software products, met with Altman and other members of OpenAI. While it’s not clear what they discussed, that same year Apple signed a deal with OpenAI to give Apple employees access to the startup’s conversational AI through application programming interfaces, or APIs, for internal tests.

If they were experimenting with the API a full year ago, we might see more at WWDC than I was expecting.

View Details

Listening to Trump’s rambling speech today, at first I was laughing at the blatant lies and ridiculous statements… But then it became sobering, he’s so dangerous. If he’s reelected, we’ll have essentially lost 12+ years to this chaos because he will not shut up even when he’s lost.

View Details

Just posted a new Core Intuition, episode 601. We talk about the audio narration feature in Micro.blog, the MarsEdit 5.2 release, and then some thoughts on whether WWDC should have a live component again.

View Details

A day after the guilty verdict, seeing people worry about polls and whether this will change anything. It will, even if just a little. Who wins the election is a separate question. But doing the right thing always matters. 🇺🇸

View Details

Had some fun with the audio narration for this post. 🇺🇸

View Details

“While this defendant may be unlike any other in American history, we arrived at this trial — and ultimately today at this verdict — in the same manner as every other case that comes through the courtroom doors: by following the facts, and the law, and doing so without fear or favor.” — Manhattan district attorney Alvin Bragg 🇺🇸

View Details

No one is above the law. Trump guilty on all charges. A monumental moment for the country. 🇺🇸

View Details

No matter what happens, can we give Eric Trump some credit for actually being there for his dad? Eric gets made fun of so often, but there he is.

View Details

Working on the Threads API and remembering what a pain it is to deal with Meta’s developer dashboard and approvals… Sigh.

View Details

Had an idea to expand my about page, which before was just a few snippets of text and links, to make it more of a story of how I’ve gotten to where I am today for people who don’t know me. It’s not complete, but it hits the big milestones.

View Details

As part of the podcast pricing decrease, everyone also now gets this little segment control for filtering and searching uploads on the web:

View Details

Six years ago, we launched our $10/month plan with podcast hosting. Since then we’ve added several big features to the plan, which is now called Micro.blog Premium:

  • Create up to 5 blogs, each with its own domain or subdomain
  • Email newsletters, to send automatically whenever you blog
  • Bookmark web pages, with archiving and content summaries
  • Make highlights in web pages, to search or blog about
  • Tags for bookmarks
  • Notes and journals, plus our companion app Strata
  • Share short videos

Today, I want to bring the podcast feature to more people, so we’re moving it down to the standard $5/month plan. The new audio narration for posts and podcast feeds remind me of how much fun it can be to have your own blog, to experiment and try new forms of content at your own space on the web. Let’s do more of it.

View Details

When my car repairs cost thousands of dollars, I really stick it to them by making sure to get free coffee at their cafe. 🤪

View Details

Really good Stratechery article today about how AI fits in the various big tech company stacks. On Microsoft:

Then, one month later, OpenAI nearly imploded and Microsoft had to face the reality that it is exceptionally risky to pin your strategy on integrating with a partner you don’t control; much of the company’s rhetoric — including the Nadella quote I opened this Article with — and actions since then has been focused on abstracting models away…

How models improve may also affect Apple’s on-device strategy. Having the best models assumes some level of modularity, in the cloud, for now.

View Details

Now we wait for the jury. Thinking about how I will react to the verdict… Clearly there is evidence to convict Trump. But the jury could second-guess their judgement because he’s a former president. The trial was fair and thorough. Whatever those dozen New Yorkers decide, we have to be good with. 🇺🇸

View Details

On this day 16 years ago, Daniel and I released the first episode of Core Intuition. So many things have changed since then. Listening to episode 1 is like going back in a time machine, to weeks before WWDC, on the verge of the App Store launching, a snapshot of the Mac developer community. 🎂

View Details

MarsEdit 5.2 is out with a whole bunch of improvements, including a couple for Micro.blog. Congrats @danielpunkass! The duplicate post feature reminds me of classic Mac “stationary” documents… which I just noticed is still in the Finder.

View Details

My cross-posting to Threads has been sporadic. Decided last week to pause it until the API is ready, and might not even continue after that. I post multiple times a day to my blog.

View Details

Helpful post from The Fediverse Report about Farcaster and they’re wild $1 billion valuable. They’re as valuable as Instagram when bought by Facebook, really? Some neat ideas buried in there, like the frame mini apps, but I’m having trouble seeing where this goes.

View Details

After reading that the Gaza pier was damaged by weather, I read a bit more to try to understand how much aid was getting in before the war and recently. 50 trucks or 1000 tons is so opaque to non-experts like most of us. The pier was still a good idea and can work when repaired. Sort of like increased bandwidth and redundancy in a network, except instead of bytes it’s getting food where it can save lives even when some channels are disrupted.

View Details

Today I learned from slash pages by Robb Knight that there’s a /chipotle to note your favorite Chipotle order. Love it. 🌯

View Details

Manu Moreale writes about the ratio between consuming content and creating it:

I believe people should consume less content and produce more. Finding an output for creativity is important. But it’s unreasonable to expect people to stop consuming content and replace that consumption with creation because the ratio will always be inevitably skewed towards consumption.

It’s a good post and while I’ve never tried to measure this ratio for myself, I like the way Manu blogs about it. I’m going to take that topic and expand it in a slightly different direction.

It also matters what we consume. If we read too much social media, what happens is that most of the consumption is headlines and opinions, not the facts behind the headlines. It’s retweets, short quotes, and TikToks, not longer blog posts and stories.

It’s usually obvious when reading all the takes on the internet who actually knows something and has formed their own opinion, and who has been influenced by whatever the current consensus is on social media. Starting with other peoples' opinions is like reading a newspaper’s op-ed first and then the front page. Everything we read afterwards will be influenced by those opinions.

When I quit Twitter in 2012, I essentially threw away any audience I had built and started over. I could feel the loss of community. But I also began to notice that my ideas felt just a tiny bit more unique. Not earth-shatteringly original, but definitely my own.

View Details

“The name of the game was concealment, and all roads lead to the man who benefited the most, Donald Trump.” — prosecutor Joshua Steinglass 🇺🇸

View Details

Missed last night’s Celtics game, so a belated congrats to them. They’re a great team. Mavs/Timberwolves tonight! No team has come back down 0-3 but eventually it’ll probably happen, even if usually there’s a good reason you lost the first few games. 🏀

View Details

Last week I blogged about adding audio narration to blog posts. For years we’ve also had full podcast hosting, which overlaps with this narration feature but is focused on podcast episodes and feeds. In this post I’ll show how to add narration to an existing blog post, hopefully in the process revealing more about how this works in Micro.blog.

First, record yourself reading the blog post. There are a dozen ways to do this. Make sure to save the file as an MP3.

Upload the MP3 to Micro.blog. You can do this on the web in the Uploads section, or one of the native apps. All the apps also have some form of Copy HTML button to get an HTML audio tag for the upload. It will look something like this:

<audio src="…" controls="controls"> Before we paste this into the edited blog post, we actually want to hide the default audio player that would appear in web browsers. To do this, add a style attribute:

<audio src="…" controls="controls" style="display: none"> If the audio player is hidden, what’s the point? Micro.blog sees the tag anyway. It also knows the duration of the audio, so it can make a guess as to whether this is a narrated version of the blog post. If it is, it skips some features such as adding a link to the transcript of the audio. (Because the blog post text you wrote is already the best transcript.)

Note that to turn a blog post into a podcast episode or narrated post, all that’s needed is the audio tag. This is because Micro.blog natively thinks about posts as HTML. Photo posts have an img tag, audio posts have an audio tag, and so on. When Micro.blog publishes your blog post, it parses the HTML and sets up any metadata that is needed, for example to access from within Hugo.

When you write a new post and include audio at the time of posting, not later, Micro.blog handles managing the audio tag for you, including the CSS to hide posts that are audio narration. Later, we plan to improve the editing interface so this is more seamless too.

View Details

Molly White, previewing an upcoming blog post:

i firmly believe that if you’re going to spend money on one thing online it should be a domain, particularly as online identity gets more fragmented. as platforms come and go, you can always find me there.

View Details

Has social media now devolved back to the same tone as Twitter X? Outrage, memes, extremism. Thinking more about this post from Paul Robert Lloyd last week and whether Micro.blog needs a setting if someone wants to keep blogging but get a temporary break from the social web. It’s all intertwined.

View Details

Expectations for WWDC haven’t changed much, except this odd rumor from Mark Gurman:

One standout feature will bring generative AI to emojis. The company is developing software that can create custom emojis on the fly, based on what users are texting. That means you’ll suddenly have an all-new emoji for any occasion, beyond the catalog of options that Apple currently offers on the iPhone and other devices.

This sounds like emoji in the same way that a random audio file without an RSS feed is a podcast. The technical bits matter. Emoji is special because it’s just text and portable everywhere.

View Details

New feature idea for the social web: before strangers can reply to your posts, they have to read your resume. 🤪

View Details

Mr. Goodnight. ☕️

View Details

Finished reading: Throne of Glass by Sarah J. Maas. If this was only a standalone novel, I’d have some complaints, but I know people love the series. Seems like a good setup, and I’d like to see where it goes. 📚

View Details

Fort Worth, downtown with the county courthouse.

View Details

After we recorded episode 600 of @coreint, I thought I had blown it, maybe had a bit too much coffee and didn’t slow down to properly capture what is going on with OpenAI. So I listened to the episode again, and I think it holds up really well. We might’ve covered it more fully than anyone else has.

View Details

We’ve somehow reached the 600th episode of Core Intuition. On this episode, we talk about the Scarlett Johansson vs. OpenAI fallout, and the reaction on my blog and the social web.

View Details

Went to Barton Springs today to swim but there was a ridiculous number of people waiting in line, must’ve been over 200 people, stretching well past the Zilker train depot, so we went kayaking instead. Austin may be too crowded.

View Details

Wow. Mavs steal another one. Luka with a clutch shot, and Naz Reid who was 7-9 from 3 misses the game-winner. Good game. 🏀

View Details

This feature went from idea to implementation quickly because it turns out we already have full podcast hosting in Micro.blog! How convenient. I’m going to use this post to break it all down.

AI is everywhere, including some places it probably shouldn’t be. If you’ve been following my blog you know that I see huge potential in generative AI. We’re using it in Micro.blog to improve photos search and accessibility text for photos. But like many tools, AI is going to be overused before we all find the right balance for what it’s good at.

When Jean and I were talking to Christina Warren at Micro Camp, I asked Christina about a talk she gave at Çingleton about 10 years ago. I actually blogged about it at the time. What struck me as particularly relevant now as we’re about to be swamped with AI-generated content is that there’s no substitute for the human voice. I don’t just mean that an actual recording is better than a synthetic voice. I also mean that things that are created by humans will increasingly be sought out.

We want to see the personal side of someone, not just the polished brand. We want to see the imperfect, the creative, the emotion. We want authenticity.

In Micro.blog, you can now upload an audio recording of one of your blog posts. Use the audio icon in the new post form on the web, which is available to everyone starting today, even at the standard $5 plan. Your blog readers can listen to the audio narration of the post if they don’t feel like reading the post. Of course it’s especially great for the visually impaired.

Here’s what it looks like on my blog, next to the posted date. Shout-out to Medium which I drew some inspiration from.

I’m also adding audio narration to this very blog post, so you can click over to the web to try it out.

When there’s audio attached to a post, Micro.blog attempts to check if it is probably the narration for a post. If the number of words in the post and the audio duration is roughly comparable to how long it would take a human to read the post, it assumes it’s narration and not a podcast. Podcast episodes are more likely to be longer with very short “show notes” in the actual blog post text.

Micro.blog checks this so that it can hide the default audio player and transcript link. These would add clutter to normal blog posts.

Blog themes will still need to be updated to support the play button. I’ve already updated the Alpine theme and will update others later. Themes can use a new API called Narration.js. Just plop this JavaScript anywhere you want the play button in your template, likely the layouts/post/single.html file. (Note that this currently needs to be on the permalink page. It won’t work correctly on the home page with a list of blog posts yet.)

{{ with .Params.audio }} <script type="text/javascript" src="https://micro.blog/narration.js?url={{ . }}"></script>{{ end }} If you’re using Micro.blog Premium, the audio narration will also be included in the podcast feed. Any blog can effectively be a podcast, even if you don’t think of it as a traditional podcast. Some of my favorite writers have had great success with a dual model of email newsletter plus podcast version of the same content, like Ben Thompson and Molly White.

I can’t wait to see how people use this. It’s totally optional. It’s more work, and not everyone is going to want to do that extra work. I’m imagining this would be used for selective, special blog posts, rather than everything. I’m also interested in working this functionality into our companion app Wavelength, which should cut down on the technical steps.

In some ways, this feature isn’t actually about what is possible. This feature is a statement: we make things for humans, so they can make the web a little better. Along the way there will be plenty to automate, plenty of AI tools that will be important shortcuts, but we’re not going to lose our voice.

View Details

This blog post is a test for something new I’m working on. I think a lot of people feel overwhelmed that AI is everywhere right now. Personal blogs should lean in to the human voice. There’s a new play button on the permalink for this post on the web which will use a recording that I’ve uploaded.

View Details

Google’s AI overviews are pretty hilariously not ready. Maybe they never will be. Generative AI is a powerful, transformative technology, but that doesn’t mean it should be used everywhere! Sometimes dumb code is better.

View Details

Tried the new Cajun place that opened a couple weeks ago, Lil’ Easy.

View Details

Just finished listening to this interview on Stratechery with Satya Nadella and (separately) Kevin Scott. Some really thoughtful points about how Microsoft sees things around AI.

I liked this segment from Kevin especially, after talking about how humans can no longer beat computers at chess, yet we still love to watch humans play chess against each other:

I don’t think the AI is going to take over anything, I think it is going to continue to be a tool that we will use to make things for one another, to serve one another, to do valuable things for one another and I think we will be extremely disinterested in things where there aren’t humans in the loop.

I think what we all seek is meaning and connection and we want to do things for each other and I think we have an enormous opportunity here with these tools to do more of all of those things in slightly different ways. But I’m not worried that we somehow lose our sense of place or purpose.

View Details

Micro.blog for iOS was updated today with some improvements and fixes. Here’s a quick demo video of the new uploads search for Micro.blog Premium subscribers:

View Details

Feeling deflated this morning after the AI drama of the last couple days. I got so much flack over it. Now that the Washington Post is out with their story? Crickets. 🦗

View Details

Tonight the Washington Post has what looks like an exclusive story on OpenAI’s Sky voice. I didn’t want to keep writing about this, but here we are. Some quotes from the article:

…while many hear an eerie resemblance between “Sky” and Johansson’s “Her” character, an actress was hired to create the Sky voice months before Altman contacted Johansson, according to documents, recordings, casting directors and the actress’s agent.

The actress’s agent spoke to the Washington Post:

The agent, who spoke on the condition of anonymity to assure the safety of her client, said the actress confirmed that neither Johansson nor the movie “Her” were ever mentioned by OpenAI. The actress’s natural voice sounds identical to the AI-generated Sky voice, based on brief recordings of her initial voice test reviewed by The Post.

And from Joanne Jang, who worked at OpenAI with the actors:

Jang said she “kept a tight tent” around the AI voices project, making Chief Technology Officer Mira Murati the sole decision-maker to preserve the artistic choices of the director and the casting office. Altman was on his world tour during much of the casting process and not intimately involved, she said.

There was also a statement from the actress who voiced Sky:

In a statement from the Sky actress provided by her agent, she wrote that at times the backlash “feels personal being that it’s just my natural voice and I’ve never been compared to her by the people who do know me closely.”

Maybe we haven’t heard the last of this story and more news will drop. Even if it wasn’t intentional, there may be a legal case against OpenAI. But it appears that my initial take was correct.

I’ve been rolling this whole saga over in my mind since I first blogged about it. People are clearly concerned about AI generally and OpenAI specifically. There is also too much misinformation and divisiveness on social media, and a loss of nuance. When the narrative turns against a company, everything that follows will be viewed through a different lens, as if slightly distorted.

View Details

“You either die a hero, or you live long enough to see yourself become the villain.” — from this scene in The Dark Knight

View Details

Sort of paradoxically, the more I consider how AI will change the web, the more clear it becomes how to build features that keep the humanity in what we create. Take almost anything that AI is good at, but not as good as a human, and then make it much easier to do that thing the old-fashioned way.

View Details

Jason Fried previews the next product from 37signals on Twitter X, called Workbook:

It’s a dead simple platform to publish web-based books. They have covers, they can have title pages, they can have picture pages, and they can have text pages. Each book gets its own URL, and navigating and keeping track of your progress is all built right in.

Intrigued by this. We can always use more ways to easily publish to the web.

View Details

Wrapped up some updates to the iOS app and submitted to Apple. Hopefully goes through smoothly. 🤞

View Details

This post from @jsonbecker is going to be timeless, because as a society we increasingly let social media amplify each side of an issue until it’s out of proportion with the facts:

…sometimes when your peers and people you respect have all decided what the “right” view is, it’s very hard to comfortably express a less strident, more lukewarm, more timid, and possibly more complex or nuanced take, especially if you’re not ready, willing, and able to present a dissertation about your view point.

View Details

I posted a series of microblog posts yesterday with a common theme of trying to understand what is going on with OpenAI. This is a company with a lot of drama, nearly imploding last year with the board and CEO shakeup, and more recently alternating between amazing demos and dumb mistakes.

I got a lot of pushback about one of my posts in particular. I’m even seeing people want to leave Micro.blog because of it. This is disappointing to me, especially since I think I’ve gone out of my way to have a balanced approach to AI. We have a global setting to disable everything that uses AI in Micro.blog, for people who are principally against the technology.

Here are the relevant posts from yesterday so you can see them more in context:

When your company becomes the enemy, all that matters to people is what feels true. OpenAI’s Sky voice shipped months ago, not last week. We hear what we want to hear. OpenAI mishandled this, no question, but most likely Her is ingrained in Sam’s head vs. intentionally ripping off Scarlett.

In the last 35 years, there have been a tiny number of truly revolutionary technologies that change everything: the web, mobile, and artificial intelligence. We can fight it, or we can guide it. But trust has eroded. To succeed we have to rebuild it. Move fast and break things will be a disaster.

Any chance that WWDC will have a live keynote this year? In the last couple weeks, we’ve had… OpenAI: live. Google I/O: live. Microsoft: live. To balance AI we need to lean in to human creativity, and a pre-recorded 2-hour advertisement will never feel as alive or engaging as a human on stage.

As someone who usually supports OpenAI, I’d still welcome an actual lawsuit from Scarlett Johansson about the voices. For one, I’m a huge fan of hers, but also I’d genuinely like to know if anything shady happened at the company. Dishonesty will cast a shadow over everything the API touches.

I also tried to clarify a few things in replies on those blog posts to other people’s points:

Sam was clearly inspired by and obsessed with Her. I don’t think it was subconscious, but that also doesn’t mean they sampled her voice explicitly.

The board firing Sam Altman is looking more and more rational. Which is why I think this should be an “all hands on deck” moment for OpenAI.

You’re right on the “total” lie, I shouldn’t have phrased it that way, because anything misleading in the OpenAI post would be dishonest. I was trying to respond to folks who are saying that when Scarlett declined to lend her voice, OpenAI copied it anyway. I don’t think that’s true. If I’m wrong, I’ll stop using any tech from OpenAI.

They already have the technology to actually clone someone’s voice, which I assume they didn’t use here because it would be an even closer match.

Did I get it wrong? For reference, here is OpenAI’s blog post about hiring actors for the voices, and Scarlett Johansson’s letter.

Perhaps I shouldn’t have blogged about this, but it’s my personal blog where I explore a range of topics. I do not run my blog posts through a PR department, and I think most people appreciate that blogs should feel authentic and human, even when they disagree.

View Details

Watched the Satya Nadella portion of Microsoft Build today, and the few minutes with Sam Altman, then skimmed through the other news. Microsoft is doing a lot, not all of it relevant to me. Importantly they plan for data centers to be powered by renewable energy (in 2025) despite scaling up for AI.

View Details

As someone who usually supports OpenAI, I’d still welcome an actual lawsuit from Scarlett Johansson about the voices. For one, I’m a huge fan of hers, but also I’d genuinely like to know if anything shady happened at the company. Dishonesty will cast a shadow over everything the API touches.

View Details

Any chance that WWDC will have a live keynote this year? In the last couple weeks, we’ve had… OpenAI: live. Google I/O: live. Microsoft: live. To balance AI we need to lean in to human creativity, and a pre-recorded 2-hour advertisement will never feel as alive or engaging as a human on stage.

View Details

Next month’s road trip is starting to take shape. Got my reservation for Bryce Canyon booked this morning. Also the Durango-Silverton train. Lots to see. 🗺️

View Details

In the last 35 years, there have been a tiny number of truly revolutionary technologies that change everything: the web, mobile, and artificial intelligence. We can fight it, or we can guide it. But trust has eroded. To succeed we have to rebuild it. Move fast and break things will be a disaster.

View Details

When your company becomes the enemy, all that matters to people is what feels true. OpenAI’s Sky voice shipped months ago, not last week. We hear what we want to hear. OpenAI mishandled this, no question, but most likely Her is ingrained in Sam’s head vs. intentionally ripping off Scarlett.

View Details

Microsoft’s Recall on the new Copilot+ PCs is quite impressive:

Now with Recall, you can access virtually what you have seen or done on your PC in a way that feels like having photographic memory.

There are obvious trade-offs using this if someone gets access to your computer, but I’d be comfortable with it if there are enough settings. For example, maybe I only want the recall to go back one week, not months.

View Details

Cool to see this visualization of the growing blogroll network. Blogrolls are fun and useful, and there’s still more we could do with them. If you’re using Micro.blog, you can set up a blogroll by clicking Design → Edit Recommendations.

View Details

It has only been a week since GPT-4o and they’ve already had a few days of bad news, including resignations and the latest with Scarlett Johansson. You can feel it becoming an “OpenAI can’t trusted” narrative that will be hard to shake. Need to prioritize this (and the Apple deal?) above all else.

View Details

Tuning in to a little more of the Trump trial. The jury could go either way and I won’t be shocked, because you really do want to be sure, but the idea that Trump didn’t know anything about this is just laughable. 🇺🇸

View Details

Whenever I’ve driven by the old Frank Erwin Center these last few months, I’ve noted how little of it is left. Yesterday they demolished the remaining structure. This video from UT’s president on LinkedIn has the final seconds.

View Details

Wow, had no idea going into game 7 what would happen, but didn’t expect that. Timberwolves vs. Nuggets had its ups and downs. Gonna root for the Mavs in the conference finals. 🏀

View Details

Mural from I-35.

View Details

The latest from Mark Gurman at Bloomberg makes the Apple + OpenAI partnership sound like a done deal. WWDC is just a few weeks away! Should be a good one.

View Details

Uploaded the session video for Micro Camp’s State of Micro.blog panel. The website now has YouTube links for the sessions, including our interview with Christina Warren.

View Details

I posted the video of our conversation with Christina Warren at Micro Camp 2024! We talk about early blogging, how social media is changing, whether it’s actually easier to get started now, podcasting, what we should focus on as the social web grows, and more.

View Details

I took the demo portion from yesterday’s panel and uploaded it to YouTube as a separate 6-minute video clip. This shows the new replies curation and reply text box features.

View Details

Thanks everyone who joined us for Micro Camp! I’m going to edit the videos and put them online this weekend, but the live broadcasts are on YouTube in the meantime.

View Details

The chat on help.micro.blog is now open. This will be the back channel for the live broadcasts during Micro Camp 2024.

View Details

It’s going to be a busy day, but I wanted to pause to note two movies I watched this week and really enjoyed, for completely different reasons: Molly’s Game and Marcel the Shell with Shoes On. I’m still amazed that Marcel was funded with such an obvious singular vision, unlike anything I’ve seen. 🍿

View Details

Just in time for Micro Camp today, a brand new Core Intuition: episode 599! We talk about Micro Camp, Micro.blog, and domain names, then catch up on GPT-4o, Google I/O, and Apple.

View Details

Trying out the new pinned, columns interface on Threads. It’s quite good. Fixes the minor gripes I had with clicking too much to get to the following list or replies.

View Details

Questions about blogging or Micro.blog? We’ll be answering questions at Micro Camp, from the chat tomorrow or you can submit a question anytime on this form.

View Details

We’re keeping things simple with Micro Camp this year: no email list, no registration. I did add a time zone helper link and an “Add to calendar” button on micro.camp, to make it easier not to miss when the livestream starts.

View Details

We have some great door prizes for Micro Camp tomorrow! 🎟️

View Details

Micro Camp is… tomorrow! 🤯 It’s extra micro this year, so if you blink you might miss it. Hope everyone can join us for a keynote conversation with Christina Warren and then the State of Micro.blog, announcing a couple new features, and Q&A. Starts 11:45am Pacific time.

View Details

The new Wicked trailer was released today. High expectations for this one. No doubt the music will be great, just hope they get the rest right too.

View Details

Finished reading: Bookshops & Bonedust by Travis Baldree. I’ll read almost any book about books. Something was missing in this one compared to Legends & Lattes, through. 📚

View Details

Google eventually turning their home page into ChatGPT is a rare opening for something new in traditional web search. It’s not a certainty that AI assistants and web search will be a single tool. They can have very different purposes: one looking for answers, one looking for things to read or use.

View Details

This post on The Verge assumes that AI hallucinations should be fixed, but generative AI is like a human assistant: helpful, sometimes wrong. The fixable issue is actually perception and UX, giving a false sense of confidence. Google will likely make this worse with “definitive” answers in search.

View Details

Further evidence from The New York Times that the November election will be largely decided by people who are objectively ignorant. There’s no way to sugarcoat it.

Nearly one in five voters in battleground states says that President Biden is responsible for ending the constitutional right to abortion, a new poll found, despite the fact that he supports abortion rights and that his opponent Donald J. Trump appointed three Supreme Court justices who made it possible to overturn Roe v. Wade.

🇺🇸

View Details

Ben Thompson in today’s update on Google I/O:

What was much more dubious and vaporware-y were actual new products. And, frankly, this isn’t a surprise: one’s take on Google before the AI revolution would have been that the company can operate at scale like no other, but has lost the capacity to innovate; at the risk of confirmation bias, that was exactly the takeaway I had from much of this keynote.

I wonder if there’s a disconnect with Google’s ad-based business not knowing how to turn research into products.

View Details

A couple months ago on Core Int, I said we were at peak Apple. With every week, I believe that more strongly. Apple has been an inspiration for me for 30 years. A massive success. I think this is as good as it gets for them. They are simply too big to fundamentally rethink anything for what’s next.

View Details

I’ll admit I’ve only skimmed the recent “is iPadOS holding the iPad back?” posts from Federico Viticci, Jason Snell, John Gruber, and others. The iPad isn’t part of my routine now that I’m back to using the Kindle for e-books.

Apple has had a decades-long battle with window management generally and the Finder specifically. At Ease, Simple Finder, Launchpad, Stage Manager, iOS Files… But it turns out the Finder is great. You could go a long way just by replacing Files with a touch-optimized Finder.

I wrote the above and then went back to Federico’s post, where he actually highlights this same point:

After seven years, I’m starting to wonder if maybe it’s time for Apple to scrap the Files project and start over with a new app based on the strong foundation of Finder. We’re well past the point of excusing the Files app for being a young file manager; when you’re spending $3,000 on a high-end iPad Pro with plenty of storage, you want the app to manage that storage to be flawless.

Apple could do this even without turning iPadOS into a true fork of iOS. Boot the iPad into a new Finder that mostly obsoletes Springboard and Files.

View Details

My superpower and greatest weakness is not letting the need for a major refactor get in the way of shipping something new. Beautiful code is nice, but too many developers forget the goal is user experience, not developer experience.

View Details

Good morning! Coffee.

View Details

Yet more Apple + AI news from Bloomberg:

Apple Inc. has closed in on an agreement with OpenAI to use the startup’s technology on the iPhone, part of a broader push to bring artificial intelligence features to its devices, according to people familiar with the matter.

I’m fascinated by this because clearly Apple will have small-ish LLMs on device for apps and Siri to use. Maybe there will be a more ChatGPT-like interface that is powered by OpenAI, similar to how Maps was originally powered by Google? Could also partially insulate Apple from hallucinations and bad press.

View Details

Very curious what OpenAI is up to with their announcement coming up on Monday, from this post on Twitter X. In the last few months they’ve announced all sorts of big improvements with just a blog post. Seems significant.

View Details

Nothing surprising in today’s NYT story about Apple’s AI plans. I wanted to comment on this part:

Apple plans to bill the improved Siri as more private than rival A.I. services because it will process requests on iPhones rather than remotely in data centers.

Apple genuinely believes in privacy, even if it is also a strategy credit for them. Using generative AI on iPhones will make for a much better Siri. I’m looking forward for it. But we shouldn’t expect it to be in the same league as GPT-4 unless they can find some way to seamlessly blend on-device and server-based AI, likely much later.

View Details

The first update from Ghost about ActivityPub has a screenshot of their early experiment. There’s also a lot about timing:

In 2024, for the first time, it finally feels like we have a critical mass of people and platforms who are interested in rewilding the internet to bring back what we lost, and create something new.

Not sure about “for the first time”, but that’s a minor nitpick, mostly selfish on my part. I’m glad Ghost is doing this and look forward to following their email series.

View Details

Excited to announce that @kimberlyhirsh is joining the Micro.blog team. She’ll be helping part-time with curation and community. We’ve been talking to Kimberly for a while and I’m happy she can join us as @jean moves on.

I’m looking forward to working with Kimberly, and seeing what new ways we can expand the team from here. As I mentioned in my post thanking Jean for all her work on Micro.blog, I think everyone can bring something different to the company. Vincent has also been at work behind the scenes to improve the admin features in our platform, with the hope that some of it can be available to more community members.

We know the long-term vision for what we want Micro.blog to be, but exactly how we get there can still be a surprise. Thanks Kimberly for wanting to be a part of this!

View Details

This interview with Jack Dorsey provides some closure to his part of the Twitter and Bluesky story. On leaving the Bluesky board:

So I just decided to delete my account on Bluesky, and really focus on Nostr, and funding that to the best of my ability. I asked to get off the board as well, because I just don’t think a protocol needs a board or wants a board. And if it has a board, that’s not the thing that I wanted to help build or wanted to help fund.

Jack says that he respects Bluesky CEO Jay Graber, just that what they each wanted went in different directions.

Jay herself responded this week on Bluesky:

With all due respect to Jack for having the vision to invest in decentralized protocols, we’ve carried out the work in a way I don’t think he fully understands. Bluesky is structurally open in a way Twitter has never been, but the design of atproto allows it to feel familiar and easy to use.

There was also this defense of Jay from Bluesky developer Paul Frazee:

I’ve been watching Jay make consistently strong strategic decisions under incredible pressure, and watching her get dogged by this 2nd rate nonsense is too much. That guy isn’t the story. The fact Jay charted her own path is.

Personally, I still really like what Bluesky is doing. We’re continuing to add Bluesky features to Micro.blog, like being able to see and reply to Bluesky posts within Micro.blog. For the foreseeable future, the social web is not going to be a single protocol (except of course HTTP).

View Details

Micro Camp is one week from today! I updated the home page with the schedule.

View Details

We recorded a new Core Int just a couple hours before Apple issued their apology about the Crush ad. Still had fun talking about new iPads, then a discussion of Mastodon as a non-profit and more.

View Details

Because everyone is mad about everything now, I try not to overreact to the latest hot takes until I see things for myself. Finally watched Apple’s “Crush” ad, and sort of agree with the consensus that it feels wasteful, uncomfortable. Ads should inspire, and this does not.

View Details

It’s hard to believe it has been seven years since Jean joined me to work on Micro.blog. After a few emails back and forth in early 2017, Jean and I met at Fairlane Coffee while I was up in Portland. I showed her an early version of Micro.blog and we talked about how we could work together.

Reflecting back on that day, it was a pivotal moment because it helped accelerate Micro.blog growing into its own company that could become my focus, instead of just one of several projects I was working on in my indie software company Riverfold. Micro.blog was going to need more of my time, and then some!

Jean has been an integral part of everything we’ve done since then. She created the Micro Monday podcast, organized in-person and online Micro Camps, and ran the photo challenges for the community, all on top of managing the Discover section of Micro.blog and working through community issues with me. This is perhaps the most rewarding part of working with someone else — seeing new things happen that I couldn’t have done on my own, and in some cases new ideas I had never considered.

Thanks Jean! As you move on from Micro.blog, wishing you the best of luck with your long-form writing, hopefully a little microblogging too, and whatever else is next.

View Details

Posted to my blog from the passenger seat of the car and then we immediately drove into a national forest with no cell coverage. It’s so easy to take internet access for granted.

View Details

Traveling this week so a bit scattered, but also working on a couple pretty important blog posts about Micro.blog. In a perfect world with a larger company, maybe there’d be a PR firm to review the timing of everything? It’s all good, though, and whenever posts are published will be the right time.

View Details

Jean has posted the schedule for Micro.blog. It’s even more micro this year. Micro Camp changes a little every year. I don’t think we need to be set in exactly the same pattern. This time we’re going to lean into more Q&A, extending the State of M.b so there’s plenty of time to answer questions.

View Details

Violet Hill B&B, Natchitoches.

View Details

I was actually thinking about going to Dragonsteel Nexus, even though it doesn’t make any sense to travel to Salt Lake City for a book release. Luckily the event sold out right away, no need to decide. I should take all that money I just saved and throw it away on an iPad that I don’t need! 🤪

View Details

TikTok lawsuit against the United States seems weak on first glance. This argument that they can’t move the source code to a new owner is hard to take seriously:

…precipitously moving all TikTok source code development from ByteDance to a new TikTok owner would be impossible as a technological matter. The platform consists of millions of lines of software code that have been painstakingly developed by thousands of engineers over multiple years.

Sure, it would be some work to sift out what is TikTok and what is ByteDance. Better start the refactor now. From the text of the court filing.

View Details

Busy morning, so only just now catching up on all iPad announcements. The Verge as usual has a good overview. I’ve fallen out of using iPads, but tempted again by the new pencil.

View Details

Broke the corner of my old Apple Watch screen, not badly, but enough that it was time to upgrade after several years. New one is a tiny bit bigger and noticeably faster.

View Details

It’s fine to have multiple social web protocols, because this is a good time to experiment and see what sticks. But there’s a limit, and I’m drawing the line at Farcaster. ActivityPub, AT Protocol, and Nostr each provide unique strengths. We do not need a blockchain-based additional platform.

View Details

Helpful blog post from @matt17r about the steps he used to migrate a blog between accounts on Micro.blog. Hope to make this even smoother in the future.

View Details

Not sick of me singing the praises of OpenAI yet? Their batch API is incredible. An elegant design, if you can say that about an API, and very powerful.

View Details

Another advantage to having a blog as the center of all things is that when I’m busy, I can just temporarily disable cross-posting to other services. I can also tune down the Micro.blog timeline settings to see fewer replies to other people. The writing process is the same, just fewer distractions.

View Details

Finished reading: The Long Way to a Small, Angry Planet by Becky Chambers. It didn’t quite work for me, lots of interesting characters but very little story. Still enjoyed it, just not as much as her recent novellas. 📚

View Details

It’s hard to tell when a blog post is first published if it’s any good. A few days later, a year later, then you know.

View Details

Sort of spontaneously went to see The Fall Guy. Really fun movie. 🍿

View Details

Garden Cafe in Dallas.

View Details

In college in the 1990s, I joined the socialist student organization. I saw every issue in stark contrast — a measure of fairness and justice. If I was young on campus today, I might be protesting the war in Gaza. But even in college, truthfully I wasn’t a great activist. I remember our organization leader calling me about a protest for workers’ rights and I was too lazy that day to go.

I’m still for peace and equality today, but now I know that the world is fucking complicated. I’m less certain about things I felt so strongly about before.

Seeing everything in black and white is a mixed blessing. Seeing only the extremes leads to passion and action. But it can also blind us to more nuanced arguments. It can make us more susceptible to manipulation, caught up with TikToks and retweets that reinforce what we already believe.

Taking a step back from the protests specifically, liberals advocate for the less fortunate. We want people of all backgrounds to be treated with respect. We push back against laws that further redistribute wealth to those who don’t need it.

I think this instinct has run into problems in Gaza. War is terrible. More humanitarian aid is needed, and more military restraint. Palestinians have been struggling for decades, now they’ve been forced from their homes, children have died in bombings, and there’s a risk of famine. We want to side with them because we always default to supporting the people who most need support.

And yet polarization has twisted everything. On social media, we use the worst words possible. No words on any topic seem to go far enough, because everyone is angry about everything. Innocent people dying in war — it just doesn’t sound terrible enough for our outrage. So we reach for even more extreme words, calling to mind atrocities that have rightly been judged by history as indefensible.

Pick a side, protest, use all the hashtags, get angry, go viral. In a social bubble, everything is amplified.

I’m going to be honest, the brutality of the Hamas attack on October 7th changed my opinion on the Middle East, possibly forever. Hamas cannot stay in power. But how to remove Hamas without risking innocent life and creating a new generation of terrorists is an impossible challenge that I don’t have a solution for.

Peaceful protests are an important part of a democracy. Most of the protests have been peaceful. Unfortunately some of the protesters at a few campuses like Columbia University and UCLA have lost the plot, seeing injustice everywhere, creating chaos, justifying vandalism. I hope we haven’t become so tribal that we support that.

There is a bit of hope in the news. Earlier this week, Antony Blinken said:

Hamas has before it a proposal that is extraordinarily generous on the part of Israel. And at the moment, the only thing standing between the people of Gaza and a cease-fire is Hamas.

I hope Hamas accepts it. The hostages need to be released and even a temporary ceasefire will make it easier to ramp up more aid.

Amplified by social media outrage, it has become difficult to see the war clearly. I’m not sure how as a society we get through this. All I know for sure is that it’s going to take a long time, and we need social platforms that don’t feed on division.

✌️

View Details

Ordered another Jackery. This one is so tiny.

View Details

Jason Fried:

I’m still doing this because the world is flooded with overpriced, crappy, subpar software. It hurts people and it hurts the economy.

Reminds me of when 37signals would redesign popular sites like FedEx. Part of it was a way to get attention for what they could do, but I bet it was also because Jason couldn’t stand how bad some websites were.

View Details

New episode of Core Intuition about this week’s tweaks to the CTF, plus a discussion of how Micro.blog is using AI. We talk about my decision to have a global AI setting and how some customers feel very strongly that AI use should be limited.

View Details

Finally checked out the Carpenter Hotel’s coffee shop yesterday. Nice place. Had a little break from the rain outside.

View Details

Great teardown video from iFixit on the Rabbit and Humane devices. The closing line also highlights why these need to be standalone devices:

Both at best should’ve been an app. But that might have more to do with the restrictions on Apple and Android’s app stores than anything else.

Easy to access, simple hardware is not only fun but also the only way to really push anything forward at the moment. We wouldn’t say that because the iPhone can run games the Nintendo Switch shouldn’t exist.

View Details

Recorded another very short video for YouTube about how we’re starting to use the auto-generated photo descriptions in the new post screen. As you can see in the video, it’s still a little clunky. I’ll improve the timing and UI flow as we use it more.

View Details

There’s a redesigned version of Lillihub for Micro.blog available. I’m amazed by how many features it supports. Check it out if you’re looking for a different take on the user experience or text editing UI.

View Details

I’ve been working on a Gaza-related blog post off and on for months, mostly threw it out and rewrote it this week. Sometimes I draft a post and it feels good to write it down, so I never actually post it. Other times I can’t let a topic go until it’s published.

View Details

Admittedly I’m not a subscriber so haven’t read the full text for M.G. Siegler’s Vision Pro article this week, but the opening paragraph is not fooling around:

Arguing about the shipment projections for Apple’s Vision Pro is sort of like arguing about how many tickets were sold on the fateful Hindenburg journey. For one thing, we’re going to find out the number one way or another, eventually. For another, we’re sort of overlooking the massive airship exploding in the sky.

View Details

How is it May already? Reminder that Micro Camp is coming up in just a little over two weeks! We’ll get the full schedule up later, but the plan is to start at noon Pacific. It’s free. We’ll have a livestream and chat. micro.camp

View Details

The API folks at OpenAI continue to do great work. You can just tell when developers have their act together. Felt the same way the first time I used Stripe. The latest improvement is vision models in the batch API (Twitter X link), which should eventually bring down my costs.

View Details

The “it should’ve been an app” arguments would resonate with me more if Apple let you replace Siri. There’s just no way to get enough integration on iOS. It is hard to innovate around Apple and Google, but I’m glad some developers are trying to, because that’s how we get new things.

View Details

Patrick Rhone has a new book: For You:

This book was written for my daughter Beatrix in honor of her 16th Birthday. It is inspired by many events and conversations we’ve had over the years.

This book is for you, too. Because these lessons are universal.

View Details

Grand opening of the new Chuy’s in Mueller.

View Details

Saw this poster the other day and was fascinated by it. I’m posting it to capture the time we live in. It also inspired me to read a few random articles about horses in the Middle East, including this one from 2016 in The New York Times:

Palestinians and Israelis in the business, as well as foreign trainers and judges who know the region, say that Arabian horses have another effect that is almost magical: They coax Israelis and Palestinians into the same arenas, where the conflict briefly melts away and everyone admires the horses as they strut, dance, gallop and compete for trophies.

View Details

Neat video from Brandon Sanderson at C2E2. I’m tempted to go to Salt Lake City for the Wind and Truth release. None of the books I’m reading are hitting… I’m pushing through, but part of me wants to just start re-reading all of The Stormlight Archive.

View Details

I’m 48 years old. If you start counting with my paid internship in college, I’ve had a roughly 30-year career in the software industry, give or take a year. I feel extremely lucky that the web came along just as I was getting my feet wet as a developer. World-changing technologies are rare.

Timing matters. This is part of what Malcolm Gladwell’s book Outliers is about.

As I get older, I’m increasingly aware of how easy it is to become bitter and set in my ways. There are many episodes of Core Intuition where I complain about Swift or SwiftUI. Why do we need a new programming language when the old one is still perfectly fine? 🤪

The tech and startup world has had no shortage of over-hyped sidetracks. Blockchain is the most recent flop. Just because a technology is novel, doesn’t mean a practical purpose and business model will emerge.

I almost never jump on trends because you can waste so much time chasing productivity gains that you actually end up going backwards. I run my servers with old tech. I use tried and true programming languages and frameworks. I am not cutting edge.

Some people think generative AI is in the same line as other problematic new technologies, fads that come and go, leaving a string of wrecked businesses and broken apps in their wake. I understand the hesitation. We have been inundated with tech companies that don’t care about data privacy, don’t care about how energy use affects the climate, and don’t care as much about user control as they do about profit.

It is with this backdrop that I get to the point: this AI shit is real. It will change almost everything. I’m not expecting to see another truly game-changing technology for the rest of my career. This is the one.

That doesn’t mean we should move fast and break things. I’m trying to be thoughtful about this. The new photos search and accessibility feature we introduced in Micro.blog today is a first step, and perhaps we won’t take the next step for another year or longer. It’s useful today, as a tool to help people do more with their time, and that’s enough for now.

View Details

Great blog post from Om Malik on the current AI hardware from Humane and Rabbit, and where things are going.

View Details

I posted a video on YouTube today with where we’re going in Micro.blog to use AI in a limited way to help with search and accessibility.

View Details

Got derailed looking at electric bikes (again!) and now I want this: eeyo.bike. I’m not super picky about bikes, but the cheap one I got a few years ago is busted and it’s impossible to find a new battery. This seems a common problem for many brands. 🚴

View Details

Great effort from the Lakers. That was a good one. Looking forward to Nuggets vs. Timberwolves! 🏀

View Details

I feel like MKBHD is trolling us now with the clickbait video titles. R1 review is overall pretty fair, doesn’t change my expectations much.

View Details

Recorded a new video to release tomorrow, with a walkthrough of what is possible with photos and AI. Just a first step, nothing earth-shattering you haven’t seen before, but I really like how it’s coming together in Micro.blog. Our robot overlords made me post this. 🤖

View Details

Watched the first episode of Fallout last night. Really good. I never played the game, so no idea how closely the show is inspired by it, but I like what they’ve done so far. 📺

View Details

It was going to be confusing for DMA-required changes on iOS to not also apply to iPadOS, especially for developers with universal apps. I assume syncing them up won’t be a major problem for Apple, hopefully for iOS 18. MacStories has the latest EU news on this.

View Details

When I find myself questioning whether I’m on the right side of an issue, it can be a little comforting to realize that there is no right side. Some things are just a mess. Humans are imperfect, but we’re trying our best. ❤️

View Details

Wish I could permanently remove that red dot from the Threads favicon. Life is better with most app icon badges and notifications hidden, and this one is really glaring.

View Details

Thanks @numericcitizen for a new YouTube video about what’s new in Micro.blog! Covers updates to newsletter updates, Bluesky support, AI setting, blogrolls, and more.

View Details

Uploading photos to Micro.blog? Don’t forget about Mimi Uploader. We will be rolling out some AI-based features in Micro.blog soon for photos, but you can already use Mimi today to help generate photo alt text.

View Details

Check out the iOS app Bound if you ever have a bunch of downloaded audiobook files that can’t fit in Audible, Libby, etc. I’m using it with the MP3s for Dragonsteel Prime and it works great.

View Details

It remains good advice not to judge an album (or a book, or almost anything) too quickly. From Oliver Darcy at CNN on Tortured Poets:

One week later, my view of the album has entirely reversed. After spending more time with the two-hour sonic feast, more methodically touring through its subtleties and nuances, I am ready to declare that it is one of Swift’s best works yet. Anecdotally, it seems others are also identifying with this experience, initially expressing tepid feelings toward the album, and then realizing after a few listens it has really grown on them.

View Details

Biden was great at the White House Correspondents' Dinner. And Colin Jost was excellent: funny but also meaningful and sincere. Really well done. 🇺🇸

View Details

One of the most confusing parts of Micro.blog is the Account → Edit Sources page. It is also one of the most powerful and unique parts of how Micro.blog was designed. If you’re confused by it, how can we improve it? I’ve made a couple tweaks here and there this year, but need a fresh look.

View Details

Manuel Moreale blogs that the web is not dying:

Let’s imagine we ban TikTok. And Facebook. And Instagram. And Threads. And all the other huge platforms. There would still be one global town square left. It’s called the web. The web itself IS the global town square.

View Details

Mark Gurman says that Apple “has renewed discussions with OpenAI about using the startup’s technology”. GPT-4 is simply more advanced than anything else. Makes a lot of sense for Apple to have their own small models run on device, and lean on others for larger server infrastructure.

View Details

We just posted a new episode of Core Intuition, about recent Micro.blog downtime and then a full discussion of the TikTok bill.

View Details

Years ago when we launched Micro.blog, I had a clear vision for indie blogging that felt on the cutting edge of the distributed social web. Now that federation is just accepted as the base foundation for any new network, thinking about if that changes our identity. We sort of won. What’s next?

View Details

For everything in the news that I blog about, there are probably five stories that I just bite my tongue on. Don’t need the controversy. 🙂 But on the next Core Int, we talk a lot about TikTok, which was a fun change of pace. I’ll be editing it today.

View Details

Obviously would’ve been good even earlier, but I’m glad to see construction for the Gaza floating pier is underway. From the NYT:

Senior Biden administration and military officials detailed a complex plan in a Pentagon call with reporters on Thursday afternoon, explaining how the pier and causeway are being put together, and how it is supposed to work. Army engineers are constructing the facility aboard Navy ships in the eastern Mediterranean.

I assume we’ll see photos at some point. Seems like a difficult but important piece of the puzzle for Gaza aid.

View Details

If you missed the announcement, next month we’re having Micro Camp, our free online event for the Micro.blog community, and for anyone interested in blogging and the social web. Special guest Christina Warren! May 17th.

View Details

Little known feature in Micro.blog: it saves each copy of a draft in case you need to revert or get text from a previous version. Apparently I hit ⌘S a lot while writing that post about TikTok this morning.

View Details

I wasn’t sure whether I felt that strongly about the TikTok bill until I read this blog post by Ben Werdmuller. I usually love Ben’s posts but I disagree with him on TikTok and the open web, so let me respond to a few points:

Ironically, banning a service from the open internet nationwide is exactly the kind of thing that China has done again and again through its Great Firewall. Rather than protect American users through the kinds of far-reaching privacy legislation that we need, government chose to address TikTok alone on the basis of what amounts to xenophobic protectionism.

I’m not convinced American privacy legislation will have much impact on a company based in China. TikTok has also long promised to host data in America — “Project Texas” — and according to recent reports the effort is largely cosmetic.

This is not a ban of TikTok. This is a focused effort to force ByteDance to sell the company, so that it can be controlled by a company with more transparency and accountability. If ByteDance refuses to sell TikTok, the app will be removed from distribution by platform gatekeepers, but there’s nothing to stop TikTok from continuing to operate and be available to Americans via the web, as long as it’s hosted somewhere else.

From HR 815, now signed into law:

Providing services to distribute, maintain, or update such foreign adversary controlled application (including any source code of such application) by means of a marketplace (including an online mobile application store) through which users within the land or maritime borders of the United States may access, maintain, or update such application.

It might even be a positive outcome for the open web by shedding light on Apple and Google’s tight control over app distribution, and showing users why Progressive Web Apps can be a good alternative solution. TikTok would potentially be slower with a poorer user experience, or maybe it wouldn’t, but the open web is not going to fall apart so easily.

It’s true that some US Senators have shown themselves to be ignorant, xenophobic, and racist, on not just this bill but a range of issues. And yet a broken clock is right twice a day.

Ben writes sarcastically:

There’s a possibility that TikTok will be used to spread propaganda, unlike every other social network

I will be the first person to criticize massive social platforms. Significant portions of my book are about exactly that. It’s a very real problem to have so much concentrated power. But as much as we might dislike how Mark Zuckerberg runs Facebook, we can be pretty confident he is not going to undermine America on purpose, quietly putting a foot on the scale with propaganda to amplify political chaos.

Scott Galloway, co-host of the Pivot podcast with Kara Swisher, was on MSNBC’s Morning Joe this week:

What might sound paranoid, but that doesn’t mean I’m wrong: I think we are being manipulated, specifically youth, who their frame for the world is TikTok. If you look at TikTok, there are 52 videos that are pro-Hamas or pro-Palestinian for every one served on Israel. I think that we’re being manipulated. I think Americans are easier to fool than to convince they’ve been fooled. But if I were the CCP, I’d be doing exactly the same thing. I think social media is sowing division and polarization in our society.

We just can’t be sure whether the algorithm is only giving people what they want or whether there’s any influence being fed into it. Ben Thompson wrote on Stratechery years ago that there is evidence that Americans should be concerned:

TikTok’s algorithm, unmoored from the constraints of your social network or professional content creators, is free to promote whatever videos it likes, without anyone knowing the difference. TikTok could promote a particular candidate or a particular issue in a particular geography, without anyone — except perhaps the candidate, now indebted to a Chinese company — knowing. You may be skeptical this might happen, but again, China has already demonstrated a willingness to censor speech on a platform banned in China; how much of a leap is it to think that a Party committed to ideological dominance will forever leave a route directly into the hearts and minds of millions of Americans untouched?

Wondering about China’s influence on the TikTok algorithm isn’t xenophobic. It’s not about the people. It’s about the leadership. In the same way we can blame Putin for the war in Ukraine and still be sympathetic and trusting of the Russian people, we can be skeptical of the motivations of the Chinese Communist Party and still respect people in China, admire their culture, and welcome Chinese immigrants to America with open arms.

And what if I’m wrong? What if it turns out there’s zero influence from the Chinese Communist Party and only pure intentions with the TikTok algorithm, as far as making a bunch of money on ads can be considered pure? TikTok is still probably a net negative for society, and I’m not going to lose sleep if their business stumbles or the bill leads to more competition in short video social networks.

View Details

How am I only just now seeing the trailer for Chris Sanders’s The Wild Robot? Beautiful, like a mashup of Iron Giant and Bambi. Reminds me of why I love animation.

View Details

I’m a progressive, but we may look back on woke-ism as perhaps overcompensating. I worry about societal division. We can go so far in what appears to be the right direction that we lose sight of the big picture, like narrowly following old driving directions and getting lost when the world changes.

View Details

Continuing to learn a lot about AI. I’ve spun up several servers trying to find the right config for reasonable performance even on small models. Fixed costs but still quite expensive for me, and hard to match the reliability of OpenAI.

View Details

What happened last night with our primary db server was sort of amateur hour, something I learned a lifetime ago but still tripped me up. I recently reset the replication server, upgrading it, and last night it got hung up on an error and filled the disk with MySQL binary log files. Sigh.

View Details

Fish pond after getting coffee at Epoch earlier. Looks the same as a couple decades ago except all the retail space has changed, except Korea House. When I walk through I always think of the little model train store that used to be on the corner.

View Details

Didn’t realize my library card was expiring, and now I can’t get the books I’ve been waiting weeks for in Libby. Life is rough. 🙂 Going to renew online but it’s not exactly automated… Luckily have more than enough to read in the meantime. 📚

View Details

A first look at the Rabbit R1 from David Pierce at The Verge:

…the best way I can describe the R1 is like a Picasso painting of a smartphone: it has most of the same parts, just laid out really differently.

Mostly positive. There are shortcomings but this is a fun $199 device, so no one is expecting the polish or maturity of a $999 iPhone. I’m excited to get my R1 eventually.

View Details

I read a little of HR 815 to remind myself how the TikTok divestiture works. As much as Congress often looks like chaos in the news, there have to be writers on the staff who know what they’re doing, which is a little reassuring. 🇺🇸

View Details

Apple and Google as the bottlenecks for app distribution is what makes the TikTok forced divestiture possible. I wonder if ByteDance has considered rebuilding TikTok as a PWA to skirt the law. Not an ideal experience, especially without US hosting, but video sharing should be fine via the web.

View Details

Watched the Rabbit R1 launch party. I love what they’re doing. The vision goes beyond a little orange AI gadget. Especially interested in teach mode and what a full web platform (“rabbitOS”?) might look like.

View Details

As seen in this video about Meta’s glasses, a clever solution to video calling: just stand in front of a mirror. Very low-tech but also looks more natural than Apple Vision Pro personas.

View Details

It’s still very early in the trial, but seems the prosecution knows what they’re doing in methodically building the case. From coverage in the The New York Times:

Before court adjourned for the day, Mr. Pecker testified that Mr. Cohen and Mr. Trump had asked him what he and his magazines could do “to help the campaign,” a crucial statement that supports the prosecution’s argument that the men were not just protecting Mr. Trump’s personal reputation, but aiding his presidential bid.

🇺🇸

View Details

I hate Apple’s control of app distribution, but while they’re at it why not ban useless release notes like “bug fixes and improvements” or “we improve the app every week”. If devs don’t know how to document what’s new, feel free to scroll through the M.b release notes history going back 7 years.

View Details

For folks using Micro.blog Premium with the AI setting enabled, you may start to notice some new generated data for photos, as in this screenshot. I’ll blog more about this in the coming weeks when it’s fully enabled. The goal is better photo search and accessibility.

View Details

I’ve just loosely been following the Pennsylvania inmate’s escape and now capture. Wild story. Kudos to law enforcement for capturing him without firing a shot, and no one injured.

View Details

iPhone 15 Pro action button is interesting. I wouldn’t mind a rethink of the volume and power buttons too. I still accidentally take screenshots or otherwise fumble with the buttons.

View Details

I enjoyed the Mother Nature video at the Apple event. Usually these videos seem overdone and unnecessary, but this was actually a fun format to list the same somewhat dense environmental facts. On the other hand, we’re 30 minutes in and no products I’m particularly interested in.

View Details

Took the new-to-me Honda Element in to get checked out and the cost for a bunch of random fixes is a little mind-boggling. It’s got 127k miles and I thought maybe I could push it to 250k… Now I’m starting to doubt. 💰

View Details

Over the weekend while I was working on my Letters from Europe page, I integrated footnotes using the Barefoot library. Completely forgot that @jsonbecker had already created a Bigfoot.js plug-in for Micro.blog. Anyway, now there are more plug-in options for footnotes!

View Details

24 years ago, Traci and I went to Europe with a rail pass and hardly any money or plans. We worked remotely: her as a contractor for Apple and me at a small Mac dev shop. Last week I rediscovered some emails and postcards we sent while traveling and I decided to put them together as a web page.

View Details

When the threads-api project was announced, it was so tempting to use it but I knew it would be too fragile relying on undocumented APIs. Sure enough, Meta has sent them a cease and desist letter and the project is now shut down. Trust in ad-based platforms will always get you burned.

View Details

The capitol and downtown buildings over yonder, reflecting in the windows. Eighth day of the Micro.blog photo challenge.

Looking across Waterloo Park.

View Details

A couple people have read between the lines of my recent posts and wondered what is going on with my life. Short answer: we are selling our house of 17 16 years in northwest Austin and renting a place closer into town. Downsizing is hard. Feels like the right time for a major change. 🏡

View Details

App Store Connect is barely holding on today. Errors and more errors. Apparently this is the day I complain about other people’s software while I try to fix my own.

View Details

Starting to get the new Slack redesign in one of my workspaces but not others. I’m fine with the UI changes, but it’s jarring the way they roll these out so they don’t apply everywhere in the app.

View Details

Fascinating fallout happening in the JavaScript vs. TypeScript debate. In my experience, changing a language rarely brings the productivity gains you were hoping for.

View Details

More good advice from Manuel Moreale:

Please, for the love of all things web-related, if you decide to do anything online, get yourself a domain name.

We try to make this easy in Micro.blog, but it should be even easier. I’d like to spend some more time on it this year, so that transferring or configuring custom domains is effortless.

View Details

To follow up on some of the replies I’m getting about my hard drive, my philosophy is that nearly everything should be in one place. Less chance you will lose something important. Backups are simpler. Work anywhere. Same goes for what I post on the web: everything is on my blog.

View Details

Another new Micro.blog 3.2 beta is out for TestFlight. @vincent is tweaking the tags design and it’s looking really nice. I think we can probably ship this to everyone next week. And it’s a great time to try bookmarks and tagging in Micro.blog Premium if you haven’t upgraded yet.

Screenshot of bookmark tags on iOS.

View Details

Apple’s sending emails about getting apps ready for the Vision Pro App Store. Folks in the Apple dev community won’t like this, but I think Vision Pro will be a bust in the short term. Only develop for it for fun, not for a market. I’ll revisit it in 10 years when the tech catches up to the dream.

View Details

Can’t even calculate the number of hours and probably days I’ve lost because I cheapened out when I bought my MacBook Pro with too small of a hard drive. Still really like this computer (16-inch Intel) and don’t want the hassle of upgrading it just for more space.

View Details

We’re ramping up the TestFlight betas again for Micro.blog 3.2 with bookmark tags. The UI is still evolving. We’ll iterate quickly from here and get the final release out pretty soon.

View Details

Manuel Moreale follows up with some thoughts after interviewing me for his People and Blogs series:

That’s one of the main advantages of owning your place on the web: you can bend it and shape it to do exactly what you need it to do.

I love even the small tweaks we can make to our own sites. Having control over your site helps it fit your words and photos in a way that just isn’t possible when plugging content into the cookie-cutter mainstream social media platforms.

View Details

So many things are happening right now. Car, house, work. Change starts slowly but once momentum hits, it’s kind of unstoppable.

View Details

Love this new bookstore + coffee shop in Austin, First Light Books. Lots of thoughtful touches like the laptop-free book nooks for reading.

Seat by the window with a sign.

View Details

The photo challenge grid for Micro.blog is so cool right now. Lots of green for today (“forest”) and orange for yesterday (actually “orange”). Thanks everyone who is participating!

View Details

For technical folks who are interested in the plumbing of the social web, @snarfed has a great feature grid that compares IndieWeb, ActivityPub, Bluesky, and Nostr.

View Details

Day 2 of the Micro.blog photo challenge: buildup.

Stack of cardboard boxes.

View Details

First day of the Micro.blog photo challenge: abstract.

Sliding door at Public Storage, looks like stripes of orange.

View Details

Found some old postcards and emails we sent from Europe in 1999 and they are absolute gold. May try to put some of them online as an archive if I get permission from @traci. Here’s a highlight from traveling before wi-fi existed:

We won’t be connecting the PowerBook to the Internet again until we get to the next city, probably, but we should be checking email the rest of the week anyway. There’s a restaurant here that gives free Internet access when you order a dinner, which should be nice if it’s true.

View Details

Nice blog post from Allen Pike about link formatting. I’d add that overthinking SEO is a good way to lose your way. Design links for readers and the rest will take care of itself.

View Details

After owning a house for 20+ years, submitting a rental application is a nerve-racking process. Don’t usually have this kind of fear of denial.

View Details

Manuel Moreale has started a new People and Blogs series where he interviews people about their blogs. The post with me just went live today. I love this idea and look forward to future posts in the series.

View Details

This is how Amazon always wins… I want to pick up an organizing storage-type thing and think IKEA would be perfect. But it’s a bit of a drive, so I check Target and they have basically the same thing. But then I realize Amazon also has something similar that can be here tomorrow for zero effort.

View Details

It’s just about time for the September photo challenge! Got any ideas for prompt words to inspire each day’s photos? Jean has the details here and her email address to send them to. We’ll pick a random word each day and collect everyone’s photos together.

View Details

The third-party Mastodon web app Phanpy has a conversation view that reminds me a lot of Tweetie on iPad. The multi-pane layout in that app never really caught on, but I always thought it was a nice use of space.

View Details

Noticing the moon as a long day winds down.

View Details

Sarah Gooding, writing at WP Tavern about Automattic’s 100-year plan:

What resources will a URL (Uniform Resource Locator) point to 50 years from now? Or will URLs be discarded into the scrap pile of obsolete building blocks as soon as there’s a better, more efficient way to identify web addresses?

I think URLs and HTTP are here to stay. The web is over 30 years old and the basic foundation is strong.

View Details

There’s a new episode of Core Intuition out. We talk about Daniel shipping a beta of MarsEdit with Mastodon support, the value of feedback from customers, upcoming plans, microblogging and social network differences, and how sometimes we have to cut features to ship.

View Details

There are a bunch of things I want to add to my Honda Element to make it my own. I just finished the first upgrade: CarPlay. I didn’t really know what I was doing but somehow stumbled through it. It is a huge improvement compared to the 15-year-old factory radio.

Documentation online is a little inconsistent for this kind of upgrade. I wasn’t totally sure if the parts were correct until they arrived. In the end I used these:

  • Sony XAVAX1000, 6.2-inch media receiver. Simple, clean design with an actual knob. I think it’s discontinued but Best Buy had one.
  • Metra 70-7863, stereo wiring harness. With RCA cables that go to the Sony unit. Ordered the wrong kit at first, then found the right one at Custom Sounds in Austin instead of waiting for shipping.
  • Metra 95-7863, plastic dash kit. I was honestly shocked when this arrived and it was the right shape. It was hard to tell from the online photos.

If you are reading this in the future to upgrade your own car, note that I have a 2008 Honda Element SC. I don’t know if these parts would work perfectly with earlier or later models, or the EX or LX trims.

First step, disconnect the negative on the battery. Finding the right socket wrench in our garage took nearly as long as anything else.

With a little plastic removal tool, I popped up the faceplate around the radio. After that it’s easy to unscrew the old unit and take it out.

I stripped the wires on the new Sony unit and connected them to the appropriate wires on the Metra wiring harness. I didn’t have any fancy wire connectors so just threaded them together, twisted them, and wrapped in electrical tape. I went very slowly and think it turned out fine.

Finally, all that was left was to install the unit. I screwed everything in and popped on the new plastic covering. Some of the original wires from the car weren’t used so they are just dangling hidden inside. Hopefully they weren’t too important!

I also fed the microphone wire down to the floor so it can attach on the dashboard or behind the steering wheel. Haven’t totally figured out the best place for it yet.

Very happy with this upgrade overall. I probably should’ve had a professional do it, but I learned a lot. My car feels like it belongs in this decade now.

View Details

Still playing Wordle almost every day. Happy Wordle #800 day! 3/6

⬛⬛⬛⬛⬛

⬛🟩⬛🟨⬛

🟩🟩🟩🟩🟩

View Details

The music video for Used To Be Young by Miley Cyrus really struck me. Simple. Powerful. 🎵

View Details

Restaurants usually wrap a fork, spoon, and knife in a napkin. I got three knives instead! Someone in the kitchen is laughing. Keep it weird, Kerbey Lane.

View Details

And to follow up on this, there’s a little known policy for Micro.blog hosting: when you have a paid subscription, we continue to host your blog forever even after you cancel and stop paying. Good URLs don’t change and don’t go away, unless you want them to.

View Details

I love this idea: WordPress.com’s 100-year plan. But at $38k, it’s too expensive for most people. I’ve been planning something similar as a complement to Micro.blog, but from a completely different angle.

View Details

Looked through my old Clipstart source code for the first time in years, to answer a rare support question. Probably should’ve open-sourced the app. Everything broke when Apple abandoned QuickTime.

View Details

Heck of a mugshot, Trump. It feels like an angry, fitting reflection of that line from his inauguration speech: “This American carnage stops right here and stops right now.” 🇺🇸

View Details

Funny how different I drive depending on the car. In the Subaru Outback, adaptive cruise control on and let the car steer itself. In my son’s manual transmission Honda Civic, kind of recklessly like I’m street racing. And in the Honda Element, in the slow lane as if I have all the time in the world.

View Details

Sunset as we drive over the Trinity River in Fort Worth.

View Details

Made a sort of impulsive purchase of a used car: 2008 Honda Element SC, for a mini camper. Full details, photos, build, and more to follow in a longer blog post when I have it in my hands and set up. “It doesn’t make any sense. That’s why I trust it."

View Details

Jean just announced our next Micro.blog photo challenge! Starts September 1st.

View Details

Two years ago this week, Glass launched for iPhone. I had subscribed right away because I wanted to support their work and saw potential in it, even if I will always default to posting photos to my own blog first. Since then, Glass has added an Android version and a web version, along with other improvements like tags and appreciations.

Not long after Glass launched, we added special support in the Micro.blog iOS app for it. You can see a video of how it works in my blog post here. Unfortunately in the rewrite for Micro.blog 3.0, we had to temporarily remove the feature, although it’s slated to come back in version 3.3.

In that post about supporting Glass in 2021, I wrote:

Glass is so new that it remains to be seen where the app will go, and how it might expand in the future. It shares some of the same principles as Micro.blog — no ads, no algorithms, no likes — but Glass lacks important open web features like domain names and IndieWeb APIs.

Glass still lacks those features for the open web. After a couple years, if having an open API was at all on the radar, it probably would have happened by now in some form. The founders seem more interested in creating an Instagram alternative — another silo without an API or federation with other networks. And in 2023, I don’t think that works.

There is now mainstream pushback against big centralized platforms. We have Micro.blog and Mastodon. We have free photo platforms like Pixelfed. It is a harder sell for customers to spend $5/month for a photo service that is mostly disconnected from the rest of the social web.

I was thinking about Glass while looking into their export format, in case we wanted to support importing it into Micro.blog. I don’t plan to cancel my subscription, but I would not be surprised if many Glass customers have slipped away. The latest big announcement from Glass — an optional $99/year Patron membership — is geared toward increasing revenue from existing customers rather than growing the customer base.

We’ve been running Micro.blog for 6 years. I know how hard it is to balance marketing to new subscribers, keeping churn down, and offering new features regularly, including upgrades to higher subscription tiers. We barely have it figured out now and we were certainly a long way off after only 2 years. The default for SaaS platforms is the slow ramp of death.

There are effectively no success stories for Glass’s current business model. Small clones of Instagram and Twitter usually fail. To break out, there has to be something fundamentally different. For Micro.blog, the answer is simple: we are a social network but our business is blog hosting, a proven model. For Glass, the answer is less clear: they care deeply about photography, community, and design. I think the founders deserve a lot of credit for creating something beautiful. Is that enough?

I don’t know what the right model is for Glass, but I’m confident that it should include a strong foundation for open web standards. I hope that can be part of their vision. It might even be critical to the future success of the service.

View Details

Marty and Doc waiting for the DeLorean to be constructed.

View Details

Discovered the Snow Peak brand of camping-related products this week… Love the design. I didn’t know I needed $50 chopsticks for camping, but now I want them! Seriously though, some amazing stuff here. Camp stove with modular kitchen setup looks great.

View Details

August is halfway over? Summer must be slowly winding down. Last chance to get our special Summer of Blogging $1/month blog hosting. A great value that includes all the standard features that are built into Micro.blog, like full blogs, photos, book blogging, and cross-posting to 8 platforms. ☀️

View Details

This year I’ve fallen behind in email again. Very sorry to Micro.blog folks who have waited patiently too long for an answer. Attempting to dig out by replying to all emails from today and also some of the oldest emails, each day until caught up.

View Details

NBA in-season tournament dates announced. It’s a little odd to me how it’s spread out over so many weeks, but I’m still excited about it. Should make all of those games much more interesting. 🏀

View Details

Stayed up late watching the Georgia indictment details get revealed. Incredible to see the conspiracy outlined so thoroughly even though it was expected. There was also an excellent interview with Hillary Clinton on MSNBC. Trump will not be president again. No way. 🇺🇸

View Details

I recorded a video walk-through of Epilogue today and posted it here. Shows off the basics of tracking books you’re reading, and also a few not-so-obvious features.

View Details

It has been a great summer for movies. We’ve wrapped up seeing most of the “big” movies, so here’s a mini review of each.

Spider-Man: Across the Spider-Verse. I love the art style in these movies. When the big animation studios moved from 2D to 3D, we lost some of what made hand-drawn animation so beautiful. Getting a little bit of that back now.

Mission: Impossible 7. So much fun. The driving off the cliff scene might’ve been a little over-hyped leading up to the movie. Super dangerous but I think scaling the skyscraper (in 4) and hanging on to the side of a cargo plane (in 5) were both more stunning. Still, some great action.

Barbie. Really enjoyed this. It’s the kind of movie that you wouldn’t think would work. In the hands of a less-capable director, could’ve walked the line poorly between bad and brilliant. Still listening to What Was I Made For? by Billie Eilish.

TMNT: Mutant Mayhem. Pushing the boundaries of 3D animation again like the Spider-Verse movies. I remember reading my friend’s original black and white TMNT comics back in the day, but the new movie doesn’t require any previous knowledge to enjoy it.

Oppenheimer. Possibly a masterpiece. I was expecting great visuals, which is why we waited to see it on 70mm IMAX, but the pacing and acting and everything else also blew me away. Lots to think about afterwards. The best movie I’ve seen in years.

View Details

Oppenheimer was great. We drove down to San Antonio to see it in 70mm IMAX. 🍿

View Details

Packing up some old books. I’m trying not to look at everything, but every once in a while there is something priceless tucked away in a book that I had forgotten about, sometimes decades old. An old letter, postcard, or sketch.

View Details

Octopus tagging along with us during IKEA shopping this weekend.

View Details

I added a tags window in the latest Mac app for Micro.blog. Makes it easy to filter your bookmarks to a tag from the keyboard. Hit command-shift-T, type part of the tag, then the return key to focus the list, and return again to navigate to the tag. (Tags are for Micro.blog Premium.)

View Details

I enjoyed the conversation on the latest ATP about text editors. Lots of deservedly good praise for BBEdit. I’m sure the hosts have gotten feedback about this already from listeners, but surprised there was no mention of Panic’s Nova.

Feels like a good time to give an update on what text editors I’m using these days.

Xcode: This is obviously still the only reasonable way to go for Mac development. In the last few weeks I’ve shipped some updates to Micro.blog for macOS. Always fun to fire up Xcode, hammer out a feature, and ship it without much fuss. A couple things seem slower than they used to be, like debugging and auto-complete, but otherwise no complaints.

Nova: This is my go-to text editor for web projects now. Ruby for the Micro.blog web platform, JavaScript for the React Native app. Nova is arguably the most modern, native Mac text editor, and regularly updated. Lots of depth and I haven’t even scratched the surface with extensions.

Ulysses: This is essentially my note-taking app. I sync to a Dropbox folder with thousands of little text files. I prefer Dropbox instead of iCloud so I can edit more easily in any app, with backups and restoring old versions. I put draft blog posts here, notes about projects, upcoming trips, and anything that isn’t code-related.

BBEdit: This is for everything else. Looking at JSON and XML. Processing large text files, find-and-replace, grep. As a quick scratchpad for code or notes that I’m going to throw away. I haven’t totally customized it like John Siracusa, but I do have a couple shortcuts and scripts that I depend on. Rock-solid app that has withstood the test of time.

View Details

Austin this morning from the train station. Unfortunately just a drop-off, not going anywhere myself.

View Details

Whenever I create a new file in Xcode and choose Objective-C as the language, I laugh a little. Am I creating more technical debt or am I saving countless hours of time not dealing with the sharp edges of half-baked new tech? Zig when they zag.

View Details

Just posted this week’s episode of Core Intuition: Homemade Granola. Not actually about food. We talk through my frustration with Apple-only development, Apple’s power over distribution, and where the Vision Pro sits on the spectrum of open to closed Apple platforms.

View Details

Back to cool air after our upstairs A/C went out for a day. Something usually breaks every summer, and the heat has been especially ridiculous in Texas this year. Very thankful for a quick repair, less than 24 hours. ☀️

View Details

Did some testing this morning with Goodreads and it’s slow and clunky. Timeouts. Really happy with how much we’ve streamlined Micro.blog’s bookshelves so they are fast. Paraphrasing a Jason Fried quote: we can’t predict the future of technology, except that no one is going to want apps to be slower.

View Details

Spent the afternoon polishing up the next Android release of Epilogue and submitting it to Google. Because I don’t use Android often, I don’t have a great sense of what UI feels right. Things like swipe-to-delete are very inconsistent across apps. New version is definitely better, though.

View Details

Congrats to Casey Liss on shipping Callsheet. I’ve been using the beta. Great app for quickly looking up someone from a movie or TV show while on the couch. This will replace IMDb for most people… It’s just a better experience.

View Details

Great article by Christina Warren on the history of the App Store and why we’re due for some kind of change, likely helped along by the EU’s Digital Markers Act. Apple taking a cut of all developer revenue is not sustainable forever.

View Details

Interesting news on GitHub for Mastodon search, noticed via @darnell@one.darnell.one. Full-text post search is coming, will be opt-in. Discoverability and search is a frequent topic on Micro.blog so I’ll be following this closely.

View Details

I’ve gotten out of the habit of posting to Threads. I like the foundation Meta has built with Threads and expect it to be successful, but I’m going to scale back my use until ActivityPub is ready. Most of what I write (including this!) needs to start on my blog.

View Details

Fixing bugs and submitting apps to App Review this morning. As a long-time Apple developer going back to the 1990s, I now spend most of my time on web and cross-platform technologies. I’ll always love the Mac, but what a trap the Apple-only development rabbit hole is. Apple is too big and dominant.

View Details

Today we added Pixelfed cross-posting to Micro.blog. This joins our existing set of cross-posting services like Mastodon, Tumblr, Flickr, Bluesky, Nostr, and others.

Now you can post photos to your own blog, at your own domain name where you control your identity, and have Micro.blog send a copy elsewhere automatically. When posting, you can optionally select which services you want to include:

Because Micro.blog has built-in support for ActivityPub, your friends on Mastodon can also follow your blog directly without you needing to copy anything, or without you needing an account on any other platforms. There’s a lot of flexibility in how you want to configure this and which services you want to use. Some people even like to create a separate microblog just for photos.

As with all Micro.blog features, we’re looking forward to hearing how people use this. Photos are special, and there’s always more we want to do with them. We’ll continue to tweak the Pixelfed cross-posting based on feedback. Enjoy!

View Details

New blog post editor for Micro.blog from @amit: Scribe. Clean, full-screen editor with styled text.

View Details

Snapped this photo while we were making a u-turn in Dallas the other day. Took my daughters here 14 years ago for lunch with their dolls. 🥲

View Details

I’ve driven by this tower a bunch of times on I-35 and was always curious about it. Turns out it’s an experiment in wireless energy transmission, built in 2017. A century after Nikola Tesla, fascinating that folks are working on this again.

View Details

We added a new about page with a little more about what Micro.blog is and what our values are.

View Details

I’m still waiting to see how DMs evolve in the fediverse before deciding what to do with Micro.blog, but one thing I’m sure of: we’re not going to have messaging that isn’t encrypted. Private replies to Mastodon users (which works now) will remain as a legacy feature, mostly hidden away.

View Details

Interesting what @dansup@mastodon.social is up to with a new messaging app called Sup. Early video demo is here. Sounds like it uses Mastodon to connect with users, but Signal protocol instead of ActivityPub for messaging. Meanwhile I still like Nostr’s approach to encrypted DMs.

View Details

Mystery boxes of records at Josey Records in Dallas, $10 each.

View Details

Frustrated with Dropbox ever since Apple required these sync apps to move to a new official API. Dropbox was rock solid, always working. Now I see frequent Finder errors or refusal to move files around. I know, “security”, but from sandboxing to this, not convinced locking down macOS actually helps.

View Details

Half Price Books flagship store in Dallas. 📚

View Details

For folks who have been using Micro.blog bookmarks… First of all, thanks! I’m curious: do we need a workflow for tracking “unread” or “read” articles? I’ve been wondering if we could do something clever so you could “tag” an article as read, maybe with an emoji or special tag.

View Details

Empty apartment with built-in bookshelves, just one potential future. We’ve been thinking about downsizing ever since all the kids moved out. Change is hard, though.

View Details

Finished reading: Age of Myth by Michael J. Sullivan. This was great. Really well paced, seems like a perfect setup for the series. First of six books. 📚

View Details

Writing some new web page text and maybe it’s early in the morning or maybe I watched too much of the news already today, but when I tried to type “independent” I misspelled it and it auto-corrected to “indictment”. 🇺🇸

View Details

Wasn’t expecting this kind of profound wisdom from the apartment sales guy today: “The world is too big to stay in one place.”

View Details

When the coffee shop recognizes me and remembers my regular order, it’s gonna be a good day. ☕️

View Details

Matilda at Zilker Hillside Theater. 🎭

View Details

If you’ve been fascinated with the Worldcoin Orb, but not sure how to feel about it, check out Molly White’s comprehensive write-up:

Having my eyeballs scanned by a shiny chrome orb so I can someday receive cryptocurrency disbursements because artificial intelligence has stolen my job sounds like something from the pages of a half-baked sci-fi novel. It also sounds like the kind of operation that venture capitalists would value at over a billion dollars.

View Details

Over the last couple years, I’ve gone from mostly reading books on a Kindle (Paperwhite), to only on the iPad Mini, and now back to the Kindle (basic 6-inch). Actually prefer the smallest screen.

View Details

Recorded another very short screencast to show the latest Micro.blog for macOS update. Less than a minute long. It’s here on YouTube.

View Details

Didn’t realize how exhausted I was toward the end of the week. Yesterday shipped new features, then took a nap after dinner, then read, then had a full night’s sleep. Up early and worked on the Mac app, shipping the 3.0.1 bug fix update. Feel back on schedule now.

View Details

Today we are shipping a new feature for Micro.blog Premium subscribers: bookmark tags. This is a big improvement for using bookmarks, and it touches several parts of the platform and apps.

There is updated documentation for bookmarks with new screenshots. There is a new version of the Mac app: version 3.0, with not just bookmark tagging but also a new interface for seeing recent highlights.

Wait, highlights? Yes, a little-known feature in Micro.blog Premium is that you can bookmark anything, not just short microblog posts. When you bookmark web pages, Micro.blog downloads a copy of the text so you can read the web page later without all the clutter. In this reading mode, you can select text and save highlights to your Micro.blog account, making it easier to find passages of important text or blog about them later.

I recorded a screencast video here on YouTube with a demo of bookmarks and highlights. It’s 8 minutes long. 📺

We’ve been thinking a lot about how to improve bookmarks. One seeming disconnect is that your hosted blog uses categories, not tags. This was deliberate: categories are generally simpler and more obvious as a navigation aid on your blog for readers. In other words, categories were chosen as an optimization for your readers, and deciding to only have categories and not tags keeps the interface in Micro.blog streamlined.

You’ll need different tools to organize bookmarks, and you may eventually have thousands or tens of thousands of bookmarks. Micro.blog imports existing bookmarks and tags from Instapaper, Pocket, and Pinboard. The ad-hoc nature of tags is more flexible and optimized for quickly adding bookmarks, compared to blog posts where you may want to put a little more thought into where readers expect a blog post to live within a shorter list of categories.

We’ll continue to improve bookmarks as we hear from folks who are consolidating their data to Micro.blog. I expect there will be feedback about different workflows people are used to.

A note on pricing. Micro.blog Premium is our $10/month subscription, with the bookmark features plus podcast hosting, video hosting, and email newsletters. While nearly every other service in the world has increased their prices in the last few years, Micro.blog’s base subscription remains at $5/month. We can do this because we have customers who have upgraded to the optional $10 plan.

If you’ve been wondering about Micro.blog Premium, I hope these new features give you a reason to check it out. You can upgrade or downgrade whenever you want. We never delete your data when downgrading, so it’s always there if you want to come back to it.

Happy bookmarking! 🏷️

View Details

At this point I just laugh when Xcode tells me WebView has been deprecated since macOS 10.14. I know! I could set aside a week to rewrite code that works, or wait until it’s removed from macOS, which I’m skeptical will ever happen. (Haven’t updated to Sonoma yet, though…)

View Details

Finished reading: Dungeons & Dragons: The Druid’s Call by E. K. Johnston. I think I was drawn to these prequels because of the fond memories I have of reading Dragonlance back in the day. 📚

View Details

This time we got him! 😜 New surprise indictment:

According to the court filing, Trump employees attempted to delete security footage at the Florida resort and one said “the boss” wanted a server deleted.

🇺🇸

View Details

This week’s episode of Core Intuition is up! We talk about X.

View Details

Going to bump to version 3.0 for the update to Micro.blog for macOS tomorrow. I think it’s warranted with the new bookmarks stuff, but also because the last version was 2.9.1 and I don’t believe in .10 versions. (It’s hard to explain… Somewhere in the Core Intuition back catalog we talk about this.)

View Details

Listening to What Was I Made For?, by Billie Eilish. Went to see Barbie a couple days ago and still thinking about it a little. Really good. 🎶

View Details

Threads appears to count every character in a URL as part of the 500 characters. A little surprising because I’m used to either Micro.blog (with inline links so no URL counts) or Twitter and Mastodon (with all URLs counting as a fixed size).

View Details

Micro.blog doesn’t have full search or hashtags by design, and I know it can be frustrating sometimes. I hear it. But this report on child abuse material across Mastodon instances is part of why:

During its search, the team found 554 pieces of content that matched hashtags or keywords often used by child sexual abuse groups online

Until moderation and automatic flagging can be deployed at scale, it’s better to go slowly.

View Details

Dave Winer posted a 12-minute audio recording on his blog, addressed to me but applicable to everyone who is creating tools for the social web. Listening to it, I have a bunch of thoughts. In this post, I just want to start with server-to-server ActivityPub, and leave some of the other technologies Dave brings up for later.

A few days ago I was revisiting the ActivityPub code in Micro.blog because we have some interoperability problems with Calckey, now called Firefish. Firefish is a Mastodon-like platform with a few unique design twists and features. To narrow down where things were going wrong, I read through the ActivityPub spec again and also looked at JSON responses from other platforms like Mastodon and Bridgy Fed.

To frame this blog post I’ll put forward this question, at the heart of interoperability on the fediverse:

Is it possible to implement a social web platform by reading the suite of ActivityPub specs, and have that new platform be compatible with Mastodon?

I would argue no, it is not possible. A new project would only be compatible with Mastodon by accident because there are some things that are not spelled out in precise detail in the specifications, and no JSON examples that exactly match what any server sends or expects. The specs have all the pieces, but not how to fit those pieces together.

In addition to the specs, Mastodon’s own documentation is very good, and it has improved even in the last year. But again, if you ask a developer to implement ActivityPub, they will naturally start at the W3C.

I hope this doesn’t sound overly critical. The fact is, ActivityPub is complicated, and by design this kind of architecture can only be simplified so much. A lot of great work came out of the W3C’s Social Web Working Group, including IndieWeb standards, and I don’t think the authors had enough time to get consensus on some parts of ActivityPub before publishing, nor could they predict everything a platform like Mastodon or Micro.blog might need. Recently, Evan Prodromou has been leading the effort to address GitHub issues and move things forward.

I said “suite” of ActivityPub specs above because ActivityPub is not really one thing. There’s the ActivityPub spec itself, but also ActivityStreams, HTTP Signatures, WebFinger, JSON-LD, and the working group note on authentication.

And there are other features, such as account migration between instances, that are not documented outside of Mastodon. This is why the IndieWeb principles warn of monoculture. We are lucky that Mastodon cares deeply about the open web, because other dominant platforms might have less incentive to make their extensions work outside their own ecosystem.

The current fediverse is impressive. It’s further along than most people would’ve guessed possible a few years ago, largely thanks to Mastodon’s polish and Twitter’s implosion. The next step should be getting to the point where the answer to my question above can be “yes”. How can new developers add support for ActivityPub without feeling like they are reverse-engineering every existing server?

We don’t necessarily need a new spec, although it would be helpful to have a single document that ties everything together — a guide that a developer could use to build something and be confident that it has a chance of being compatible with other platforms. I also think we should consider further simplification, such as making JSON-LD optional (!) and drafting a streamlined version of ActivityStreams with only the bare minimum object types that most servers need.

There is a lot of work to do, even outside of ActivityPub. As Dave mentions, we also need a common posting API. The most popular Mastodon client apps do not support either ActivityPub or Micropub. But a lot of progress can be made focusing on interoperability for the server-to-server part of the API. That should be the top priority with Threads set to join the fediverse.

View Details

Working on a new Mac feature that would be nice with SwiftUI, but we still run back to macOS 10.14 Mojave. Would have to jump forward several versions of macOS. Not worth it. Do plan to bump up the requirements a little, though.

View Details

Got my copy of Yumi and the Nightmare Painter in the mail today. I continue to be amazed at how great these print editions look. My favorite so far. 📚

View Details

Interesting that for single-letter .com domains, only q, x, and z are in use. They were registered before ICANN reserved the rest of the letters in 1993. I typed a through z in manually but could’ve saved time by reading the history on this Wikipedia page.

View Details

I’m still a little stunned that Elon followed through on x.com, even though it was expected. It’s remarkable how he both fixed the last decade of indecisive leadership at Twitter and used that new power to destroy the brand, maybe the one thing at Twitter that wasn’t broken.

View Details

The second FediForum has been announced, coming up in September. I really enjoyed the discussions at the last event and plan to attend this next one. They also have the video for the quick demo I did of Micro.blog and how it interacts with Mastodon.

View Details

Occasionally I go looking for new domains and I’m always annoyed with all the new TLDs that Amazon has reserved that they don’t allow anyone else to use: .book, .read, .like, and others. They’ve been sitting on these for years. It’s like domain squatting at a massive scale.

View Details

Spent a few hours yesterday trying to get Micro.blog to work better with Calckey (now Firefish). Made progress but not enough. ActivityPub remains extremely difficult to debug without reading the source code for other projects.

View Details

Finished reading: The Ember Blade by Chris Wooding. Read the first half of this a few months ago and then took a break before picking it up again. Really gets going in the second half. Excellent. 📚

View Details

A new episode of Core Intuition is out. We talk about Apple’s threat to withhold iMessage from the UK, what is acceptable for public surveillance, and the larger issue of powerful tech companies leveraging their size for good and bad.

View Details

Dusted off the old Drobo, which hasn’t been plugged in for a year. A little surprised it still seems to work. Don’t feel great about investing in a dead product, but might get another drive to put in it anyway.

View Details

Thinking about ActivityPub made me wonder what Tumblr has been working on, so I clicked around over there for a bit. I missed that Tumblr has live video now, with tipping in “diamonds”? Seems a little out of place with the rest of the platform.

View Details

Reminder that it’s still summer, which means we’re still offering blog hosting for only $1/month to new folks who join Micro.blog. There’s no easier way to blog that’s as full-featured and affordable. Feel free to share the link to anyone who might benefit from it! ☀️

View Details

Major addition to bookmarks in Micro.blog is coming along really well. Likely will ship next week. 🏷️

View Details

Power in the house went out. Summer in Texas is never a great time for this. Hopefully not long, lots of worker trucks in the neighborhood trimming trees and scheduled maintenance on the meters. Getting almost no signal on Verizon, so had to go to the coffee shop for a while to work. ☕️

View Details

I still believe we should welcome Threads to the fediverse, but the news that ActivityPub seems far off has soured my experience posting manually to Threads from my microblog. They grew too big, too quickly. Meanwhile, sounds like Tumblr’s ActivityPub effort has also stalled.

View Details

As I think about how to add tags to bookmarks in Micro.blog, I’ve been drawing inspiration from services like Pinboard but also my own (now sadly defunct) Mac app Clipstart. This video demo was from way back in 2009… I think the tagging UI is still really good.

View Details

Just posted a new episode of Core Intuition all about the Threads launch. Misunderstandings about ActivityPub, judging the leadership of Meta and Twitter, and whether Threads will beat Tumblr to supporting this open standard.

View Details

Frustrated with emails not reaching Micro.blog users, I’ve been working through steps to make things more robust. First added SMS as an option, then Sign in with Apple, and today we’re moving a percentage of emails from SendGrid to Amazon SES so we’re not reliant on a single platform.

View Details

We finally installed a new smoke alarm that has only been sitting unopened in its box for about two years. Feels like a major Saturday accomplishment. Very slowly upgrading everything.

View Details

First thoughts on Retro: great design and for me fills a similar role as BeReal. Not a true Instagram or photoblogging alternative because it’s focused more on private-ish photos. We don’t need another silo but in that niche they can get away with not being open.

View Details

Love this post from @adactio not just because he’s using Micro.blog cross-posting (thanks!) but also because the approach is exactly what we believe in. Start with your blog first:

When the current crop of services wither and die, my own website will still remain in full bloom.

View Details

I don’t plan on using Threads indefinitely, but I am curious about the user experience, both good and bad. The algorithmic timeline is so puzzling to me. Despite following people who are posting, I first always see posts from people I’m not following. Seems overly tuned to the popular.

View Details

Over the last few days we rewatched Mission: Impossible 4-6, then went to see 7 tonight. Enjoyed it. Intense as expected. The audience was into it, laughing and clapping. 🍿

View Details

As the fediverse grows, new people will hear about Micro.blog and send us feedback about how we can improve. Always good! I listen to everything. On the other hand, the fact that the fediverse is so big means we can do things differently and still be successful. Not all platforms should be the same.

View Details

Reminded by Jeremy Keith’s post of this quote from Robin Sloan. Beautiful, true:

The speed with which Twitter recedes in your mind will shock you. Like a demon from a folktale, the kind that only gains power when you invite it into your home, the platform melts like mist when that invitation is rescinded.

View Details

Finished reading: Yumi and the Nightmare Painter by Brandon Sanderson. This book alone was worth backing the Kickstarter project. Loved it. 📚

View Details

A new TestFlight beta is out for Micro.blog 3.1. The big changes for this release are per-post cross-posting options and video upload. (Might still be some problems for certain video files. Proceed cautiously in that part of the app.)

View Details

We’ve known for years that our onboarding in Micro.blog is bad. It’s tough to start with no followers and no recommended users. But even so, we’re not going to do the Threads or TikTok thing to just show a bunch of random popular crap. There’s gotta be a middle-ground to help people without that.

View Details

There are some quirky code design decisions in Micro.blog. For example, I prefer flat structures and all model classes are single words. Most are database tables and some are background tasks. Sounds obvious until you look at literally any other large web server project (and try to name things).

View Details

Accidentally clicked the “Post” button instead of “Bookmark” on that last link. Deleted it and the deletion should’ve propagated everywhere. I’ve fully switched to Micro.blog for managing bookmarks and web highlights… Perhaps we need an additional check to avoid accidental posts of just URLs.

View Details

The wild thing about Twitter’s demise is that it’s not too late to turn the platform around. Now that it has been burned to the ground, it could be rebuilt with a focus on standards, community features, and useful paid subscriptions. Would need new leadership, like a reverse-takeover from Bluesky.

View Details

Love what we saw from Victor Wimbanyama over the weekend. I missed some of the 4th quarter from yesterday’s game, so rewatching the highlights. Go Spurs Go. Next season is going to be fun. 🏀

View Details

I thought it would be a fun weekend project to port a simple WordPress.com theme to Micro.blog. What a mess! Lots of different CSS files that look like they were generated by machines, not humans. It’s drifted too far from the “view source” web.

View Details

Working on some more flexibility this morning to give people options for blocking Threads and other instances. Mixing lots of account types in one system is increasingly complicated: Micro.blog usernames, Mastodon handles, IndieWeb domains, newsletter email addresses… Spaghetti code.

View Details

Evolving thoughts on web scraping. First, I figured anything goes. Later, I was hesitant to depend on any web site structure that would break, and I wouldn’t work around attempts to stop scraping. Now, I’m back to thinking if you don’t want people to see something, don’t put it on the public web.

View Details

With Threads hitting 80 million users already, a lot of folks are dismissing Bluesky. But maybe it’s more important than ever for Bluesky to succeed. Or pivot slightly and implement enough of ActivityPub to co-exist? Micro.blog already cross-posts to Bluesky and I haven’t ruled out full federation.

View Details

Time to get serious about finding the Sorcerer’s Apprentice Mickey.

View Details

Fighting with our Nest thermostat all week. It wants to save energy and I want to not die of heatstroke in my own house. ☀️

View Details

Finished reading: The Magician’s Daughter by H. G. Parry. 📚

View Details

“I can’t wait to wear that Spurs jersey for a first time.” — Victor Wembanyama, ready for NBA Summer League in Vegas tonight 🏀

View Details

Ben Werdmuller blogs some second thoughts about Threads:

But there’s a bad taste in my mouth that isn’t going away, that has its roots in the genocide that Meta enabled through its actions and inactions, and the political polarization in the United States that it was undoubtedly a part of, and in Cambridge Analytica…

Good post. We haven’t forgotten about this or any of the other problems with massive ad-based platforms. I think it’s okay to hope that Threads is a step forward for open networks and want Facebook to fail to control social media again.

View Details

My posting workflow this morning: I post to my blog from my Mac, it goes out via ActivityPub, RSS of course, and Micro.blog sends it to Bluesky and Nostr. Then I go to my iPhone and… copy/paste it into Threads! iPhone-only may have been alright for Instagram, but it’s not gonna fly here for long.

View Details

There’s some great stuff in this comic. This rings true:

One of the most fun things about Twitter is complaining about being on it all the time because I am wildly addicted to it and how miserable it makes me. I hated it until Elon came and ruined it now I want old Twitter back again so I can hate how it was before again.

🤣

View Details

Watching CNN this morning over breakfast, they said “fediverse”… So yeah, decentralization is edging into the mainstream. Progress.

View Details

Finished reading: A Prayer for the Crown-Shy by Becky Chambers. A great second book. Hope there are more of these. 📚

View Details

One of the things I’m most proud of with my blog is how consistent I’ve been about the problems with social media. It felt a bit tilting at windmills to quit Twitter in 2012. No love for Facebook, either! But now we have a framework for solutions and can judge these big companies beyond gut feeling.

View Details

I’ve been blogging short posts this week about Meta’s launch of Threads, but I think it’s worth a slightly longer post with a quote from this interview with the head of Instagram, Adam Mosseri, on the Hard Fork podcast. Adam has a couple answers to why ActivityPub. The part that is most revealing to me is that he sees the industry going this way already:

I do think that decentralization — but more specifically or more broadly — more open systems are where the industry is getting pulled and is going to go over time. And for us, a new app offers us an opportunity to meaningful participate in that space, in the way that it would be very difficult to port an incredibly large app like Instagram over, and so to lean into where the industry is going.

This didn’t happen by accident. Many developers have been working to bring awareness to the problems of massive, centralize platforms — and bloggers and journalists have been doing the same — so much that users increasingly understand the value of decentralization and content ownership. Not everyone has jumped into Mastodon for various reasons, and not all smaller platforms have taken off, but it still helps get to where we are today that one of the most closed platforms ever (Facebook) is on the verge of rolling out support for an open protocol.

Eugen Rochko also blogged about this as an important milestone:

The fact that large platforms are adopting ActivityPub is not only validation of the movement towards decentralized social media, but a path forward for people locked into these platforms to switch to better providers. Which in turn, puts pressure on such platforms to provide better, less exploitative services. This is a clear victory for our cause, hopefully one of many to come.

What’s next? Imagine if later this year or early next year, Tumblr is able to follow through on their goal to support ActivityPub. Having such large platforms be even halfway interoperability was only a dream a year ago.

View Details

Posted this week’s episode of Core Intuition. Random topics like the potential Elon vs. Mark fight and then a first-look at macOS Sonoma’s support for saving web apps.

View Details

Blaine Cook on Threads bootstrapping from Instagram. I’ve seen a couple variations of this from other folks too:

Threads is blowing up because Facebook is using their monopoly on the social graph. Legislation to guarantee easy, fast access to your own contact lists for use in non-billionaire-owned media would help level the playing field, because Zuck & co sure aren’t going to give the connections they stole back to us otherwise.

Ignoring fairness, it would’ve been more interesting if Threads had started from scratch, even just as a comparison with e.g. Mastodon stats.

View Details

Nice instructions from @Mtt on how to use Micro.blog to verify your Bluesky or Nostr domain. Hopefully we can make this a plug-in or setting later.

View Details

I’ve been saying for a while that the fediverse will likely evolve to having maybe 10 medium-sized platforms, not 1000+ small servers. It won’t be a failure if Threads is one of those. It’s still much better than a single platform with a billion users.

View Details

Manually cross-posting to Threads to play with it and learn. As soon as it federates I’ll stop posting and people can just follow my Micro.blog-based blog directly.

View Details

Really enjoyed the new Indiana Jones. Easily the third favorite after Raiders and Last Crusade. 🍿

View Details

Meta’s Threads will obviously have ads later. Until now it hasn’t been clear what business model Bluesky is going for and whether it aligns with most users’ interests. Great to see their first paid service is domain name registration.

View Details

Setting up Threads. No surprise that getting started based on Instagram identities is super easy, even though I stopped posting to Instagram years ago. Smart move by Meta. (Doesn’t mean I like Facebook. Just exploring.)

View Details

I-10 over the Sabine River.

View Details

This is not what you’d expect to hear from a Meta executive, but it’s exactly right:

…you may one day end up leaving Threads, or, hopefully not, end up de-platformed. If that ever happens, you should be able to take your audience with you to another server. Being open can enable that.

View Details

Trains and clouds, in Louisiana.

View Details

Houston, twelve floors up.

View Details

Finished reading: The Frugal Wizard’s Handbook for Surviving Medieval England by Brandon Sanderson. Another totally different book from his usual. Fun. 📚

View Details

On pretty much a daily basis I’m torn on whether to enforce real tabs everywhere even in shared code or give up and use spaces. Tabs as spaces are so much worse, it’s still surprising that most of the JavaScript and Ruby world has settled on them. Trying to fight it creates new problems.

View Details

Just noticed this cool Glitch project from @AngeloStavrow to test styling Micro.blog’s Sidebar.js feed. Pretty amazing what Glitch can do.

View Details

Very frustrated with our Micro.blog emails being flagged as spam too often lately, so today we added the option to get a text message when signing in. This is a little experimental and will likely evolve. Should be fast and reliable if you want to add your phone number to your account.

View Details

One of those weeks where I’m a bit in over my head with bug fixes and email. Making progress.

View Details

Realizing that Brandon Sanderson’s secret project #3 is coming out in just a few days. And it’s another book in the Cosmere! Want to try to finish #2 this week even though they’re not related. 📚

View Details

Always feels good to release Mac software. No need to get permission from Apple. No delays when the build is ready to when it gets in people’s hands. Today we updated Micro.blog for the first time in a little while. Nothing major, just a little better.

View Details

Just in case we needed another reason to re-watch Across the Spider-Verse:

“I was wondering when people might start noticing…” Andrew Leviton said in response to a fan who noticed two different versions of a scene.

🤯

View Details

Spilled beer on my laptop yesterday. Seemed fine, but this morning the trackpad isn’t very clicky. It’s an older Intel-based MacBook Pro… Really did not want to upgrade yet. 🍺

View Details

Meta is working on a Twitter-like platform called Threads, codenamed Project 92 or P92, rumored to support ActivityPub soon after launch. Some Mastodon instances are committing to proactively block it. I’m here to take the opposite view.

Meta adopting ActivityPub has the potential to fast-forward the progress of the social web by years. Ever since I grew disillusioned with Twitter a decade ago and started pushing for indie microblogs, then writing a book about social networks and founding Micro.blog, I could only dream of a moment where a massive tech company embraced such a fundamental open API.

I get the concerns. I’ve never trusted Facebook either. I don’t post to Facebook and in Micro.blog we had to disable cross-posting to Facebook after they burned us with API changes. But this is an opportunity with Threads that I’m going to celebrate because it could have a significant, mostly-positive impact on growing the fediverse.

Johannes Ernst raised an important question: will the fediverse grow faster organically, cut off from Threads, or faster with the chance to bring Meta users over to the larger fediverse? And I’d zoom out from that to the big picture: do we really want to be a community that discourages for-profit companies from adopting open APIs?

To succeed with mainstream users, the fediverse should encompass many types of platforms and business models. Not just open source. Not just volunteer-led instances. Micro.blog charges $5/month for blog hosting so we can keep doing this and growing for the next 20 years.

Let’s talk about data privacy. My blog is public already and Meta is free to crawl it and its connections to other blogs. Admittedly, there are problems… For example, Mastodon direct messages were a concern in SciComm.xyz’s decision to block Meta:

Federation would allow Meta to cache non-public data too, such as followers-only and direct messages, which pass through its servers as part of the normal workings of ActivityPub.

This is valid. It’s effectively a design flaw that direct messages can leak out in plain-text to Meta’s servers. The good news is that people are already thinking about how to handle encrypted direct messaging in future revisions of ActivityPub. There have been a couple recent discussions on the SWICG mailing list about this.

Unfortunately, it’s likely that Threads will implement only the parts of ActivityPub that serve Meta’s business, ignoring features such as account migration that would allow users to move their followers from Threads to Mastodon or Micro.blog. Before we judge Meta too harshly, I don’t think most non-Mastodon servers support account migration either, and even Mastodon itself doesn’t support post migration.

In other words, maybe we get our own house in order, so that if larger platforms come on board there are clear best practices for doing things the right way. There is still a lot to do. As impressive as the ActivityPub adoption has been over the last year especially — and kudos to Eugen Rochko and the Mastodon community for ramping up so well to welcome Twitter refugees — it’s still early days compared to where we can go.

I don’t worry about Meta embracing ActivityPub and then extinguishing the fediverse as we know it. I worry that all this pushback will force Meta to reconsider whether they should even bother. Maybe they give up and Threads is yet another silo, cut off from the rest of the web. Then the current fediverse will have to compete directly for users instead of collaborating on a more open vision where the walls of closed gardens are finally starting to break down.

Tim Chambers blogged about how we can react to Threads. Perhaps most important is to prioritize our existing communities:

And remember we only have to protect the 1.3 million monthly active users inside the Fediverse. And we do that now every day. Spammers and toxic accounts inside the P92 network we or our social graph don’t follow is their problem. Our problem is protecting our people.

For Micro.blog, we will not proactively block Meta. We will, however, build tools for users to choose how they want accounts to federate with Threads.

Our users are passionate about indie blogs. They often support small companies and distrust big corporate-y platforms. There could be an account setting to effectively opt out of Threads, just as someone can disable ActivityPub in Micro.blog and only participate in conversations with other Micro.blog users.

I can’t predict how Threads and ActivityPub will play out. Meanwhile, Twitter continues to melt down. Back in 2018, I chose to implement ActivityPub instead of trying to compete with Mastodon. And just this year, we added Bluesky and Nostr cross-posting to Micro.blog, to make it easy to get microblog posts out to these emerging networks.

Let’s build stronger connections across platforms. I don’t want a monoculture where a single platform dominates, whether it’s open or closed. The web will be better if we have a variety of platforms that can interoperate, and users have the power to choose where to host their content, what their web identity is, and who can connect to their posts. The default should be open.

View Details

Lady Bird Lake under the I-35 bridge.

View Details

New episode of Core Intuition: AppKit Is Dying. We talk about visionOS, what platforms to dedicate our time too, and Meta’s rumored use of ActivityPub.

View Details

New update to Micro.blog for iOS is out with a bunch of fixes.

View Details

Did not finish: The Reading List by Sara Nisha Adams. I usually like books about books, but could not get into this one. I think I was too impatient for the plot to go somewhere. 📚

View Details

Can’t get enough of these James Cameron + Titan sub interviews. He seems to really know his stuff. Also not a bad track record as a director… Every movie starting with Terminator is good. Not just a few. All of them. 🍿

View Details

News media loves the suspense of an unfolding story. Can’t totally blame them for the Titanic sub coverage. Tragic now that the sub likely imploded days ago while we continued to sit around and watch the coverage. 😔 Rest in peace to those trying to do something amazing, hopefully knowing the risks.

View Details

Excited for the NBA Draft tonight. Even though the #1 pick is a lock, there’s a tiny part of me that is worried the Spurs will do something insane. 🏀

View Details

Thunder rolling through again today. Dogs are not happy. ⛈️

View Details

Pushed a new TestFlight build with some additional fixes. Likely will wrap this up as version 3.0.4 before we move on to 3.1 features.

View Details

I said on @coreint last week that visionOS might be a “zig when others zag” moment for me. As nearly everyone downloads the new SDK, I’m sticking to that motto. Going to ignore as much of Vision Pro as I can and work on stuff I can ship now to users who have $5 but not $3500.

View Details

Love these eWorld photos posted by Stephen Hackett at 512 Pixels. Brings back a lot of memories. 1990s Apple software had so much personality, and this was the height of it.

View Details

I don’t have much to add to the Meta vs. the fediverse debate beyond what John Gruber has written about. Big platforms using open APIs is a good thing! Much better than closed silos and locked-down APIs. I don’t trust Facebook either, but preemptively blocking them is shooting ourselves in the foot.

View Details

Good morning, Libby fans. Experimental feature now available in Micro.blog: go to this special path in Micro.blog in your web browser: /account/libraries. Enjoy! 📚

View Details

If you’re frustrated and typing in Terminal, the harder you pound on the keyboard, the more effective whatever you’re working on is. It’s science.

View Details

Spent some time last night figuring out how the undocumented Libby API works. Fun. Hope they eventually make an official supported API, but in the meantime we can do some things on an experimental basis. Seeing my library holds within Micro.blog was the last missing piece I wanted. (Stay tuned.)

View Details

Kayaking.

View Details

Q*bert at Cidercade. 🕹️

View Details

Across the Spider-Verse was amazing. Love the art in these movies so much. I wish all comics adaptations were like this. 🍿

View Details

Hanging out at Civil Goat Coffee with my daughter. Working a bit while she reads. ☕️

View Details

It has been too long since we’ve updated the emoji in Micro.blog. Via @news, added a few new ones that were in the queue, hopefully can do more this year:

Added two new emoji to Discover: 🧘 for meditation and 🎭 for theater. Also added 🏳️‍⚧️ to LGBTQ+ in addition to 🏳️‍🌈.

View Details

There’s a new Core Intuition out. We talk more about last week’s WWDC, debate whether Apple is using “AI”, revisit Siri, and skim over some of the other session topics.

View Details

Another Brandon Sanderson book has arrived! Secret project #2: Frugal Wizard’s Handbook. Love the illustrations in the margins. I started this on e-book last month but will finish with the print version.

View Details

Rolled out changes to the default uploaded filenames in Micro.blog. This is the beginning of the end to the random filenames, although it still falls back on those for many situations.

View Details

High of 101° today in Austin. It’s gonna be one of those summers, huh? Gotta get away somewhere.

View Details

Despite the chaos at Twitter this year, I’m a little surprised that after paying Twitter for API access for the last couple months my app was still suspended. Just can’t trust big ad-based platforms.

View Details

Watched the BlackBerry movie and enjoyed it. Relevant for today too: it’s not a good idea to bet against Apple. Vision Pro is still quite different than every previous Apple product, though… Trying to perfect a niche device category vs. improving a mainstream device that people already want.

View Details

Federico Viticci got me with the Don Draper quote for his Vision Pro story. One of my favorite scenes in television, and a quote I used in my book too. Federico goes on:

I’m convinced that Vision Pro and the visionOS platform are a watershed moment in the arc of personal computing. After trying it, I came away reflecting that we’ll eventually think of software before spatial computing, and after it.

I still think it will be decades before this technology is usable and affordable in more AR-style glasses. But it is exciting to read everyone’s hands-on experience of the future.

View Details

I posted a video to YouTube to demo Micro.blog’s new reading goals interface on the web. By default it’s private just for you, whether you want to read 2 books or 20. Or none! No pressure.

View Details

Great game. Congrats to the Nuggets. And an impressive postseason for this underestimated Heat team too. Now just 10 days until the NBA Draft. 🏀

View Details

Since ditching cable years ago, I feel like we’ve tried everything… Sling, PlayStation TV, Hulu + Live TV, even back to cable streaming with Spectrum TV. New favorite: YouTube TV. Only downside is no regional sports networks. Need a better over-the-air antenna for Spurs games.

View Details

Only just occurred to me that Apple Vision would’ve been a great product to introduce at the height of the pandemic. Now, we want to reconnect in person, not hide away behind screens.

View Details

I recorded a very short (12 seconds!) video on YouTube showing the new toggle in Micro.blog to quickly show just photo uploads or video or audio. It appears for Micro.blog Premium subscribers because that’s where we support video hosting and podcasting.

View Details

New web analytics tool from @vincent looks like a nice fit for blogs and small web sites: tinylytics.

View Details

I made a little video of my time in Colorado last week, from short video clips and live photos. This is also a test of potentially longer videos on Micro.blog… I cheated to upload this because the file is bigger than the current limit.

View Details

Went to a wedding yesterday. No masks, hopefully no COVID. 🤞 My mind kept wandering back to A Psalm for the Wild-Built… Do we need a purpose, or is it enough to be happy and appreciate how remarkable the world and people are? Feeling lucky.

View Details

To create this transcript, I split the episode into 15-minute chunks with Fission, because Micro.blog’s OpenAI-based transcription is limited to 15 minutes. Then uploaded the MP3s to Micro.blog and copy/pasted the resulting transcripts into BBEdit. Fixed mistakes and edited to be more readable.

View Details

I listened to the latest Core Intuition again to see if my initial take on Apple Vision Pro was way off or unfair. I think it holds up. Here’s a transcript of the conversation with Daniel, lightly edited.


Daniel: Hello, this is Daniel Jalkut.

Manton: And this is Manton Reece.

Daniel: And this is Core Intuition. “Something wrong about this product.” This week’s show is sponsored by RevenueCat.

Daniel: All right, Manton, as so many people are this week, you are traveling, of course, because it’s the most important week of the year for Apple ecosystem developers. So you are in…

Manton: Colorado. Haha, not California. I think I mentioned this a couple weeks ago that I had thought about going to Cupertino and planned a road trip around California again. And it kind of changed to Colorado.

Manton: So totally missed out on all the in-person stuff at WWDC. I did watch the keynote and I did watch some sessions. It was a big WWDC, really big. I’m still wrapping my head around everything and what it means.

Daniel: Yes, me too. A lot of podcasts, a lot of people commentating on WWDC start from the beginning of the keynote and progress through. I really enjoyed the ATP recap along those lines. I don’t think we have time for that.

Manton: No way.

Daniel: I think we jump right to the headset. Because the headset is… That’s the part that I’m still having trouble wrapping my head around. That’s the only thing, quite frankly, that I’m having trouble wrapping my head around. Everything else more or less about WWDC and the announcements made there makes perfect sense.

Manton: Yep. Lots of good announcements, lots of good OS updates.

Manton: Before we get into the headset, I think a lot of people have been lost in the reality distortion and have forgotten to follow up on the fact — I don’t know if ATP mentioned this because I haven’t listened yet, I haven’t listened to a couple of podcasts — but have forgotten to follow up on: did Apple do anything with AI?

Manton: I think the answer is no. Although they did mention transformer-based language models and machine learning, but they skirted around it. I don’t think they did anything significant with AI.

Daniel: Yeah.

Manton: And I don’t think they did anything significant with Siri. They dropped the “hey” from “hey Siri”, but I don’t think that counts. So I just want to point that out because we are so distracted with the headset, rightly so. I don’t want to give Apple a complete pass on totally missing the big story of this year.

Daniel: Agreed. And I was frankly a little surprised by that. I thought that they would… And as you know, I wrote an article about it a couple of weeks ago. I knew that my specific take on it, that they would announce something called Apple Intelligence and that would be their way of kind of owning the initials AI without having to join the pack, so to speak. I didn’t think that was necessarily going to happen. I would have been thrilled if it did.

Daniel: But I thought the minimum was going to be some, especially at a developers conference, something like, we’ve made a arrangement with Microsoft so you can run Copilot at native performance in Xcode. Something like that.

Daniel: It didn’t have to be Apple has reinvented AI. It just had to be: we we can see the elephant in this room.

Manton: No. They had a lot of good updates to Xcode. I mean, I watched sessions. I was really lucky, I was able to hang out with some of the other Colorado iOS developers up in Boulder yesterday. Watched some sessions with those guys.

Manton: And yeah, good updates to Xcode. No problems. But yeah, totally ignored anything with code generation as far as I can tell.

Daniel: Yeah. And real quickly, I’ll just say, I also said something about this. I said, oh, well, you know, sounds like they didn’t say anything about AI.

Daniel: And a few people chimed in, of course, with: well, of course they did. Like you said, the whatever mechanism transformer, blah, blah, blah.

Daniel: That’s not what we mean right now when we say AI. Right now, when anybody in this world we live in, who is not like an AI researcher says AI, they mean large language models and the way that they provide chat or completion based services to users.

Manton: Yeah. Assistant-like stuff and the way Apple is using, I think the transformer language model they were talking about, of course that is part of like chat GPT and whatnot. But I think they were talking about better auto-complete and behind the scenes, seamless stuff. Great. Fantastic.

Manton: But that is just not the same thing as assistants that help you and that feel intelligent, even if they aren’t.

Daniel: Right.

Manton: All right, headset. Vision Pro.

Manton: I was simultaneously blown away by this, and also I still really question the strategy. But from everything I can tell — I was listening to Dithering and Ben and John were just like, this exceeds our expectations of how technically good it is.

Manton: And so I’m trying to take a step back and kind of separate, did they nail this versus should they have bothered to build this?

Daniel: I’ve been joking for a while now, and I mean, the joke has totally come to a head with this idea that the reality distortion field is actually the product now.

Daniel: It’s hard to know, and I agreed with you, I was watching the keynote and everything is so stylized because obviously they can’t show you, or maybe they could, they definitely could show you what it looked like just from the point of view of the wearer. I’m sure there’s like a screen capture recording released in their debug builds right now.

Daniel: But obviously the way they presented it was kind of like giving you an idea by showing you video of a person who’s allegedly looking at the stuff.

Daniel: I actually had the thought during the keynote, wouldn’t it be cool if the way they made those videos was one person wearing a headset looking at a room that happened to have another person wearing the headset in it?

Manton: Welcome to the future, everybody’s wearing headsets, even when they’re in the same room with real people.

Daniel: Well, and that gets at the real… To be honest, when I say my version of wrapping my head around things has a lot to do with the social implications of what such a product means.

Daniel: I had the same gut reaction with Google Glass 10 years ago. You know, products that draw the user inward do not make me feel comfortable about them as social interactive products. You know what I mean?

Manton: Mmm hmm.

Daniel: And I mean, I guess to be honest, I wear my AirPods all the time everywhere. And I know there are people out there still who believe it is rude to be in public and to have headphones on, which I don’t agree with that assessment.

Daniel: And so that might be like kind of an instructive example of people have different takes. But my take is if you’re going to block your eyes out to the world, do not talk to me. Do not talk to me.

Manton: Haha. Yeah.

Daniel: And even with my AirPods, I have social standards, I take my AirPods out when I’m going to like a retail counter.

Manton: For sure. Yeah.

Daniel: And I find it very rude if people don’t do that. I forgive it if they at least turn off the volume and the person doesn’t know that, you know, I kind of forgive it. But the case of something literally covering your face, I don’t want anybody interacting with me like that.

Manton: No…

Daniel: And I definitely do not want anybody interacting with their kids during like pivotal moments of their childhood.

Manton: Yeah. And people will push back maybe on that and say like, well, at the birthday party, we all have our phones out anyway, taking video. It’s just not the same thing. It is not the same thing.

Manton: And I have missed things because I’m looking at my stupid screen. It’s just not the same as covering your face.

Daniel: I think it’s so instinctive to us that covering your face is a way of, I mean, like we do it as humans. We do it when we’re scared of something or we don’t want to engage with something.

Daniel: And I think there’s a lot of instinctive, like animal response to this idea that somebody’s face is covered. And the eyes showing through is very impressive, but very not enough for me.

Manton: Yeah. It was really impressive in the keynote, but I do wonder in real life if it’s just creepy.

Manton: And I wanna acknowledge that we’re judging a product that we haven’t seen. Like some people have actually tried it, friends of ours have tried it, and their opinion goes a long way. We’re just reacting based on what we’ve seen in the keynote and heard people talk and blog about.

Manton: But even putting that aside, I kind of went into the keynote thinking, if it’s technically amazing, would I still want to use it? And would I still develop for it?

Manton: And it turns out like it’s even better than I thought. Even my wildest like expectations of Apple just completely getting this right for what they’re trying to do, it’s even better than that. Super impressive.

Manton: And yet there’s something wrong about this product. And we’ve talked about like AR versus VR, mixed reality, etc. And I even more strongly feel now that I’ve seen it that the number of years I have in my head is 20 years.

Manton: It’s gonna take 20 years for this product to be more seamless with actual glasses-looking things that you can actually see through and people can see your real eyes. More like real AR, at least 20 years, if it ever happens.

Manton: And so it’s certainly a bet on the future, but it’s so far away. It’s so far from being a product that I could use in public, that I could use anywhere that there are people.

Daniel: Yeah.

Manton: I think that is an issue for me.

Manton: I was thinking about this last night, so I’m in Colorado. I’m going to campsites with this van that I rented and just seeing nature and whatnot. And last night I made dinner. I sat at my like picnic table at my campsite and I pulled out my laptop, popped open a can of wine and I caught up on some work.

Daniel: Haha.

Manton: I’m chilling out, kind of in nature, but there are other people around. And I thought, I’m working on my Mac. Would I put a headset on here? No, I wouldn’t. It would be so weird.

Daniel: Even in a fairly remote like.

Manton: Yeah. Because people might walk by, drive by, it would just be weird.

Daniel: You would be so self-conscious.

Manton: Yeah, I wouldn’t be able to concentrate. It wouldn’t matter how much better the virtual screen is than my 16-inch, old-fashioned screen.

Manton: And I think there are areas like that. I work in coffee shops every day. I was working at a coffee shop here outside Denver this morning for a couple hours. I just can’t imagine this product ever being used in that environment.

Manton: Like I said, in 20 years, maybe it’s more like AR and more like real glasses, but this device is so powerful. It’s more powerful than my own Mac. To get it to the point that it can be seamless around people, man, it just seems so far off. I don’t know.

Daniel: I think I’m not quite as pessimistic about the timeline that this technology stands a chance.

Daniel: It’s funny because if you compare it to some Apple products, the chances are not great that it advances very quickly. For instance, the iPad was released 13 years ago. So if it advances at the rate, and just to be clear, the iPad today is an amazing device, so much more advanced than the original, but on the whole, it hasn’t changed that much.

Daniel: The usage is the same, basically. And I think a lot of people expected a lot more development on that front.

Daniel: On the other hand, something like the iPod is about 20 years old and is now essentially something that you wear in your ear. And that is the kind, so just to say, yeah, 20 years, maybe you’re right in that respect. But I could see it happening a lot faster because the unique technological angle here is going to fund this thing.

Daniel: I think even with a very modest amount of buyers, even as a loss product, even if Apple were losing money, I think staying ahead of the pack on this type of product is going to pay dividends for Apple. And the saving grace for me is that I do think there is a point at which it’s kind of the difference between the AirPods being a helmet you wear over your head or the little device you pop in your ear.

Daniel: I still feel a little self-conscious sometimes about my AirPods, but if it were a helmet that I had to wear, you know? Like, this is the helmet, and we’re going to see, you know, assuming everything goes the way I expect, we’re going to see, I think, a lot sooner than 20 years, the equivalent of the AirPod of this.

Manton: Yeah, I dunno. Okay, but let’s think about that, though. The technological leap from wired headphones to the AirPods, I mean, it is significant. There’s, you know, cool chips in the AirPods that allow it to do what it does, but it’s not the kind of leap we’re talking about from a $3500 headset that has 12 cameras to something that looks more like glasses that you could wear in public, even if they’re awkward, bulky glasses.

Manton: I’m really having trouble with that leap. I don’t see how you can do it. And think about how far the iPhone has come from gen one, couldn’t take video, to today. The iPhone’s great, it has come a long way, but even that is not the leap that we’re talking about, or I’m talking about.

Manton: That is a very natural year-by-year evolution, and that’s their core product, where they sell hundreds of millions of these things. They’re not going to sell very many of these. They’re not going to update it every year. I’d be surprised if they update the headset more often than every three years. So we’re talking five or six generations. I don’t know.

Manton: Man, I hate to be so negative. I just don’t think this is a product that Apple needed to build, or that I personally am gonna be into. I don’t know. It’s cool, though. It’s really cool.

Daniel: It is, well, and like you, me hearing the dithering, John Gruber and Ben Thompson describing it as not being able to distinguish the edge of the quote-unquote screen. That kind of was a wake-up call for me.

Daniel: There is no product, I think, I think even all the other VR headsets, I don’t think there is a product in the world. The combination of like, whatever Apple did to make the thing sit so close to your eye, and the fact that it’s such a high resolution, there’s no product in the world where you can kind of fool your mind into thinking you’re looking at reality.

Daniel: And that’s why the whole reality kit, whatever, sort of all makes sense now.

Manton: And really, every time they say, “only Apple could combine blah, blah, blah”, I always kind of roll my eyes a little bit. It’s totally accurate in this case. There is no company that could have built this.

Daniel: Nobody else has the money to do the research and the social influence to make it, you know, even vaguely. Like some random little like company headed by a billionaire could have come up with something like this, and it wouldn’t have gotten traction because it wouldn’t have captured the public’s imagination.

Manton: Right, and only Apple, they have all the right skills to pull this off. And they don’t have a great track record of hobby products improving. I would say none of their hobby products have really improved very quickly, which makes sense. Their business is built around the iPhone and the Mac. Apple TV is more or less the same as it was, you know, a dozen years ago.

Manton: And that’s fine, but they obviously care a lot about this product and they could change that reputation. They could have this fringe side product that they pump millions and millions, billions of dollars into, and they’re patient.

Manton: Again, they wait 20 years and then you have the Vision Pro and you also have the Vision Air or the Vision Lite or whatever you want to call it, a more mainstream device that is not as bulky, not as powerful, something that more like normal people maybe would be into. That could totally work. It feels really far off. I’m gonna be old or dead by the time this happens.

Daniel: I think there’s two things that are remarkable about this product. One that struck me right away was how much of an amalgamation of other Apple technologies it is in one unit. And you think about all the things they’ve been working on.

Daniel: The little digital crowd is just like the Apple Watch. The cameras actually remind me of whatever research they may have been doing into self-driving cars. You have super high resolution screens. The audio playback in the device is also using that kind of room reading, LIDAR type stuff.

Daniel: That’s one aspect of how “only Apple” could do this because they had all these other products in the works that sort of contributed to this device. But I also think this device is, regardless of its commercial success, it is a technological test bed that can easily spin off other devices that benefit from the advances they make with this.

Manton: Yep. And I can definitely buy the argument that someone had to build this. That’s not true, but there’s value in building this purely for the research and technology and just to see what’s possible. Because if no company pushes the edge and tries new things, we don’t get anywhere. There is a role for pushing, just seeing what we can do, whether it’s a compelling product or not.

Manton: So yeah, I totally respect that. And I think the people that worked on this should be very proud of what they’ve built. It really does look incredible. It’s just a question of, strategically, is this something that Apple should do? Is it good for humanity? And then secondarily, for developers, is this something that should be part of our strategy or not?

Daniel: Right.

Manton: If this is the — again, 20 years in the future — this is the replacement for the Mac, is this something that we should be fiddling with and paying attention to and watching all the WWDC sessions and playing with the simulator. I’m curious what you feel as a mostly Mac developer, how much are you going to pay attention to this?

Daniel: Yeah. I mean, it’s so much to take in because as you saw during the keynote, there’s like elements of how it, how it stands to just like integrate with your Mac and show you your Mac desktop apps on like virtual monitors within the device.

Daniel: And then there’s the other angle of native apps for this thing, maybe subsuming the uses of traditional Mac software, iOS software, all the above. So I’m going to keep an eye on it. I do, my instinct is to mostly ignore everything, especially since there’s no SDK yet. And I find it kind of awkward to even consider jumping into WWDC sessions about this when there’s no hands-on opportunity to do anything, even with a simulator. So I’m going to keep a cautious eye on it.

Daniel: I think there is something to what, I mean, you know me, like both of us have been pretty dismissive of AR VR the past several years. And I think the way we’re talking about this still reflects our skepticism about it, but it brings it into the real world in a way that I don’t think is going away.

Daniel: Having a point your iPhone at a table AR experience never felt compelling beyond the slightest novelty. But let’s just assume that this thing didn’t cost $3,500 and it costs $350, which might be the case in five years, 10 years.

Manton: 20. I’m sticking to 20 years.

Daniel: Haha. Well, the situation will be different when there’s a massive market of people who have these things.

Daniel: And I just want to say one more like slightly optimistic thing. I think my reticence and spooked-outness about this device is somewhat to blame on Apple’s presentation of it during the keynote. The way that they tried to frame it as something in particular that you would wear, like I mentioned, like when you’re engaged with your kids during special moments, that’s the opposite of what I think this type of device should be used for.

Daniel: And if I focus on the things that it’s good at… I won’t fault any parent for wearing a welding helmet while they’re building, you know, a rocking horse for their kid. That’s a special moment in a family’s history as well.

Daniel: But let’s not try to conflate the wearing the welding helmet with spending special time with your kids. Likewise, I think there are a lot of parallels actually with this to a device like a television, because televisions are famously attention absorbing. You can’t really talk to somebody who’s watching a television. And frankly, in my opinion, having a television on in any kind of social environment, unless you’re like watching a sports game with somebody is not conducive to sports or to social interactions.

Daniel: But I think if I try to look at this more generously, as like, it’s another kind of TV, or it’s another kind of welding helmet. You use it on your own time for your own purposes to either entertain yourself or achieve specific productivity goals. Then a lot of my negativity about it goes away. It’s just the idea of it being integrated as an everyday piece.

Daniel: It’s the same idea as if I envisioned everybody walking around with a television hanging off their forehead. No, we, nobody really wants to live in that world. So don’t highlight that as the use case for this device.

Manton: Yeah, I agree with you. I think that was a bit of a miss. Overall, I think the keynote will go down as the best in years, but I feel like some of those parts of the, you know, advertisement video that we watched, basically, we’ll remember them a little bit like the watch Apple Watch introduction. There was a lot of sort of gimmicky features. You know, texting your friend in class or sending pictures.

Daniel: Sending your heartbeat to somebody.

Manton: Exactly. I think some of these things will go down in that light. I love the Apple watch. I’m wearing mine now, I wear it all the time. But I think they were a little bit confused about their message when they introduced the watch and they sorted it out.

Manton: And I think this is going to be the same way. I think we’ll look back on some of those and be like, no, we’re not putting this headset on for a birthday party. That’s not going to be right.

Manton: And really, that’s why I kind of think about just strategically. I mean, we already have this problem that we didn’t have 15 years ago, which is that the family is sitting around TV, watching a movie or something and all the kids are on TikTok. This is already an issue.

Daniel: Yeah.

Manton: I’m not interested in it getting worse by actually having people close their whole face off from the world. So I think there are really legitimate uses for this, but in my life, they are very small.

Daniel: Yeah.

Manton: I like to work out of the house, I like to go places. I mean, I’m kind of an introvert. I don’t meet a lot of people and hang out with people in person. But when I do, when I’m around other people, it feels good to be around humans. We need that.

Manton: And just strategically, I guess I’m really pessimistic about it. I think maybe it’s okay for us to have those two thoughts in our head of just technically and pushing the envelope, this is a huge breakthrough. On the other hand, as a human and as a developer, I’m fine. Zig when they zag. If everybody else is obsessed with this and WWDC over the summer, I’m fine focusing on other things and just continuing working on Micro.blog and working on these other aspects of social networking.

Daniel: Yeah, I agree. In a sense, I am kind of relieved that I don’t feel like I’m going to have my work cut out for me in terms of new Apple technology over the summer. None of this is like, oh, drop everything.

Daniel: The one product that I think might have a little bit of a compelling case is like Black Ink with the idea of maybe like solving a puzzle on a virtual sheet or something. Even that’s a little bit of a stretch, but you know, maybe against a flat desk or something. But I don’t know. Obviously I have other Black Inks to ship before I get to that.

Manton: Yeah. I want to ask you, because I don’t know if you saw Apple News+, I think has some crossword thing.

Daniel: Oh yeah. Yeah, I did see that.

Manton: We’ll probably have a whole show next week about everything non-headset related. There’s really a lot at WWDC and we’ll have to tackle that next week. Because the headset is just the obsession right now.

Daniel: Yep, agreed. All right. Well, I hope you continue to have a great trip. I’m glad that this time around we’re recording, you’re in your van again. If folks remember the last time Manton recorded in his van, it was like a rainstorm.

Manton: Yeah. And unfortunately… So I bought a new mic. That’s a whole ‘nother story about going to three different Best Buys, trying to find something that I could take with me. I did a test recording and there’s a lot of background noise still. So apologies, everybody. Hopefully it turns out okay.

Manton: But thanks everyone for listening this week. Enjoy WWDC, and we’ll see you in the metaverse. I dunno.

Daniel: See you in my glasses.

View Details

On the flight back to Austin, finished reading A Psalm for the Wild-Built by Becky Chambers. Wonderful. Queued up the second book for later. 📚

View Details

John Gruber gets to the core of the Reddit API issue with a question for the CEO:

I have one simple question for him: What do you think Reddit co-founder Aaron Swartz would say about this if he were still alive?

That’s exactly the right perspective. Because it’s not just about business models, competition… It should be about doing what’s right.

View Details

Today I sent the following email to everyone who had Twitter cross-posting configured on their Micro.blog account. We’ve got about one month left on our commitment to support Twitter cross-posting. We can’t justify paying Twitter for API access beyond that. Tweet while you can, the feature shuts down July 15th.


Hi @your-username,

You’re receiving this email because you currently have cross-posting to Twitter configured in your Micro.blog account. Twitter has been changing their API and we want to let you know how this affects Micro.blog.

Micro.blog has committed to support Twitter cross-posting until July 15th. After that date, cross-posting will be disabled. We hope this gives you plenty of time to wind down how you’re using Twitter.

Note that you may need to disable and then re-enable Twitter cross-posting if your blog posts are not currently being posted correctly after recent Twitter API changes. In Micro.blog on the web, click on Account → Edit Sources & Cross-posting.

If you’re curious why we had to make this decision, please see Manton’s blog post about it.

If you’re looking for other options for automatic posting to Twitter, you’ll find that most services have already stopped working soon because of Twitter API changes. We currently recommend looking into Buffer, which may be able to sustainably offer this feature in a way that smaller companies like Micro.blog cannot.

However, there’s good Twitter news too! We have launched a new import feature for importing an archive of all your tweets to Micro.blog. This is a great way to browse and search old posts, keeping a copy of tweets outside of Twitter.

For more details about the tweets import, check out this YouTube video.

Thanks for your support!

P.S. We also support cross-posting to Mastodon, Medium, Tumblr, Bluesky, Flickr, LinkedIn, and Nostr.

View Details

Talking with @joec earlier this week about finding new coffee shops in new cities… Here’s the list for the week in Colorado: Inkwell & Brew, Novo Coffee, Aviano Coffee, Train Cars Coffee (photo), Atlas Coffees (photo), Corvus Coffee Roasters, Sonder Coffee & Tea, and Jubilee Roasting Co.

View Details

Good morning, Denver. Had a quick breakfast with this view before I wrap up the trip and return the van.

View Details

Winding down my week in Colorado. It’s beautiful here. Just about the right amount of time, juggling work and travel. 🗺️

View Details

Sitting in my rental campervan at Cherry Creek State Park, debugging on the laptop as the rain hits. Sounds like a Texas thunderstorm. Hopefully not hail because I waived all the rental insurance. ⛈️

View Details

Finished reading: Astrophysics for People in a Hurry by Neil deGrasse Tyson. Remembered only a little of this from college astronomy. The audiobook is about 4 hours, great for a short drive today. 📚

View Details

Georgetown Loop Railroad. 🚂

View Details

What a wild end for Apollo. The era of client APIs for ad-supported platforms is over. Developers should invest their time in open platforms where the business model is aligned with users' and developers' interests: Micro.blog (paid blog hosting) or the fediverse (often donation-supported).

View Details

After recording @coreint today, I’m settling into the opinion that Apple Vision Pro is both brilliant and a terrible mistake. On the other hand, I’m sitting in my rental campervan in Colorado watching the NBA finals on my iPad Mini and wouldn’t mind that courtside VR action. 🏀

View Details

Just posted a new Core Intuition with our reaction to WWDC and Apple Vision Pro.

View Details

Finished reading: Recursion by Blake Crouch. This book blew my mind a little. 📚

View Details

After driving around in circles with detours because of road construction, finally settled in at Atlas Coffees. ☕️

View Details

Jason Snell writing at Six Colors after using the Vision Pro:

I am now a believer that what Apple has built is an incredible accomplishment. This is the real deal. The unanswered question is, to what end?

View Details

Wasn’t expecting rabbits. Seems to be a bunch around my campsite tonight at Chatfield State Park.

View Details

Stopped at Train Cars Coffee in Nederland on the drive to Boulder this morning. Built out of train cars. Love it. Pretty good breakfast too. 🚂

View Details

Panorama Point as the sun’s starting to go down, at Golden Gate Canyon State Park.

View Details

Early thoughts on Vision Pro: looks about as good as it can possibly be, for what Apple is trying to do. Not a product for me, and not a product that will “replace” any other device. Will be talking more about this on @coreint tomorrow.

View Details

This is nitpicky but I feel like Apple should’ve cut over to the headset stuff at the 1-hour mark. watchOS improvements are good but they don’t need this much keynote time today. Feels like the narrative has gone into the weeds a little. We are here for the headset news. 🙂

View Details

I don’t think Apple needs to obsessively avoid saying AI. “Machine learning”, “transformer-based language model”… It just sounds awkward, but I get why they do it.

View Details

Need a place to blog what you think about all the WWDC news this week? Don’t forget Micro.blog is a ridiculously low $1/month this summer. micro.blog/summer

View Details

Looking forward to WWDC, but my expectations are low for announcements that are relevant to my work right now. Doubtful there can be a version of Micro.blog for a headset. Most interested in little surprises that might pop up in new versions of iOS and macOS.

View Details

Nuggets vs. Heat. Finals, game 2. 🏀

Basketball court in Denver. Butler shooting over Nokic.

View Details

One of my favorite things about Colorado so far is the water. Looks and sounds like snow had melted somewhere upstream.

Rolling stream on rocks with trees around.

View Details

Finished reading: Tomorrow, and Tomorrow, and Tomorrow by Gabrielle Zevin. All the praise for this book is justified. A masterpiece. 📚

View Details

Raining off and on today, so I’ve spent more time driving and less time walking. Mickey is my traveling companion now for all road trips.

View Details

Forgot the Stanley Hotel was nearby, the inspiration for the hotel in The Shining. Stopped for a little while, walked around, had a beer in the restaurant. I’m sure there’s lots of history here.

View Details

Outside the Glacier Basin campground at Rocky Mountain National Park.

Mountains and clouds.

View Details

Cool to see people using the App.net posts archive. Here’s a post from @jsonbecker, a post from @otaviocc, and another post from @maique. I was starting to doubt preserving the archive and seeing these reminds me why it’s worth it.

View Details

Beautiful photo from aows. When I retire, I’m just going to blog photos of train tracks.

View Details

Thanks again to @vincent for fixing one of the servers yesterday while I was in Rocky Mountain National Park with no cell coverage. Not happy with the blips in downtime recently, going to reprioritize this. Enjoying the morning with good wi-fi and coffee at Inkwell & Brew in Estes Park. ☕️

View Details

Traveling today. Got to the airport early, plenty of time to catch up on a couple things. Submitted Micro.blog 3.0.3 to Apple to review. Hope everyone’s having a nice Friday!

View Details

Other things I learned about video games this week while we were temporarily without a Switch: the Wii with Skyward Sword still works, the N64 sort of works and then doesn’t, and the Game Boy Advance SP battery is starting to bulge, but replacements are just $10. 🕹️

View Details

We caved and bought another Nintendo Switch. The OLED Zelda edition. So nice. 🕹️

Switch controllers with Zelda-themed pattern and old Wii controller.

View Details

Ugh, this is a new pattern for me in Wordle. 712 X/6. 🙁

⬛🟩⬛⬛🟩
⬛🟩⬛⬛🟩
⬛🟩⬛⬛🟩
⬛🟩⬛⬛🟩
⬛🟩⬛⬛🟩
⬛🟩⬛⬛🟩

View Details

I’ve migrated the App.net posts archive to S3, to simplify hosting the archive. I’m not going to do any more work on this. No import feature for Micro.blog. The data files are there if anyone needs them.

Please only download your own posts, not everything. There are about 44 million posts in total. I’m happy to keep hosting this archive indefinitely as long as the costs are flat. I think it’s important to have an archive of as much of the web as possible. But at the end of the day, App.net was not my platform, just something I cared about, to help bridge the gap between the early days of Twitter and newer, more open platforms.

Don’t remember App.net? I wrote a chapter of my book about it.

View Details

I like this post from Dave Rupert on lessons from old Russian small nuclear generators:

I wonder if software has a kind of digital entropy, where even good software left untouched for a short timeframe rots and stops working.

View Details

Finished Ted Lasso. Overall really enjoyed it. This season almost lost its way a couple times, sometimes overthinking itself, but it wrapped up perfectly. 📺

View Details

I seem to have made a serious AWS pricing miscalculation, transferring a bunch of small files from EC2 to S3. Data transfer is free, but PUT requests aren’t. With millions of requests, adds up to real money. This is why I usually prefer Linode’s flat pricing.

View Details

Similar to my announcement last month about supporting Bluesky, we’re adding Nostr cross-posting to Micro.blog starting today. You can enable it under Account → Edit Sources & Cross-posting:

Screenshot with Nostr icon and add link.

Nostr might have the most uncertain future among recent up-and-coming social web protocols. I’m fascinated with the architecture because it’s so different than ActivityPub, RSS, and IndieWeb protocols. I think it’s interesting and worth tinkering with. I’ve been personally using it through Micro.blog for about a week, so why not let other folks play with it too?

Nostr is quite technical. If you don’t want to be on the edge, feel free to wait. It’s so early that using Nostr feels like testing a prototype, letting your blog posts loose into the wild west of the internet to float between Nostr “relay” servers.

To get started, you will need a Nostr account. Unlike every other social network, in Nostr you don’t actually register on a specific server. Your account is just a private key, which you will paste into Micro.blog. For iOS, I suggest using Damus or Nos. For the web, check out Coracle.

These apps and others will create your private key, name, and profile photo. Make sure to save your key in a password manager. If you lose it, you lose access to your account.

Micro.blog’s support for these emerging protocols is essentially one-way, pushing your blog posts out to people on other platforms. Later we will consider federation, where posts and replies from other platforms and brought into Micro.blog, like we already do for Mastodon and ActivityPub. I’d like to see how much traction there is before we do more.

View Details

Thanks everyone who sent me feedback about how you are using Micro.blog’s email newsletters. I took this into account while finishing the new feature, but I realize it’s a functionality change. It is very rare that we change a feature so significantly. Felt like it had to be done.

View Details

Micro.blog Premium includes an email newsletter feature, so readers of your blog can subscribe to receive posts by email. It’s designed around microblogs. For example, Micro.blog can gather up lots of short posts over the week or month and collect them into a single email.

Today we’re launching a revamped template system for these emails, bringing much more control over what the emails look like. You can edit the template to add a header or footer, or change the HTML tags completely.

Because emails are generated outside of blog publishing, we can’t really use Hugo directly for this. I’ve written a new helper app in Go to process the templates, so they feel as familiar as possible to people customizing their blog theme. (Hugo also uses Go’s templating language.)

You can see what the default email template HTML source looks like here on GitHub. Micro.blog plug-ins can also override this template! So you could have a plug-in that provided a new email design. There’s a help page here with more details about variables you can use in a template.

This is a major improvement. A couple things to keep in mind:

  • The template is responsible for assembling posts together. Because it produces HTML, you can no longer edit the Markdown of the previewed email. Instead, you can add intro text, edit specific posts, or remove posts from the newsletter.
  • The template could fail if there are syntax errors you’ve introduced in edits. Make sure to test your changes by sending a copy to yourself.

You can edit the template under Newsletter → Settings. If you edit the template and then install a plug-in with a custom newsletter design, it will still keep your changes. You can clear your custom template to revert back to the default template or a plug-in’s template.

If you’re not comfortable editing HTML, that’s okay. You can continue to use the email newsletter feature and ignore the custom templates. It’s just a little more power under the hood for folks who want it, and for plug-in developers.

View Details

This article in Forbes has some new (to me) details on the creation of Nostr.

View Details

Trying audiobooks in Spotify for the first time. I’d like to see some UI tweaks for books, like less emphasis on chapters (books are not albums) and showing the time remaining with the speed taken into account.

View Details

Launching new features tomorrow. Going to lay low this afternoon instead of deploying major changes near the end of the day, which I’m sure I would regret.

View Details

Spilled a glass of water all over my MacBook keyboard. So that’s how my morning is going. Seems okay so far.

View Details

Working on improvements to email newsletters in Micro.blog. I’d like to split out the editing of queued newsletters to instead have a separate per-newsletter “intro” text, with the rest of the email not editable. Does that cause a problem for anyone? Will allow more flexibility in other ways.

View Details

Love this from Matt Mullenweg. It’s what we believe at Micro.blog, too.

…it’s not about how many views you have, how many likes, trying to max all your stats… sometimes a single connection to another human is all that matters.

Happy 20th to WordPress. Heck of an achievement.

View Details

Did my daughter come to visit this weekend to see us, or to take the Switch and Tears of the Kingdom back to her apartment? Who can know. Anyway, we’re busting out the N64 and Ocarina of Time… As soon as we get an RCA → HDMI adapter.

View Details

I’m testing Calckey to improve compatibility with Micro.blog. Some of the UI is quite busy and not for me, but I love how they are showing ActivityPub usernames, with the profile photo and dimmed domain name. Might borrow this.

Screenshot of Calckey with usernames.

View Details

Went to pay our respects to my uncle, for Memorial Day. Tomorrow would’ve been his birthday too. 🇺🇸

Gravestone with name and Vietnam inscribed on it.

View Details

Love seeing all the “Where have I been?” posts. I blogged it on a whim and it’s so much more interesting to see the places other folks have gone. I also just realized I left Alaska off! Will edit.

View Details

Tinkering with something in Go this morning. Always felt like it would be a good language to know more about, and now finally have a real need.

View Details

A random conversation today made me curious about what countries I’ve visited in Europe. I got lost looking at maps and thought I might as well try to make a list.

Apparently 9 countries in the world:

  • United States
  • Canada
  • Mexico
  • England
  • France
  • Germany
  • Italy
  • Greece
  • Switzerland

And 28 states:

  • Texas
  • Louisiana
  • Oklahoma
  • New Mexico
  • Arizona
  • California
  • Oregon
  • Washington
  • Idaho
  • Utah
  • Wyoming
  • Colorado
  • Mississippi
  • Alabama
  • Arkansas
  • Georgia
  • Florida
  • North Carolina
  • Virginia
  • Maryland
  • New Jersey
  • New York
  • Massachusetts
  • Vermont
  • Tennessee
  • Indiana
  • Illinois
  • Missouri

Not counting cities I’ve just flown through without leaving the airport. Might’ve missed some, but still feels kind of low. As anyone who has followed my 30 days lists knows, I like collecting visits to places. Now a little inspired to finish seeing all 50 states.

View Details

Just watched way too many replays and commentary on the final seconds of Celtics/Heat. Another memorable game 6 in Miami. Bring on game 7! 🏀

View Details

Listened to a couple hours of the Texas house debating impeachment against our corrupt attorney general. Kind of shocked to hear the final vote, overwhelmingly for the articles. Paxton is removed from office pending the trial. Wow. 🇺🇸

View Details

Seems unlikely that we’ll end up with a single unified social web platform. I like Mastodon’s focus on communities. I like Bluesky’s thinking on distributed moderation. I like the IndieWeb’s principles of ownership. I like Nostr’s private messaging. How will we tie all of this together? Blogs.

View Details

This week Bluesky rolled out their custom timeline feeds. Pretty interesting approach. However, I’m going to disable automatic cross-posting from my blog to Bluesky for a while… Bluesky feels so much like Twitter that it has been too distracting for me. Will check back in later.

View Details

Jean and I have been talking this week about what’s next to prioritize around the Micro.blog community. I often focus on technical improvements to blogs, but we’ve had some good momentum recently with community features too, such as rolling out profile pronouns, user blocking, and encouraging alt text in Discover. Starting today, Jean is also hosting monthly office hours to talk to folks on Zoom.

Halsted’s post about creating a safe and inclusive community is also on our minds, and there are a few points in particular that I think we can run with.

  • Expanding community guidelines to demonstrate what we want to see, not just what we don’t want to see. The first step with the guidelines was to set a foundation for behavior that we would need to address with blocking posts or banning users. The next step could be to also summarize what kind of posts work well to keep the timeline safe and welcoming for new folks.
  • Elevating voices in Discover. Jean is planning to write a post about how we approach curating Discover. There aren’t strict rules for this, and our own guidelines should and do evolve, but sharing our thinking will help the conversation. We are fully aware that Micro.blog is not as diverse as it can be. Improving this will touch many parts of the platform, including marketing.
  • Maintaining a new community roadmap. We know the larger vision, but we don’t usually track every little feature request because it can be overwhelming and inevitably become out of date with current priorities. What we want to add, though, is making sure there is a public list of community features so important tasks aren’t lost.

Thanks as always to everyone who uses Micro.blog and has given us a chance to build something unique on the web. I know everyone has high expectations, and we do too.

View Details

Joking aside, I really like Nostr. Something about it is very elegant. You just have to ignore 80% of it, especially anything around cryptocurrency. It’s a wild west platform with a few nuggets of gold. 🌵

View Details

Folks, Nostr is really easy to understand. Your username is 64 random letters and you just enable NIP-5, NIP-39, and put your private key in a hardware wallet. Simple! Mainstream adoption for non-technical users will not be a problem. 🙄

View Details

Good morning! Took an early walk. Coffee now at Summer Moon and I have some server changes to deploy. Also way behind in email and hope to catch up over the next couple days. ☕️

View Details

I’m testing cross-posting to Nostr. I’m still not really sure how to link to Nostr accounts… If you’ve ventured out into the wild west of Nostr country you might be able to find me with @manton.org or npub1ae42p0d24pmccr47unf2a3hv2trmk9lrmr65ges4v3x5pscs4yrquu7ul9. 🤪

View Details

Adding a new query to Micro.blog’s server status check to throw an error if the queue backlog is unusually high. Will be able to better track this error as platform downtime.

View Details

Upgraded Ruby last night and thought everything was stable. But no. Putting my sysadmin hat on for a bit this morning while everything gets back to normal.

View Details

The new episode of Core Intuition covers last week’s Micro Camp and looking ahead to WWDC. Thanks for listening!

View Details

Been thinking a lot about Nostr this week. Finally realized that it resonates in a “worse is better” way. This is a good thing and will help me grok how it fits alongside ActivityPub and Bluesky.

View Details

I’m continuing to use ChatGPT all the time. On a whim today I asked it what the philosophy of Micro.blog is and it nailed it. You can read the transcript here.

View Details

At last weekend’s Micro Camp, we had a panel session with me, Jean, and Vincent where we answered questions from the live chat. We didn’t have time for all the questions, so I wanted to try to answer a few more that we missed. Here we go…

Re: long posts and how they get truncated in the timeline. Are there thoughts or plans for letting us control where that truncation happens? Using a tag in the feed or something. The way truncation works now seems rough.

No current plans, but it’s something that comes up from time to time and has been discussed on the Help Center. We use Hugo under the hood and it supports marking an intro paragraph summary by using the <!‐‐more‐‐> HTML comment. It’s possible that some form of summaries could be used in the timeline. In my experience, though, the more exceptions we add to the timeline, the more confusing it is. That’s why we’ve mostly stuck to a few very simple rules.

Is it likely that the success of updating the iOS and Android apps will influence development of the Mac app?

It will influence it only in that there will be more time for native Mac development using App Kit, because there will be less time trying to port features back and forth on iOS and Android. There are no plans to use the React Native code base on the Mac. The mobile UI doesn’t generally fit on the Mac, although there may be a few features we can borrow from Micro.blog 3.0 on iOS such as easier bookmark saving and the quick bar to switch between blogs.

Who is the best rock guitarist?

I just bought tickets to U2 in Vegas, so I’m inclined to say that The Edge has always been a favorite. Actually picking a single top guitarists is outside the scope of my skillset as the founder of Micro.blog. 😛

What are some of the features you can say “no” to?

One point I tried to make in the panel is that while we move quickly and often change priorities internally without much warning, the long-term vision for Micro.blog hasn’t changed. We want to make it easier for more people to use blogs, encouraging domain names and content ownership, and wrap that together with a safe, welcoming community. Every feature has some connection to one of those fundamental goals. So anything that goes against that is an easy “no”, like making posting more complicated with extra fields, adding ads, or turning the platform into more of a closed silo.

View Details

The more I tinker with Nostr, the more I understand the appeal for developers. It is fun. But there are so many usability challenges. User search and discovery are difficult.

View Details

When we added muting to Micro.blog, there was a discussion about whether user blocking should be added at the same time. My feeling was that Micro.blog is built around public blog posts on the web, so blocking didn’t seem particularly useful, and might even give someone a false sense of confidence that a specific user wouldn’t see their posts. After all, the posts are available to RSS readers and just reading on your blog for anyone.

This is the kind of opinion a programmer would have, though. “Well actually, the post is available anyway if you just drop down to the command-line and type curl and…” I was thinking about this again watching Bluesky scramble to add blocking a few weeks ago. We try to be thoughtful and not reactionary, so this was really something we should have taken care of earlier.

This is all a long way of saying that our initial support for blocking is rolling out this week on the web and the API, and in other apps to follow. Blocking someone will prevent your posts from showing up in their timeline. There may be tweaks and other options added to this later.

View Details

Great game and series. Didn’t really feel like a sweep with the Lakers in each game until late. Congrats to the Nuggets. 🏀

View Details

Checking out the Kagi search engine, via Daring Fireball. I remember hearing about this but never tried it. Looks clean, fast. I don’t think I’m at the point of wanting to pay for web search quite yet. So tired of ads, though.

View Details

San Antonio Museum of Art, raining. Used to be the Lone Star Brewing building.

Old brick building.

View Details

One reason web development appeals to me is that while it can be complicated, it doesn’t have to be. You can build for the web like it’s 1995. For native apps, the complexity is required with tools, code signing, stores. Thinking about this as I wait for my code to be crunched and uploaded to Apple.

View Details

Did not expect to be installing a new version of Movable Type on EC2 this morning for testing, but here we are. Looks about the same as it did a decade ago. Nice to see it still works and is supported, though.

View Details

We shipped Micro.blog 1.7 for Android, available on Google Play. This syncs up the release with the features from the new iOS version. Lots of new stuff, like managing posts, uploads, username auto-complete, and external blogs.

View Details

Posted links for all of today’s videos on micro.camp. Thanks again to our Micro Camp presenters! I still need to edit the keynote so that will go up on Monday.

View Details

Great discount on MarsEdit today! From Daniel Jalkut:

I usually only offer discounts of 10% or 20%, but in celebration of Micro.camp 2023 I’m offering a 50% discount on MarsEdit. Use this link and see the 50% discount when you continue to checkout: redsweater.com/store/

View Details

Ever since I read that Bluesky has about 1.9 million folks on the waiting list, I’ve been thinking about what happens as more invites roll out. By comparison: Mastodon has over 7 million users, with 1 million on a single server. Plus a bunch more across the non-Mastodon fediverse.

View Details

Micro Camp 2023 is coming up soon! May 19th - 20th. We’ve posted the topics for the second day’s presentations.

View Details

If you missed it earlier from @news:

We are monitoring some performance problems because of unexpected server load. Thanks for your patience.

I’m continuing to troubleshoot (and optimize) slow blog publishing a cross-posting today. Almost back to normal but not quite.

View Details

Posted episode 556 of Core Intuition. We talk about tipping in Apple Stores, using ChatGPT, and whether Apple has missed “the year of AI” because they thought it was “the year of AR”.

View Details

Too many guns. After yesterday’s shooting in Allen, Greg Abbot “offered the full support of the State of Texas”… So that means he’ll work to ban assault weapons, right? That’s the kind of support we need.

View Details

Easy to get caught up in the excitement about the coronation. We are so stuck in divisive partisan debates over here that it’s hard to imagine the U.S. being that united around anything. 🇬🇧

View Details

I recorded a video on YouTube that goes through how I personally use Micro.blog for my own blog. It’s a little long and rambling, about 25 minutes, but it covers a bunch of features that folks might find useful.

View Details

Created a new blog on my Micro.blog account today, a placeholder for something new. Found a couple bugs in the process. I should do this more often… So easy to forget about the onboarding experience, or lack thereof.

View Details

This year’s NBA playoffs have been great. So many close games, ignoring a couple blowouts like last night’s Lakers/Warriors. With the Spurs out of contention early and their players scattered to different teams, I’ve been enjoying the postseason more than usual, finding new teams to root for. 🏀

View Details

Jack Dorsey gives $10 million to Nostr and related projects. Setting aside opinions on his leadership at Twitter, it feels significant that these funds are not VC-style investments. Presumably the reward is seeing interesting technology flourish, not profit.

View Details

Wondering what the Bluesky team has in mind for private messaging, if anything. Mastodon’s DMs have always felt awkward to me, both the user experience (hard to distinguish public and private posts) and the technical bits (any admin can read your messages).

View Details

Finished the first pass of rethinking how incoming direct messages work in Micro.blog. I still believe that most social networks should not reinvent the wheel with messaging, because it’s unlikely to be as secure as dedicated services like iMessage and WhatsApp. But we roll with what we’ve got.

View Details

Looking at this spam, I think our approach to accepting Mastodon DMs needs to change in Micro.blog. We forward them via email because we don’t have a private messaging system. But someone shouldn’t be able to intrude in your inbox. My fault. Going to rethink this today.

View Details

Eugen Rochko and team are fighting spammers at mastodon.social:

We’re aware of the spam attack hitting mastodon.social right now and our full moderation and DevOps teams are on the case mitigating any way we can (incl. switching to approval-mode registrations)

Haven’t seen this affect Micro.blog yet, but if anyone notices any unwanted @-mentions or other problems, let us know.

Update: Spoke too soon, definitely hitting us too. 🙁

View Details

Almost done with book edits. The task of manually reformatting all the footnotes and layout for the print edition was dragging me down, so figured out how to automate it with print CSS tools like Prince. Wow, going to save days or weeks of work.

View Details

Enjoyed the first episode of Whitehouse Plumbers. Also, Woody Harrelson and Matthew McConaughey might be half-brothers?! They need to go on Finding Your Roots.

View Details

Mastodon has added support for showing styled text in the new version deployed on mastodon.social. Looks good with bold and italics in blog posts federated from Micro.blog.

View Details

Waterfall at Cosmic Coffee + Beer Garden. 🍺

Plants and small waterfall over rocks into garden pool.

View Details

Maybe the most surprising thing to me about Bluesky’s early success is the “fun” aspect. I’m not very fun online — my microblog posts are often work-related or serious — but it seems clear there was a post-Twitter void here that Bluesky is filling. Casey Newton writes on Platformer:

Bluesky should continue to cultivate the sense that it is weirder and funnier than Twitter. That means leaning into some of the eye-rolling terms that users are insisting on, including skeets.

View Details

Noticed today while reviewing code that the first GitHub commit for Micro.blog was about 9 years ago. So much has happened since then, but also hardly anything. Software is never done because the world and people are always changing.

View Details

Left my headphones at home by accident. Now need to plan my whole day around which coffee shops probably have the best music on. ☕️

View Details

Went to see the Super Mario Bros movie this afternoon. So much fun. 🍄

View Details

Not content with banning native third-party apps, Twitter has continued to cripple their API and move to paid plans for very basic access. I was committed to support Twitter cross-posting as long as possible because there are still Micro.blog customers who want to keep a foot in the Twitter world. But we knew it couldn’t last forever.

July 15th will be our last day to support cross-posting blog posts to Twitter. Even though Twitter has been effectively dead to me since I stopped tweeting in 2012, I’m a little sad to finally have to cut the platform off.

I picked July 15th to give people a couple months to wind down their use of Twitter. We now have to pay Twitter for API access, and that is the longest I can justify doing so.

It’s all another reminder that centralized platforms with closed APIs can’t last. While it’s easy to blame Elon Musk, the writing has been on the wall for a decade.

For more of the Twitter history that brought us to this point, see the chapter in my book called Leaving Twitter. Newly updated for Elon.

So, what’s next?

  • Updating the Micro.blog web site to remove mention of Twitter. Luckily, we can now mention Bluesky instead! (When one door closes, another opens.)
  • Emailing all Micro.blog customers who currently have Twitter cross-posting enabled, letting them know that the feature will go away on July 15th.
  • Hiding the Twitter cross-posting option for new Micro.blog users.
  • Later, shutting off the feature and removing all the Twitter code. At least we can do a little code cleanup because of this.

End of an era. Seeya on the open web.

View Details

Core Intuition episode 555! We talk all about Bluesky. (And Mastodon and Nostr and Micro.blog.)

View Details

Today is the day that Twitter said they would shut off the old API and force upgrades to the new plans. But they say a lot of things. I haven’t paid yet. Also confused why April 29th (Saturday) and not May 1st (Monday).

View Details

I’ve done a little work now with the XRPC layer of the AT Protocol, supporting cross-posting to Bluesky from Micro.blog. This post is about what I’ve learned.

(As an aside, there have been questions about whether Micro.blog supporting Bluesky means we believe in everything they’re doing. No, right now I’m mostly interested in the technology. It’s still too early for judgements on the Bluesky leadership, user experience, or ultimately how this is all going to fit together with other social web protocols.)

Bluesky authenticates with a username and password. For third-party apps, the password can be an app-specific password. I hope that eventually Bluesky will support IndieAuth, a flavor of OAuth designed for signing in to web sites that should also work well for a distributed service like Bluesky.

The HTTP POST with JSON for signing in looks like this:

POST /xrpc/com.atproto.server.createSessionContent-Type: application/json{ "identifier": "email-address-here", "password": "password-here"}

You’ll get back an access token and refresh token. Sessions do not last very long, only a couple hours last time I checked, so it’s important to keep the refresh token. The response looks like this:

{ "did": "did:plc:abcdef12345", "handle": "manton.org", "email": "email-address-here", "accessJwt": "abcdefghijklmnopqrstuvxyz", "refreshJwt": "zyxvutsrqponmlkjihgfedcba"}

The DID is a unique identifier for your account that is stored with posts on an AT Protocol server. Even if you change your handle, the DID persists and helps make data portable across servers.

When cross-posting from Micro.blog, I first try to use the auth token and if it fails, I use the refresh token to establish a new session. In this case, we pass the refresh token in the Authorization header:

POST /xrpc/com.atproto.server.refreshSessionAuthorization: Bearer zyxvutsrqponmlkjihgfedcba

Sending a simple text post to Bluesky looks like this. For the rest of these requests, we pass the usual access token for authorization:

POST /xrpc/com.atproto.repo.createRecordAuthorization: Bearer abcdefghijklmnopqrstuvxyzContent-Type: application/json{ "repo": "did:plc:abcdef12345", "collection": "app.bsky.feed.post", "validate": true, "record": { "text": "Hello world.", "createdAt": "2023-04-20T16:46:32+00:00" }}

It can get more complicated. To include a photo with the post, first upload it to storage as a blob. In my early testing, there were low limits for photo file size, so Micro.blog scales photos down quite a bit before sending them over to Bluesky.

Here’s uploading the photo, passing the raw JPEG bytes in the content body:

POST /xrpc/com.atproto.repo.uploadBlobAuthorization: Bearer abcdefghijklmnopqrstuvxyzContent-Type: image/jpegimage-data-here

You’ll get back a media CID (Content ID) in the ref field that can be used to attach the photo to a new post. The response after uploading a photo looks like this:

{ "blob": { "$type": "blob", "ref": { "$link": "abcdefgh" }, "mimeType": "image/jpeg", "size": 200000 }}

Then when posting, use the embed field with an array of the uploaded media CIDs:

POST /xrpc/com.atproto.repo.createRecordAuthorization: Bearer abcdefghijklmnopqrstuvxyzContent-Type: application/json{ "repo": "did:plc:abcdef12345", "collection": "app.bsky.feed.post", "record": { "text": "Hello world with photo.", "createdAt": "2023-03-08T16:46:32+00:00", "embed": { "$type": "app.bsky.embed.images", "images": [ { "image": { "cid": "abcdefgh", "mimeType": "image/jpeg" }, "alt": "" } ] } }}

Bluesky also supports inline hyperlinks in the post text through “facets” that can be added to a post, similar to attaching a photo. I don’t love this because we already have HTML as a perfectly good way to format posts. I strongly believe that the social web should use HTML and HTTP wherever possible.

In Micro.blog, I automatically convert Markdown or HTML inline links to Bluesky’s facets. An example of linking the first word “Hello” in this post would look like this, using the character position and length of the word:

POST /xrpc/com.atproto.repo.createRecordAuthorization: Bearer abcdefghijklmnopqrstuvxyzContent-Type: application/json{ "repo": "did:plc:abcdef12345", "collection": "app.bsky.feed.post", "validate": true, "record": { "text": "Hello world with link.", "createdAt": "2023-04-20T16:46:32+00:00", "facets": [ { "features": [ { "uri": "https://manton.org/", "$type": "app.bsky.richtext.facet#link" } ], "index": { "byteStart": 0, "byteEnd": 5 } } ] }}

There is also a growing list of open source libraries for the AT Protocol. Unfortunately I wrote all my code before I realized this, so I stumbled through deciphering the API more than I needed to. Maybe this post will save you some time if you’re rolling your own thing.

View Details

The storm is about to hit. Waiting it out downtown instead of on the highway. ⛈️

Texas Capitol building with gray clouds.

View Details

Listening to Dithering today about game consoles… If you have 2 consoles, you have Playstation + Switch, or Xbox + Switch. If you have 2 social networks, maybe you have [insert popular network] + Micro.blog. The hard part is carving out a unique, invaluable niche.

View Details

We updated the Micro Camp web site for 2023. Register for free if you’d like to join us May 19-20. Everyone gets a new sticker too! Special thanks to @Burk for the sticker design.

View Details

Austin sky before thunderstorms arrive in a few hours, supposedly. ☁️

Light clouds over Lady Bird lake from the dam.

View Details

Finished reading: Spinning Silver by Naomi Novik. I really enjoyed this story. First-person for multiple characters was a little awkward, though, and maybe held it back from what it could’ve been. 📚

View Details

The renewed interest in open, social web protocols has been a long time coming. It’s like we were in a drought for most of the 2010s, subsisting on the water leftover from the early blogosphere, and now it’s raining. Drink up, folks! The skies are blue and the future’s bright.

View Details

I’ve been impressed with Bluesky’s performance. It has inspired me to shave off a little time for some Micro.blog API requests. We usually think of “under a second” as fast enough, but 0.8 seconds vs. 0.4 seconds is actually pretty noticeable.

View Details

Continuing to tweak our Bluesky cross-posting support. Should work better with inline links in blog posts now.

View Details

Sometimes coding is hard, but not usually. It’s figuring out how something should work that takes all the time.

View Details

Just released a new 3.0 beta of Micro.blog for iOS. This includes a big change, borrowed from the 2.x versions: Markdown syntax highlighting when writing new posts. We are getting close to release. The only major feature left is WordPress posting support. TestFlight here to follow along.

View Details

I know I’ve written about this before, but it’s worth repeating: Micro.blog is constantly shifting priorities based on what people are talking about. If we only hear a feature request every few months instead of every week, it is probably going to drop off our radar, even if we want to do it.

View Details

I’m seeing lots of Bluesky takes that are a variation of: “Oh jeez, we just moved from Twitter to Mastodon, now there’s another new thing?” But indie microblogging is about moving away from centralized platforms to blogs and open web-friendly protocols. Anything in that spirit should be explored.

View Details

I’m always fascinated when our new AI bot overlords get really basic facts wrong. They know the answer, but can’t put it together until you press them on it. Here’s a quick transcript from ChatGPT that I ran into today.

View Details

Some technologies just keep coming back… Currently writing XML-RPC code, this time for JavaScript. Despite the new-ish JSON APIs in WordPress, not to mention Micropub, MetaWeblog is still the best way to talk to WordPress without any extra plugins or configuration.

View Details

U2 tickets for the Sphere in Vegas going on sale later this week. Need to somehow fit this into my plans for the fall.

View Details

Added a basic import in Micro.blog for folks migrating from Substack. For now, just blog posts. Still need to think through email address import for newsletters… Want to make sure it can’t be abused by spammers. (Substack’s HTML is so verbose. Tried to clean it up a little on import.)

View Details

This is not exactly a commentary on any specific platform, but you can just tell when the creators of a tool use their own stuff and engage with the community. The farther you get away from that, the less confidence users will have.

View Details

Today we enabled Bluesky as an option in Micro.blog. This adds to our existing cross-posting feature that supports platforms such as Mastodon, Tumblr, Medium, and Flickr. When you post to your blog, Micro.blog can copy the post to any of these platforms automatically.

As Twitter continues to implode, we are seeing a renewed interest in the open web and decentralized social media. It’s an exciting time. Mastodon and the larger fediverse have grown to nearly 9 million users. Micro.blog is part of that with its support for ActivityPub, so Mastodon users can follow and reply to Micro.blog users directly.

While Mastodon and ActivityPub have most of the attention, I’m not entirely sure how this next generation of open protocols is going to shake out. I like how Bluesky is focused on domain names and data portability, principles that are shared by the IndieWeb and Micro.blog. Whatever happens with Bluesky, I think there’s inspiration here that can benefit other platforms as well.

That’s why we’re adding support for Bluesky now, even before the Bluesky folks have rolled it out to everyone on their waiting list. Micro.blog has never been about a single protocol. It’s about putting your blog at the center of your online identity, the place where you can post short posts, longer essays, photos, podcasts, or whatever else you want to share.

It’s still early. I’ll be watching how Bluesky evolves. There will be challenges to potentially intertwine different approaches to federation. But now is not the time to build walls. Let’s try a few things, new ways to connect platforms, knowing some might not pan out, because that’s how the open web gets better.

View Details

Fox News in the, uhm, news today reminds me of last month when I was in Dallas. I worked from a coffee shop near my hotel one morning, Flying Horse Cafe. They had Fox News on the TV. Took me by surprise as an Austinite… No way you’d ever see that here, but oh yeah, I live in Texas.

View Details

Tantek Çelik blogged about Mastodon’s account migration and its post export, which is based on ActivityStreams. No other apps really import this format yet, not even Mastodon itself. He also mentions the Blog Archive Format and how useful it would be to convert between Mastodon and this format:

Such a library would make an excellent drop-in addition to any #ActivityPub implementation, allowing both export of posts, and also a browsable archive format, so you could visually double check when importing to another service that these were the old posts you were looking for.

I’ve taken a first pass at writing a Ruby script to convert Mastodon’s export to Blog Archive Format. It’s available as a GitHub Gist here. It’s not packaged as a general-purpose library but certainly could be adapted for that.

Direct posts import from Mastodon will be baked into Micro.blog soon. We already support several formats — WordPress, Medium, Tumblr, Ghost — and I learned a lot about how best to process large archives while building the new Twitter import.

View Details

HTML’s srcset is such a weird image attribute. Can’t help but feel there was a better way to handle this. (But no, I don’t have any obviously better ideas.)

View Details

It’s a good day to have a good day.

Photo of wall and sign at Freddo ATX

View Details

Matt Baer blogs about the future of Write.as and WriteFreely — taking features that are currently separate products and integrating them into more of a suite:

At this point, I don’t think it makes sense for our self-hosted product to be chopped up into multiple components like our hosted tools are. Instead, I want to bring all those tools into a single application in WriteFreely.

Remark.as will also get fediverse replies. Sounds like a good direction.

View Details

It breaks my heart a little when I drive through a historic neighborhood to see old houses bulldozed to make room for modern mansion monstrosities. I know a house is just a thing, but it feels like erasing a bit of history that mattered to someone.

View Details

Trees by the trail at Lady Bird Lake.

Photo of lake with large tree in front of it, apartments in the background. Just east of I-35.

View Details

“Make no little plans. Make the biggest one you can think of, and spend the rest of your life carrying it out.” — Harry Truman

View Details

The bookmarks pages in Micro.blog haven’t felt quite right to me, so today I rolled out a small redesign that I think better integrates bookmarks, highlights, and links. (This is only for Micro.blog Premium subscribers. Premium adds web page archiving and making highlights in bookmarked pages.)

Screenshot of new Micro.blog interface with bookmarks tab and search box.

View Details

Lunch at Easy Tiger earlier today. 🥪

Photo of building with tiger logo.

View Details

If it was starting to feel like Humane’s device would be overhyped or vaporware, I’m ready to put aside those concerns. It looks like they are onto something fascinating, both the projection and the AI language translation.

View Details

On this week’s episode of Core Intuition, we talk about the Mastodon API and upcoming new MarsEdit release. And of course, blogging.

View Details

One of those afternoons where I’m hopping between unrelated tasks. Currently revisiting how to best crunch through OpenStreetMap data.

View Details

Updated my code for Bluesky for the recent API endpoint changes. Looking forward to enabling this for Micro.blog folks.

View Details

Tantek Çelik blogs about yesterday’s The Verge article on ActivityPub, underscoring some of the IndieWeb principles that are covered. There’s really a lot in there and I’m glad to see the article getting so much attention. Thanks @pierce@mas.to!

View Details

The Verge has a long article by David Pierce today about ActivityPub. The quote from me about domain names doesn’t come across quite how I intended it… Yes, domain names are hard, but we need to make them much easier to deal with because they’re actually great.

View Details

I haven’t written a new React Native diary blog post in a while because there hasn’t been anything noteworthy. We’ve shipped new versions of Epilogue for iOS and Android. Micro.blog 3.0 for iOS is almost ready — also a rewrite for React Native.

We did hit one feature that I wanted to preserve from the previous version of Micro.blog: Markdown and HTML syntax highlighting when writing a new blog post. The best way to preserve this was to port the Objective-C code over to React Native. (This feature won’t be available on Android yet.)

The “native” in React Native is because it uses native iOS and Android controls, even though they are driven from a JavaScript engine. This means we can make our own native components, written in Swift or Objective-C.

There are a few pieces of code to make this work:

  • MBHighlightingTextView: a UITextView subclass, but it could be any control.
  • MBHighlightingTextManager: a RCTViewManager class, helping us build an interface between JavaScript and native code.
  • HighlightingText: a React.Component, wrapping up the native control.

Here’s a snippet of the MBHighlightingTextView interface:

@interface MBHighlightingTextView : UITextView@property (copy, nonatomic) RCTBubblingEventBlock onChangeText;@property (copy, nonatomic) RCTBubblingEventBlock onSelectionChange;@end

And the MBHighlightingTextManager interface:

@interface MBHighlightingTextManager : RCTViewManager <UITextViewDelegate>@end

For the MBHighlightingTextManager implementation, the important bits are the macros that define what properties we care about:

@implementation MBHighlightingTextManagerRCT\_EXPORT\_MODULE(MBHighlightingTextView)RCT\_EXPORT\_VIEW\_PROPERTY(onChangeText, RCTBubblingEventBlock)RCT\_EXPORT\_VIEW\_PROPERTY(onSelectionChange, RCTBubblingEventBlock)RCT\_CUSTOM\_VIEW\_PROPERTY(inputAccessoryViewID, NSString, MBHighlightingTextView){ if (json) { NSString* input\_id = [RCTConvert NSString:json]; // ... }}- (UIView *) view{ // make a new MBHighlightingTextView and return it // ...}@end

Finally, the JavaScript side that loads the native component:

import * as React from 'react';import { requireNativeComponent } from 'react-native';const MBHighlightingTextView = requireNativeComponent("MBHighlightingTextView");export default class HighlightingText extends React.Component { render() {return ( <MBHighlightingTextView {...this.props} />) }}

Now we can simply use <HighlightingText> in place of <TextInput> in our XML when laying out the UI. Handlers like the property onChangeText will be referenced from Objective-C so we can call them in response to methods from our UITextView delegate.

I’m leaving some code out in the above examples for readability. And I have a bunch of code still to write, working in a branch of our project on GitHub. But already the basics are working, after (frankly) a lot of trial and error and sifting through the documentation, Stack Overflow, and even asking ChatGPT, which knows a surprising amount of how this works.

View Details

Accidentally clicked on a phishing email. Ugh, must not be awake yet. Stopped short of signing in and giving them my password, though.

View Details

Thunderbird Coffee. ☕️

View Details

Got lost down the rabbit hole of W3C membership fees… Interesting scaled fee structure, in the United States from $2k/year to $77k/year depending on the member company’s revenue.

View Details

There are always more ideas than time. One of the things I’ve most enjoyed about building Micro.blog is that it’s a platform where many blog-related ideas can fit together. The “micro” was always a bit of an undersell.

View Details

I’ve been impatient for Bluesky to ship, but this interview with The Verge has helped convince me that it’s okay to wait. The API is still in flux. Already I need to go back and update some early experiments.

View Details

One of those just try random code until it works mornings. Not proud of it. Sometimes coding is less well-crafted and more stubborn persistence.

View Details

Shoutout to the guy holding a “thoughts and prayers ain’t working” sign downtown this morning. Banning assault weapons should not be controversial. It’s time.

View Details

This year I’ve become fascinated with my family tree. Just got back my DNA kit results. (Yes, there are privacy issues. I’m ignoring those for now.) So far it reveals just about what I expected. Still amazing.

View Details

Some great NBA playoff games over the weekend. Too many injuries, though. Can’t believe Tyler Herro hit that 3-point shot with a broken hand. Shooters gonna shoot. 🏀

View Details

Happy Monday, everyone. Starting the week at Progress Coffee again. ☕️

View Details

We pushed a new Micro.blog beta out to TestFlight, improving blog selection to move the list of blogs to the toolbar area. Here’s a partial screenshot of what it looks like.

Screenshot showing Micro.blog 3.0 for iOS with bar above formatting bar to select the current blog by hostname.

View Details

Didn’t get much feedback about my Substack blog post yesterday, so I started to doubt myself. I wrote it quickly and glossed over some details. But that’s how it is with blogs… Sometimes you put things out in the world and hardly anyone notices. That’s okay! Still worth it. On to the next post.

View Details

Another unexpected use for ChatGPT: asking it for examples of using command-line tools like rsync for specific scenarios. Faster than digging through a man page.

View Details

For folks trying Micro.blog’s Twitter import, note that the tweets page is just a web page, so you can add intro text or other formatting if you want to. I added a little intro to mine here to give some context.

View Details

Dave Winer writes about the Twitter API changes:

Corporate platforms always fail, given enough time. The Twitter API had a good run. Now the deck is clear, and there’s room to make some new stuff, or just take a break and smell the roses a bit, or go for a bike ride. 🤪

This seems like the right attitude to me too, even if it’s frustrating to deal with platforms failing. When one door closes, another opens.

View Details

Nilay Patel’s Decoder interview with Substack co-founder Chris Best is excellent. If you’ve only seen the excerpt where Chris declines to answer Nilay’s hypothetical moderation question, that clip was not taken out of context. It is exactly how the interview went, but a small part, and they cover a lot about Substack’s business and the founder’s approach to the web.

I’ve been interested in Substack since the beginning because I think they get a lot of things right:

  • Writers get their own space on the open web. It’s an email newsletter, but it’s also a blog with its own domain name and RSS feed.
  • Writers own their subscription list. They can export email addresses of subscribers and move to another email newsletter platform.

It seems clear from listening to Chris that this focus on identity and portability is no accident. Substack believes in empowering writers, and giving them their own “island” on the web, largely free of platform rules. There is little need for content moderation because readers are actively choosing to subscribe to a writer, not stumbling on random viewpoints that may be offensive or controversial.

Enter Substack Notes:

  • Notes uses the same “social graph” as the main Substack platform. You don’t follow people in the way you do on Twitter or Mastodon. You subscribe to both their notes and email newsletter, giving the writer your email address.
  • Notes is driven by algorithms. By default, the first thing you see is an algorithmic timeline (“Home”) that shows you notes from both people you subscribe to and whatever Substack thinks you should see. You can then switch to an alternate timeline (“Subscribed”) with people you’re following, but even there you will see “restacked” notes or replies from other people.
  • Notes has post permalinks at Substack, not at your own domain name. This is a major shift in identity and ownership.

This is a very different design than the rest of Substack. As it grows, Notes will have much more power to amplify viewpoints and be central to how users discover new writers. It will need to be moderated like a traditional social network. It will need some kind of lightweight following model instead of jumping straight to giving a writer your email address.

In the Kickstarter video for Micro.blog in 2017, I talked about how I viewed the distinction between the Micro.blog timeline (the social network) and the blogs we hosted (or that you can host elsewhere):

If we start to separate the publishing from the social network, it unlocks something. It empowers writers to feel like they own their work, even if that’s short posts. And it frees social networks to build a safe community, without worrying about censorship, because no matter what the networks do you can always post to a site with your name on it.

This has guided our approach to moderation all along. I expanded on it in several chapters of Indie Microblogging, especially the one called Open gardens. It remains a unique part of how Micro.blog works compared to pretty much every other platform.

Substack could adopt a similar philosophy with Notes. Instead, they seem stuck on… something. I’m honestly not sure why they haven’t thought this through in a little more detail.

I’m not rooting for Substack to fail, but I do think Notes needs changes. And while I’m offering unsolicited advice, they should drop the “building a new economic engine for culture” tag line. It means nothing. Forget about the VC money, the drama, whatever is happening with Twitter, and get heads down to build something that makes the web better.

View Details

New episode of Core Intuition is up! On episode 553 we talk about WWDC 2023 tickets, conferences, and Micro.blog’s new Twitter import feature.

View Details

We redesigned the Micro.blog home page this year and it’s so much better. Yet I still wonder if we’re telling the complete story about what Micro.blog can do. Full blogs. Social network. ActivityPub. Podcast hosting. Newsletters. Tweet import. Hugo. Cross-posting. More open APIs than any platform.

View Details

I’ve been keeping an eye on our OpenAI bill since we added automatic podcast transcripts for all podcasts hosted on Micro.blog. It’s working out great and sustainable. Micro.blog for podcasts is best for solo microcasts anyway. Perfect for quick transcripts and the way our hosting is structured.

View Details

Good morning, Austin! At Progress Coffee. ☕️

Photo of painting of Austin with picnic tables at coffee shop.

View Details

Congrats to Rogue Amoeba on the major update to Farrago. They’ve done some really nice work in this app.

View Details

There’s a lot of talk about how AI can get facts wrong. That’s fair, but in my experience it’s correct most of the time. Even when it’s slightly off, there’s usually some useful truth in the answer. Much more frustrating is voice assistants who can’t even begin to give an answer.

View Details

More and more I find myself keeping ChatGPT open and asking it even dumb questions that Google or DuckDuckGo could answer just as well. “If it’s 1pm in California, what time is it in Poland?” Having an ad-free, simple response is nice. This is going to completely upend the search engine business.

View Details

I recorded a video on YouTube showing how Micro.blog’s new tweets archive import feature works. It’s 6 minutes long and I explain more about how the different parts fit together.

View Details

Daniel Jalkut blogs about Micro.blog’s new tweets import and how it can work with MarsEdit.

View Details

It’s not all about Elon Musk. Ben Thompson has made variations of this argument on Stratechery and Dithering, but I wanted to quote this segment from the Sharp Tech podcast where I thought Ben particularly nailed it:

Part of the irony of everyone getting upset about Elon Musk killing all the third-party Twitter apps is that that’s what Twitter’s management should have done a decade ago. If you’re going to go in that direction, go in that direction. Instead they didn’t have the guts to sort of follow through in their strategic decision to its logical endpoint.

I stopped posting to Twitter in 2012 exactly because of this strategy. I’ve said that Elon has greatly accelerated what was already the path for Twitter fading into silo irrelevance. I wish I could come up with a less violent analogy, but what comes to mind is Twitter leadership in 2012 loading the gun and pointing it at third-party apps, but it wasn’t until 2023 that anyone pulled the trigger.

Elon deservedly gets most of the blame for Twitter’s recent chaos. But I don’t think Twitter was going to last forever under any version of its clown car leadership over the last 15+ years. In the long run we will be thankful that Elon is effectively putting the company out of its misery. We’re going to see innovation on the open web as third-party developers realize they are the ones who have actually been given new life.

View Details

Share extension is back, and better! There’s a new beta of Micro.blog 3.0 for iOS with support for sharing photos and links from other apps. Grab it on TestFlight. Note that this is still a beta and there are a couple glitches, for example with cropping photos sometimes.

View Details

Substack Notes is interesting but they seem to have forgotten a valuable part of the rest of Substack: content ownership and portability. Your newsletter/blog can be at your own domain name, but “notes” are just another silo on someone else’s platform.

View Details

Today we launched a new feature: importing an archive of your tweets to Micro.blog. This is available to all paid subscriptions and can be accessed on the web under Posts → Import.

Very early Micro.blog customers may remember that we used to have a Twitter import feature alongside our traditional blog import from WordPress, Tumblr, and other platforms. We disabled this years ago because I kept hearing from people who realized that it was a mess importing tens of thousands of tweets into their new blog. I’ve taken that feedback to build this new feature into something that I think works much better.

There are a few unique twists with how this works:

  • When you import your tweets, we create a new blog in your Micro.blog account just for the tweets. This is in the format username-tweets.micro.blog. There’s no extra charge for this blog.
  • This new blog stores all your tweets as blog posts. Micro.blog also copies any photos in tweets to this tweets blog.
  • A new plug-in is installed that links your existing blog with the tweets blog. This plug-in provides a streamlined interface for browsing tweets by month or searching across all your tweets.

You can see my own tweets on my blog here: manton.org/tweets

Structuring the tweet storage this way means we can leverage many of the powerful features built in to Micro.blog:

  • There’s a new API that the plug-in uses. You can make your own version of the plug-in from GitHub by copying its HTML and JavaScript. You can even access the API of tweets from apps and blogs outside of Micro.blog.
  • The separate tweets blog is a full Micro.blog-hosted blog so you can use custom Hugo templates to make your own web interface for browsing tweets, or add your own domain name to it.
  • If you have multiple Twitter accounts, you can create additional blogs for those accounts. The trick is to name the blog with a “-tweets” suffix. (We only include one extra tweets blog for free. The rest will be added to your subscription just like any additional blog.)

Because the storage is just blogs, you can use existing apps to manage the tweets and photos. For example, you can use MarsEdit to download and search all your tweets. It’s also easy to zap all your tweets and start over without touching your actual blog.

Some limitations: I’ve decided to only copy photos from the archive, not other types of media. If you have a lot of photos, expect this to take a long time as Micro.blog extracts the photos from your archive and uploads them to our servers. You can keep an eye on what it’s doing on Account → View logs. I expect we may tweak this as we get feedback from more people.

Enjoy! I hope this makes it a little easier to say goodbye to Twitter.

View Details

If you’ve procrastinated downloading your tweets archive from Twitter, I would do it now. It takes up to a day to get it, and who knows if it will change or break in the future.

View Details

Went to see Air. Loved it. So hard to make dialog in a movie like this not sound fake, but they pulled it off. Felt very real. Best movie I’ve seen in years. 🏀

View Details

ChatGPT continues to impress. I’ve started asking it programming questions just to save a few minutes here or there. For example, this question returned a detailed answer that was exactly correct:

I’m using Ruby and DataMapper with MySQL. How to get a list of unique years used in a database table “pages” with date field “posted\_at”?

🤯

View Details

Just posted a new Core Intuition. More on our favorite recent topics: the Twitter API shutdown and AI-generated images and text.

View Details

Love that feeling when I realize that previous me had already written code to do exactly what I need today. There’s a whole database table I forgot existed to solve this.

View Details

Wanted an illustration for an upcoming feature, and spent some time using DALL•E for the first time. Fascinating. Generated dozens of images, then drew some parts myself and put them together. I don’t think these models should be trained with copyrighted works, but credit is murky to me now.

View Details

The Fediverse Report continues their great summarization of recent hot topics. On trademarks, Eugen is certainly within his right to trademark Mastodon. I chose not to trademark Micro.blog because it’s too close to microblog, which is a word everyone can use. I also prefer “social web” to fediverse.

View Details

Spurs vs. Blazers… in Austin! 🏀

View Details

Fascinating discussion on the latest The Talk Show with @gruber@mastodon.social and @danielpunkass about AI. What does it mean for humanity when more tasks can be automated and fewer people need traditional jobs? As a developer, a lot of my time isn’t coding but thinking how something should work.

View Details

Blast from the past: video of my old iOS app Tweet Library. I forgot how much I loved this app. 📦

View Details

When I started building Micro.blog, I tried to limit dependencies on external platforms. The main connection is via cross-posting, which is an optional feature and not what I consider the core platform. So for example, I resisted integrating tweets into Micro.blog’s timeline, even as many people asked for it.

We are seeing now with Twitter’s implosion why that matters. I didn’t think Twitter was going to last forever, but Elon Musk has greatly accelerated Twitter’s fall beyond what I expected even when I was most pessimistic about massive, centralized platforms.

Even so, I find myself this week investing time into keeping Twitter cross-posting in Micro.blog going for a little longer. I’ve rewritten the API from version 1.1 to 2.0. Auth has to change to make that work, and an unfortunate side effect is that photo upload also has to change. I’m forced to simplify tweets so that they link back to your blog for photos.

Twitter’s paid API rollout have been chaotic. Bridgy developer Ryan Barrett found that Bridgy’s API access was shut off already, weeks ahead of the expected April 29th deadline:

The silver lining is, after all the chaos and destruction and flight to the fediverse, Twitter doesn’t feel nearly as important now as it did half a year ago.

Back in 2012 when I stopped using Twitter, I would never have guessed that 10+ years later I might be paying Twitter $100/month for the privilege of using the API. But I don’t like shutting off a feature without warning. The compromise I’ve come up with is to continue supporting Twitter cross-posting for a limited time.

Here’s where I see things going from here:

  • After I finish testing the new Twitter code, I will deploy it to Micro.blog. This will happen within a few days.
  • I will email every Micro.blog user who currently has Twitter cross-posting enabled, letting them know they will need to sign in to re-enable Twitter posting, and that the feature is winding down.
  • We will update the documentation and provide some tips for moving away from Twitter.
  • After 2-3 months, the Twitter feature will be turned off.

In a bit of “lemonade from lemons” good news, I’m working on something new for Twitter users that we can control. Tweet archive import! We had a version of this feature a few years ago in Micro.blog but had to disable it because it wasn’t quite right. I’m taking those lessons and also my experience building Tweet Library to make something that will last.

View Details

Did a first pass of rewriting all my Twitter API 1.1 code to 2.0. Halfway through I started to seriously question why I am bothering, given the limited lifespan of this code. It’s straightforward to push through, except for one wrinkle: Twitter never finished implementing media upload in 2.0! Sigh.

View Details

There’s a lot going on with the S-GPT shortcut. Very clever to have trigger words in the speech that help integrate with system tasks. I also keep imagining the potential for this when voice assistants are powered by it.

View Details

I’m sure a lot of Trump supporters are having a hard time processing what is going on with multiple potential charges against the former president. Doesn’t seem fair, right? Why was he impeached twice and always in legal trouble? But it’s simple: he was a corrupt president. 🇺🇸

View Details

Attempts to refill the bird feeders have resulted in squirrels taking over the backyard. They are relentless. I’m downstairs trying to work and keep getting distracted looking out the window.

View Details

Interesting to compare the main headlines from feed reader home pages:

Feedbin: “A nice place to read on the web” (Love it!)
Inoreader: “Take back control of your news feed” (Also good!)
Feedly: “Track insights across the web without having to read everything” (Enterprise-y!)

View Details

Molly White has a good post covering Feedly’s “protests” feature. But even ignoring all those problems, it didn’t seem like this belonged in an RSS reader. Even minor features should support a product’s main reason for existing, or its mission.

View Details

Somewhere north of Meridian, TX. 🚂

Out the train window, blue skies.

View Details

Deploying code to servers, on a train that has no wi-fi. Everything will be fine.

View Details

Grabbing coffee this morning before heading back to Austin, catching up on email. Still thinking about Taylor Swift last night. Incredible show. AT&T Stadium is massive… 70k people at the concert, times 3 nights here, so 210k people just for the Dallas / Fort Worth area.

View Details

Taylor Swift. Eras Tour in Arlington, TX.

Taylor Swift on stage from way up in the cheap seats.

View Details

Union Station in Dallas. 🚂

View Details

Good write-up about FediForum from The Fediverse Report. On the $40 pricing, I was a little skeptical at first of excluding too many people, but the attendance size was just right. Great participation. For the fediverse to reach its potential, there should be a mix of business models.

View Details

If you use Drafts, check out this new action for Micro.blog. Post drafts, publish, choose your blog, cross-posting, and more options. Thanks @donnydavis!

View Details

The plug-in Search Space by @sod has been updated to 1.0. It’s a nice upgrade over the older search I wrote, searching blog posts, replies, and even the new podcast transcripts.

View Details

Taking the train up to Dallas tomorrow for a quick 24-hour trip. Initially was trying to save money in coach, but just upgraded to a roomette so I can more easily work and enjoy the trip. Hope when Brightline is finished with the Vegas line they can expand to Texas. 🚂

View Details

Zilker Kite Festival. 🪁

Blue sky with kites flying.

View Details

Posted Core Intuition 551! This episode covers the launch of Micro.blog’s new podcast transcripts feature, and more generally what AI is good for. A short show, just 22 minutes this week.

View Details

Wrote a help page with some more details about automatic podcast transcripts in Micro.blog, a new feature we shipped this week. Really happy with how this feature came together.

View Details

No one is above the law. 🇺🇸

View Details

The new Twitter API tiers are about what was expected. Disappointing. For Micro.blog, we plan to support cross-posting for a limited number of months, to let folks wind down their use of Twitter. There’s no future on Twitter so all we can do is smooth over the shutdown for customers.

View Details

Just finished a quick demo of Micro.blog at FediForum. Might’ve talked too fast. The variety of demos is so interesting. Mastodon clients, Planetary, WordPress, Flipboard, and others. It’s an exciting time for the open web.

View Details

We’ve launched a new feature for Micro.blog Premium customers: automatic podcast episode transcripts, powered by OpenAI’s Whisper model. I’m excited about this because it’s one of the more practical, time-saving solutions coming out of the rise of AI. The automatic transcripts are so accurate they can be used as-is, or edited by hand as you have time.

I thought it would be clever to ask ChatGPT to write a blog post announcing this feature. You can see the result here. But I threw it out because I like writing my own blog posts!

At Micro.blog, we don’t usually reach for automation first. We curate the Discover section by hand, looking for posts that will provide a snapshot of activity on Micro.blog to help you find new people to follow. We don’t have trends and don’t have public likes or retweets. AI is going to reshuffle many tech products, but we’re never going to have an AI-driven algorithmic timeline. AI is a tool that we’ll only use when there is real benefit that aligns with our principles.

The new transcripts feature is available to anyone hosting their podcast on Micro.blog. When you upload a new MP3, Micro.blog will process it to generate a transcript. You can then edit the transcript or link it from your podcast page.

There is also a new Micro.blog plug-in to add a list of transcripts to your blog, as well as control options to disable transcription and link to the transcript from blog post. Search in the plug-in directory for “Transcripts” to install it.

There’s no extra charge for any of this. Micro.blog Premium has always been $10/month and it will continue to be priced that way. It includes podcast hosting and also email newsletters, bookmark archiving, web page highlights, and much more. We think it’s a great value.

View Details

NSDrinking tonight! 🍻 I’ll be there. I haven’t joined in a while, so will be nice to catch up with folks. Anyone’s welcome.

View Details

It’s pretty incredible how little has changed in podcast RSS feeds in 20 years. That’s a good thing. The podcast ecosystem is not exactly suffering because of any confusion or missing spec features.

View Details

I agree with the spirit of the Podcast Standards Project but I’m concerned about the details. The specification seems overly strict in a couple places (like guid) that will not be compatible with a bunch of feeds.

View Details

The automatic code reloading in React Native is still kind of wild to me. I committed some changes, pushed to GitHub, then switched branches to something else, and the UI updated while the app was running in the simulator. Surprised me even though I know it works that way.

View Details

Just pushed out another TestFlight beta of Micro.blog 3.0. This has some really nice new stuff for managing uploads. Also the return of basic photo filters! Getting closer. Still missing: share sheet.

View Details

The new Zelda looks great. Love the fuse ability featured in this gameplay video.

View Details

I’ve been playing with Wavelength Messenger. Not to be confused with our own Micro.blog companion app for podcasts, also called Wavelength! I wish it was called something else, but ignoring that I think there’s a lot to like. John Gruber’s introduction is the best place to start.

View Details

My copy of Tress of the Emerald Sea arrived! Love the green ink throughout the book. 📚

Inside page of book with green illustration of leaves.

View Details

FediForum is this week! On Thursday I’ll be demoing how Micro.blog fits into the fediverse, and I’ll join in other sessions when I can. You can see the schedule here.

View Details

Worked a bunch this weekend trying to decommission an EC2 server (hosting App.net archives!) by moving millions of little files to S3. Taking forever, often failing. I’ve been maintaining this for years and really want to turn the page on it, but can’t accept losing any data.

View Details

With yesterday’s podcast, we hit 550 episodes. Some listeners may have noticed that we’ve slowed down a little, recording every other week while there has been a lull in sponsors. Hoping we can do a few new secret member-only episodes this year.

View Details

On the latest Core Int, we talk about shifting deadlines for shipping Black Ink and the potential for integrating new AI tools in developing our apps.

View Details

I like this summary by @snarfed of why HTTP content negotiation is more trouble than it’s worth. Simple, different URLs for different things are easier to debug, copy/paste between apps, etc. I often look at Micro.blog’s JSON in a web browser, no special tools needed.

View Details

Great story from the @RogueAmoeba blog about a meeting with Adam Curry, Eddie Cue, and Steve Jobs that may have saved Audio Hijack.

View Details

We don’t use AWS for that much, but costs just about doubled last month with more CDN usage. I tweaked some settings to try to bring it down a little. 💰

View Details

Finished reading: The Cat who Saved Books by Sosuke Natsukawa. Books about books. 📚

View Details

Dunno if I’m late or early to this, but I’m playing with the OpenAI API. Impressive. The folks over there know what they’re doing.

View Details

Really didn’t want to be up at midnight still dealing with attacks on our servers, but here we are. Good news is I was able to optimize a few things that will be helpful going forward anyway.

View Details

Micro.blog was acting a little sluggish so I looked at the logs and of course the servers are being hammered again by “hackers” attempting to exploit security holes that don’t exist. Blocked a bunch of stuff and should be better now.

View Details

Great article in Texas Monthly about Community Impact, a hyper-local newspaper for neighborhoods around Austin, Dallas, San Antonio, and elsewhere.

View Details

I hadn’t been following Hachette v. Internet Archive closely, so spent a few minutes listening to Brewster Kahle’s statement. It seems part of a larger issue of whether we can own digital content or will have to rent it. The Internet Archive is such a force for good, glad they’re fighting this.

View Details

Watching some of the recent Microsoft Copilot demos and playing with Bing, I wonder what AI products they will roll out before everyone else can even attempt to catch up. Maybe a Microsoft voice assistant box? It would leapfrog Alexa and Siri.

View Details

I really enjoyed this episode of The Talk Show with guest Jason Kottke. Their talk of 404 links after years (and decades!) of blogging inspired me to expand our archiver in Micro.blog to make it easier to preserve a copy of web pages you link to. I recorded a YouTube video with the details.

View Details

The new beta of Micro.blog for iOS is coming along really well. We’re at the point where I can see the finish line, and I’m comfortable punting some more features into the next update.

View Details

Spurs eliminated from the playoffs early this year, but you couldn’t tell by watching the 2nd half of this Hawks/Spurs game. So fun to watch. 🏀

View Details

Listening to U2’s Songs of Surrender. I think I was expecting a kind of “Taylor’s Version”-style re-recording, but it’s more a new take like you’d hear at a concert. Love this. 🎵

View Details

Playing with FeedLand reminds me that Micro.blog doesn’t have OPML export. The reason is because some people might have private-ish RSS feeds that power their account. This is rare but I wanted to be careful about exposing the URLs. Need to first add OPML that only includes obviously-public feeds.

View Details

We’re enabling ActivityPub for everyone now, not just recent users. This is needed so that you can fully migrate followers away from Micro.blog if you want to in the future. It will cause email notifications for some folks who haven’t used Micro.blog in years, but I think it’s the best way forward.

View Details

Captured a little video of the lightning on the other side of the storm back at home.

View Details

Long day. Drove into hail somewhere before Denton, then through a thunderstorm between Waco and Austin. It started with lightning playing in the clouds and then the downpour was on us, destroying visibility as we crept down the highway with our hazard lights on. Kind of a Texas-sized welcome home.

View Details

I’ve been a software developer for about 30 years and ChatGPT is the first technology that I can barely comprehend. Still feels like magic. 🪄

View Details

Last day on the road as we make our way through a rainy highway 287 in the middle of nowhere.

Highway with rain on car window.

View Details

Finished reading: Elder Race by Adrian Tchaikovsky. A short, great read. 📚

View Details

Did not finish: Senlin Ascends by Josiah Bancroft. Just couldn’t get into it. Might try to pick it up again some other time in print instead of audiobook. 📚

View Details

I was reviewing a GitHub pull request today for a potential upcoming feature and was struck by how well it represents my workflow with Micro.blog for major new features. Start with some basic structure for the code, add more pieces, then fix bugs and polish it up. Screenshot:

Screenshot of GitHub pull request commits.

View Details

Great milestone as Kottke.org hits 25 years. Jason writes about the early days:

The updates on weblogs & diaries were smaller but more frequent than on other personal sites — their velocity felt different, exhilarating.

View Details

Enjoyed Colorado this week. Heading back to Texas today… Going to miss my new morning routine of walking to the coffee shop with a view of the mountains in the background.

View Details

Pikes Peak from Garden of the Gods. For “horizon”, day 14 of the Micro.blog photo challenge.

View Details

Royal Gorge Route Railroad. Incredible views, good lunch. Makes me want to re-read From the River to the Sea which covered a lot of building the track here.

Photo of train and gorge and Arkansas River.

View Details

Shiny light at Palace Coffee in Amarillo, for day 12 of the photo challenge. Be kind. ☕️

Neon light that spells Be Kind.

View Details

There’s no lesson in impermanence like spray painting your message at Cadillac Ranch only to have it covered up by someone else 30 seconds later.

Car buried in the ground covered in graffiti.

View Details

Posted this week’s Core Intuition, all about social networks and blogging. Bluesky, the AT Protocol, Micro.blog, WordPress, ActivityPub, and Nostr.

View Details

I can’t take Meta’s efforts at decentralization seriously while they don’t even have a usable API for posting to Facebook and Instagram. From Platformer:

Building a decentralized network could also give Meta the opportunity for its new app to interoperate with other social products — a previously unheard-of gesture from a company known for building some of the most lucrative walled gardens in the industry’s history.

View Details

Morning at Lamppost Coffee. As close to a ritual as I have, for day 10 of the photo challenge. ☕️

Coffee and laptop and secret code.

View Details

Finished reading: Assassin’s Quest by Robin Hobb. An extraordinary series.📚

View Details

21 years ago today, my first blog post. A bunch of promising social networks have come and gone in that time. Often feels like very little is permanent, so make sure to have your own space on the web.

View Details

What an incredible milestone for @\_Davidsmith@mastodon.social: 100 million downloads of Widgetsmith. This part of his blog post resonates with me too:

The Indie Developer community has demonstrated time and time again the tremendous capability of the individual or small team. Showing that it doesn’t take massive teams with giant budgets to create things with enduring value.

View Details

Walked up to the coffee shop this morning. The side of the road everywhere still looks like this, leftover branches from the winter storm. Cleanup trucks starting to arrive, but it’s going to take a while.

View Details

Congrats @playdate@panic.com on the Catalog release! I’m updating my Playdate now. It’s the model that I still hope we’ll get for the iOS App Store one day: a curated store + side-loading for everything else.

View Details

Worked this morning at Cuvée Coffee. Bags of coffee beans for today’s prompt “whole” on the photo challenge. ☕️

Bags of coffee beans on a shelf.

View Details

New Micro.blog 3.0 beta going out to TestFlight folks now, adding username auto-complete. Still has a couple glitches but should be a nice improvement when you @-mention people. We are steadily working through re-implementing the features from 2.3 so we can ship 3.0 to the App Store.

View Details

Bluesky is starting to enable custom domains. This is exactly how things should work in terms of identity and portability. Micro.blog has a similar (but less ambitious) way to follow domain names. Would love to see Mastodon get inspiration from this.

View Details

Photos still rolling in every day for our March photo challenge. It’s fun to see some Mastodon posts in the mix too! Check out the grid view on the web for an overview of everything. Not too late to participate, follow @challenges for the prompt each day.

View Details

Stopped at a train crossing as an Amtrak went by. Because today’s photo prompt is “engineering”, thought of a train engineer and got this shot out the car window. 🚂

Amtrak on railroad track.

View Details

Two new iOS app updates to start the week: Sunlit 3.4.4 fixes setting alt text, and another Micro.blog 3.0 beta with support for saving and publishing drafts.

View Details

Day 5 of the photo challenge: tile.

Looking down at the tile floor with shoes visible.

View Details

Looks like Mastodon will be getting expanded support for showing styles in posts. Micro.blog already sends bold, italics, and other basics to Mastodon, so this will be a nice improvement for folks reading in Mastodon.

View Details

In case anyone doesn’t notice the post on @news, there was an issue with loading photos from the CDN tonight after an HTTPS certificate expired. I’ve fixed it and also added the CDN to our monitoring so this won’t happen again.

View Details

I’m going to attend FediForum on March 30th (day 2) to show how Micro.blog and Mastodon work together. Should be interesting! Feels like 2023 is going to be different tech communities coming together in our shared post-Twitter world.

View Details

I’ve been trying the Bluesky beta (still private, but they have a waitlist). I’m open to supporting it because Micro.blog isn’t based on any single protocol. It’s a blogging platform and social network that connects with the web. ActivityPub, Micropub, WebSub, RSS, XML-RPC, whatever.

View Details

Thanks @Aywren for the kind words about Micro.blog and how it connects to the fediverse and other services. Love this line: “Micro.blog has the ability to connect everything together in a crazy good way.”

View Details

Solitude is coffee and a breakfast taco and my laptop, having the whole outside to myself for a little while. Lazarus Brewing. ☕️ (Also trying to do all my photo challenges in black and white for something new.)

View Details

Looking up at the sky as we’re expecting bad weather tonight. Wind is starting to pick up.

View Details

We went seriously down the genealogy rabbit hole last night, with a couple “oh wow” moments of discovery. Need to do a little more research at the library (print books! microfilm!) and then will try to write it up in a blog post.

View Details

John Gruber writing about the App Store / Twitter apps refund problem:

Consider the gut punch of losing your job — you stop earning income. It’s brutal. Now imagine that the way it worked when you get fired or laid off is that you’re also suddenly on the hook to pay back the last, say, 6 months of your income. That’s where Tapbots and The Iconfactory are.

View Details

Love seeing the photos coming in for the March photo challenge. My favorite view is this grid view of thumbnails. Related, I think it’s time we enable the CDN for all blogs by default. I’ll make that change later today and of course you can opt out.

View Details

I’ve said before I never want to change Micro.blog’s $5 standard hosting price. The best way to increase revenue is to get more customers and make our $10 plan valuable. But if we ever change it, I promise not to blame it on macroeconomic headwinds. Customers want clear and honest answers, not spin.

View Details

Good write-up on Six Colors about the updates to Twitterrific and Tweetbot, which let you opt out of getting a refund. Strongly recommend if you had a subscription to download the update and opt out. Just takes a few seconds and will really help those developers.

View Details

Day 1 of the Micro.blog photo challenge! Today’s word is “secure”. I noticed this keyhole covered up or filled in at the coffee shop.

Photo of door handle with keyhole that doesn’t have a place to put a key.

View Details

It’s bad enough that Linode dropped their logo, but now prices are going up by 20%? I haven’t done the math but this is going to be a big hit to our Micro.blog hosting costs. Not happy.

View Details

Can’t believe it’s March already, at least for folks on the other side of the world. Reminder to Mastodon folks: you can follow and participate in the Micro.blog photo challenge by following @challenges@micro.blog. We’ll be sharing some more details as things get underway.

View Details

Loved the first book in this world so decided to get A Day of Fallen Night on release day. Still have a couple other books to finish first before I can start this. 📚

Hardcover book with dragon on cover.

View Details

Last night, stayed up until 1am reading Assassin’s Quest. Felt like I was 17 years old instead of 47. 📚

View Details

With the big character limit change behind us, I had a free morning to work on anything. This is my favorite thing about being small. Added a new CSV export for highlights based on recent feedback.

Don’t sleep on our bookmarks and highlights feature. 🙂 It is going to grow into something special.

View Details

I uploaded a very short 21-second demo video to YouTube, showing the Mac app’s updated character counter for posts with block quotes. Same behavior across all platforms as described in this announcement post.

View Details

In 2014, as I was starting work on Micro.blog, I blogged about the properties of a microblog post, including the character length:

I picked 280 characters instead of App.net’s 256 characters because it’s slightly less nerdy, and feels right at exactly double Twitter’s 140. This should be thought of as more of a guideline than a rule, though — just something to shoot for.

After that, Twitter also doubled their character limit to 280 characters. Mastodon launched at 500 characters. In the years since, it has felt less symbolic for Micro.blog to stick to 280 characters. Thinking about a post-Twitter world, 280 actually now feels kind of wrong.

Micro.blog is based on real blogs, so you can have full-length blog posts with a title, categories, photos, inline links, podcasts, and anything else you’d expect blogs to have. Those full posts don’t have a limit. It’s the Micro.blog timeline that encourages the 280-character limit to make the timeline as readable as possible, not cluttered with long posts or “read more” links.

Today we’re making the next big change to how the timeline works: we’re “rounding up” the character limit to 300, and for short posts that contain a block quote, we’re doubling it to 600.

Unlike some social networks, Micro.blog’s character counter is for the text you will see in the final post. It strips out any Markdown or HTML tags when calculating the length, so there’s no extra cost to italic text or links. And with the 600 limit for quotes, it’s more consistent to use Micro.blog’s “Embed” link to paste in someone else’s post from the timeline and know it won’t be truncated.

This gives posts a little more room to breathe. The posts are still short enough that it’s not a significant change to the reading experience in the way that bumping it all the way to 500 would be. It feels right for Micro.blog.

Micro.blog on the web, the Mac app, Android app, and beta of Micro.blog 3.0 for iOS on TestFlight have all been updated with this new limit.

There’s still more to do. We plan to adopt this change for Micro.blog replies as well, which have always been treated differently than regular posts. Because that’s a more disruptive change, we’ll roll it out separately in the coming months. We have some ideas for improving the UI for long replies to tie replies back to your blog. That will take longer to get right.

Enjoy the extra 20 characters! Happy blogging.

View Details

We’re doing another photo challenge in March! Post a photo each day to your blog, inspired by prompts that we’ll post to Micro.blog.

View Details

New episode of Core Int: I’m the King of the World. We talk about @danielpunkass trying to ship Black Ink for iOS. Then we react to the latest news of Twitter’s Titanic-like slow sinking.

View Details

Actually made a to-do list to coordinate shipping a new feature on all platforms at once: web, macOS, iOS, Android. Takes a lot of juggling even for minor code changes.

View Details

Spending a little time this morning improving performance to combat “hackers” making a bunch of requests to our servers, as they attempt to exploit holes that don’t exist. A large percentage of our total hosted blog traffic is just 404s. Waste of internet bandwidth. 🙁

View Details

I’ve documented how Micro.blog works with the Micropub API’s syndicate-to parameter now that there’s more control over cross-posting. Always feels good to revisit an IndieWeb API.

View Details

From Platformer, this rings true especially for the Twitter API free vs. paid changes that never materialized:

Musk seems to announce a new thing coming “next week” all the time, and often those deadlines pass and whatever feature was allegedly coming is never heard of again.

View Details

It’s really cool what @lex has been doing with his Daily Lex podcast. I hoped we’d see this kind of thing when we built podcast hosting in Micro.blog. Recording even a short show nearly every day is hard… I’ve tried and want to get back into it.

View Details

Today we updated the web version of Micro.blog (and the Mac app) to provide better control over how new posts are routed to external services like Twitter, Mastodon, LinkedIn, etc. Just like showing blog categories, you can show checkboxes and uncheck which services you don’t want Micro.blog to cross-post to. This setting is remembered only for the current post and by default posts go out everywhere.

Screenshot of new checkboxes for cross-posting on macOS.

This is a fairly big change. I expect we’ll learn more as people actually use it. I wanted to get it out for the web and Mac first because we can ship those without waiting for approval from Apple and Google. Mobile versions will follow.

Some of the gotchas you might run across:

  • This is designed for setting on new posts. There’s no interface for changing it when editing a draft post yet.
  • Micro.blog will only show the cross-post services you have enabled in Account → Edit Feeds. If you have multiple feeds, things might be a little weird if there’s no obvious mapping between feeds and your blog.
  • This is for blogs hosted on Micro.blog. If you are posting to an external blog like WordPress, there’s no mechanism to customize cross-posting other than the existing global options.

We’ve also expanded our support for the Micropub API to include syndicate-to fields. This is well-covered in the spec. The Mac app is open source and uses the same public API.

View Details

Finished reading: Ready Player One by Ernest Cline. So much fun. Still going to skip the movie, doesn’t seem possible to adapt without losing too much. 📚

View Details

Working on a couple new features. Some things we try to roll out across all platforms at once. Some it’s better to release for the web first, then follow up with native app implementations. Not an exact science, just depends on what feels foundational or optional.

View Details

Not a lot of words, big change:

Enabled spell checking as you type in new posts for desktop web browsers. For mobile, the best editing experience will still be our native iOS and Android apps.

View Details

Still kind of jarring to see the Akamai logo when I’m using the Linode manager.

View Details

Reading about Biden’s trip to Ukraine. Flight to Poland and then 10-hour train to Kyiv. Hoping we see some photos of the train… Fascinating everything that went into the trip. 🇺🇸

View Details

Micro Camp 2023 will be in May. Online-only this year. Email @jean if you’ve got an idea for a short talk you’d like to share with the Micro.blog community.

View Details

Rolling out some plumbing for future work. Some features are best deployed in phases… Database changes first, then other services bits, then finally clients. Nice to be able to see how things are running before launching for real.

View Details

I try not to complain about pricing because I know how annoying it can be when someone says $5 for Micro.blog is too much, but $12 for Meta Verified is way out of whack. Seems to be a new trend to charge for non-features.

View Details

This new Micro.blog plug-in from @sod is so clever. Post previews using your blog template!

View Details

Another week, another round of ActivityPub-related improvements! Over the last few months we’ve been filling in little details for Mastodon compatibility in Micro.blog. Were at the point where Micro.blog is a good fediverse citizen and has everything most people should need.

Today I rolled out initial support for setting a Mastodon profile header image. This is a feature that Micro.blog doesn’t currently have for its own profiles. Should it? I’m not sure, but in the meantime I didn’t want it to hold back anyone who likes profile headers on Mastodon.

You can upload a profile header in Micro.blog under Account → View Mastodon Details. When Mastodon users follow your account, they will see the header on Mastodon. Here’s a screenshot of part of the settings screen:

Screenshot of Mastodon details page on Micro.blog with header upload button.

Micro.blog also does a better job of notifying followers on other servers when a profile photo updates. Mastodon generally has a different philosophy for storing images than Micro.blog does. Micro.blog loads most images as needed when they are viewed and caches them for a certain length of time, whereas Mastodon waits for a server to tell it that a profile or post has updated and then copies any images to its own server.

We could take most major features in Micro.blog and keep fine-tuning them indefinitely. Mastodon support is no exception, but I think this is a good time to pause. Next week I’m excited to revisit some pieces of the core Micro.blog platform that don’t necessary have anything to do with the fediverse.

View Details

Finished reading the last few chapters of Royal Assassin by Robin Hobb on the flight back to Austin. Can’t wait for the next one. 📚

View Details

Lunch and tea at Guilder.

View Details

Coffee and breakfast and coding at Either/Or. Love this boot glass. ☕️

At a table at the coffee shop, with laptop and iced latte.

View Details

Realized yesterday that a better per-post cross-posting setting is probably the most common Micro.bog feature request over the years. I think it’s time. Expect it soon-ish.

View Details

Yesterday at the Rose City Book Pub, catching up with @jean. 📚

Bookshelves.

View Details

Hung out with a bunch of people yesterday who I mostly hadn’t met in person before, so now I’m replaying every conversation in my head to remember what idiotic things I probably said.

View Details

Columbia River at Astoria.

Photo of the river.

View Details

Of course the HTTPS cert for one of our CDNs would expire while I’m on an airplane. Thanks as always to @vincent for recovering things quickly.

View Details

At the beginning of each week, I make a short list of important tasks to work on. Always nice when it’s midweek and a bunch of things are done, sometimes everything. I’ve found this approach works well for me… Each week is a reset with achievable goals.

View Details

Every time I set up something in S3 or Cloudfront, I have to re-learn how it works. Users, bucket policies, CORS… Doesn’t matter if it was only a few weeks ago that I last configured something, or that I’ve used AWS for years. The UI is optimized for flexibility, not convenience.

View Details

Got some good replies that maybe I’m wrong about UFOs. But assuming we’re mostly alone, I still don’t know whether to be sad or inspired by it. No neighbors means it’s all on us to explore and eventually move to other planets. 👽 Preferably not with balloon power. 🎈

View Details

UFO speculation is funny. Aliens aren’t going to invade with balloon-powered airships! 🎈 I think we’re mostly alone. The universe is vast, but it’s not that much older than our own planet. Not enough time to develop another civilization and solve lightspeed travel. 👽

View Details

We pushed another TestFlight beta out for the Micro.blog rewrite. This adds post editing, which was one of the last things that I missed from the previous shipping version. @vincent continues to do good work on this, and I’ve even started contributing a little bit of code.

View Details

Window art at a doctor’s office.

Happy Valentine’s Day with heart drawn on window.

View Details

“I expect chaos.” — Me, writing in October just after Elon took control of Twitter.

One of my favorite things about blogging is looking back on what guidance might be hidden in old posts. Old blog posts are like a mission statement reality check. Yep, still on track.

View Details

I don’t have strong opinions about football rules like I do about basketball. I think my nitpick with last night’s game is that a 5-yard penalty also came with a free 1st down. Clock management is so critical late in the game that 1st downs shouldn’t be given out easily. 🏈

View Details

I love emoji, but I seem to have become grumpy about custom emoji (like Slack or Mastodon) because they don’t actually work anywhere else on the web. Maybe it’s time for me to let go and embrace the fun, despite the inconsistencies.

View Details

Posted @coreint episode 547 with a recap of last week’s ice storm in Austin, and then a long discussion about enabling Mastodon-compatible usernames in Micro.blog and what the impending Twitter API changes might mean for Micro.blog.

View Details

We’re caught up on Last of Us on HBO, and also started playing the game on PS4. I’ve been mostly in the Nintendo world for years, so I missed a lot of really good PlayStation games. Nice thing about waiting: it was only $10. 🕹️

View Details

Lots of NBA news. Poeltl back to the Raptors. Will miss him, loved having him on the Spurs. Durant to the Suns. And this is mind-boggling on the failed Brooklyn experiment:

Durant, Kyrie Irving and James Harden all arrived to conquer the NBA together, and they all left on the muscle of trade requests. They played a total of 16 games together.

View Details

Continuing to tweak how we handle Mastodon servers that are down. A lot of instances come and go. Micro.blog is better now about retrying connections but also noticing when a server is probably not coming back.

View Details

Excited as LeBron gets closer to the all-time points record. Should happen tonight or Thursday. I loved watching Kareem when I was growing up. Always a Spurs fan now, but it’s been a long time since the Spurs/Heat finals… LeBron has won me over. 🏀

View Details

Setting up more Micro.blog accounts today to be ActivityPub-enabled. Folks will get an email when this is enabled. It can be turned off, and we’ll likely be adding some more settings here too.

View Details

We’re going to be doing more regular TestFlight builds of Micro.blog 3.0 as we get more features filled in. If you want to follow along, check out @news for the latest links and other updates.

View Details

Several days ago, Twitter announced the API will no longer be free. Then Elon backtracked, saying maybe “good” bots will be free. We still have no idea. It’s stunning how badly they are handling… well, everything. 2k employees is still a lot! It’s not the staff, it’s the chaos.

View Details

Ahead of the Twitter API going paid-only, I’ve been looking into how much we’re actually using it. I’d like to keep offering Twitter cross-posting for the next X months to give Micro.blog customers an offramp. It’s hard to make business decisions with Elon’s erratic leadership.

View Details

Finished reading: The Dragon Republic by R. F. Kuang. Not sure I’m going to continue the series. There’s great stuff here but I’m no longer feeling much sympathy for the main character. 📚

View Details

Slowly getting back to normal after a few days without power. Lights came back on last night, and it was like a luxury… Fast internet. Heater. Hot showers. The only reminder of what happened is a yard full of tree branches. Just hoping most of our live oaks survive this. ❄️

View Details

Even though I’ve been personally done with Twitter for years, still sucks to see the API go paid-only. Feels similar to when we had to disable Facebook cross-posting from Micro.blog because Facebook continued to lock it down. But we’ll see… Curious about the price and terms.

View Details

Driving through the neighborhood and it’s like nothing we’ve seen here… For a moment I imagined a giant ice god, sweeping down with frost and fury, smashing trees. ❄️

View Details

We’ve lost more tree branches today than the last ice storm. Hearing the creak and fall, or scraping the roof… Not good. Power has been out most of the day, but we’ve got plenty of firewood. Sitting by the fire with a glass of wine and an e-book and pretending it’s all fine. ❄️

View Details

Woke to the sound of tree branches breaking under the weight of ice. No power. Made a fire. Sun starting to come up. ❄️

View Details

I know that 64-bit numbers are insanely large, but I still hate wasting database IDs. Bug caused hundreds of thousands of unnecessary database records. Oh well, onward.

View Details

Would love to know more about yesterday’s mastodon.social DDoS attack. So many people use that instance, when it’s slow we notice. In this case, it actually revealed a bug in Micro.blog, sending too many requests to Mastodon. Feel bad that it probably wasn’t helping their server.

View Details

Last night, instead of actually reading, I wasted a lot of time conflicted on whether I could finish reading an e-book before it was due at the library or if I should pause and read something else. Usually juggle 2-3 books (at least 1 audiobook)… So much to read. 📚

View Details

Finished reading: River of Stars by Guy Gavriel Kay. I’m sort of left without the right words, dumbfounded after finishing this. Really good. 📚

View Details

January is almost over. Micro.blog has been much more stable after the few glitches we had in November as Mastodon was blowing up. We’ve had ActivityPub support since 2018, but only needed to learn how to actually scale it recently. Progress.

Screenshot showing recent uptime of Micro.blog from October through January.

View Details

When we started using @news more, I was worried about adding noise to people’s timeline, so I customized the feeds to only include “big” changes. That ended up being confusing. I’ve reverted it now so that the news.micro.blog home page, feeds, and timeline include all posts.

View Details

New episode of Core Intuition went up last night. Daniel reviews the redesigned Micro.blog home page. We talk about being a tiny company, open source licenses, and more.

View Details

For puzzled Mastodon users reading my posts, I keep forgetting about Mastodon ignoring blockquote tags. Need to update Micro.blog’s cross-posting and ActivityPub to automatically change the output to use regular quotes.

View Details

This is a really important point from Alan Jacobs:

Mastodon has certain virtues, at least for some, but let’s not attribute to it powers it does not have.

Federation is a step forward, but it does not solve everything. I think my post from 4 years ago holds up here.

View Details

A little morning work and coffee at Lazarus. ☕️

View Details

One of the last missing pieces for Mastodon compatibility was improving DMs, which I rolled out yesterday. We don’t have DMs as a core feature on Micro.blog because I think private messaging needs to be handled very carefully, and not every social network should have its own messaging system. iMessage and Signal are better for this.

DMs just going into the void isn’t good either, though. The compromise we’ve settled on is that when someone from Mastodon sends you a DM, Micro.blog forwards that message to you in email. The email now includes a link to a form for you to send a reply back to Mastodon:

Screenshot of Micro.blog DM reply form.

There is no message history and messages are deleted automatically after 60 days.

View Details

Lighting kit for the LEGO Fiat.

View Details

I’m often humming or whistling a song that is stuck in my head, and this morning for some reason it’s one from Bungie’s Myth. I think? Got lost just now down the rabbit hole of soundtracks on YouTube trying to figure out which theme and game it really was.

View Details

We released a new version of Epilogue for both iOS and Android. I’m finally getting these platforms in sync. I think our bet on React Native is paying off.

This version adds a new post screen to your reading goals. As you blog about books you finished reading, Epilogue keeps track of them. At the end of the year, you can use the new post screen to compose a blog post with all the books you’ve read. Each book cover links to your blog post about the book.

You can see what my books post for 2022 looks like here.

This uses a new Micro.blog plug-in called Book reading goals. If you don’t have the plug-in installed yet, Micro.blog will automatically install it when publishing your blog if needed. (Epilogue works with any blog that supports the Micropub API, but this feature is only for Micro.blog because of the plug-in.)

Here’s a screenshot of the new screen on iOS. You can edit the text before posting.

Screenshot of Epilogue new goals post

With this feature, I’ve completed the transition away from Goodreads, and don’t plan on using it going forward. Good luck with your reading goals in 2023!

View Details

Got a new game: The Great American Mail Race. Similar to Ticket to Ride so I knew we’d love it. The ink stamp to track your score is perfect.

View Details

Happy holidays! Hope everyone is as healthy as possible and enjoying the weekend. It has been a long year… Looking forward to some rest and thinking about 2023. 🎄

View Details

Still cold in Austin, and presumably everywhere. We burned through most of our firewood the last couple days, but thankful for no power outages or other problems in our area. 🎄

View Details

Mastodon client Mammoth also running their own server to make sign-up less confusing. Smart idea that I wonder if others will copy.

View Details

For the last Core Int of the year, @danielpunkass and I talk about blogging! The latest with Twitter, Matt Mullenweg, Mastodon, Micro.blog, and why blogging is the eternal tech of the web that will always come back in style.

View Details

The Android version of Epilogue has been lagging behind iOS, so I dusted it off this week and started a new open beta on Google Play. Still have a few tweaks to make and then will ship both Android and iOS after the holidays.

View Details

In 2023, I plan to advocate more for client apps to embrace the larger IndieWeb and fediverse. Mastodon going mainstream is a great step forward, but we don’t want a monoculture. A key IndieWeb principle is plurality: multiple apps with different codebases that can interoperate.

View Details

Sad but understandable that the Trail of Lights was cancelled tonight. We had tickets for tonight because we were slow getting ourselves organized. Everything is a little mixed up this year, trying to find time for old and new traditions. 🎄

View Details

Pushed another update to the beta Micro.blog iOS app (TestFlight link). Still planning to ship early-ish next year, but I use it as my default now. If it’s missing anything you need, just re-install the official release from the App Store.

View Details

Adding this to the travel list: Miniatur Wunderland in Hamburg, covered in the New York Times today. The world’s largest model railway. Looks amazing.

View Details

The year isn’t quite over yet, but the book I just started reading is going to take more than the next week to finish, so I think the books I read for 2022 is pretty much wrapped up.

During the pandemic I started to read much more than ever before. In 2021, I read 33 books, and this year I set a goal of 40 books, hitting it last week. I’m going to stick with that goal for next year too.

I’m also going to stop using Goodreads. Our Micro.blog companion app Epilogue does everything I need and it integrates with my blog, which is where I want my book reading progress.

I wrote a Micro.blog plug-in that makes it easy to add a list of books you’ve finished to your blog. So here it is below! Each book cover should link to the microblog post where I blogged about finishing the book.

Legends & Lattes Babel The Lost Metal: A Mistborn Novel (Mistborn, 7) The Light of All That Falls Some Kind of Happiness An Echo of Things to Come All the Light We Cannot See The Shadow of What Was Lost The Slow Regard of Silent Things (The Kingkiller Chronicle) Anxious People: A Novel Mr. Penumbra's 24-Hour Bookstore Locklands Shorefall Foundryside: A Novel (The Founders Trilogy) The Wise Man's Fear Gardens of the Moon (Malazan Book of the Fallen, 1) The Ten Thousand Doors of January My Neighbor Totoro: A Novel From the River to the Sea The Cartographers Under Heaven Big Wonderful Thing: A History of Texas (Texas Bookshelf) Enchanters' End Game Klara and the Sun: A novel Castle of Wizardry The Girl Who Fell Beneath the Sea The Paris Library: A Novel Magician's Gambit The Priory of the Orange Tree The Emperor's Soul Queen of Sorcery Sixth of the Dusk Pawn of Prophecy (Belgariad) Stardust Termination Shock White Sand (Volume 1) The Art of Wolfwalkers How to Stop Time The Republic of Thieves Red Seas Under Red Skies

The next version of Epilogue will have this feature built-in. I hope to get it approved by Apple and Google in time for the new year.

At Micro.blog we love books. We don’t love worrying about stats — no follower counts, no pressure! — but I’ve found that setting a personal reading goal helps me make time to read, and it’s fun to reflect on at the end of the year.

View Details

We’ve written a help article about the differences between Micro.blog and Mastodon. Hope it helps clarify a few things! I love our support for ActivityPub, but we’re trying to do something different too and don’t want to lose that.

View Details

We’re starting to plan Micro Camp 2023! Jean just posted the dates. 🏕️

View Details

No question Elon has gone way beyond our worst predictions for Twitter, but his “decisions by tweet” have added to the narrative that the company is chaotic and off course. Imagine App Store policies the same but Tim Cook firing off random edicts about side-loading or linking.

View Details

I agree with @benwerd to stop giving Twitter attention, but as the Micro.blog founder it’s kind of my job to comment. I’ve been wondering why Twitter anti-competitive behavior in 2012 didn’t resonate like 2022. People now have a single, impulsive leader to blame for everything.

View Details

Thinking of folks bailing on Twitter, I spent a little time clicking through old tweets from when I signed off in 2012. What I got wrong was jumping to another silo. Later went all-in on my blog, building Micro.blog, and embracing the IndieWeb. Those are the things that last.

View Details

We re-watched all the Harry Potter movies over the last week or so. Thinking about putting a books re-read on my list for next year… Haven’t read Deathly Hallows since it’s release. 📚

View Details

Twitter blocking links to Mastodon and other networks reminds me of when (10 years ago!) they also shut down Instagram’s “find friends on Twitter” feature. But you know what you can always link to in your profile? Your blog.

View Details

Finished reading: Legends & Lattes by Travis Baldree. I love fantasy books and I love coffee shops, so how can I not love this? Fun story. 📚

View Details

For years I’ve assumed Twitter won’t last forever, but Elon has really accelerated that timeline. Still stunning.

View Details

We just published episode 541 of Core Intuition. Talking about marketing for Micro.blog, influencers, the holidays, and an update on MarsEdit 5.

View Details

I haven’t been able to pin down exactly what I don’t like about AI-generated text and art, but I always got the sense that something wasn’t right about it. I like this post from Lois van Baarle, writing about artists protesting AI:

Many have compared image generators to human artists seeking out inspiration. Those two are not the same. My art is literally being fed into these generators through the datasets, and spat back out of a program that has no inherent sense of what is respectful to artists. As long as my art is literally integrated into the system used to create the images, it is commercial use of my art without my consent.

She’s an incredible artist with a very distinct style. If it was copied by a robot, you’d know. Go check out her Tumblr blog or books.

View Details

Good post from @dave about how blog posts without titles should be handled by feed readers. It seems so simple but doing this the right way is actually a big part of moving beyond Twitter.

View Details

I’m updating book.micro.blog with Elon’s impact on Twitter. Giving myself until the end of the year, then calling it done. For real this time. There will always be something new, but this is a good place to wrap it up.

View Details

Looks like mastodon.technology is officially no more. As part of the shutdown, the instance was sending thousands of ActivityPub “delete” messages, which I’m still not sure is correct if there’s no intent to delete an account. What if a closing instance has a million users? Hmm.

View Details

Does anyone at this coffee shop not have COVID? Maybe I’m stuck in the pandemic mindset, but if you’re coughing and blowing your nose repeatedly in public, stay home please. Sitting outside now. 🙂

View Details

I could write about rumored third-party iOS app stores but it would repeat what I’ve blogged about with sideloading for years. What’s new: many sideloading skeptics now support it. It is inevitable because it’s the only permanent fix to the exclusive distribution/payment problem.

View Details

Jack Dorsey wrote an interesting post (not a Twitter thread!) about a potential future for social media. I disagree with much of it, but I respect that he’s being thoughtful and self-critical.

View Details

Another clever Micro.blog plug-in from @sod called Bookmarks Shortcode. I’m trying this out now and it works well. I hadn’t thought about sharing my bookmarks publicly before, but I like the option.

View Details

Walked to the coffee shop despite likely rain today. Can’t find an umbrella. I bought one in Portland last month but then remembered that no one uses umbrellas in Portland. Accidentally left it in the rental van. ☔️

View Details

“Everything that we make, we try to make the web a better place.” — Matt Mullenweg in an interview on Decoder

View Details

Lately my job seems to be about making sure Mastodon doesn’t turn into a denial-of-service attack on my servers. 🙂 Sorry for the flakiness today, partially caused by how we were handling a flood of messages from Mastodon.technology’s impeding shutdown. Fixed the issue.

View Details

I made a video to show how Micro.blog and Mastodon work together. Hopefully this helps, but admittedly it’s all still pretty confusing, and I think we could explain it better. You can watch it on YouTube here.

View Details

Tested cross-posting from Micro.blog backwards and forwards today with test accounts. Photos, no photos, alt text, Twitter, Mastodon. Always works, so puzzled why it can be flaky for some people. Next up: more logging and upload retries.

View Details

Doing some database housekeeping this morning. One of our tables to keep track of Mastodon activities had grown out of control, introducing a little downtime last night. Should be running much better now.

View Details

I’ve been trying to walk up to the coffee shop every other day. Mostly quiet out as I headed back home, sky reflecting on the lake but no rain yet.

View Details

This bit from our news blog is probably worth highlighting here too. We’ve improved cross-posting in Micro.blog, now preserving alt text when sending photos to Twitter. Required a trip down the OAuth rabbit hole for a new endpoint and updating old code.

View Details

Still confused about the game Elon is playing with the so-called Twitter Files. I’m not seeing any obvious unethical behavior from the old team at Twitter. Just looks like Elon is trying to burn every bridge he crossed over to become CEO, including I expect with Jack Dorsey.

View Details

This week’s Core Intuition is up with discussion of the MarsEdit 5 release and ChatGPT. We go long on this one, about an hour, possibly because I can’t stop rambling incoherently about AI.

View Details

Finished reading: Babel by R. F. Kuang. Fantasy but only just barely, it’s really an alternative history about language, race, class, friendship. Brilliant. 📚

View Details

Just typed “blogged down” instead of “bogged down” in a message. Blogs on the brain, always. 🧠

View Details

Micro.blog has always tried to put all the important URLs for your blog at your own domain name if you have one, including URLs for photos you post to your blog. I like this because it’s consistent with prioritizing content ownership, and makes migrating photos to another blog host easier in the future. We like clean, simple URLs.

Today we’re adding an option to enable serving photos from a content delivery network. This will update your photo URLs to use the CDN, while your home page and other blog pages will still use your own domain name. As your blog grows, especially with years of uploaded photos, this can really improve performance as people visit your blog from all over the world.

To enable the CDN, click on Design and look for the “ Use content delivery network for images” checkbox:

Screenshot of CDN checkbox.

There is no extra charge for this feature, and it’s included in all plans. Happy photo-blogging!

View Details

Brittney Griner finally released. Paul Whelan still held. It’s not exactly a fair prisoner exchange, but at least Brittney is out. 🏀

View Details

MarsEdit 5 is out! Features new Markdown highlighting and quick micropost window. Works great with Micro.blog. Congrats @danielpunkass!

View Details

Feeling pretty chill about the Georgia election. Watching the results with the least stress compared to any election in years. It’s going to be fine. 🇺🇸

View Details

Pushed out a new iOS beta of Micro.blog 3.0 with user search in Discover. Reminder for new folks joining the early TestFlight, still some missing features that we’ll put together before it ships next year. testflight.apple.com/join/lWxM…

View Details

Got a new feature ready to ship but gonna hold it until tomorrow morning. All the pieces are deployed, tested, just hidden in the UI, and always seems like a mistake to launch things late in the day.

View Details

I’ve renamed and expanded the help page about how Micro.blog works with Mastodon. Includes more answers to common questions.

View Details

ChatGPT is a video game. That’s okay, I like video games too! But I’m not going to get distracted into thinking it’s a productive use of work time. I’m enjoying the screenshots folks share and otherwise ignoring it. (Maybe I’ll regret this stance when the robots come for me…)

View Details

Weird dreams last night… I met with Elon Musk and we talked about curation, small developer teams, and how Micro.blog could carve out a nice market niche away from the Twitter chaos. And for some reason my iPhone clock kept mixing up AM and PM. Maybe a sign I need a break.

View Details

Set aside some time this morning to improve compatibility between Micro.blog’s bookshelves and Bookwyrm, but Bookwyrm federation seems flaky. Couldn’t follow other Mastodon accounts either from within bookwyrm.social. Took notes and will revisit later.

View Details

The more I watch Home Alone — especially Home Alone 2 — the more I just feel bad for the thieves. Kevin is torturing them. The kid is twisted and needs help. 🎄

View Details

For replies, Mastodon only links the username (e.g. just @manton), even for users on other servers. Micro.blog always links the full username with the instance name too (e.g. @manton@manton.org). A bit conflicted. Concise but problematic for common names, or verbose but correct?

View Details

On the latest Core Int, @danielpunkass and I talk about the App Store settlement and then follow up again about Twitter, Micro.blog, and Mastodon. Also: not being allowed to pump your own gas.

View Details

AI is getting too good.

View Details

The 25 Days of omg.lol calendar is so nicely done. Today’s feature is feeds, both RSS and JSON Feed. Reminds me a little of our old 12 days of microblogging series, which we’ve been thinking about updating.

View Details

Mastodon has a feature to move accounts from one instance to another instance. I spent some time recently exploring how this works so that we could support it in Micro.blog. I used this to consolidate my ActivityPub presence from multiple Mastodon accounts to just @manton@manton.org, powered by my blog and Micro.blog.

From what I can tell, this feature is not well-documented. It does not exist in the ActivityPub spec. The “Move” activity examples in the companion ActivityStreams spec also do not cover moving accounts. So I’ll document some of the technical bits here in the hope that it’ll be helpful to other folks.

To move accounts, 2 things are required:

  • From the new instance, set up an “alias” that links your new and old accounts.
  • From the old instance, initiate a migration to the new instance.

The Mastodon documentation says that aliases should be set up on both sides of the migration, but this does not seem to be required. In my testing, an alias is only needed on the new instance.

Because I wanted to move to Micro.blog, I added an alias in Micro.blog that references one of my old accounts: @manton@mastodon.social. You can find this in Micro.blog under Account → View Mastodon Details → Aliases.

Aliases are added to the ActivityPub profile information in the field alsoKnownAs. Here’s a snippet of my info:

{ "preferredUsername": "manton", "name": "Manton Reece", "alsoKnownAs": [ "https://mastodon.social/users/manton" ], …} For debugging, I often use curl on the command line to poke around at people’s accounts. To see my full ActivityPub JSON, use something like this with the “actor” URL returned from WebFinger:

curl -L -H "Accept: application/activity+json" https://manton.org/activitypub/manton The next step is to sign into the old Mastodon instance and tell it to move to Micro.blog. Mastodon will take a few actions when this starts:

  • It will verify that there’s an alias on Micro.blog, confirming that both accounts are yours.
  • It will lock your Mastodon account, updating the profile to tell people about the new Mastodon instance. (In my case, actually powered by Micro.blog.)
  • It will send a “Move” activity to all the instances for all your followers, telling them to update their references to point to your new username.

The “Move” activity is sent to each follower’s inbox just like other activities such as “Create”. It includes a field target for the new instance that the user is moving to:

{ "actor": "https://mastodon.social/users/manton", "target": "https://manton.org/activitypub/manton", …} Mastodon won’t add alsoKnownAs to your ActivityPub profile on the old instance, but instead it will add a similar field named movedTo with the new actor URL:

{ "preferredUsername": "manton", "name": "Manton Reece", "movedTo": "https://manton.org/activitypub/manton", …} Updating your followers can take quite a while. Likely hours and possibly over a day, if you have hundreds or thousands of followers. It makes sense that this is a very low priority background task. You can watch the progress as Mastodon essentially decrements your follower count on the old instance.

Here’s what Mastodon now looks like for my account, to tell people that I’ve moved:

This is a fairly new feature in Mastodon, and I expect we’ll need to keep refining our support for it as there is more real-world usage. If you’re using Micro.blog, also remember that Micro.blog is not Mastodon. You can follow and reply to anyone on Mastodon, but you can’t use Mastodon-only clients like the upcoming Ivory from Tapbots.

What about moving in the opposite direction, away from Micro.blog to Mastodon? We’ll be adding that later. ActivityPub is only currently enabled for new Micro.blog users, or if you’ve manually enabled it, so I want to wait until we’ve enabled it for all users. Otherwise there will be no way to move Micro.blog-only followers.

View Details

John Gruber writing in his link to ooh.directory:

Mastodon is — deservedly! — getting a lot of attention as people re-evaluate their use of Twitter. But what I’m digging more in our current moment is renewed enthusiasm for blogging, and, on the consumption side, RSS feed reading.

I’ve been planning for this moment for years and the new activity around blogging might even be more than I had hoped for. Great to see.

View Details

Tripped over myself this morning when deploying a tiny change, breaking a few endpoints in Micro.blog temporarily. Sorry! Uptime has actually been really good this week. I think we’ve solved most of our performance problems with the new load.

View Details

Finished reading: The Lost Metal by Brandon Sanderson. Mistborn era 2 is a wrap. Really want to reread The Emperor’s Soul now. And not long until the secret project books. 📚

View Details

Reading the Twitter 2.0 blog post again, I don’t think it says enough to actually be a vision for the company. Some bits sound okay (“freedom of speech, but not freedom of reach”) and some seem actively misleading (“none of our policies have changed”, just our enforcement).

View Details

Micro.blog has a mini Goodreads-like feature built in. Why not! I love books and this helps me blog about what I’m reading. The bookshelves account page is one of my favorite things.

View Details

Following Mastodon accounts from Micro.blog almost feels like I’ve re-joined Twitter. It’s great to see posts from people I haven’t kept up with in years. The main downside: too many hashtags! Maybe I built Micro.blog just to escape from hashtag overuse and now they’re back. 😉

View Details

Great to see all the posts from folks participating in Microblogvember. I’ve added a new pin for the challenge. It should be redeemed on your Micro.blog account within the next couple days if you used at least 2/3 of the words this month.

View Details

Soccer is not my thing but everyone else’s excitement is contagious… Watching the last few minutes of United States / Iran. ⚽️

View Details

This interview with Will Smith on The Daily Show was really good. It goes just deep enough to be meaningful but still entertaining. Makes me think about not just what he did on Oscar night but also more broadly how we react to mistakes from stars or politicians. Who we forgive.

View Details

If you’re not following the full M.b changes feed, you may not notice the tweaks we’re rolling out nearly daily. One improvement I wanted to highlight: Micro.blog now notices when someone on Mastodon moves their account to a new instance, so you’ll still see their new posts.

View Details

Thinking about the simple truth in this phrase from @brentsimmons: “the web heals as Twitter gets sicker”

View Details

Drove by the new Tesla factory in Austin yesterday while coming back from Thanksgiving… The building is absolutely massive. I guess Elon thinks if he can grow a company to this kind of infrastructure, how hard could Twitter servers be?

View Details

Trying the latest Gluon iOS beta with pinned profiles.

View Details

Good discussion on last week’s ATP about Mastodon, apps, ActivityPub, moderation, and many more potential issues as everyone figures out what to do post-Twitter.

View Details

Jamie Zawinski: Do Not Use Services That Hate The Internet. This is where I say that Micro.blog is made by people who love the web. It’s possible for app-only networks (see: Glass) to evolve to work with the web, but it’s easier to start with open, web-first platforms.

View Details

Great to see 2 new plug-ins recently available on Micro.blog: “Cards Theme” by @ericgregorich, which styles posts with an outline like separate cards; and “Bookshelf shortcode” by @kottkrig, for making a page that includes one or more bookshelves.

View Details

Released an updated Micro.blog for macOS today with a few tweaks. More consistent progress indicators, better Mastodon username highlighting when writing a new post.

View Details

Closed.

View Details

Finished reading: The Light of All That Falls by James Islington 📚

View Details

Another photo from our quick coffee stop in Opelousas. Old federal building, unused now, built in 1891.

View Details

Java Square Cafe, in the building for an old bank in Opelousas, LA. ☕️

View Details

Another random railroad, driving over on a misty day in Louisiana. 🚂

View Details

Should’ve done this last week, but just added ⚽️ to the featured emoji menu in Micro.blog on the web.

View Details

It was nice to mostly take a break yesterday. I know Thanksgiving is just a United States thing, but I like that it’s non-offensive to everyone… Let’s just chill and reflect on what we’re thankful for. Now back to work! Coffee at Rêve in Lafayette and rolling out M.b fixes. ☕️

View Details

Pre-turkey Ticket to Ride. 🦃

View Details

For the Thanksgiving edition of Core Intuition, we talked about… Twitter again! Does Elon know what he’s doing? Should I be CEO instead? Will MarsEdit 5 ship? Enjoy. 🦃

View Details

On the road today. Louisiana rest stop. 🐊

View Details

Quick test from MarsEdit 5’s new quick post window, using a global keyboard shortcut. Nice!

View Details

I was joking about this with my family but can’t stop thinking about it… Imagine a Sprinter van, outfitted with bed, kitchen, all the usual camper van upgrades. Now paint it gray and add an Amazon Prime logo. Easy parking anywhere without questions!

View Details

Old mailboxes on Burnet Road.

View Details

Nice thread here with holiday movie recommendations… About time to review my top Christmas movie list and see if it needs any updates.

View Details

We started using Cloudfront last week and tonight I nervously signed in to Amazon, realizing I had no idea how much we were going to be charged. Answer: $0, for now. Amazon’s pricing is so confusing. One of the reasons I prefer Linode.

View Details

With the news that Tumblr is planning ActivityPub support, a quick reminder that you can already follow any Tumblr user from Micro.blog. Just enter someone.tumblr.com in Micro.blog’s Discover search! I use this for following a few artists and writers.

View Details

My morning so far… Low tire pressure light, found a nail in a tire. Dropped the car off to get the tire replaced. Coffee nearby at Turnstile, watching server log files. 🙁

View Details

Spirited was way better than I expected. Need to watch it again closer to Christmas and see how it holds up. 🎄

View Details

Love this post from @jean about everything bagels and… social media! 🙂

To be fair, everything makes me think about social media at this unsettling and exciting moment.

It’s a rare opportunity. Inspired by what worked before, avoiding the missteps. I like our foundation.

View Details

Love the owl who moved into a tree in our backyard. @traci set up a tripod and moved the Nest camera, so expect more owl photos and maybe video if we can catch him in his evening routine.

View Details

We’re embarrassed with the recent Micro.blog server status. I rolled out more improvements today. We’ll get it fast again. New server coming online later this week too.

View Details

Registered for a new test account on Micro.blog to remind myself what the onboarding flow is like. It’s not great. “Welcome to M.b, here’s a totally blank page! Good luck!” Going to tweak a few little things so new users aren’t lost.

View Details

I thought Elon would wait a couple more weeks — until things got boring at Twitter — before letting Trump back. @danielpunkass and I talked about this a couple days ago on @coreint. This weekend has been busy… Remaining Twitter server folks must have their hands full too!

View Details

On our M.b news blog you can see the daily server tweaks as we deal with new load this week. Might have a handle on it now.

View Details

An appropriately cold day in Austin. Coffee and server troubleshooting while the rain falls outside. ☕️

View Details

Much of our web traffic is now Mastodon requests as posts are shuttled back and forth from Micro.blog and the rest of the web. This has taken a little bit of adjustment. Knock on wood, should be pretty stable right now. 🐘

View Details

Continuing to fix bugs and tweak servers. If you want the technical summary: those “503” errors were when the load balancer decided an app server was error-ing, but it could sometimes take out all the app servers, even if they were fine. Lots of new traffic from Mastodon users.

View Details

Merrick Garland seems really good at his job. If he says trust Jack Smith to make the call about whether to charge Trump, I’m good with that. 🇺🇸

View Details

As traffic increases, we’re experimenting with more caching outside of Micro.blog. Nice to see the huge difference it makes on the Bookshelves page if you have lots of book covers. Much faster.

View Details

David Heinemeier Hansson:

Whichever the outcome, the world wins. If Musk manages to fix Twitter, we’re left with a better Twitter. Great! If Musk manages to burn down Twitter, we’re left with a world free of Twitter. Great!

View Details

Slowly settling into a new routine back in Austin. Walking up to Lamppost Coffee every morning. In suburbia, no one walks anywhere unless they are walking their dog or exercising. Always feels a little weird. I love the quiet, but sometimes miss… people. ☕️

View Details

Last month we improved the ActivityPub support in Micro.blog and enabled it by default for new users. I think it’s about time to enable it for older users too, making it more opt-out than opt-in. Early notice that I’m thinking about flipping that switch next week.

View Details

We posted a new episode of Core Intuition today with yet more discussion of Twitter and related topics. My audio quality is still not great, clearly now an issue with my Mac settings rather than my mic. Will do more testing and fix for next week!

View Details

Reminded today that Brittney Griner has been held in Russia for 9 months and has apparently now been moved to a penal colony. Ridiculous. I know there’s a lot of injustice in the world but this is not complicated… She needs to come home. 🏀

View Details

Apologies for some of the recent “503” errors in Micro.blog. We’ve made some configuration tweaks today that should reduce or eliminate the problem.

View Details

I had my doubts about a no-replies timeline, but based on feedback we added a new setting for it under Account. It’s the kind of thing you have to try to know if it works for you. Harder to find new people and conversations, but good if you temporarily need a quiet timeline.

View Details

Cold weather in Austin. Leftover gumbo. 👍

View Details

Epic vs. Apple continues! Good write-up over at Ars Technica, with quotes from lawyers in the appeal.

View Details

Rewatching last night’s Artemis launch. Amazing. Nice that they have a blog too (via @512px). 🚀

View Details

Last month I flew out to Portland and rented a van from Escape Campervans. The trip started because of meetings but it kept getting extended as I tacked on more places to visit. I posted some photos while I was on the road, which I’ll link again below, but I wanted to summarize a few thoughts now that the trip is over and I’m back in Austin.

It was a fantastic experience. I figured at the end of it, I’d either be completely burned out on the van lifestyle or ready to stay on the road. I’m glad to be home, but not burned out.

My daughter and son joined me for a few days at the beginning and end of the trip, too. It was great to share part of the experience with them and helped avoid loneliness while so long away.

Here are the main camping locations from the trip:

  • Ainsworth State Park, Oregon. Literally the last night the camp was open before winter. Had the Multnomah Falls basically to myself because it was cold and rainy and kind of a miserable early morning outside.
  • Fort Stevens State Park, Oregon. Loved exploring around Astoria. Planning to be back.
  • Cape Lookout State Park, Oregon. Rained all night. Not good beach weather, but a good stop while heading down the coast.
  • Umpqua Lighthouse State Park, Oregon. Still want to eventually visit all lighthouses on the west coast.
  • Prairie Creek Redwoods State Park, California. Beautiful trees, so much to see in nearby parks. Driving through Avenue of the Giants was a highlight.
  • Salt Point State Park, California. Beautiful rocky views of the ocean after the twisting turns of Highway 1.
  • Courtyard at Fisherman’s Wharf, California. A hotel! Ditched the van in a parking lot for a day to explore the city. Felt luxurious.
  • New Brighton Beach, California. Outside Santa Cruz, stayed here 3 nights. 10 minutes to nice coffee shops to catch up on work.
  • Terminal 4, California. Interesting campground on the water, north of the Richmond Bridge. Abandoned buildings everywhere, felt like a post-apocalyptic drive to a view of San Francisco.
  • Marriott at Union Square, California. Splurged on a hotel again for the final night. Saw Bono’s show at the Orpheum Theatre.

Stopped at many other parks, coffee shops, bookstores, and beaches along the way. I’m going to publish my check-in history later.

The timing wasn’t ideal because it felt like Twitter was imploding as I was on the road. There was a lot of new interest in Micro.blog. I worked a little every day, but some days not enough. Even so, having the flexibility to just pull over into a park and use my laptop on the table inside the van from anywhere was pretty great.

I can’t overstate how different it is to have a van to eat and work and sleep in compared to tent camping. It rained for a significant part of the trip, pretty much every day in Oregon, but it never ruined anything.

Feel very lucky to have been able to take this trip. I learned a lot of what to do and not do. Wasted some money on food I could never finish using. Spent a fortune on gas. Nervously navigated cities in a van larger than what I’m used to driving.

But the good days made it so worth it, and even with occasional extra stress of last-minute planning I felt that time slowed down… Awake with the sun, coffee and work, beautiful vistas, some driving, cooking dinner, popping open a can of wine, then reading and bed when it got dark. It was very freeing. I don’t think it was a midlife crisis, but I did feel a few years younger, reminding me of backpacking in Europe ages ago. After some months back at home, pretty sure I’ll be ready to get back out there.

View Details

New 3.0 beta for iOS is out on TestFlight.

View Details

Halfway through November, this month’s Micro.blog challenge continues… Sad to admit that while traveling I dropped off from this one. Not too late to participate or follow along, though! Check out @challenges.

View Details

Interesting post by @simon@simonwillison.net that Mastodon is just blogs. Except Mastodon’s design runs counter to blog features like domain names and custom designs. I’d say Mastodon is more Twitter-like than blog-like… Which is fine, but not the same as a blog-first platform.

View Details

Excited to jump into reading The Lost Metal by Brandon Sanderson, released today. Had a dream the other night where I met Brandon and he critiqued my book collection. 📚

View Details

I got the test printing of my book. Now I can think about final edits. Too long, still should probably cut some things.

View Details

Great post from @brentsimmons, After Twitter:

The internet’s town square should never have been one specific website with its own specific rules and incentives. It should have been, and should be, the web itself.

View Details

On the BART for a while.

View Details

Had a conversation last night before the show that I can’t quite get out of my head… Long story short, makes me want to order a 23andMe DNA kit.

View Details

Not Frozen, although I’d like to see that too one day… Bono: Stories of Surrender. Incredible show. Couldn’t think of a better way to wrap up a couple weeks on the road.

View Details

One of my favorite places in the world: the Walt Disney Family Museum. Checked out the Jungle Book special exhibit, organized in large part from Andreas Deja’s collection. These are 4 animation drawings by Frank Thomas.

View Details

I always have to resist the temptation to compete with every platform. Micro.blog does so much but it also tries to solve specific problems within each niche of features. It’s a challenge to do just enough of the right things without creating the Microsoft Word of web platforms.

View Details

NetNewsWire with an update on the feature to follow Twitter from within the app:

We have no intention of removing this feature, despite Twitter’s troubles and poor prognosis. It’s more important than ever, we believe, since it helps people find their off-ramp from Twitter.

View Details

Kind of a bizarre camp location tonight, had my doubts as we were approaching on the road past shuttered houses and buildings from another era, but the view at sunset was worth it. Terminal 4 at Point San Pablo.

View Details

Experimenting with some new text on our home page, for new folks who are not signed in. We’ll keep iterating and tweaking until we get the messaging right. (Already regretting the jab against billionaires, probably will drop that.)

View Details

Posted a new message to our internal Basecamp with the title “Twitter implosion marketing” to brainstorm how to get the word out. Happy to hear ideas from the community too! If you like Micro.blog, let’s figure out how to tell people how it fits into the post-Twitter world.

View Details

Finished reading: Some Kind of Happiness by Claire Legrand 📚

View Details

More details from @vincent on today’s 3.0 beta update. The app is coming along nicely… I use it as my main Micro.blog app on iOS now, even if I have to reach for the mobile web version for some things.

View Details

Rolled out another change I forgot to make with this morning’s Mastodon changes: your “about me” text from Micro.blog now shows up for Mastodon users too. (Mastodon will cache profiles so may take a while to update everywhere.)

View Details

Released a new beta of Micro.blog 3.0 for iOS. It’s still early, several things aren’t wired up yet, but you can join via TestFlight here if you’d like to follow along.

View Details

Walton Lighthouse.

View Details

We do a bunch of ActivityPub work in the background, and last night the queue was over 100,000 waiting items… So much new activity. Made a couple tweaks and this morning it’s back to 0.

View Details

Coffee and overnight oats at Cat & Cloud. Great start to the workday. ☕️

View Details

We improved a few things with Mastodon support this week:

  • Added alt text for images to cross-post to Mastodon. 🎉
  • Added the ActivityPub username in M.b profile web pages. Links to follow form. 🔗
  • Other performance improvements and bug fixes. 🐞

View Details

I was hopeful for Beto until I went to early vote in Texas a couple weeks ago. No wait. No line. No one was there. Expect the turnout was terrible. Disappointed, but maybe nationally Democrats can hold on. 🇺🇸

View Details

Keeping the news off and planning to go to bed early and check election results in the morning. I have low expectations for the midterms, and win or lose I think I’ll sleep better if I ignore it. The protracted results 2 years ago over several days really messed with me. 🇺🇸

View Details

ActivityPub is notoriously chatty, and all the new activity has been dragging down some of Micro.blog’s background tasks. I’ll be rolling out a series of optimizations and Mastodon-related tweaks over the next couple of days.

View Details

New Brighton State Beach. Wi-fi at the park, 10 minutes to Verve Coffee… I may never leave.

View Details

A few days ago at Salt Point. After camping, detoured into San Francisco for a day of being a city tourist with reliable wi-fi.

View Details

Noticed some Micro.blog background queueing problems that could’ve significantly delayed a few things, such as deleting blog posts. Fixed and should be catching up now.

View Details

Election day! If you’re in the US, make a plan to vote today. I’ve been traveling and out of my usual routine of reading the news every day, which has actually been nice. 🇺🇸

View Details

Avenue of the Giants.

View Details

Somewhere along the Oregon coast yesterday.

View Details

On the latest Core Int, I catch up with Daniel from the road to talk about this week’s Twitter chaos and the upcoming MarsEdit 5.

View Details

⬆️ Garden House, at Shore Acres State Park.

View Details

The van at Umpqua Lighthouse State Park.

View Details

Definitely still some quirks in our ActivityPub implementation, which I’ll be smoothing out as we notice problems. Getting better, though! So much new activity as people bail on Twitter. I’ve waited 10 years for this and it’s still remarkable to see it happen.

View Details

Devils Churn.

View Details

Maybe I didn’t pick the perfect time to take a road trip and work even more remotely than usual. Elon Musk chaos, hosting connectivity problems like we’ve never seen before… Knock on wood, hope that’s the end of it for a little while.

View Details

My traveling buddy for this road trip.

View Details

Woke up to rain and the wind howling and the notices that Micro.blog had a long outage overnight. Sadly a networking issue at Linode that was mostly out of our control. Sorry for the downtime.

View Details

Found the ocean. Fort Stephens State Park.

View Details

Cool new service from @vincent for embedding “shoutouts” (could be like ads or other announcement-type things) on your web site: Shoutouts.lol. Confirmed it works well with Micro.blog-hosted blogs.

View Details

Continuing this vanlife adventure into the northwest, I’m at Coffee Girl in Astoria catching up on email and whatnot. I haven’t been brave enough to get out the camping stove in the rain and cold, so no feasts yet, just basic groceries and some fast food. ☕️

View Details

Figured there be some kind of view between Portland and the coast. Stopped about halfway, a nice break in the rain.

View Details

Multnomah Falls early this morning. A little cold and wet outside, had the place mostly to myself.

View Details

I’m in Oregon and then California for a little while, renting a van from the folks at Escape Campervans. Last night at Ainsworth State Park, falling asleep to the rain. Woke before dawn to drizzle and 41° and mild panic that they might not have hot showers. (They did.)

View Details

This is a little silly but I like to remind people this time of year that any microblog posts with “Halloween” or “pumpkin” get a secret Happy Halloween pin unlocked on their account. 🎃

View Details

Love this: Get Blogging! Concise introduction to blogging, different services, apps, reading blogs, and everything else.

View Details

Finished reading: An Echo of Things to Come by James Islington. There is a lot going on in this. Hope the next book in the series has a little less timeline jumping, but really good. 📚

View Details

I can’t tell how much of the “Elon asks programmers to print out source code” story is exaggerated, but it made me think about when I hired @vincent without ever seeing any of his source code! Can that be right? I guess I value the final output more than the bits to get there.

View Details

Skimming some tweets about Jack Dorsey, there is a lot of confusion about what Bluesky is. Most people are stuck into thinking about social network silos, where you jump from platform to platform. As Facebook and Twitter stumble, the future is more distributed and IndieWeb-ified.

View Details

We’re doing Microblogvember again! Jean has the details. Basically, a random word each day to help inspire a short blog post.

View Details

Updated the Micro.blog app for macOS to version 2.6, adding a new option in Discover for finding users, and a bug fix. If you’re already running it, choose “Check for Updates” to get the latest.

View Details

Of all the new TV shows out this year, Andor is at the top for me. Really good writing and characters. Even if you don’t like Star Wars or were burned out by Disney producing too many spin-offs, this one is in another league. 📺

View Details

Just published a new Core Int! @danielpunkass and I talk about Elon Musk actually buying Twitter, what the immediate and long-term fallout might be, Twitter’s Bluesky project, APIs, and network effects.

View Details

Dark outside. Early thunderstorm rolling through Austin. Not a precursor of the work day, I hope. ⛈️

View Details

Went to bed shortly after Elon fired Parag and a handful of execs, so I was wondering when I woke up if maybe all hell would’ve broken loose. But looks much the same over in Twitterland. Maybe a few weeks of calm before Trump is invited back? 🍿

View Details

We’re on the eve of the Elon Musk / Twitter deal closing. In his Dear Twitter Advertisers letter, Elon writes:

The reason I acquired Twitter is because it is important to the future of civilization to have a common digital town square, where a wide range of beliefs can be debated in a healthy manner, without resorting to violence. There is currently great danger that social media will splinter into far right wing and far left wing echo chambers that generate more hate and divide our society.

On first reading, this sounds pretty good. I agree that we shouldn’t be stuck in our own bubbles of misinformation. But the part Elon gets wrong is the premise that there should even be a “common digital town square” controlled by a single company. I reject that idea.

The common digital “square” should be the entire web, with a diverse set of platforms. There should be common APIs but many communities with their own rules, goals, and business models. Concentrating too much power in only a couple social media companies is what created the mess we’re in. The way out is more platforms, free to make the best decisions for their users knowing that there are options to leave and less lock-in for developers.

Twitter’s next few months or years should be interesting. Taking the company private is a good thing, to refocus the company and resources. But I expect chaos. Meanwhile, the mission of Micro.blog continues. Start a blog, get your short posts somewhere you control, and let’s get ready for a post-Twitter web.

View Details

Sounds like the Elon Musk / Twitter deal is now certain. We generally don’t try to capitalize on other company’s bad news, but maybe something special tomorrow to welcome new folks to Micro.blog? Subscription sale? Just thinking out loud. 💰

View Details

Voted. 🇺🇸

View Details

I missed that it has been 10 years since I stopped posting to @manton on Twitter. Still the right call. Would’ve been harder to do anything new if I hadn’t left.

View Details

Early voting is underway in Texas. Vote early if you can! We know it’s a long shot but glad to see Beto out there making a strong case for change. He’s run a good campaign. 🇺🇸

View Details

Reading this Gizmodo take (via @dave) on Apple’s in-app purchase rules change makes me wonder if Meta has ever considered a lawsuit. Unlike Epic, Facebook might not be able to survive without an iPhone app. Apple’s power is immense.

View Details

Spurs fans now confused after the 3-1 start. I still want to see them make a push for the playoffs and forget about tanking. Even the worst team in the NBA doesn’t really have a good chance at landing the top pick. Too risky to throw away a season that could be so much fun. 🏀

View Details

Lots of price increases out there… Apple Music: going up. YouTube Premium family plan: going up. WordPress.com pricing: rollercoaster. Micro.blog: still $5/month, maybe forever! But please feel free to opt-in to an increase for yourself by clicking Plans → Premium or Family. 🙂

View Details

End of the line in Galveston. 🚂

View Details

We just posted a new Core Int. Daniel gives an update on MarsEdit 5 progress, we talk major vs. minor updates, marketing, and more.

View Details

For bloggers who don’t want to be easily found by Google, I updated the No robots plug-in today to also add a meta tag in addition to the robots.txt file. Should help tell Google really don’t index the blog. Just click Upgrade to get the latest version.

View Details

A bunch of people have signed up for next week’s Day in the Life photo challenge, but it would be great to see even more folks from the Micro.blog community participate. You just post one photo wherever you are on October 13th. We might do a book, so fill out this form too. 📷

View Details

These are really good.

View Details

Hello there. Looking right at ya. 🦌

View Details

Straightforward advice from @benwerd:

You should blog. Yes, you. It's really easy to get started. Use whatever platform you want. And you can subscribe to all your friends' updates too.

Ben Werdmuller https://werd.io/2022/you-should-blog-yes-you-its-really

View Details

Not an earth-shattering new feature, but I’ve been plugging holes in our books API and book covers, so it’s less likely to have a blank cover in Epilogue’s Discover tab. I think the books stuff is really coming along.

View Details

Looks like the Elon Musk / Twitter deal is back on. After so much uncertainty, to be back at this spot, I think it will happen. Expecting things to change gradually over there, and users looking at Micro.blog and other platforms again.

View Details

☕️ Iced coffee time.

View Details

Walked up to the coffee shop to work today. It’s bulky item pickup day in our neighborhood. Felt a little sad for this print discarded with old wood on the curb.

View Details

This talk by Molly White called Blockchain Solutionism is excellent, given at UT Austin last month. Covers the blockchain, Web3 is going just great, uses for crypto, and Web3 solutions in search of a problem. “There are never purely technological solutions to societal problems.”

View Details

Finished updating book.micro.blog with the latest draft improvements. I’m going to package this into an ePub this week for backers and pre-orders, even though it’s not final. Then onward to review the test printing and make final changes.

View Details

My book is about 70 short chapters, and to keep track of editing I made a spreadsheet long ago with notes and color-coding: red for chapters that needed a lot of work, orange for small tweaks, and green for ready to go. Going to do another editing pass and call it done.

View Details

Spurs first preseason game isn’t going great, but still hoping for a fun season. Either this team is going to surprise everyone or at least there will be some cheap games to go see in San Antonio. 🏀

View Details

Acrobat Pro subscriptions going from $25/month to $30/month. I hate to complain about subscriptions, but this might be a little too much for the only thing I use it for: File → Export for my book PDF. Adobe’s gotta cover their Figma acquisition cost somehow.

View Details

The secret to getting feature requests immediately implemented in Micro.blog is to send them to be 5 minutes after I sit down with my coffee. ☕️

View Details

Skylight.

View Details

I was on the road, so missed the Beto/Abbott debate. Catching up with some of the video clips and news coverage. Really bizarre that there was no in-person audience. I know Dems especially in Texas don’t want to risk hoping, but… I think this election might be close.

View Details

Apple downgraded my iPhone trade-in from $300 back, to $75. Guess they noticed the tiny little scratch that I’ve been ignoring for years. Sigh.

View Details

NBA pre-season starts today! Glad to see NBA League Pass cut their yearly price in half, but still thinking about whether I really need it… We subscribe to way too many streaming services. 🏀

View Details

I often curl a URL and then pipe it to open in BBEdit. Great for looking at RSS feeds. I’ve been meaning to set up an alias or script to make this easier… Realized today that the bbedit command line can accept a URL! 🤯

View Details

MarsEdit updated today with a preference for showing the title field, plus other fixes.

View Details

Time for our next photo challenge! Coming up next month: A Day in the Life of Micro.blog 2022. Check out Jean’s blog post for the full story and a form to sign up. It’ll run 24 hours starting October 13. 📷

View Details

We posted this week’s Core Intuition, mostly about Meridian! @danielpunkass also gives me feedback about Micro.blog bookshelves and whether they should be more generalized.

View Details

Today we’re rolling out better support for attaching multiple photos to a post in Micro.blog on the web. The native apps have been able upload to multiple photos with a post for years, so it’s a little embarrassing that it has taken so long to get the web version updated too.

If you click on an attached photo, you will also see new options for removing the photo or setting a description for the photo, which is included in the HTML’s alt tag.

Attached photos are added at the end of a post. We think this streamlined approach to the UI is the best default for most people. If you want to mix the photos in between paragraphs of text, you can continue to use the “Copy HTML” button on the Uploads page and paste the img tag into your post. Our companion iOS app Sunlit also has more control over post layouts.

Note that these improvements do not change how photo posts are displayed in the Micro.blog timeline. Short posts with a single photo or a few photos are shown inline, and longer posts are truncated with a link back to your blog.

Enjoy! Happy photo-blogging.

View Details

We’ve updated Epilogue for Android, catching up with the features released for iOS. The old version for Android was admittedly a little broken… Should be working well now, including the new reading goals interface.

View Details

Game 3 of Vegas/Seattle WNBA semifinals was so good today. Wish I had been watching more of these teams earlier in the season. 🏀

View Details

Attempting to make my iPhone less frustratingly secure, I’ve tweaked some of the passcode settings. Don’t require attention. Added another Face ID. Let everything happen when locked that’s an option. Seems better.

View Details

Watching the locations/venues session video from IndieWebCamp Berlin. I wasn’t able to participate in this one, even remotely, but glad to see IndieWeb folks were able to get together.

View Details

Went to see Bullet Train for Alamo’s $3 cinema day. Really good. 🍿

View Details

Artemis launch scrubbed again. Disappointing, but we’ve waited decades to get back to the moon, so we can wait a little longer. Let’s get this right, NASA. 🚀

View Details

I had my doubts as Rings of Power started, but they won me over by the end of the first 2 episodes. It’s not how I would’ve made it — I’d love to see a new hand-drawn or stop-motion Lord of the Rings — but for what it is it’s excellent. Some beautiful scenes… Spared no expense.

View Details

Micro.blog for Android has been updated to version 1.1! Dark mode and other improvements. 🤖

View Details

Finished reading: Shorefall by Robert Jackson Bennett 📚

View Details

I checked out Irie Bean Coffee for the first time and… people smoking cigarettes on the patio? Ashtrays? Like I had stepped back in time to 1990s Austin. They don’t care about your hipster third-wave coffee shop ambience and I kind of respect that. ☕️

View Details

Feeling nostalgic driving through south Austin today. 30+ years ago, walking along Riverside to Austin Books to pick up comics. Putting quarters into Donkey Kong in the lobby of an old hotel. So many memories of a lifetime ago.

View Details

Austin from the other side of Longhorn Dam.

View Details

Scheduled my updated variant booster for next week. Now extra paranoid that I’ll get COVID before then. 💉

View Details

We’ve been playing Root more. It took about 4 play-throughs and watching multiple how-to videos to finally get the rules right. Great game. 🎲

View Details

Feel like our companion app Epilogue has matured quite a bit. Started as a fun experiment, now one of my favorite little apps. I added its own page in the Help Center today so we can better keep track of version history.

View Details

When I was first working on the Micro.blog prototype, I was so worried that someone would launch a similar service before me or soon after. 5 years later, turns out no… There are a lot of interesting platforms but really nothing close to the breadth of what we’re trying to do.

View Details

September already? For today’s episode of Core Intuition, we talk about next week’s Apple event and other random topics like 5G.

View Details

Dusting off Android Studio. Upgraded a few things. The quality of the Android build tools is like Project Builder circa 2002. Really poor experience that Apple would never settle for, and Google shouldn’t either.

View Details

Epilogue 1.4 for iOS is now available on the App Store. Check out the blog post on the Epilogue microblog for screenshots of the new Goals tab.

View Details

Sounds like the Omicron variant booster could be available as soon as next week. I’m planning to get it. It’s a little awkward that they haven’t finished human trials, but I guess I trust it. It’s like a bug fix update to an app you already love. 💉

View Details

Sneak peek screenshot from @vincent of the next major update to Micro.blog for iOS. We’ll be starting a very early beta soon. A lot is changing for iOS, so it’ll take some time to get right.

View Details

The beta of Epilogue 1.4 with the new reading goals feature is out for iOS. Will probably ship it to everyone later this week.

View Details

I’ve been working upstairs lately for a change of pace. Listening to the rain today. 🌧

View Details

As posted to news.micro.blog, I updated our API to keep track of reading goals. This was the last feature I was still using from Goodreads. When you blog about a book you’re reading, Micro.blog can automatically update your goal progress for the year. All blogs, all the time! 🙂

View Details

Our app Epilogue is the little happy place I go when I need to work on something fun and simple. But it’s not wasted procrastination time… It also contributes back to the larger goal of encouraging posting to your own blog. Sneak peek at next version.