❌

Normal view

Whisper and SpeechAnalyzer

22 July 2026 at 21:34

Om Malik (2023):

One of the key advantages of MacWhisper, as it utilizes the Whisper technology, is its superior accuracy in transcriptions compared to other services I have used. I was an early adopter of Rev.com and eventually switched to Otter.ai, for which I paid approximately $100/year. However, I have since canceled my subscription.

[…]

After comparing the audio transcripts from MacWhisper and Otter, I found that while Otter’s formatting is superior, there is hardly any difference in the transcriptions. I started with the free model, which was sufficient for my needs, and eventually upgraded to the large models. Nowadays, I primarily use MacWhisper to transcribe my voice memos, which I then import into Lex.Page.

Bon Adamson:

Whisper, which is made by OpenAI, has the distinct advantage of allowing you to transcribe audio in almost any language you may ever need to. For the time being, Otter can only transcribe English. The benefits of better accuracy and accurate punctuation that the service already holds over Siri hold up across other languages as well. If you’re looking to transcribe non-English audio accurately, Whisper is definitely the best option available on Mac.

Dan Moren:

By taking advantage of OpenAI’s Whisper framework, Audio Hijack can now take any audio it’s recording and generate a text transcript. While this process was possible before—see Jason’s lengthy post about his workflow—it required a lot of fiddling and several different tools to accomplish; it’s certainly a lot easier to simply drop Audio Hijack’s block into your existing session. If you record multiple sources, it can even appropriately label each one—though if you record multiple people via one input, say the other end of a Zoom call, it can’t distinguish between the various participants.

Inscribe (2026, Hacker News):

Apple’s new SpeechAnalyzer is the most accurate on-device speech engine we tested. It beat every Whisper model we ship, including Whisper Small, on both the clean and the noisy half of LibriSpeech, while running roughly three times faster than Small. And the API it replaces, SFSpeechRecognizer, came last on clean speech: behind even Whisper Tiny, a 40MB model.

[…]

The new API cuts word error rate by 3.5 to 4x on the same audio: from 9.02% to 2.12% on clean speech, and from 16.25% to 4.56% on noisy speech. There is no accuracy trade-off to weigh; the new API wins everywhere we measured, and it produces punctuated, cased text where the legacy engine’s output is rougher.

[…]

All five engines ran comfortably faster than real time: between roughly 12x and 40x on the M2 Pro, meaning an hour of audio transcribes in about 1.5 to 5 minutes on-device. SpeechAnalyzer was about 3x faster than Whisper Small per second of audio while beating it on accuracy.

Yuki:

SpeechAnalyzer’s ReportingOption.fastResults reads like a knob you’d reach for when you want to trade power for latency. That framing is what cost me the afternoon.

[…]

If a recording matters — and in a notes app, a lost meeting is the worst thing that can happen to a user — then the container you write while recording has to be PCM in CAF. Not m4a, and not AAC-in-CAF either.

[…]

AVAudioEngine’s inputNode silently ignores your device selection

[…]

I wanted summarization to run on-device. Everything else in Nib’s transcription path does, the audio never leaves the machine, and it would have been a much cleaner story to tell.

But 4,096 tokens for the Foundation Models isn’t enough.

Previously:

Sunsetting Google Earth for Mac

22 July 2026 at 21:33

The Google Earth Team:

We’re continuing to make Google Earth on web and mobile (Android | iOS) the best place for people to get helpful geospatial insights. While you can continue using the legacy Google Earth Pro desktop app, it will no longer be available for new downloads beginning on June 25, 2027. We encourage using web and mobile for the best Google Earth experience.

Via Nick Heer:

This is a two-factor loss: the MacOS app is Intel-based and, thus, will no longer be supported by the system come next year.

[…]

On the Google Earth community thread, you will find comments from people with all sorts of interesting use cases for the desktop app.

Rui Carmo:

This is going to be the end of an era for me. One of the first things I did with the early versions of Google Earth was wire it up to Vodafone’s mobile network data, producing some genuinely unique–for the time, at least–visualisations of network usage over time.

Previously:

