3 ms·
> Often I’ll just open the files in IDEA to have sane hotkeys, my plugins, multiple cursors, and the list goes on and on and on. "Sane hotkeys" and "my plugins
by robenkleene 2y ago
> Often I’ll just open the files in IDEA to have sane hotkeys, my plugins, multiple cursors, and the list goes on and on and on.
"Sane hotkeys" and "my plugins" are subjective (and suggest that you probably don't use Xcode as your primary editor). And Xcode has had multiple cursors since Xcode 10 in 2018 https://mjtsai.com/blog/2018/04/29/multiple-cursors-in-xcode/ https://mjtsai.com/blog/2018/04/29/multiple-cursors-in-xcode...
The reason AppCode died is that Apple platform engineers on the whole are very happy with Xcode. Source: I worked as an Apple platforms engineer for a decade across many teams and the person who complained about Xcode the most was always me, and overall I also think it was usually pretty good, arguably great. That is until they added Swift, which always had performance and stability issues (many of the complaints in this thread are fair for Swift support in Xcode). It still worked quite well for me for the C family of languages though (I haven't used Xcode seriously in a couple of years now).
If your going to give your opinion on Xcode, it's a good idea to give a count for years that you've worked in the program. For an IDE I personally wouldn't bother with anyone's opinion that hasn't put at least 1000 hours in the program, and a lot of the comments in this thread sound like people who just opened the program for a one-off task and formed their opinion based on that.
My colleagues for years have been people who live in Xcode, eight hours a day, five days a week, and I've never heard opinions like this thread expressed by them (except for the Swift support).
- tayistay 2y agoOk well you asked. I've been using Xcode for 15 years now professionally. I have two CS degrees and one of my apps was featured on the Mac App Store front page. So, basically, I know wtf I'm talking about. I detest Xcode. The latest horrible thing it has done to me is decide to ignore various important Build Settings, throwing them under User-Defined. Doesn't say way. Just pure magic bullshit. It crashes occasionally, but that doesn't bother me that much. You just laugh at how bad it is and restart it. Sometimes you'll get some code-signing errors and you just reboot. I kid you not. You reboot and they go away. Xcode's connection to Xcode Cloud is pretty flakey too. Quite often it will fail to log in. You just restart Xcode and it goes away. Xcode will display errors that are out of date all the time. I've gotten so good at knowing which errors are just BS that I'm kinda proud of myself. Previews are useless. They could be so great but as soon as you break one, the debugging experience is so bad, you just give up. Sometimes your project will fail to build with them and the reasons are so opaque you just give up. The xcodeproj file format is merge hell. It's so telling that tools like Xcodegen exist. The new LLM-based code completion thing is mostly just amusing. Definitely not ready for prime time. There's clearly no CI on the template projects because if you archive the Audio Unit one, the swift compiler crashes currently. Wheee! Nobody uses the git integration on Xcode AFAICT. It runs faster if you just turn it off. The GPU debugger is quite a crashy mess, though it has gotten better. Still you will not be able to debug your shaders and you'll have no idea why. The GPU debugger doesn't work if you put any MSL code inside a Swift package too. I used to have an icky work around for that, then just gave up on modularizing my project to the extent I would like to. I experienced the issue mentioned in the article: couldn't add local packages by dragging them in. But somewhere along the line it went away. Don't know why, and I don't have the time to dig into it. I really should compile a proper list. I'm sure I can think of more, especially if I go through the list of bugs I've filed over the years. Anyway, now you've heard this opinion expressed by an experienced person. Consider it a data point.
- robenkleene 2y agoGreat list, way different than most of the comments on this thread. I don't see a single one I disagree with. I'd ask though, which IDE do you think is better than Xcode and in what way? My only argument I'd have against this list is it's kind of par for the course for an app of Xcode's age and complexity, e.g., you'd for sure get a similar list from Premiere or After Effects users, or any of the long-standing 3D packages (although, for a counterpoint, Logic Pro and Final Cut Pro users seem way happier, so it's at least theoretically possible to make complex, long-standing applications without these issues).
- tayistay 2y agoBefore iOS, I was coding animation software on Linux using vim/scons for five years. So no real IDE. But not a fair comparison because we had a build team keeping everything nice. I also ported one of my apps to Windows and Visual Studio never drove me crazy. But I haven't worked with it to nearly the same depth as I have with Xcode. So I concede that perhaps all IDEs are dreadful. I still hate Xcode. I know pro users of Logic and Ableton and they never express such a level of displeasure. FWIW, having used Logic, Ableton, FCP, all non-professionally, those apps seem like a dream compared to Xcode. I think it's likely that if Xcode weren't free, there would be serious competition and iOS development would be better for it. Or perhaps if Xcode were modularized so 3rd parties could use parts of it (Instruments, GPU debugger, memory graph debugger), lowering their development cost so they can compete with free. I tried AppCode and while it seemed nice (refactoring was good in particular), I kept returning to Xcode to use the GPU debugger IIRC. So, amusingly, I'm the inverse of your impression: the IDEs I've tried superficially I've generally enjoyed. The one I've used deeply I detest.
- robenkleene 2y agoThanks for sharing this! For Visual Studio, I always think of this video https://www.youtube.com/watch?v=wCllU4YkxBk https://www.youtube.com/watch?v=wCllU4YkxBk that pretty much just leaves the JetBrains IDEs, which are obviously well loved. I've never had a good first impression with them, so I haven't bothered to get deeper into them, but I also don't have the experience to form a fair opinion (although when I read about what folks like about JetBrains, it doesn't resonate with me, usually it's about refactoring tools, which I don't care about).