Readit News logoReadit News
alberth · 3 years ago
Dumb question: why does a cloud offering require onprem macOS?

Shouldn’t folks on iOS at least be able to access XCode Cloud

MBCook · 3 years ago
Xcode Cloud is a CI/CD setup for compiling and signing Mac and iOS apps. It is not a web or remote development environment like some other companies offer.

Because it can be triggered by pushes into git, you could make changes to existing code from an iPad or PC and get it built. But you can’t (realistically) do anything that requires Xcode such as adding new things to your project or messing with xib files.

BonoboIO · 3 years ago
„Complaining“ :D
joshspankit · 3 years ago
This is probably a controversial opinion, but it feels like Apple is trying to lock developers in to a single path of constantly upgrading hardware and getting more and more specialized in the skills required in the Apple ecosystem.

Not just developers who try to do it for a living, but the demographic that used to be called power users (and before that: hackers): the enthusiasts that install things and dig deeper and make tools for themselves and maybe make tools for others or even transition to being career developers.

It’s the developers who build the moat around the walled gardens of mobile, and enthusiasts who bring in the people in their lives. I think Apple knows this and intentionally builds new APIs (while depreciating old ones) just so they can force devs to upgrade their OS’ which in turn forces them to upgrade to the next generation of restrictive hardware and lead them further down the garden path.

I have no insight in to the workings of Apple. I only see what they show to the public. I’m comfortable being wrong about this, but I don’t think I am.

flohofwoe · 3 years ago
Not a controversional opinion at all but instead very obvious, and for a long time now.

At least macOS is a UNIX under the hood these days (unlike MacOS 9), which provides some 'cross-platform synergies', but looking at where Apple has been taking these UNIX roots with iOS that was probably just a lucky accident. Enjoy it while it lasts (on macOS at least) ;)

ramesh31 · 3 years ago
>This is probably a controversial opinion, but it feels like Apple is trying to lock developers in to a single path of constantly upgrading hardware and getting more and more specialized in the skills required in the Apple ecosystem.

That has literally been Apple’s business model since the 80s.

hot_gril · 3 years ago
> This is probably a controversial opinion

Apple has been well-known as a walled garden since its inception. Some are ok with that, some aren't.

derefr · 3 years ago
It’s a CI system with XCode as its fat client. There’s no XCode for iOS.
danpalmer · 3 years ago
There isn't an Xcode for iOS, but there is an increasingly capable iOS development environment for iOS, and I expect that this cloud offering is intended to eventually complement that well.

Much of the stuff that Xcode Cloud does is automation that's ~easy with a terminal and some scripting and that many developers end up doing on their Macs, but that is hard to do in the limited computing environment that iOS offers – things like packaging apps for TestFlight with the right signing keys, compressing images, etc. By moving those processes to automation running in the cloud, Apple are making iOS development on iOS more feasible.

honkdaddy · 3 years ago
I can't think of a good reason Apple would want to support developers who want to publish in their (very) walled garden but aren't willing to purchase at least one macOS device. There are services which provide virtual Macs, this isn't meant to be one of them.
Sirened · 3 years ago
It's a CI/CD, not an IDE. If you want to automatically test your code on all devices in a dozen configs on multiple OS versions, you're going to need to buy some fairly expensive hardware and host it yourself, which is not exactly where the industry is going at the moment with it's "yay cloud" movement.
dagmx · 3 years ago
You can already develop apps and publish them completely on iPadOS without a Mac.

Is it logical to do so? No but it is possible and Apple sanctioned. In fact it was featured at last years WWDC

Maursault · 3 years ago
> I can't think of a good reason Apple would want to support developers who want to publish in their (very) walled garden but aren't willing to purchase at least one macOS device.

Those devs aren't going to purchase Apple hardware whether Apple sells them cheeseburgers or not, so its more profitable for Apple to sell them cheeseburgers.

makeitdouble · 3 years ago
Education perhaps. Kids in middle school or lower might get iPads and not laptops, and programming can be part of their curriculum.
sfifs · 3 years ago
Hobbyist? Student? Education?

But of course that doesn't add to their monopoly profits :-)

diebeforei485 · 3 years ago
I wouldn't be surprised if future versions of iPadOS came with support for Xcode Cloud.

Or even Xcode, considering how powerful iPads are these days (M1 chip, etc).

kmeisthax · 3 years ago
Xcode explicitly supports running external command-line tools in a full-permission, unjailed shell; which is entirely contrary to the iPadOS permission model.

Apple's approach seems to be to use Swift packages as an alternative project type that can be shared across iPads and Macs and, most importantly, do not require support for running binaries outside of an app container.