The EnshAIttification of Day One

21 July 2026 at 21:28

Aleem Shaun:

I’ve used Day One for more than a decade. It was an excellent journalling app. Private, minimal, easy to use, with excellent features such as geolocation, weather, ‘On this Day’, and book printing. Features that got out of the way and either worked quietly in the background or appeared only when you summoned them. That’s changed.

Now there are new subscription tiers. Previously, the tiers were Free and Premium. Simple. Premium included sync and a few other things that I can’t remember, but it was compelling enough that I’ve been a Premium subscriber from the beginning. Now, without consultation, I’m Silver (not Premium), and there’s a new, more expensive AI-driven tier, Gold. I don’t object solely on that basis. You would think I could just choose to remain on ‘Silver’ and all would be well. But no. Even with these features turned off in settings, I’m visually prompted in the app to upgrade to Gold and use the Daily Chat (with AI), which I’ve turned off and can only use if I upgrade. And yet, there it is, taunting me.

Via Eric Schwarz:

Even Apple is guilty of doing this in the Settings app and the former iWork apps.

Previously:

Licensing a Mac App With RevenueCat

20 July 2026 at 16:28

Jared Sorge:

I know there are options out there like Paddle, FastSpring, and Lemon Squeezy that have worked for many apps like mine over the years. But I also wanted something simple for my users. Not to mention Apple Pay was a must-have.

I believe all the services he mentions do support Apple Pay.

  • RevenueCat serves as the source of truth for whether or not a customer is licensed.

  • I create RevenueCat customer IDs from local iCloud identifiers (more specifically, calling userRecordID() on my CKContainer in CloudKit).

  • When the user makes a purchase, they earn an entitlement that I look for in Arborist to grant them a license.

He doesn’t need to run his own server, and the purchases are automatically tied to the user’s iCloud account, so there are no e-mails or serial numbers to deal with. On the other hand, well, it’s all dependent on the Apple Account.

The app, which helps manage Git worktrees, is shipping now.

Previously:

Git Tower 17

20 July 2026 at 16:27

Bruno Brito (release notes):

In Tower 15, we introduced the “Fully Merged” badge and Automatic Branch Management to help you keep your repository tidy. With Tower 17, we’re taking the detection behind that badge to a whole new level. […] Tower now matches your local branches against merged pull requests from your hosting service, such as GitHub or GitLab.

[…]

Trust is everything when deleting branches — so we redesigned the “Fully Merged” hint view to show you exactly which checks matched.

[…]

One that is particularly noteworthy is that updating submodules is now significantly faster! Tower gathers each submodule's Git data concurrently instead of one at a time—something you will especially notice in repositories with many submodules.

I’m sad that they got rid of the yellow icon.

Previously:

San Francisco Demands Removal of Nudify Apps

17 July 2026 at 22:16

Matt Burgess (MacRumors, ArsTechnica):

On Thursday, San Francisco city attorney David Chiu sent legal notices to Apple and Google demanding that they remove from their app stores 13 face-swapping apps, which allow users to create AI-generated nonconsensual nude images. The letters say the Silicon Valley giants should stop “aiding and abetting” the sale of explicit deepfake images and “sever” business relationships with the app developers.

[…]

Researchers have repeatedly found and reported apps in Apple’s App Store and Google’s Play Store that allow people to generate sexual images using AI—including some apps being rated as suitable for use by children. While new laws and bans aim to tackle the scourge of explicit deepfakes online, technology and social media companies consistently direct millions of people toward the harmful tech.

Both Apple and Google have developer policies that prohibit pornography, abuse, and harassment on their platforms.

Burgess gives the impression, which is my base assumption, that these 13 apps were clear about what they do, so App Review has no excuse for missing them. But I’m sure it’s keeping us all safe in other regards.

Meanwhile, in a preprint research paper published in May, researchers from Cornell University and Georgetown University identified 420 apps offering general face-swapping capabilities on Google’s and Apple’s app stores. They tested 155 to see if they could be used to create face swaps with nude images; in 70 percent of cases, it was possible, with the apps not including safety measures to prevent this.

