All of the things you mentioned are also true of intel macs, which again are wildly popular among web devs of all kinds.
If you can't explain the popularity of those machines in spite of those limitations, I don't see why I should accept those as reasons why apple arm computers won't be popular.
Well, no, it's all totally made up.
I'm talking a 16GB Intel i7 8-thread Macbook vs a 32 thread twin-socket 72GB RTX2080 beast running Ubuntu 20. The Mac crushes it in terms of feel, fit and finish. I haven't tried M1 yet but I bet it'll one-up my current Intel macbook. I'm quite eager to get one.
> Besides that, the M1 doesn't support most of the software that most engineers are using...
??? Other than CUDA, the macbook meets my needs 95% of the time. I'm mostly want for a native Docker networking experience a small minority of the time. I need a responsive GUI head to act as my development environment. All the heavy lift compute is done on servers/on-prem/in-cloud.
> - BSD-styled memory management causes frequent page faults and thrashes memory/swap
Only under super heavy memory demand. I close some browser tabs or IDE panes (I normally have dozens of both).
> - Abstracting execution makes it harder to package software, harder to run it, and harder to debug it when something goes wrong
Almost everything I do is containerized anyways, so this is moot.
I was squarely one of those "why would anyone use mac? It's overpriced, lock in, $typical_nerd_complaints_about_mac" until COVID happened and it became my daily driver. Now I can't go back.
> - MacPorts and Brew are both pretty miserable package managers compared to the industry standard options.
No snark intended - Like what? I'm not exactly blown away by Brew, but it's been generally on par with Apt(get). Aptitude is marginally better. There's not a single package manager that doesn't aggravate me in some way.
> BSD-styled memory management causes frequent page faults and thrashes memory/swap
You're basically pulling this out of nowhere. Not once in six years of using MacOS has this ever happened to me.
> Quartz and other necessary kernel processes consume inordinate amounts of compute
Yes, because Windows is so much better. This is sarcasm. Just pull `services.msc` and take a look at everything that's running.
> MacPorts and Brew are both pretty miserable package managers compared to the industry standard options.
In your opinion, what is industry standard? `apt-get` and `yum`? I have yet to come across a better package manager than Brew. Brew just works. Additionally, most binaries that are installed in Brew don't require elevation. Which is fantastic because almost every program installation requires elevation in Windows.
> Macs have notoriously terrible hardware compatability
Hardware compatibility in what sense? As in, plug-and-play devices on a MacOS powered machine?
I'd argue the inverse; I often just plug in devices to my MacBook without having to install a single driver. Imagine my shock years ago when I plugged in a printer to my MacBook and I was able to immediately start printing without installing a single driver. Same with webcams, mice, etc.
Do you mean hardware compatibility in terms of build targets? I think here you might be correct, but even then you can compile for different operating systems from within MacOS... so again, I'm not entirely sure what you mean here.
I guess if you're talking about legacy devices where the hardware manufacturer hasn't bothered to create drivers for anything other than Windows, then your point might be valid, but how often does this happen...?
> Abstracting execution makes it harder to package software, harder to run it, and harder to debug it when something goes wrong
...more disingenuous statements. What do you mean by this? Under the hood, MacOS is Unix. Everything that runs on a MacOS machine is a process. You can attach to processes just as you would on a Windows machine. Similarly, if you have the debugging information for a binary you can inspect the running code as well.
MacOS is not a perfect operating system; for one, I do wish that it was better for game development. But I'm really struggling to understand your points here. Every single one is either not applicable or just straight up wrong.
macOS doesn't use the BSD VM.
> If anything, it's GPU is significantly weaker than most other laptops on the market.
You meant to say "stronger" at the task of not burning your lap.
I don't know which engineers you hang out with, but the only "engineer" I know who uses an M1 Mac does web design. Besides that, the M1 doesn't support most of the software that most engineers are using (unless you're working in a field already focused on ARM), and the fragility of a Macbook isn't really suited for a workshop environment. Among them, Thinkpads still reign supreme (though one guy has a Hackintosh, so maybe you were right all along?)
> But I wonder if the M1 will solidify or grow Apple's (perceived) dominance among developers?
Developers are going to be extremely split on this one. ARM is still in it's infancy right now, especially for desktop applications, so unless your business exclusively relies on MacOS customers, there's not much of a value proposition in compiling a special version of your program for 7% of your users. Because of that, MacOS on ARM has one of the worst package databases in recent memory. Besides, there's a lightning round full of other reasons why MacOS is a pretty poor fit for high-performance computing:
- BSD-styled memory management causes frequent page faults and thrashes memory/swap
- Quartz and other necessary kernel processes consume inordinate amounts of compute
- MacPorts and Brew are both pretty miserable package managers compared to the industry standard options.
- Macs have notoriously terrible hardware compatability
- Abstracting execution makes it harder to package software, harder to run it, and harder to debug it when something goes wrong
...and many more!
In other words, I doubt the M1 will do much to corroborate Apple's perceived superiority among the tech-y crowd. Unless people were really that worried about Twitter pulling up a few dozen milliseconds faster, I fail to see how it's any better of an "engineering" laptop than it's alternatives. If anything, it's GPU is significantly weaker than most other laptops on the market.