Ask HN: To MacBook or Not to MacBook?
I was reading up on becoming a hacker from Eric S. Raymond's HOWTO and it stated NOT to run MacOS since it is proprietary (which makes it difficult to learn how to hack) but I also remember reading Paul Graham's essay 'Return of the Mac' which highlighted the reasons why hackers (in 2005 anyway) started using Macs again (the OS and great hardware design).
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?
29 comments
[ 3.3 ms ] story [ 78.4 ms ] threadThis 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.
> 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."
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.
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.
knowledge you gain troubleshooting on your laptop can be reused later in production.
intuition you gain on your laptop guides you in production.
windows and macos servers are not a thing, so unless you work in IT, no dividends.
I don't disagree that it's useful knowledge but I guess I'm too old to be reaping the dividends on troubleshooting my laptop.
Thank you everyone for your input!
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.
Monitors are a problem in my experience and it does show fuzzy fonts. MacOS also has weird behaviour on some websites.
Still they're pretty good travel companions. The 2022 MBPs are light as a book and has excellent battery life - about 8 hours unplugged. I used to bring a MBP and my main Windows laptop to work, so you can put two in a backpack.
Not to mention soft-touch rubbery palmrest: I hope they never move away from that, it's perfect (though I don't care about it being a fingerprint magnet, which it is).
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.
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.