Xcode 9 is Unacceptable

EDIT: This post was suspended by forum moderation for unknown reasons around 2 weeks. And now (2017-12-15) activated again with original content unchanged.

---


I do not know where to start but Xcode 9 is a total mess, with countless bugs and performance issues.

I myself reported 7 bugs so far, and there are many more to report. But I gave up.

Why did I give up? Because I started to feel Apple does not care about us, the Developer Community, at all.

For Apple, the Developer Community is nothing more than some impressive numbers to be stated in their fancy Keynotes and blog posts.


Xcode 9 is a joke, it should not have been released at all.

Actually, it is worse than a joke, it is an insult.

Tens of thousands of developers working hard to make apps and giving life to the App Store ecosystem.

But nowadays, most of them are busy with dealing ridiculous Xcode 9 problems, instead of working on their own products.

Why? Because some people at Apple are so dedicated to ruin existing products, instead of improving them.

They choose to spend their time, money and energy on making useless stuff and creating more problems.

And they feel no shame about releasing underdeveloped and undertested products.


Apple's software quality is constantly degrading, especially last few years.

I am sure I am not the only one who can see this fact.

Along with iOS, any Apple operating system, web service or other kind of software product have unacceptable amount of problems.

From the end user viewpoint, these might be simple problems they encounter occasionally. Maybe they do not notice at all.

But from the developers viewpoint, this is serious. This is making our jobs less funny and more painful, as well as costing us time and money constantly.


Today, Apple is one of the most succesful companies in the world.

Anyone in the business clearly knows, Apple would not be at this point without iPhone.

And iPhone would be nothing without the App Store, and the App Store would be nothing without the Developer Community.


So, we want our voices to be heard.

We want people at Apple to know that they are failing their jobs and we are getting sick of this.


People at Apple!

Please show some respect to the Developer Community, and start fixing things without creating more problems.

Stop biting off more than you could chew. Develop more elaborately, and do more comprehensive testing on products before you release them.


Best regards,

E

Lots of good stuff to say about MVVM vs MVC but do you really expect with such deep libraries they would start retooling them all? It is not too difficult to follow MVVM pattern with your own VM setup (heck i even prefer it to do it myself). I can't fault Apple for not following MVVM but your point on GIT conflict resolution is of course spot on. The first time that happens we were all dazed and amazed to figure things out, the second time it is a painful annoyance. Now when it happens we all laugh hysterially (as in "manic hysteria") and run for the hills. To use someone's famous words: "what a bag of hurt".

@Bob Avery; I agree wholeheartedly (to the point of holding hands and jumping of the building together) I have filed quite a few bugs with Apple that all seem to go into some sort of sinkhole, never to be seen or heard from again. Perhaps we should form an alternative, visible for everybody, list of garbage Apple is too good to get to? Perhaps that may bend their ivory towers a bit?

This is a rant thread. What do you want to get out of it? If you have a specific question about Xcode, then start a question about that specific topic. Maybe there is an easy fix or workaround.


It seems to me that the vast majority of complaints about Xcode are from people making technical descisions based on social metrics. By that I mean, are they making technical and architectural decisions based on what is best for their product? Or are they doing what people tell them is hip and cool? Xcode 8 works fine for me. This week I plan to release a new version of my software using Base Localization. I've even decided to use auto layout in my next app. I play around with the hip and cool things, but I'm not going to let those things be an obstacle. I have Xcode 9 on my High Sierra test machine. I know what it can and can't do. Some technologies, like Swift for example, won't be ready for years. Other technologies, such as ARC, seemed like a good idea at the time, but have proven themselves to be unworkable in modern contexts.


But I'll be honest. I can make those kinds of decisions because I run my own company. I'm not looking for a job. If I were, I would have a blog with posts that describe how to make Swift do crazy and wonderful things that I used to do in C++ circa 1999.


