OT: Rant
Xcode being loaded on my computer causes something akin to a kernel panic.
Not the fun kind where you get to read a backtrace and feel something. The existential kind.
Every time it hijacks a .json or .xml file association, I experience a rage that hasn't been matched since the Emacs/vi wars ... and at least those were about editors that could open in under a geological epoch.
I just want to look at a text file with pretty print.
I do not need a 12GB IDE to render curly braces. cat has been doing this since 1971. Dennis Ritchie solved this.
Why, Apple, in 40 years, could you not ship a lightweight dev-oriented text viewer? You had NeXTSTEP. You had the DNA of the most elegant Unix workstation ever built.
And you gave us... this behemoth? An app whose launch time rivals a full Gentoo stage 1 install ( see: https://niden.net/post/gentoo-stage-1-installation )
TextEdit is not the answer.
I've used Xcode for native iOS development and honestly, once you get past the Stockholm Syndrome phase, it's just fine.
- The interface is learnable.
- The debugger mostly works.
But the load times -- on every high-end MBP I've ever owned -- suggest that somewhere deep in the Xcode binary, there's a sleep(rand()) that someone committed in 2006 and no one has had the courage to git blame.
FWIW, I fear someone here tells me I've been missing a launch flag. Alas, it's my truth and I can't hold it in anymore.
I like how Xcode installs a bunch of gigantic, multi-gigabyte artifacts for like ios runtimes or whatever, fills up the hard drive, can't update because it's out of space, and then tells me I'm not allowed to delete them because of SIP.
The dozens and dozens of simulators it installs without asking... which kill your system's audio capabilities for some reason: https://discussions.apple.com/thread/256140785
But the best part is what it DOESN'T install when you think you've updated. You get on a plane and settle in for some work, only to be prompted to download and install a bunch of required crap you weren't told about. OH WELL, says Apple, your time is FREE!
I'm confused, how have you not reassociated the files with the app of your choosing? Is Xcode somehow changing associations back? Does it do it only at updates?
As far as Apple providing anything, why are they the expected ones providing it? There are a gigabazillionumpteen text editors that can reformat JSON. I have Xcode, and have associated JSON with a different editor. Not once has it ever changed on me.
There is a way to do it, but it’s not the most typical way MacOS users do it for everything else, which involves Right Click->Open With->Other->Always Open With. Xcode’s file associations are super aggressive.
I believe that “Get Info”->”Open With”->”Change All…” still works, and there are command line methods or third party tools.
This has driven me to madness too.
> Xcode’s file associations are super aggressive.
They are the same Info.plist format as every other MacOS application.
Something is different. Right Click->Open With->Other->Always Open With 100% did not have any effect when I needed it in the past. Not sure what current behavior is. This was a huge thing for me.
select in finder the file that currently opens with XCode, then press Cmd+i. It opens the information panel. There in the Open with section, you can chose the app and then also Change all to not use XCode.
Not something I've ever experienced. Open As... Always works just fine.
XCode re-associates its preferred filetypes every time you update it, or at least pretty reliably does for me
>Not once has it ever changed on me.
I don't know how did you achieve it, but I was doing it countless times.
Open with -> other -> enable all applications -> always open with.
For a short while it works, but somehow, something always reverts it back to xcode. Maybe it is restart. Maybe it is little evil cron job discreetly changes it back to xcode, but I was never able to get rid of it. It is happening to me on many different machines since Sierra. One calm day I casually double-click an STL or JSON and it prompts me to install some xcode packages, and I get angry at the machine.
You're right that you can fix it via Get Info → Change All.
I know the procedure.
The issue is that Xcode updates and macOS updates tend to reset those associations back. There's a long-running Apple Community thread titled literally "Stop hijacking file extensions with xcode" ( https://discussions.apple.com/thread/253702137?sortBy=rank ) and another I saw recently where a user documents their .md associations reverting after closing their laptop lid.
It's not universal, but it's not delusion either.
The deeper annoyance is extensionless files and edge cases -- log files, build artifacts, random output from scripts ... where there's no clean association to override.
Those fall through to whatever macOS thinks is clever, which is often Xcode.
As for "why should Apple provide it" -- because the company was founded by a guy named Steve who believed that details and care matter. Someone who said how the insides of a computer looks is as important as the outside and nagged his partner until the circuits looked right in their home-brew project.
Also yes, fair point, I should just fix it and stop complaining.
I failed at that today. Please forgive me.
There was a time I was interested in building for MacOS. Installing, opening and trying to use Xcode killed that pretty quick. I've never seen an IDE this behind in terms of usability from the competition.
This is why people hate porting to Mac. Because at some point they need XCode and XCode is horrible.
Same experience. The 2009 version of Eclipse was more stable than modern XCode. And that’s saying something.
It's interesting seeing people complain about the load times of XCode, as someone who uses VSCode and has loved the instant load times, I think the people over at MSFT have been listening a bit as the latest version of Visual Studio has finally managed to fix some of their problems with the thing taking upwards of 10-20 seconds to load. Visual Studio 2026 now loads "almost" as fast as VSCode, which is great! Now they just need to make project loading faster.
Is this the time for a random Xcode rant? The topic is agentic AI in Xcode.
I'd be a lot more interested in hearing what people think about this development, what it means for code privacy, how are the context windows handled, can it be enabled per-project, etc.
I agree with you, it's infuriating. I think it's been loading faster recently (maybe?), but it still takes like 10 seconds.
To set file association stuff more easily than with the Finder GUI, you can run (with https://github.com/moretension/duti):
Where ${whatever} is in {plain-text, json, source-code, ...}. I'm sure there's a way to automate this through parsing `lsregister -dump`, but have a script I run on every Mac I have that sets TextEdit as the default instead of XCode for a bunch of file types :-)The hijacking of file associations is one of the most awful and malicious things about macOS. You can set it to whatever you want, when Apple decide they want to, your CSVs will go to Numbers, JSONs go to Xcode.
> sleep(rand())
You're being too kind. It feels like a 8 cores worth of parallel busy loops to me!
I bet Alan Dye insisted they put it in there so users can pause their busy to gaze at and appreciate his artistically minimal unpainted Liquid Glass window frame.
I like to take a few minutes to admire the content underneath/behind my sidebars