Very funny to see HN hate on Microsoft and Google but then love a company where they cannot even run an app on their mobile platform without Apple's permission or only a certain number of VMs on the hardware they own .
HN is not one person. I'm very happy to hate on all of them. I see what you mean though. I've given up on getting normal people to care, but seeing programmers who are absolutely smart enough to run their own Linux system on computers they actually own actively choose not to do so is very disconcerting.
>seeing programmers who are absolutely smart enough to run their own Linux system on computers they actually own actively choose not to do so is very disconcerting.
I run macOS because Apple understands that QA testing is something of actual importance, and designing yet another package manager is not.
I do spin up Linux every now and again to see if it's good yet, and always walk away.
Why do documents print at ~50dpi on my network printer?
Why does the system simply not wake up ~20% of the time when I open my laptop's lid?
Why do I have to unplug and reconnect my USB WiFi Dongle every hour or so when the internet randomly drops out?
Why does the system stop recognising my USB SD Card reader occasionally, forcing me to hard reboot the system?
Why is the audio distorted over HDMI when I enable HDR?
Why does Kodi only detect a refresh rate of 30Hz when the system itself has no issues seeing that the monitor is 60Hz?
All of these are real problems that real users have had, but instead of solving them the Linux development community instead chooses to devote their time and resources navel gazing about systemd alternatives or creating a fragile AUR package for software that already has a sensible and officially supported distribution method.
Paraphrasing F. Scott Fitzgerald? "The test of a first-rate intelligence is the ability to hold two opposed ideas in the mind at the same time, and still retain the ability to function."
Holding contradictory ideas isn't the laudable skill. Any uncritical person can believe conflicting things without being troubled by them. The genius is holding such ideas in disbelief long enough to let evidence alter or evict them.
Has apple been a serious development platform in the last 20 years?
I know a lot of devs like apple hardware because it is premium but OSX has always been "almost linux" controlled by a company that cares more about itunes then it does the people using their hardware to develop.
At least 9 out of every 10 software engineers I know does all their development on a mac. Because this sample is from my experience, it’s skewed to startups and tech companies. For sure, lots of devs outside those areas, but tech companies are a big chunk of the world’s developers.
So yea I would say Apple is a “serious development platform” just given how much it dominates software development in the tech sector in the US.
The hardware for a Linux laptop right now is not great. Especially for an arm64 machine. Even if the hardware is good the chassis and everything else is typically plastic and shitty.
>>At least 9 out of every 10 software engineers I know does all their development on a mac
I work in video games, you know, industry larger than films - 10 out of 10 devs I know are on Windows. I have a work issued Mac just to do some iOS dev and I honestly don't understand how anyone can use it day to day as their main dev machine, it's just so restrictive in what the OS allows you to do.
I compile a tool we use, send it to another developer, they can't open it without going through system settings because the OS thinks it's unsafe. There is no blanket easy way to disable this behaviour.
We also inject custom dlibs into clang during compilation and starting with Tahoe that started to fail - we discovered that it's because of SIP(system integrity protection). We reached out to apple, got the answer that "we will not discuss any functionality related to operation of SIP". Great. So now we either have to disable SIP on every development machine(which IT is very unhappy about) or re-sign the clang executable with our own dev key so that the OS leaves us alone.
If SIP is kicking in, it sounds like you're using the clang that comes with Apple's developer tools. Does this same issue occur with clang sourced from homebrew, or from LLVM's own binary releases?
It is a weird situation. Apple products are consumer products but they make us use them as development hardware because there is no other way to make software for those products.
Anything being developed for the Apple ecosystem requires use of the Apple development platform. Maybe the scope could be called "unserious," but the scale cannot be ignored.
However having used Xcode at some point 10 years ago my belief is that the app ecosystem exists in spite of that and that people would never choose this given the choice.
For me at least, not being Linux is a feature. Linux has always been “almost Unix” to the point where now it has become its own thing for better or worse. OS X was never trying to be Linux. It would be better if we still had a few more commercial POSIX implementations.
That is fair but in my experience most devs are targeting linux servers not BSD(or any other flavour) which is helped by OSX. If OSX was linux derived it would suit them just as well.
edit: I suppose I should also note the vast majority of people developing on mac books (in my experience anyway) are actually targeting chrome.
Heterogeneity is the feature. The Linux ecosystem is better off for it (systemd, Wayland, dconf, epoll, inotify are all based on ideas that were in OS X first) and not being beholden to Linux is a competitive advantage for Apple everyone wins.
This is a very silly restriction, at least to apply uniformly to all Macs. I think if you buy a more powerful Mac they should let you virtualize more Mac instances. Like an M5 maybe limit to 2, but maybe let an M5 Pro do 4 and an M5 Max do 8 or something.
Apple had to be dragged kicking and screaming into the world of virtualization and the idea of macOS running on anything besides "metal built by Apple." They've been pretty clear for decades that they only care about customers who buy Apple aluminum and silicon.
The limit isn't really a resource issue, since you can run pretty much an "unlimited" number of non-Mac VMs. I suspect it's more of a business decision, such as preventing people from setting up shop as a low-cost Mac VPS provider.
Because their business model is to sell tightly integrated hardware and software as a package. The hardware sales fund the software development. They don't want people who haven't bought the hardware using the software.
Yeah but the "hardware" in that sense is almost entirely iPhone and iPhone-adjacent, Mac is a trailing 4th- or 5th-place line of business... maybe 6th.
That kind of tracks as the source of the concern. My first thought was it’d be something IDMS-related as well. I don’t know enough about that system to pinpoint exactly what.
I run macOS because Apple understands that QA testing is something of actual importance, and designing yet another package manager is not.
I do spin up Linux every now and again to see if it's good yet, and always walk away.
Why do documents print at ~50dpi on my network printer?
Why does the system simply not wake up ~20% of the time when I open my laptop's lid?
Why do I have to unplug and reconnect my USB WiFi Dongle every hour or so when the internet randomly drops out?
Why does the system stop recognising my USB SD Card reader occasionally, forcing me to hard reboot the system?
Why is the audio distorted over HDMI when I enable HDR?
Why does Kodi only detect a refresh rate of 30Hz when the system itself has no issues seeing that the monitor is 60Hz?
All of these are real problems that real users have had, but instead of solving them the Linux development community instead chooses to devote their time and resources navel gazing about systemd alternatives or creating a fragile AUR package for software that already has a sensible and officially supported distribution method.
Plenty of hate out there of apple alongside the love.
Holding contradictory ideas isn't the laudable skill. Any uncritical person can believe conflicting things without being troubled by them. The genius is holding such ideas in disbelief long enough to let evidence alter or evict them.
I know a lot of devs like apple hardware because it is premium but OSX has always been "almost linux" controlled by a company that cares more about itunes then it does the people using their hardware to develop.
So yea I would say Apple is a “serious development platform” just given how much it dominates software development in the tech sector in the US.
I work in video games, you know, industry larger than films - 10 out of 10 devs I know are on Windows. I have a work issued Mac just to do some iOS dev and I honestly don't understand how anyone can use it day to day as their main dev machine, it's just so restrictive in what the OS allows you to do.
We also inject custom dlibs into clang during compilation and starting with Tahoe that started to fail - we discovered that it's because of SIP(system integrity protection). We reached out to apple, got the answer that "we will not discuss any functionality related to operation of SIP". Great. So now we either have to disable SIP on every development machine(which IT is very unhappy about) or re-sign the clang executable with our own dev key so that the OS leaves us alone.
However having used Xcode at some point 10 years ago my belief is that the app ecosystem exists in spite of that and that people would never choose this given the choice.
edit: I suppose I should also note the vast majority of people developing on mac books (in my experience anyway) are actually targeting chrome.
Point taken. Most developers probably make do with Linux containers rather than MacOS VMs.
That’s what I would be worried about if my primary source of income was hardware sales.
My 2018 mac mini officially supports VMware ESXi to be installed directly on the hardware and virtualize any number of macOS machines
Funny enough I can even launch more than 2 macOS vms on my framework chromebook with qemu + KVM from the integrated Linux terminal.
it would be amusing if that bypassed the limit.