May 17, 2026

Text me once, shame on Swift

Native all the way, until you need text

Mac app maker tried staying loyal, then the comments cheered his jump to Electron

TLDR: A longtime Apple developer says he couldn’t make a basic modern chat app behave properly with Apple’s own tools, but got good results with Electron instead. Commenters turned it into a mini-revolt, joking that the much-ridiculed web-based option may now be the least painful choice.

A veteran Apple app developer came to Hacker News with a confession that felt almost scandalous: after 20 years of building “native” Mac and iPhone apps, he gave up trying to make a simple chat app with nice-looking text and easy text selection using Apple’s own tools. His verdict? The moment you need long messages, smooth scrolling, and basic copy-select behavior, the “proper” route turns into a maze of broken compromises. And yes, he eventually wandered into the much-mocked world of Electron — the web-tech wrapper many desktop purists love to hate — and found that it just worked.

The comments absolutely ran with it. The biggest mood was exhausted vindication: people who have fought Apple’s app tools were basically yelling, “See?! We told you so!” One developer said their own chat app was a total mess, with sluggish text, broken editor parts, and the whole screen freezing up. Another piled on with the broader hot take that it’s not just text — the second you want anything unusual, Apple’s shiny modern tools fall apart and the older stuff is still better. The funniest line of the thread was pure meme fuel: Electron is the worst way to make a desktop app... except all the others. There was a tiny pushback camp asking the classic uncomfortable question — sure, but what about memory use? — yet the thread’s drama-heavy consensus was clear: if even a longtime Apple loyalist is running to the “dark side” just to make text behave, something is deeply off.

Key Points

  • The article describes a developer’s attempt to build a native macOS chat app with Markdown support and full text selection using Swift and SwiftUI.
  • The author reports that SwiftUI-based text composition did not allow selecting an entire Markdown document and showed scrolling and lag issues.
  • Subsequent attempts using NSTextView, AppKit, NSCollectionView, and pure TextKit 2 introduced problems such as poor integration, CPU spikes during streaming, cell blinking, and missing native behavior parity.
  • The author says WebKit handled Markdown rendering more successfully, with good performance, typography, and control.
  • After testing Electron, the author concludes that web-based approaches currently handle long-form rich-text chat interfaces better than Apple’s native SDKs.

Hottest takes

"Electron is the worst way to make a desktop app… except for all the others!" — PaulHoule
"Nothing works well" — splittydev
"SwiftUI will fail" — inatreecrown2
Made with <3 by @siedrix and @shesho from CDMX. Powered by Forge&Hive.