Jonathan Joelson

@jjoelson
213 Followers
357 Following
989 Posts
iOS developer, basketball fan, Brooklyn based.
Bloghttps://blog.joelson.co
Email[email protected]

Thanks to everyone who came out for LIVE near WWDC 2026!

And a big thank you to everyone who made the show possible: our sponsors @MartianCraft @OmniGroup, the Breakpoints, and volunteers from @Techtonica and the developer community!

We all had a great time performing and celebrating 25 years of James Dempsey and the Breakpoints, and hope you did too!

A recording of the livestream is available at https://livenearwwdc.com/livestream

Hot take: generating commit messages or PR descriptions is one of the *worst* use cases for AI in programming.

The most important thing to know about any code change is the *intent* behind it. A given change is either correct or a bug depending on the underlying intent. AI will happily rationalize any change with a fake but plausible intent.

If the intent is obvious from the change then I don’t need the message. If it’s not, then I really need the message to not be generated based on the diff.

Nebula is probably my favorite new platform in the past decade. The content and curation are peak. I wish I could work on their Apple apps, especially their tvOS app because it has occasional reproducible glitches and is otherwise great.
@nicklockwood Something that came up at work just today: apparently TextField *still* doesn't have a non hacky way to set a maximum number of characters. Yeesh.
A weird thing about Swift Observation is that there's no way to express in a property's type signature whether it tracks updates or not. Anyone else think that's kind of a weird choice on Apple's part? #Swift

Have any #iOS app developer noticed a recent resurgence in Apple's enforcement of this review guideline since it was largely paused after last year's Epic ruling?

> 3.1.3(b) Multiplatform Services: Apps that operate across multiple platforms may allow users to access content, subscriptions, or features they have acquired in your app on other platforms or your web site, including consumable items in multi-platform games, provided those items are also available as in-app purchases within the app.

Small hypothesis: I bet people like AI chat interfaces in some part because they are “clean” – simple text, easy to process, consistent visuals, no ads, no pop-ups, etc.

To use a cliche example: Even if it wasn’t in any way “smarter,” it’d still be nicer to ask ChatGPT for a recipe than go to a webpage to read that recipe. Its interface is a natural “reader mode.”

But… that’s not going to last.

Pet peeve: websites whose standard mode of usage is opening multiple tabs, but they’re implemented as slow-loading and memory-hogging SPAs.

It’s like the people making the engineering decisions have never used the product.

Is there any official Swift or Apple documentation about the `sending` keyword? There must be, but I can’t seem to find anything.

Has TestFlight stopped gathering crash logs for anyone else?

Since September 10, none of the dozens of crash reports I've received on TestFlight across 2 different apps have had an actual crash log attached. I get the feedback message if they write one but no log in AppStoreConnect or Xcode.

Is there something setting users need to turn on? Or is there some reason TestFlight might choose to omit logs?