Previously:

Update (2026-07-21): Danny Bradbury:

Chiu isn’t arguing that hosting an app automatically makes a platform liable for what it does. Platform operators already won that battle with Section 230 of the Communications Decency Act. That 30-year-old law says websites generally aren’t responsible for content posted by users, allowing platforms to host user-generated content without getting sued every time someone defames someone in a comment thread.

Courts have often extended those protections to cover app stores too. Apple and Google are treated as distributors of whatever a third-party developer uploads, rather than publishers.

Chiu is attempting to sidestep that argument by focusing on the companies’ payment systems, noting that Apple and Google collect a cut of every in-app purchase. According to the Tech Transparency Project (TTP), that means they profit from apps that generate revenue by creating non-consensual intimate imagery.

SpamSieve 3.3.1

15 July 2026 at 19:53

SpamSieve 3.3.1 is an update of my Mac e-mail spam filter that improves the filtering accuracy and includes various optimizations, fixes, and updates for macOS 27. Some interesting engineering issues were:

  • I’m still supporting macOS 10.13, but the app can now build with the macOS 12 deployment target in preparation for Xcode 27. The way Swift handles calling deprecated APIs remains annoying. You need workarounds like protocols to suppress a warning in a particular region of code. Often, I am updating to a newer API, but I want to continue using the old one on earlier versions of macOS. Right now I am heavily testing on macOS 26, so I would like to only deploy the new code there. Sometimes the initial versions of APIs are buggy, and I don’t want to have to retest every feature on every version. But Swift doesn’t like me to gate the calls to macOS 26 and later if the new API was actually introduced in, say, macOS 11.

  • The most risky update was probably switching to the Swift API for Scanner. This is tricky because the current scan position changes from being based on UTF-16 indexes to String.Index. And in some cases my code was intentionally scanning into the middle of a combining character. I was really glad to have extensive tests here.

  • Recent versions of Tahoe introduced a Core Data bug that broke save recovery (when invalid Unicode can’t be written to the database and we have to fix it up first). When the error comes in, SpamSieve looks under the NSDetailedErrorsKey key, but the value of this key is "NSDetailedErrorsKey" while the actual error info is under the key "NSDetailedErrors".

  • Database corruption combined with a Core Data bug and two Swift behaviors were causing crashes. The root problem, I think, is that in this situation Core Data neglects to set the error pointer for -[NSManagedObjectContext countForFetchRequest:error:]. Normally, Swift would detect this and throw a generic nilError. However, this method signals errors by returning NSNotFound instead of nil. It’s annotated as swift_error(nonnull_error), which I think means that Swift doesn’t even look at the return value, only the (unset) error. So my code was receiving NSNotFound on the non-error path, treating it as a real count, and doing some math with it, which (by default in Swift) leads to a crash if there’s overflow. Now my code checks for NSNotFound and uses Int.addingReportingOverflow().

  • I reimplemented Core Data batch fetching because of two problems with the fetchBatchSize option. First, it logs spurious errors when fetching from multiple stores at once. Second, it leads to high memory use. It will load objects in batches, but it never releases the earlier batches. You can manually refault objects that you no longer need, but it will still hold onto the full object shells, which can add up. My implementation only holds onto IDs, and it can fetch the IDs using a different context than the objects to push more work to background threads.

  • I’m now using String.makeContiguousUTF8() in various places to avoid slow iteration of bridged strings.

  • There was a regression where some menu code could crash on macOS 10.13. -[NSMenu setItemArray:] is only available on macOS 10.14 and later, whereas the getter is always available. With old Objective-C, the two methods could be annotated with separate availabilities. The Objective-C property syntax doesn’t allow this, so there’s no way for the compiler to flag calls where the setter is missing.

  • The AppleScript support works much better with large data sets. The key, I think, is to never return an array to Cocoa for a scripting property/element. First, if you give it a lazy array it will sometimes try to access all the elements even if it only needs a few. And, second, AppleScript will run out of memory if the array is too large. By using indexed accessors, you can maintain laziness and only convert one object to a descriptor at a time. By caching a batch-fetching collection, you can limit the number of fetches and respond quickly when AppleScript requests individual objects.