How this evolves over time depends on Apple's opinions about their operating systems. If they were to basically hand people what amounts to a manufacturer-sanctioned jailbreak, then they could port Xcode to UIKit with all the functionality it has on MacOS, save for the lack of AppKit support. Alternatively, and more likely, what they'll do is add new app extension types to do Xcode-like things in Swift Playgrounds. So if you need to, say, use Rust code in your app; you'd literally download a Rust compiler from the App Store to do that.

Or they could do nothing and be satisfied with the hobbyist-grade, Swift-only programming environment they already ship.

jbverschoor · 3 years ago
Because of licensing.
tootie · 3 years ago
And now you know why Apple is worth $2T
homarp · 3 years ago
see https://news.ycombinator.com/item?id=32654493

"[author] has been using Xcode Cloud to compile and deploy my rcmd app switcher (https://lowtechguys.com/rcmd) for the past few months, and it’s been a great experience.

I liked that with a single “git push” I could compile, archive, deploy to TestFlight, and send for beta review. I even pushed a fix from my iPhone using Working Copy one time while I was on a train.

These are the pricing plans for those interested:

- 25 compute hours/month: Free*

- 100 compute hours/month: $49.99/month

- 250 compute hours/month: $99.99/month

- 1000 compute hours/month: $399.99/month

* Free through December 2023, then $14.99/month if you choose to subscribe at that time. "

Maursault · 3 years ago
> 1000 compute hours/month: $399.99/month

This is interesting, because a month never contains more than 744 hours, so even if you owned your own hardware, you couldn't beat Apple's compute power with only one machine.

MBCook · 3 years ago
Xcode Cloud can runs your various jobs and builds in parallel.
bee_rider · 3 years ago
Depends on what the compute element in their cloud is.

Deleted Comment

BonoboIO · 3 years ago
You can get a Mac Mini M1 as Server for as low as 49$ per month from hetzner.

If you need more CI „hours“ this is a good way to go. For signing and the workflows a base subscription is maybe a good deal.

https://www.hetzner.com/dedicated-rootserver/brands/matrix-a...

Those parallel Test will get through your hours very quickly.

novok · 3 years ago
And then you need to spend all of that time managing that machine for a lot of labor cost. It's all about a balance overall.
10000truths · 3 years ago
Managing what, exactly? I get that there’s a one time cost you have to pay to set things up, but that’s true of cloud builds as well.
Cthulhu_ · 3 years ago
Amazon also has M1 available now: https://aws.amazon.com/about-aws/whats-new/2022/07/general-a...

We've just set up our CI in it (set it up as a Gitlab runner), it seems to work fine. To add more complexity, it isn't even a native iOS app but Nativescript. I think we use it to make the Android builds as well.

MrDOS · 3 years ago
For $475/month, I hope you're able to use it for more than just iOS builds.

I know I'm too hobbyist- and small-business-minded for lots of folks on HN, but that monthly fee is a mind-boggling non-starter for me. I know that cloud services are never the cheapest option and I don't want to come off as a skinflint, but AWS' Mac pricing is just absurd. Two months' rental pays for the machine outright (three, if you upgrade the RAM or storage). I wouldn't leap into running a public-facing service on a machine parked in the back corner of an office somewhere, but it's not a big deal if your CI/CD machine goes offline for a few minutes if power or data connectivity stumbles.

meowtimemania · 3 years ago
How do you like nativescript? I haven’t met anyone using it yet
BonoboIO · 3 years ago
Amazon charges 10 times the amount of hetzner ... uncounted bandwidth usage

Deleted Comment

zionic · 3 years ago
Why would I ever pay hetzner money when they dare to dictate what software I can/can not run.
rfrey · 3 years ago
So instead you'll give your money to... Apple?
hamandcheese · 3 years ago
Care to explain this one?
password4321 · 3 years ago
Achieving an open-source implementation of Apple Code Signing and notarization

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

Apocryphon · 3 years ago
Finally, the fruits of the Buddybuild acquisition(?)
akmarinov · 3 years ago
For comparison Bitrise charges 3 tokens per minute on an M1 mac and 10 000 tokens are $500. That gives you 55 hours.
wetpaws · 3 years ago
Bitrise does a lot more than just iOS cicd
akmarinov · 3 years ago
Not on an M1 Mac, they don't

Deleted Comment

