I have similar feelings. Apple did a wonderful job with M1/M2, but on the software side, I have mixed feelings. Xcode is a mess, and Swift UI is not a complete replacement for Cocoa.
And on the OS side, I feel like Apple is creating features that I instantly disable because they do the exact opposite of what I want.
Apple's hardware is incredible but the software is increasingly grating for any kind of power usage. Xcode is frustrating, the permissions system is flagrantly designed for Apple's self interest, window, monitor, and app management is rife with ancient bugs and half baked design decisions.
I used to think the same, but I had to sell off the 2016 macbook pro because the keyboard was unusable, my 2019 macbook pro has already gone back for stuck arrow keys a year ago, and now the left command key is randomly sticking, which is really annoying because you never know which shortcut key will be triggered.
Compared to my 2010 macbook pro which was used without any repairs for close to 8 years.
Unless you all are buying new apple devices every year or two, I don't see how the "apple hardware is incredible" claim can be substantiated.
But what's the alternative?
Windows has also become incredibly grating with even more telemetry and commercial offerings embedded in the OS (especially the home versions).
If you think of macOS as 'half baked' I'm curious what you think of Linux distributions with their infighting about everything from the desktop and graphics stack to which tool should start up system services. There's even less internal consistency there.
I bought a 2017 ThinkPad for $100 and installed Linux on it. It's quite good. I would never use it as a daily driver though. I love macOS too much, even with all its flaws. But I try to do as much development in Linux as possible (whether on a device, in a VM or on a remote machine). I feel like every dev tool I install on Mac is more technical debt that I need to pay for each time I update the surrounding OS.
I've had almost 0 problems being a power user with a KDE Plasma Arch Linux. There is internal consistency in distro lineups. Linux is not one OS. You can have the telemetry ridden but more accessible Ubuntu experience to the extremely fast and barebones Xfce Arch experience, it's your choice.
I've been someone who used Windows, MacOS and around 20 Linux distros extensively across many laptops / PCs. Always tempering, endless configuration, customization, frustration with Windows instability, MacOS inflexibility or e.g. needing to spend days so my audio works on Linux.
A couple of years ago, I picked up Thinkpad P1 (Ryzen 4800U) and got settled with Arch + Plasma. I've never before had such a snappy, quiet, stable, 3 monitors, all hardware and software just working, fully customized, and empowering experience of using a computer and went years without needing to touch anything - as it was perfect.
It ended when I couldn't resist a new MBP 14, but I've been slowly accumulating nostalgia for my Linux setup since and will surely get back to it, hopefully when Asahi Linux completes support for external monitors.
XCode is refusing to install. Fails with some error, and asks me to download XCode again. Also now the system needs 70-80 GB of free space to install XCode. One of the funny upgrades so far
There is definitely something buggy going on there. It took 2 attempts for it to install for me! No errors, it just stopped installing somewhere around 90%. Plenty of free disks space and RAM.
Are you sure it actually stopped installing? When I installed XCode for the first time a few months ago, there was a 20-30 minute period where it was completely silent. Ultimately I was able to tail some syslog from the app store daemon that indicated it was actually doing something (downloading dependencies and validating their signatures, IIRC). But I almost restarted the computer thinking it wasn't working.
It is not, yet, a full replacement. You can use Swift UI for some kinds of apps but there are UIs that are still harder in it. Apple acknolwedges that some people still need to use Appkit. It’s clear that their long term plan is to build out Swift UI to be enough to fully replace the older libraries.
Xcode is a mess in many fronts. For example my Xcode updated automatically to a version which couldn't support Ventura anymore, the OS I'm still running. I had to uninstall the app store version and manually download older one to fix the situation.
And on the OS side, I feel like Apple is creating features that I instantly disable because they do the exact opposite of what I want.