Previously:

Flickr 5.0

15 July 2026 at 19:52

Phil Gyford:

Flickr recently updated their iOS/iPadOS app to version 5 (App Store link) and, while it’s not radically new, for a service whose changes have been incremental over recent years it contains a lot of differences. However I’ve yet to find any official changelog or update information.

[…]

When displaying multiple grouped photos from a person you’re following, it is no longer possible to view all the subsequent ones, other than the three or four initially displayed.

In the list of your Followers’ photos, their name now appears under their photos, so you must scroll down beyond the photos to see who took them.

[…]

When zooming into a photo the app no longer loads a higher resolution version, so now the zoomed-in version will be very pixellated.

He has a long list of missing features that may or may not be coming back. And there’s what seems like a major change: tags can no longer use capital letters.

The main changes I noticed were:

  • In the Home/Discover view, when there’s a large group of new photos, you can only go into the group and view them individually, swiping to see each one. There’s no longer a way to see the whole group at once and scroll through it. (And tapping on the group icon or number of photos doesn’t do anything.)

  • Double-tapping to favorite doesn’t work in some situations.

  • The interface is more busy, showing more interaction chrome like other social media sites, rather than focusing on the photos.

  • Swiping/navigation seems more clear than before, though without the old app side-by-side I can’t be exactly sure what’s changed.

Update (2026-07-16): Wesley Moore:

The Android version has been updated too:

“Flickr is back and better than ever — rebuilt from the ground up with a fresh new look and feel.”

I would guess it’s been built with cross-platform technology as it looks the same and came out the same time as iOS. The performance is terrible on Android. Scrolling my Photostream is juddery on my Pixel 9a (120 Hz display). It’s worse on my Android tablet.

Scrolling between photos swipes the whole UI (not just the photo), there’s also a flash of white loading the new photo. Needs some serious iteration.

See also: Reddit.

Update (2026-07-27): A. Lee Bennett Jr.:

Hooray! #Flickr restored a thumbnail view of all items from a specific post.

It turns out that Flickr 5.0.3 reverts back to the 4.x codebase.

Flickr (Reddit):

We know the new app hasn’t met the bar you expect from Flickr. Since launch, we’ve heard your feedback about bugs, missing features, and rough edges, and we want to acknowledge that directly. Here is where we currently stand:

iOS: We’re in the process of rolling back the iOS app to the previous version while we address these issues. You should see this reflected in the App Store shortly.

Android: The Android app will remain on the updated version. Due to technical limitations and the risks involved in reverting, a rollback isn’t possible on this platform. Instead, expect frequent updates as we fix bugs and restore preexisting features.

Across both platforms, this app refresh represents a significant, long-term investment in the Flickr app. The app was long overdue for an update and getting it right matters to us. Thank you for your patience, and for continuing to share what’s missing and not working. It’s shaping exactly what we address next.

ChatGPT Work and ChatGPT Classic

10 July 2026 at 16:47

John Gruber, earlier this week:

When ChatGPT is attached to an open document in another app, it’s not a snapshot at the moment of attachment, like what you’d get by copying and pasting the whole thing into the chat, or by dragging the current version of the file into the chat. It’s a live ongoing attachment, so as the attached document/note changes, ChatGPT sees the changes. It’s such a great feature, and I don’t think it exists on any platform but the Mac. And it couldn’t exist on iOS, by design, doesn’t allow for inter-application communication.

I worry for ChatGPT’s future, though.

Juli Clover:

OpenAI today announced ChatGPT Work, a ChatGPT agent with built-in Codex that can complete tasks across web, mobile, and desktop using information from your apps. ChatGPT Work can execute multi-step tasks, using scheduling to work independently. Like Claude Cowork, ChatGPT can use your computer to do tasks in the background across apps.

[…]

With OpenAI merging Codex and ChatGPT, there is a new ChatGPT desktop app that’s available across Mac and Windows. Users who have the Codex app installed can update it to turn it into the new ChatGPT desktop app. The existing ChatGPT desktop app is being renamed ChatGPT Classic.