I don't know how many moons ago you are talking about. I still remember Apple's previous version of a developer environment - MPW. Clearly, no one who complains about Xcode today has ever used that. But the world has changed. There is no more CodeWarrior. We just aren't going to return to the great IDEs of 20 years ago. That world is dead and buried. Apple is well aware of Xcode 9's limitations. Didn't you notice how they recently released an 18 core Mac just so developers can compile Swift in Xcode?


You are correct that eventually Apple's quality issues will catch up. Unfortunately, even if Apple starts losing $15 billion a year this year, they will still have 19 years before they run out of money.

Frustratingly, the problems with Xcode are only one example out of many problems affecting the Mac as a whole these days and are symtomatic of a company that has got lost in a self obsessed, unnecessary, frantic yearly developer cycle. Today my iMac crashed so badly it took nearly half an hour before it re-booted and all it took was to ask Safari to load a web page - one that I have loaded many tmes in the past. Mail will randomly crash sometimes when I double-click on an attached pdf to open it. Apple's own app upgrades sometimes fail to complete. Machine re-boots sometimes fail to complete. My MBP sometimes crashes while it is asleep. The Image capture app has several long standing bugs. Terminal often fails to open in my stored preference settings. I could go on and on.


Mac software is getting steadily worse. There are some bugs in Xcode 9 that have been there for several years over many releases. So yes, this is a rant but despite all the negative reviews here and in the App Store and the huge amount of time invested by a lot of people submitting bug reports the overall impression is that we are simply being ignored - and I guess people need somewhere to let off steam even if we are blowing bubbles in the wind!


This does have a usefull side however, in that newcomers, who only have the option of downloading relatively new versions of Xcode and cannot understand what they are doing wrong will see that it's not their fault, its the fault of the IDE itself in so many cases, which is sad.


If I had a shop window and people kept sticking messages on it about how crap my products were I would want to do something about it but as the other 'rants' here go to show, we feel like we are going backwards and our observations have no power. So I am pleased for you that you can soldier on with XCode 8, but sooner or later you will have to upgrade...

Wait until June. Either Tim Cook or another VP is going to get on stage and talk about about how popular the developer program is. They aren't going to say anything about the Mac, or Xcode bug reports, star ratings, or forum posts. They are going to talk about how many more millions of developers there are this year as compared to last year. Your rants aren't just pointless, they are in direct conflict with hard number of millions of developers spending billions of dollars to run Xcode on Macs. I mean really. Who would you listen to? A bunch of people on your support forums telling you your product was junk? Or literally 2 million more people buying your product this year than last? I sure wish I had Apple's quality and reputation problems. With all due respect, I think you are going to have to find a way to live with Xcode 9. And don't forget Xcode 10 is barely two months away.

>There is no more CodeWarrior.


😉 Spring cleaning just uncovered a like new CodeWarrior T-shirt I haven't seen since...


Blood, Sweat and Code, baby - when geeks were freaks, and if the tools weren't what you wanted, you shut up, got to work, and made your own.

Totally agree with @osmenda.
Every new Xcode version becomes slower and slower (I started with XCode 3).
XCode 9 is disaster! It has ton of bugs. Compile time is terrible. And I have pretty good config - top i7/16Gb/512Gb ssd.
I can't work normally for last year. XCode reduces my productivity in 2 times.

Apple should fix it ASAP. It should be TOP priority.

34568927

Xcode 9 - Comparison View scrolling issues


This one drives me up the wall all the time. 😢 My only work around is to click on the icons in the center bottom -- for instance < 1/5 > . But even in that case the scroll view sometimes clips the comparison difference and I cannot see it. Then I try to scroll to see the difference but that does not work all the time in comparison view. When I scroll the little difference markers move while scrolling! It started in Xcode 9 and sometimes it jumps to the beginning of the comparison. Git is used pretty heavily now days and this just has to be solid.


Moreover, in Swift, I highlight functions and command right click and select jump to definition. Sometimes this does not work for Apple's own api methods. ( shows a view of unformmatted text not showing what I was looking for ) Also, the new popup from right control click seems too heavy a feel in Xcode 9.


