Readit News logoReadit News
Boldened15 · 6 months ago
Headline buries the lede imo, should be "Xcode slows down builds by constantly phoning home". Given the walled garden nature of Apple and the app review process it's not really surprising that Xcode would be full of forced telemetry

Also not the worst thing for Apple to measure average build times or whether developers are discovering some new feature they added, that can be actually helpful for improving the product.

pjerem · 6 months ago
> Also not the worst thing for Apple to measure average build times or whether developers are discovering some new feature they added, that can be actually helpful for improving the product.

That have always been the point of telemetry. The issue is when it’s hidden and /or the collected data is misused.

3eb7988a1663 · 6 months ago
Or even used at all. Feels like a lot of telemetry is getting collected simply because it can. "What if there is value we could unlock?!" Never mind that all decisions will be made on a manager's gut instinct.
threeseed · 6 months ago
a) There is no correlation between a walled garden and telemetry. I use plenty of open source software that asks for analytics and crash reports. In fact I take it as a positive sign as it means they are committed to making a better product.

b) In this case the provisioning profiles are essential to the build process so it makes sense for Apple to check for updates as you are building.

lapcat · 6 months ago
> Also not the worst thing for Apple to measure average build times

There's no evidence that Apple is measuring average build times. As the screenshot in the article shows, gather provisioning inputs is actually one of the earliest build phases. Moreover, build time is not a useful measure, because it depends crucially on the number of source files, the programming languages, clean vs. incremental builds, run script build phases, and various other factors that vary almost infinitely from project to project.

The article does not even claim that the connections are telemetry. Gather provisioning inputs is without a doubt exactly what it says it is. Nonetheless, it's not necessary for Xcode to gather provisioning inputs on every build, especially not for non-archive builds, and a side effect of doing it on every build is that Apple receives personally identifiable data about developers and their everyday activities, regardless of whether that was Apple's intention.

There appears to be a common assumption that every privacy violation has to be intentional, some kind of conspiracy, but that's not true. A lot of privacy violations are just thoughtlessness, laziness, or incompetence. That doesn't excuse them, however.

0x1ceb00da · 6 months ago
Why does it have to slow down builds. If it's pure telemetry, it can be done in background right?
EatFlamingDeath · 6 months ago
I sincerely don't understand how devs that use macOS put up with this crap. I remember getting a Macbook M1 from the company I used to work for and the battery life was amazing, but as soon as I needed to install Xcode I just gave up. It's unbelievably bad, fuck that.
cosmic_cheese · 6 months ago
At the risk of nitpicking, Xcode isn’t explicitly necessary unless you’re looking to target iDevices specifically. A minimal llvm/clang toolchain can be installed with a terminal command or Homebrew.

And “unbelievably bad” is how I feel when trying to get various projects built from source on any platform all too often. If I’m lucky the maintainer has made a point of getting up and running a matter of running a couple commands but all too often there’s a mountain of assumptions about the user’s environment that cause the build to fail, sending me down rabbitholes. At least with SwiftPM Xcode projects, building is usually as simple as opening the project and hitting ⌘R and doesn’t involve a side trek to Mordor.

ein0p · 6 months ago
It's not even necessary for iDevices. I have successfully built, signed, and deployed simple apps without Xcode at all, using Bazel. I think CMake has support as well.
xandrius · 6 months ago
We put up with that because it could be better but it's not too bad.

The IDE itself is pretty good and personally I prefer it over Android Studio.

zadokshi · 6 months ago
People who complain about Xcode have never had to use android studio ;)
keyle · 6 months ago
I've just reinstalled a PC with windows and coming from macOS and about 10 years of XCode, I certainly prefer the mac camp over the absolute smouldering hot garbage of a wasteland that the windows ecosystem is.

Just the BIOS settings nightmare I had to get through for it install Windows properly was beyond belief. I guess OEM installs have won. But building your own hardware like "back in the days", oh the sweet sweet old days, what a nightmare.

My BIOS even has AI in it (WTF).

Even Microsoft holds its own debloating list [1]! How bad is that?

I tried to clean windows right after install and that took much longer than setting a brand new mac. And the macOS doesn't cost $150, for ad-riddled cortana/AI nightmare feeding my clicks to random houses and shipping with minecraft and king.com games!

At some point, "both camps" have to agree to disagree but there are lot of rose tinted glasses everywhere.

[1] https://github.com/microsoft/windows-dev-box-setup-scripts/b...

eviks · 6 months ago
> tried to clean windows right after install and that took much longer than setting a brand new mac

Because you can't debloat a Mac since bloat is part of a protected system partition, so time saved?

dabinat · 6 months ago
The issue here isn’t the telemetry itself but the fact that it’s making builds slower.

I think Xcode is pretty inefficient and Apple makes assumptions about computer and internet speed that mask these issues for them. I once tried opening a project on a network volume and it was unusable because for some reason Xcode is constantly using the disk, which you probably would never notice on a project stored locally on an SSD.

ChrisMarshallNY · 6 months ago
Dupe: https://news.ycombinator.com/item?id=43168589 (Couple of days ago -58 comments)
cjk · 6 months ago
This “gather provisioning inputs” step completely prevented me from building a project of mine yesterday. I let it sit there for over 20min with no movement. No amount of rebuild attempts worked, nor did restarting Xcode. Only a full reboot of my machine fixed it. I didn't see any network issues at the time this was occurring.
worik · 6 months ago
> Or perhaps Apple believes that developers are subhuman…

From my three years of experience as a developer of iOS applications, this is the root cause.

How the mighty have fallen

neilv · 6 months ago
Coincidentally, looking for a trustworthy open source Web browser solution (I'm on a rampage this weekend, after Mozilla misalignment last straw), I just had to allude to what seemed like Apple's attitudes towards developers ranging from indifference to hostility, throughout the iOS developer experience:

https://news.ycombinator.com/item?id=43224305

(I'm sure there are some great people working on parts of Apple, and doing great work. But would they say that the holistic experience, as well as various business moves by Apple, are currently third-party developer-friendly? With the platform power Apple wields, and often heavy-handedly, I think that needs to be acknowledged.)

tonyedgecombe · 6 months ago
When you have millions of apps on the App Store it's easy to take developers for granted.