Zac Hall:

You can watch today’s livestream announcement video below[…]

[…]

It’s possible to have ChatGPT Classic, ChatGPT, and Codex installed, but the way forward seems to be just running the new ChatGPT desktop app. Codex users can still use the Codex app icon, but the app will be called ChatGPT.

The ChatGPT Classic app looks more native Mac-like, so that might be an issue for users.

Steve Troughton-Smith:

LOL @ OpenAI replacing the native AppKit ChatGPT app with the Electron Codex app after @gruber’s recent posts on the topic 😂

(It’s almost like Apple doesn’t have clear messaging on the right way to build native desktop apps anymore, and, if Apple doesn’t know, why on earth would third-party developers make that investment)

Federico Viticci:

The rollout of the unified ChatGPT for Mac app really isn’t going well on X/Reddit 🥶

They kinda fumbled it and I think Anthropic did a slightly better job on first try. Even OpenAI’s existing iOS app makes more sense than their new Mac layout right now.

The difference between “normal” chatbot chats, Work/Cowork harnesses with connectors, and Code/Codex local threads and filesystem access is the new UX hell for these companies.

Steve Troughton-Smith:

The chat experience is ChatGPT. Now it’s squirreled away in a sub section of a sub pane inside a vastly more-complex app. It’s hard to imagine anybody who actually wants to use ChatGPT wants to use it this way, Electron or not. And as a Codex user, I resent having my Codex deleted and renamed ‘ChatGPT’ instead. I don’t want my ‘chats’ anywhere near my ‘work’. This feels like a stupid move that will decimate casual ChatGPT desktop usage

John Gruber (Mastodon):

Looks like I picked the wrong week to quit sniffing glue.

See also: Dithering.

Previously:

Update (2026-07-13): Tony Arnold:

Oh yeah, the new ChatGPT app is as bad as first impressions made it out to be. It’s not just a slow, RAM hungry shell of a thing, but the design and UX are a poorly thought out kitchen sink approach.

Codex has never been great, but this is a confusing mess.

Benedict Evans:

Wow, what a total mess. What is the difference between a project, a task and a chat? Why did chats get a crappy floating window but tasks and projects don’t? Why does choosing ‘plugins’ get me ‘templates’? Am I not allowed to finish ‘setup’ if I don’t use Slack or Google Drive? Why…

Via John Gruber (Mastodon):

OpenAI’s internal org chart is a complete disorganized mess. This new app perfectly reflects that.

The old ChatGPT app was focused. That’s the app that still ships for mobile (which includes iPad, which tells you whether OpenAI thinks iPad is a real computer or a big iPhone), and is, for some Mac users, left installed on their systems as “ChatGPT Classic”. The new app is an incredibly confusing sloppy mess. At a glance it looks like a polished app. But the UI is just slop. It has the veneer of a polished app without actually being organized or structured or labeled in ways that add clarity and coherence.

John Gruber:

So I don’t see “the prompt in the app to download the new ChatGPT desktop app”. If I download the new app manually, I get a disk image. After mounting the disk image, the instructions say to double-click the “ChatGPT” app on the disk image — not to drag it to the Applications folder. If I do that while the old ChatGPT app is still running, it bounces back and forth a few times but nothing new gets installed and nothing old gets removed or renamed. I’m just left with the classic ChatGPT app, still named “ChatGPT”.

If I run the installer on the disk image when the old ChatGPT app is not running, the old app gets replaced by the new one in my Applications folder, and the old app is moved to the Trash. There is no app named “ChatGPT Classic”.

I mean, their Help document does say “the new app may install alongside your current app”, and “if both remained installed”, so they seem just as confused as I am.

Update (2026-07-14): Adam Engst:

And as much as I’ve been focusing more of my attention on Anthropic’s Claude because of concerns I have about OpenAI and its management, ChatGPT has more active users (~1.1 billion) than Google’s Gemini (~900 million), and many more than Claude (~245 million, in part because it’s more focused on enterprise uses).