It would be nice in the debugger if the symbols could optionally be alphabetized. And sometimes, there are no symbols at all. I have the compiler optimizations turned off when I debug and debug symbols enabled. This one has been around a long time. Kinda remember Xcode 3 did not have this problem. I've gotten use to it which is sad.


It would be nice if Xcode had a better built in code formatter. Think select all with control-i is kind of limited. I know there are Xcode extensions I can get for this but its kind of a hassle.


Not to mention there is no way to clean derived data. I can click on the arrow which takes me there in the finder. I can delete things manually but this seems to imply I know how the inner workings Xcode -- Would not want to remove the wrong thing. There use to be an xcode button for this.

I guess apple didn't take my advice and display an Xcode dashboard. Does anyone have a list or guess of what the major bugs oh I mean undocumented features are this time? Does this version run properly on OSX 10.12.6? or 10.13 without the new filesystem? but using normal HFS filesystem.

Xcode 9.3, indexing not work. Many code no highlighting and cannot goto definition.

Cannot happy coding any more...

XCode Version 9.3 (9E145) hangs when linking code for macOS if Link Time Optimazion enabled.


The previous version of XCode didn't have that problem.


Best regards,

Eigil

I am sorry for this. Is the Xcode 9 unusable for big projects, yes it ***** with swift and the compiler. the basic autofill is not working MANY times. Developers who develop baby projects may find it so great.


This is because of Apple's pace delivery. Guys, the programmers need time to fix and update Xcode. Haste makes Waste!

This should be Productivity = 0.


== is not the same as =. This is a common beginner C programmer error.

Trying to get started with Swift on a MacPro with 16Gb RAM. I haven't found a pattern yet...but as I work through the GuidedTour.playground after every few steps of working through the tour, the IDE stays in the "Running GuidedTour" mode and hangs...no errors. If I exit Xcode entirely and launch again...after the slow startup phase, the same code works fine. This is very frutstrating...😕

Totally agree with you. Xcode is very poor.

Thank you for this post. As I'm sitting here late on a Friday wondering why I have to deal with a compiler that gives me segmentation faults instead of warnings on symple syntax errors in my unit tests, I get comfort in knowing I'm not alone.

It creates much fan noise and the amount of lag in the simulator when using a MacBook is horrendous.

It seems so simple: Make great software. That's all Apple has to do in order to stay on top. In fact, their entire eco-system (and so business model) depends on people not wanting to move away from them in any capacity: For software, for media, for everything. As soon as their user experience degrades to the point that they have a similar experience on other (cheaper) systems, there's no reason to stick around. Dear Apple, this is what we're paying for: Convenience and good user experience!


Apple automatically give themselves a step up over the competition: They control the hardware. They know exactly what hardware they're writing for, so they can always ensure that every one of their customers gets that good experience. Google/Android, Microsoft/Windows, don't have this luxury. They have to build and design something for an unlimited, unknowable number of different hardware combinations... and yet they're not offering comparable experiences to Apple!


Apple is squandering the opportunity it has to produce software that is absolutely tailored to its hardware. The one edge it has over the competition. Why can't someone at Apple see this?? We don't care about new features, we care about frustration free experiences.


If their customers don't have that, they will leave. Then there's no reason for developers to stick around to develop for them. The entire eco-system collapses!

That's not necessarily correct, perhaps only superfically true if this was a C forum, since swift is used in these parts . He could have created a new operator or overriden the type, protocol, etc


infix operator == { associativity left precedence 140 } 
infix operator =. { associativity left precedence 140 }


write strange overloading function here

my rules of xcode

1. never install a $version.0 wait for at least *.1

2. time machine current workspace on at least two separate drives

3. delete all the cache, preferences and cruft that builds up from upgrading after upgrading, there are many notorious files like com.apple.Xcode.plist which become a mess

So what do you do when Xcode crashes for the umptieth time and it asks you _again_ if you want to report it? Do you... dismiss it, or fill in a nicely and detailed description how it got there, or... get a little emotional when typing up stuff? Gotto admit, I am getting more and more in camp #3 as time goes on. Anyone has some "creative writing" examples they like to share?