frizlab · 3 years ago
It’s a small c in Xcode…
sebastien_b · 3 years ago
Also I wonder why they never pronounced it “Ten-Code” (after all “Mac OS X” was “Mac oh-ess Ten”)
dwaite · 3 years ago
Apple likes to write ten as the roman numeral X - that does not mean all uses of the letter X are the number 10.
eyelidlessness · 3 years ago
For that matter it should’ve been renamed 11code alongside the release of macOS 11!
lostgame · 3 years ago
I’ve been developing with Xcode since at least 2005 and I still have, for some reason, never gotten used to this. It’s only autocorrect that saves me, I always instinctively type it with a capital C. Weird.
monocularvision · 3 years ago
Yes, can we get the title updated to fix my twitching eye?
smoldesu · 3 years ago
Oh, the humanity.
jbverschoor · 3 years ago
The first steps to Apple’s AWS competitor. Their multi billion contract with Amazon will end soon, so the timing makes perfect sense.
yazaddaruvala · 3 years ago
Apple took the first steps to an AWS competitor in 2010 when it started working on phone CPUs.

Apple is very unlikely to build a “general cloud” offering. This is built and sold on differentiated services (eg BigQuery, Lambda, Kinesis), not on undifferentiated compute units (ie Apple Silicon even if it is slightly cheaper for the raw hardware).

Meanwhile, every time a developer uses local inference with CoreML, that competes directly with AWS’ revenue.

Apple’s “cloud” offering will be hosted in people’s pockets, powered by electricity consumers pay for, and hardware that Apple sells for a fat profit. And they will keep empowering developers to move more compute over to “the client”.

Cthulhu_ · 3 years ago
I think that IF they were to do any kind of cloud offering, it would be services for apps - storage like Firebase, push notifications, analytics, in-app purchase management, that kind of thing.
Ancapistani · 3 years ago
While I doubt it, I hope so.

Apple Silicon is so much more efficient on the desktop, and an AWS competitor might make it worthwhile to consider using aarm64 containers end-to-end. That would be amazing.

suresk · 3 years ago
I'm not sure what I'm missing, but don't most cloud providers have ARM instances these days? We've been running most of our stuff on Graviton processors on AWS for some time now and it is a nice cost savings.
aeyes · 3 years ago
Why is it not worthwhile to run ARM containers on AWS today? Savings should be roughly 20%.
Aloha · 3 years ago
How does a CI/CD system lead to an AWS competitor?
altairprime · 3 years ago
The pricing is in compute hours, which means that their app-integrated CI/CD offering directly competes with offerings that require you to purchase your own retail-rate AWS EC2 &co compute hours.
mrweasel · 3 years ago
That sort of raises the question: What does Xcode Cloud run on?

You would assume macOS as the operating system, but is that manageable at that scale? Maybe it runs on Linux and cross-compiles? Apple do run their own data-centers, which I assume all run Linux. If there was some headless macOS version and data-center wide management framework for it, I suspect that we would have heard about it. If the Xcode Cloud runs on macOS, does that mean that Apple have some rack mounted servers based on the M1/M2 processors?

AJRF · 3 years ago
It runs macOS on QEMU on machines that use Intel Xeon Gold 5218's - https://twitter.com/KhaosT/status/1410332951963869185/photo/...
oefrha · 3 years ago
Folks at e.g. MacStadium has been managing Mac minis (running macOS) at scale for a very long time. AWS also entered the space ~2 years ago. Of course Apple can do it themselves, and more efficiently.
Cthulhu_ · 3 years ago
> You would assume macOS as the operating system, but is that manageable at that scale?

Sure, it's a unix system. You can go far with SSHing into a machine and running some commands. Also, they only very recently discontinued MacOS Server (https://support.apple.com/en-us/HT208312)

Hardware-wise, it's either a battery of Mac Minis or Mac Pros, or maybe they've made custom hardware so they can put Apple hardware in a blade server form factor.

jbverschoor · 3 years ago
Darwin is headless. But maybe they're running asahi, although I doubt it. To run nodes, you don't actually need a complete distribution..

All the cloud providers create custom rack servers and even silicon, so why wouldn't they have rack mounted Mx boards? Also, the Mx gives you a lot of power for per watt. Perfect use case of a DC.

saagarjha · 3 years ago
It's macOS running in QEMU on commodity hardware.
jasoncartwright · 3 years ago
Is that true? Have they been investing the required billions (tens of billions?) in datacenter infrastructure across the globe to do this?
jbverschoor · 3 years ago
They have built a few datacenters around the globe.

They’re spending 10B between 2018 and 2023 to build datacenters in the US.

They’ve been a big customer on all cloud platforms (learning). The last contract with aws is worth at least 1.5b (300m/year but growing since 2018) and ends in about 1.5 year.

Seems like a good place to save billions, and make some more by offering cloud services on efficient systems.

And they've been hiring a lot of infra people since 2020

Deleted Comment