As such, it’s worth noting three recent changes with ChatGPT: a massively confusing app replacement, the end of the ChatGPT Atlas Web browser, and improvements to ChatGPT Voice.

Update (2026-07-17): M.G. Siegler:

Let’s give OpenAI some credit, once they realize they made a mistake, they act quickly to correct it. Today’s case in point: with an update, ChatGPT now features ChatGPT once again. No, that’s not a joke, and yes, it does speak to a very obvious self-own.

John Gruber:

How in the world did they ship this without sync?

[…]

Bringing back “chat” to ChatGPT is literally the least they needed to do. Hiding chat in an obscure corner of the interface from an app named “ChatGPT” would be like removing text editing from TextEdit.

Sunsetting ChatGPT Atlas

10 July 2026 at 16:47

James Sun (via Tim Hardwick):

Lastly, with all these updates, we are going to be sunsetting Atlas.

All these capabilities were built on what we learned from Atlas users who took a leap of faith on a new browser.

You taught us how agents can help make browsing and doing work on the open web better, and we are applying these learnings to these new products.

Zac Hall:

With the new ChatGPT desktop app, OpenAI now has a desktop app with robust browser capabilities. ChatGPT (and Codex before it) also supports a Chrome desktop browser plugin. This lets Chrome users benefit from ChatGPT integration without completely switching browsers.

Kyle Hughes:

Anthropic and OpenAI have legacy software media in the blender because they are playing a new game. They are legitimately racing to build God. The products they release are one-off fundraising vehicles to buoy the next training run. They are not trying to build long-term consumer goodwill.

Previously:

Weathergraph 1.0.358

9 July 2026 at 19:38

Tomas Kafka:

Pressure is now much easier to read. A new Pro trend strip under the chart shows whether pressure is holding steady, rising, or falling. Fast changes stand out with stronger marks and colour, so you can spot a front moving in sooner - useful for hiking, sailing, flying, fishing, or weather-sensitive heads and joints.

You can now also design the chart more freely with the new theme editor. Mix palette, style, sky detail, and accent colour, or start from a preset, to make Weathergraph fit your style.

This is an example of what it looks like:

Weathergraph: Pressure

Previously:

Sunsetting Textual IRC Client

8 July 2026 at 20:22

Codeux Software:

Textual is the world’s most popular application for interacting with Internet Relay Chat (IRC) chatrooms on macOS.

[…]

Textual supports very powerful modern technologies such as the latest IRCv3 specifications, native IPv6, client-side certificate authentication, and much, much more in an easy to navigate, clutter free experience.

Unfortunately (via Jan Lehnardt):

Textual has been sunset and will no longer receive updates.

Previously:

Update (2026-07-10): rob:

IRC (Internet Relay Chat) is having a bit of a revival in one of the communities I participate in (we ditched Discord), but there are not that many clients for Apple devices?

I’m currently using Goguma on mobile and Halloy on desktop, but they both don’t feel like native apps… (technology stack and especially UI/UX)

[…]

Luckily I recently discovered Mango, which looks very promising.

The Mac Genie:

I would still love to have a modern version of Ircle. Nothing else comes close as the best example of a Mac IRC client.

Apple Intelligence for Home’s iCloud+ Requirements

8 July 2026 at 20:22

macOS 27 Golden Gate Beta 3 Release Notes:

Apple Intelligence for Home requires an iCloud+ subscription starting at 2TB.

Via Rajesh Pandey:

As part of the upgrade, the Home app uses AI to generate summaries of motion alerts from compatible HomeKit Secure Video cameras.

[…]

Apple likely requires the 2TB iCloud+ tier because HomeKit Secure Video already relies on iCloud+ storage tiers. The 2TB plan supports a larger number of cameras, and AI-generated video descriptions would add to Apple’s cloud processing costs.

That makes sense, but it seems odd because the iCloud tiers are named based on storage amounts, yet the feature isn’t tied to how much space you’re actually using. A lower iCloud plan with tons of free space doesn’t get the features, yet a nearly full 2 TB plan does. There are already restrictions where supporting more cameras requires higher plans, but that is at least quasi related to storage.

