My question is, in 2022, should a person learning to hack get and use a MacBook? I see the two sides and I'm conflicted.
If you suggest running a Linux VM through UTM on the M1 Macs, I will counter by stating that you can only run ARM ISOs and I imagine there may be problems with software not compiled for ARM which could hinder the learning process but what do you think?
If you're interested in hacking on your computer's operating system, then you will find more flexibility with GNU/Linux or FreeBSD than with MacOS.
But if you're interested in higher-level applications -- tools, programming languages, artificial intelligence, numerical computing, etc. -- then the practical difference becomes much less.
My interests fall more at the higher level of programs, and have been happily using MacOS for most of the past 20 years.
Millions of people use MacBooks happily, but I personally hate them for their glossy displays, shallow keyboards and sharp palmrest edges (perhaps related to my hand size, since edges on a 14" MBP cut into my palms). MacOS also stopped having subpixel rendering, so any non-300dpi external screen (meaning all non 8k screens in existence) will show fuzzy fonts.
If you are looking for a machine to use on the go, I'd steer away from them for the above reasons.
For hacking, you also lose much of the access to internals too, or when you don't, it's way harder to get it than on a GNU/Linux system.
This doesn’t make a lot of sense to me. It’s true that you can’t rebuild the kernel or os services, or modify the system very much at all so if that is the kind of hacking you want to learn, then you shouldn’t use a Mac.
However, if by ‘learn to hack’ you mean ‘learn to code applications and services’, then Macs are great. You can learn both Apple’s proprietary stuff and all of the significant open source tooling and languages.
My only suggestion is that you do try Linux a good amount. This can be for a variety of things and even doing this in a VM is good. Get used to the command line and understand how the system purrs.
I started this with Arch and their wiki. Their wiki is great in general even for non-Arch Linux. You could go the hardcore route and do Linux From Scratch on a VM. Or play around with a Raspberry Pi. Or buy an old Lenovo to run something on.
But otherwise my personal preference for a $2K-$4K machine is to get something I can rely on and with an easy repair path. Many won’t agree but Mac fits that book for me.
> If you suggest running a Linux VM through UTM on the M1 Macs, I will counter by stating that you can only run ARM ISOs…
I think that's incorrect. From the UTM home page: "On Intel Macs, x86/x64 operating system can be virtualized. In addition, lower performance emulation is available to run x86/x64 on Apple Silicon as well as ARM64 on Intel."
As a further issue with hacking, I find it best to use sacrificial desktop(s) and maintain a separate desktop for all core and admin work. There's no point in breaking my production system* because I've tried something new.
Most of my sacrificial systems are either my older systems or systems I've rescued from clients' dumpsters.
The biggest downside of not having a Mac is that it prevents you from writing iOS/MacOS apps.
knowledge of macos is fine, but does not pay dividends.
Thank you everyone for your input!