My UserInterfaceState.xcuserstate gets corrupted often.

Upon xcode restart it will forget the color scheme.

or I would collapse a bunch of groups on the left side bar and after a few seconds xcode would expand them back.


Thank you for the tips.

After updating to XCode 9 I am facing many weird issues.

1. Even after solving merge conflicts by selecting "Choose right then left" or any options "Pull" button ever enable, So everytime there is some kind of merge issue I can't solve using Xcode build in version control tool. but as soon as I deselect any file then "Pull" button get enable but now I can't recheck that file again. So it keeps me uncertainty that, "Did I lost all the work I was doing" Its too much annoying.


Is anyone else also facing the same issue, I think its a bug as its happing every time and with both the developer, I am working with.


More accurately I am using XCode 9.4.1 and the same issue I am talking about https://stackoverflow.com/questions/50175042/xcode-9-3-git-merge-issue-after-solving-conflict

Thought I'd pile on with some observations I've been writing down since the end of last year. I've been using Xcode for 7 hours a day for about 5 years now.


Xcode 10 came out a month or so ago, and what I originally wrote below is all still the case. But we have darkmode now so that's nice.

The new build system is orders of magnitude slower than the legacy build system. Instead of taking 4 minutes to build (if the weather is just right) it takes around 15 minutes for our large ObjC/Swift project. And since Xcode is still a point-oh release we have deal with nothing being remotely optimised on top of everthing from Xcode 9: I have to restart my machine at least once a day or a cannot type text into a text field.