I reluctantly upgraded to a 2 TB family plan within the last year or so. We don’t store many files in iCloud, messages are set to auto-delete after a year, and I manually offload photos older than a year (except for hearted favorites). It’s hard to believe given how I remember the original 5 GB free tier once being sufficient, but staying under 200 GB became untenable without a lot of extra work. It doesn’t help that Live Photos sometimes gets inadvertently turned on, so that we’re storing all these little videos without realizing it.

Previously:

A New Firefox Look

7 July 2026 at 20:53

Rizki Kelimutu:

Firefox is evolving with a refreshed design that makes the browser feel more modern, approachable, and consistent across desktop and mobile. The refresh also extends to Firefox’s voice and writing style, making product experience feel more human, direct, and unmistakably Firefox.

Via Jeff Johnson:

Nothing says “consistent” like making your large-screen keyboard & mouse UI exactly like your tiny touchscreen UI.

And nothing says “more human” like a manufactured voice and writing style.

rjacob:

Internally, we’ve been calling this work Project Nova, and today we’re excited to share a deeper look at what we’ve been building and where we’re heading next.

The goal of this work is to create a more cohesive foundation for Firefox: making the browser feel cleaner, warmer, faster, and more adaptable.

Some of the areas we’re working on include:

  • Simpler navigation and a redesigned Settings experience
  • Easier access to features like tab groups, split view, and vertical tabs
  • The return of Compact Mode
  • Refreshed visual updates across tabs, icons, spacing, and browser surfaces
  • More customization options, including new themes and wallpapers

Previously:

Update (2026-07-28): athomas (via Thomas Clement):

Starting today, you can try out the next design evolution of Firefox in Nightly.

It’s still Firefox, now with a more cohesive look and feel across tabs, menus, panels, and other browser surfaces. You’ll notice softer tab shapes, a warmer color palette, updated icons, and – after hearing from many of you – the return of Compact Mode and new theme options to make Firefox your own.

Still no AppleScript support.

Update (2026-08-04): Marcin Wichary:

Contra the previous post, just spotted this “Same settings, new look!” callout in Firefox, on a page I have never visited before, talking about a feature I have never used[…]

Sunsetting Maestral

7 July 2026 at 20:52

Sam Schott:

As of June 2026, Maestral is no longer actively maintained. The current version will continue to work until certificates expire.

Via John Gruber (Mastodon):

I don’t know when these certificates are expiring. And I don’t know what I’m going to do when they do. I might try moving everything from my Dropbox account to iCloud Drive. That certainly seems worth trying before I resort to going back to Dropbox’s own monstrosity of a Mac client.

[…]

In theory, because Maestral is open source, someone could fork it and keep it going.

Nick Heer:

I use Dropbox only for some relatively basic but necessary things, like hosting PDFs for this very website, which is why Maestral has been the perfect client for me. It is a testament to the effect of a good third-party app that I have stuck with Dropbox despite its corporate-focused strategy pivot.

I’ve switched to iCloud Drive, which seems better, but not better than Old Dropbox.

Previously:

Castro’s Customer Support Lessons

6 July 2026 at 19:45

Dustin Bluck (archive link, Hacker News):

I had an idea when I bought Castro that human support based around actual user experience was an easy differentiator. I’ve rarely gotten useful answers from support from services I use. I thought if I used my own product every day, read every email and answered it thoughtfully, people would appreciate this, and it would build some degree of loyalty and appreciation.

[…]

However, what I found is this whole thing didn’t work as I thought it would. Sure sometimes we were able to wow customers, particularly when we responded right away with an exact fix for them. But the vast majority of our honest, thoughtful answers were deeply unsatisfactory to users, and it often annoyed them more than anything else.

[…]

Customers email us with confusion about how podcasts work, how the App Store works, how their Mac works, and any number of tangential issues. What tends to happen is the same users do this over and over, and once they find out we answer, the requests get more frequent and more burdensome.

[…]

To the user, any response aside from “Okay, we’re going to build that right now” is meh-to-negative. Various honest responses, such as “I thought about this or tried it in the past and it unfortunately didn’t work very well” are not going to knock their socks off. These just don’t do much in terms of loyalty and rapport.

[…]

Avoiding explanations and specifics tends to get a neutral response and doesn’t suck anyone in or waste too much time. In other words, the best approach for us is what most companies do. Because building loyalty or rapport at the moment something isn’t working and the user is frustrated hasn’t worked. The real positive experience comes when you actually improve the product, so that’s where we’re spending our time.

I have definitely seen all these categories of customer interactions, but I don’t agree with the conclusion. Yes, in the end you want to be improving the product, but I don’t think that’s fully separable from interacting with customers as humans. I’ve found spending time on customer support incredibly valuable for making my products better. Even a lone report of an issue can often lead to a fix and learning something important that has wider implications. It’s also enjoyable and motivational to hear about real people making use of what I’ve built or to turn around someone who started with a negative view. And it seems to help with marketing, too.

I also see a correlation with the apps that I use—the better ones tend to also have good support. That said, I use a podcast app that famously doesn’t offer support. There are different situations, and there’s more than one way to a good product and a successful business.

I do think there’s an art to all this. Not everything can be measured, and there’s more to it than just committing to answering e-mails thoughtfully. You need to set boundaries and steer the interactions to make them productive, efficient, and satisfying for both sides. I’m still learning.

Previously:

Update (2026-07-07): Jeff Johnson:

This is what you get from the free with IAP business model: most of your support emails are from freeloaders!

My apps are upfront paid, thus most of my support emails are from customers. I don’t get overloaded with emails, and paid customers are more incentivized to solve issues with you, because they’ve invested money into the app.

Vitor:

I find myself agreeing with you that customer support is valuable and we should do it. But over the years I have also realised that, in a way, being good at support is punishing. I’ll explain[…]

WhatCable 1.1.7

6 July 2026 at 19:45

Darryl Morley:

WhatCable explains cable speed, charging limits, e-marker data, and connected devices in plain English. Name a cable and it tracks how the cable actually performs over time, so you can spot the one that has started misbehaving. No more guessing why a cable charges slow or refuses to drive your display.

Via Norbert M. Doerner:

It is open source, free, and definitely a tool to look into, if you have external drives on your Mac!

Previously:

Update (2026-07-10): Dan Moren:

For example, after looking at it, I realized that my backup drive was only connected via a USB2 cable. Fine in general for overnight backups, but when it reminded to me when I was troubleshooting some backup issues that maybe I should switch to a high speed cable that supports USB-3.

[…]

For a £9.99 one-time purchase, you can unlock WhatCable Pro, which works on up to two Macs, lets you assign names to cables so you can remember which one it is when you plug it in later, provides more in-depth diagnostics, offers live power metering to see how much juice is being delivered right now, and even more.

NetNewsWire 7.1

1 July 2026 at 21:05

Brent Simmons:

  • The Current Activity window shows what the app is doing right now
  • The Activity Log window shows what the app did recently
  • The Account Stats window shows per-account article and status counts and database sizes, and it includes a Vacuum Databases button which can help with database size and performance
  • The Dinosaurs window lists feeds that haven’t updated in n months (with a text field where you specify n)

It’s great to have more visibility into what the app is doing. I was about to report a regression where Mastodon and some other favicons were pixellated, but this was quickly fixed in 7.1.1.

Previously:

Shutting Down Notion Mail

29 June 2026 at 18:37

Zac Hall:

Last year, Notion expanded its productivity suite to include Notion Mail, an AI-powered email client. Today, the company announced that it’s shutting down the Notion Mail inbox service this fall.

[…]

Today, more than half of Notion Mail users manage emails without ever opening their inbox. So, we’re going all in on using agents to run your inbox.

Previously:

RCS in iOS 27

23 June 2026 at 20:15

Ryan Christoffel:

Today following iOS 27 beta 2’s arrival, Aaron Perris discovered that the update adds at least two key RCS improvements:

  1. Proper reaction support, so no more “Aaron loved an image” messages
  2. In-line replies

Previously:

❌