Code suggestion is still terrible in Xcode 10, but it's more consisitently rubbish. In 9 you'd often be suggested garbage that bore a passing likeness to what you typed. In Xcode 10 it'll hide this until it has accurate results to show you. This takes no less than 10 seconds in our project for any kind of symbol. It could be a var directly above the line you are typing, it doesn't matter, you'll be staring at a blinking cursor for ages before anything shows up. For long, complicated method names (especially things like UICollectionViewDatasource methods) there is no alternative but to open Safari and Google "UICollectionViewDatasource" to get the method signature you're looking for than to start typing `minimumLineSpac..." and wait for it to show up: you can litearlly summon this information from the other side of planet earth faster than Xcode can dredge it up from your SSD. This one issue alone makes Xcode a misery to use, but it has plenty of company:


Infuriatingly long build times with Swift projects. We're talking up to 10 minutes for very large projects. During this compilation phase you will barely be able to scroll your source files because the UI thread will be constantly interrupted. Building big projects on a MBP absolutely obliterates the battery.


Bringing up the Commit dialog to commit changes beachballs Xcode for about a full minute. And then crashes it more often than not. No wonder, during WWDC 2017's Xcode developer presentation, the crowed actually laughed out loud when an engineer claimed "Xcode has robust versoin control features".


General slowness or stickiness in navigation and typing even when nothing is building and nothing indexing. It's as if the UI thread is being interrupted every three seconds.


Scrolling a source file is choppy and frequently stutters.


Scrolling a source file while the Version editor is visible is extremely choppy and unusuable while actually working on code - it's only useful for checking changes since a MacBook Pro seemingly cannot support typing text while this feature is open.


The debugger takes up to 30 seconds to print out a variable.


The debugger, by default, outputs a never ending stream of unwanted OS logs unless you disable that 'feature' in the scheme. It also somehow can't scroll reliably to the bottom, which is perhaps mostly where you'll actually want to be.


Stepping through lines can be prohibitively slow on large Swift projects. It can take literally 5 seconds to get from one line to the next and with the Xcode window and iPhone window trading focus between every step this whole feature feels repellently sluggish and heavy.


Phantom errors that don't go anywhere when you click them, or that disappear except when actively building, or they let you build anyway.


CoreData generating subclasses of NSManagedObject: no matter where I put them, what group I add them to, what folder I save them to, something always gets messed up here - files missing from the project or extra files hanging around in the root folder, or files which haven't been made part of the project for some reason.


The simulator does really not want to go to the app switching view; the timing of double clicking the home button to trigger app switching is like a frame-perfect Street Fighter 2 Turbo Plus Alpha blocking manouvre.


CMD-clicking on symbols does one of four things: 1) nothing at all, 2) shows a big dumb question mark, 3) takes you to a completely unrelated class because there is a variable/method with the same name there, 4) eventually, maybe, after several long seconds, take you to the correct var/method. It is always quicker to jump by copy & paste: Copy the class name, CMD-shift-o, paste and 90% of the time the top entry is what you want, and it takes no time.

This may sound silly, but this problem is compounded by the arrow key layout on Macbook keyboards: the up and down arrow are microscopic and surrounded on either side by gigantic left/right arrow keys, so when the suggestion menu does eventually pop up there is about a 40% chance I'll tap left instead of down and lose the menu altogether. Again, maybe silly, but whenever it happens I curse out loud at Xcode and this keyboard layout - it's a frustrating user experience to say the least.


The complete lack of any kind of descriptive error if you chooose "Automatically Generate Subclasses" for NSManagedObjects when you already have a subclass; compiles fail with duplicate file warnings because of an pre-ticked check box you might not even know exists - and the files that it generates are not visible to you anywhere in your project.


Having to hit space-backspace at the end of almost every sentence because Xcode thinks you want a tiny thumbnail of the image "blueArrow.png" from your assets folder in your line of code because you typed 'BlurredViewHelper' which has the letters B L U E in it. Because autocomplete for actual code symbols rarely works, these pointless suggestions are often the only ones you ever see. Xcode has to work to pull these from the assets folder apparently, because when things start getting busy this suggestion-of-pointless-images will actually slow your typing down. In 2018 I don't think it's unreasonably to wish for an IDE which can display letters as fast as you can type them.


The song and dance around unlocking, disconnecting, and reconnecting devices all the time. This is compounded by poor USB-C ports on MacBook Pros which disconnect if they are 1/10th of a mm out of the port; this happens dozens of times a day for me. Debugging on a device usually results in the device losing connection because of this.


Debugging on the Apple Watch is prohibitively slow, to the point where almost nobody even bothers making watch apps.


Add a folder to you project, and start typing a name for it, say "TransitionHandlers". The first letter will be entered. and then the navigation window will jump to another folder that starts with the second letter, leaving your new folder named "T".


Autocompletes paramater-less methods withtout ().


The QuickLook menu is UX infuriating. This is where you hover over a variable in code, not in the inspector in the window at the bottom. It does not show until variables have been loaded for introspection by the debugger, but it doesn't tell you this by using any kind of activity indicator; instead it will just appear to work sometimes and not work other times for no obvious reason. You end up hovering your mouse cursor over a variable like you're rubbing a magic lantern. And after you do get it to show up, it'll very likely say it can't load QuickView data for the var.


A certain number / kind of changes to a file will render SourceKit unable to figure out what's going on anywhere in that file; it cannot intelligently distinguish classes/methods.


To other member's point of how Apple's engineers can possibly suffer Xcode internally: they very probably do the vast majority of their development in Objective-C with the exception of some recent apps like Music/Podcast and some apps which _have_ to be written in Swift (for appearances) like the WWDC app. In my experience almost all of the issues I outlined above are not really an issue when developing solely in ObjC - they are occasional annoyances rather than a waking nightmare.


At this point I'm beyond frustrated with Xcode. I finish each day with a headache, exhausted, from fighting with this stuttering, broken IDE.

Greetings,


Looked to Xcode and Developer program to lift this macOffice and Search dreamer to new heights. Feel ripped off for a hard-earned $Ben.


Virtually incomprehensible program. UI from ****.


Keychain and Archiving issues from the start.


Overwhelmed, underwhelmed and brought to my knees with despair.


Hopeful words welcome. Heartbroken. Lost.

Xcode 9 is Unacceptable
 
 
Q