What? I’m a software engineer (a so-called “professional”) at a major corporation and we get the choice between Windows and Mac. Every single person I know in the company has chosen Mac.
This is always weird to me. Running containers on my Linux machine is way faster than all of my coworkers on Windows. But they still are able to run containers way faster than our coworkers on Apple.
I don’t see the appeal of an apple machine for coding unless you’re making Apple specific software. To each their own though.
I’m a heavy containers user. All the code I write is deployed on Linux. Regularly have a dozen or more running.
Performance is a mixed bag in my expereince. Some software is slower, but other software is faster on my Mac. The RAM on a good modern Mac (even laptops) runs at almost a terabyte per second, and the SSD runs at several gigabytes per second. That’s a lot faster than most Linux boxes and it’s often more than enough to overcome inefficencies like converting from one filesystem to another.
I’ve tried using a headless Linux server for my containers, and cloud Linux servers… but it generally hasn’t made a much of a difference and just adds unnecessary complexity.
As for why I like a Mac… the window manager is just so much better especially when you customise it with third party utilities. Also, I like how tightly integrated all my Apple devices are. My desktop Mac, my laptop, my iPad, my iPhone… they all work togerther seamlessly with a single keyboard/mouse, a single pair of wireless headphones, a single copy/paste clipboard, all the same files on my desktop/documents/etc.
They even integrate with my watch - when I SSH into a server on my Mac, it checks if my watch is nearby, checks if I’m wearing it (if you steal my watch, it auto locks), then offers for me to tap a button on the watch to unlock my SSH private key. When I’m wearing my motorbike helmet and try to use my phone… it can’t scan my face and instead falls back to useing my watch to unlock the phone.
The performance and battery life of my ultraportable laptop is also pretty awesome. I keep it plugged in (to a monitor) on my desk most of the time, but on the weekend I can use it all weekend without charging the battery and it’s actually got exactly the same CPU/RAM/performance/etc as my desktop workstation (which is not slow).
To get that level of performance, from a battery that is half the size (and therefore half the weight) of most PC laptops, is pretty amazing. Combine the performance and light weight and integration with my desktop workstation all together… and I can be productive wherever I want. I don’t need to be at my desk all the time.
Finally there’s a lot of really nice software which is exclusive to the Mac. Raycast, for example.
And then there’s all the really nice little things - for example Macs do OCR on images. You can select text in a screenshot or company log and copy/paste it. Macs have a thousand nice small features like that.
I’m willing to pay a slight Docker performance penalty to enjoy all of these things and more. And if I wasn’t it’d be easy enough to run the docker containers on a Linux server in the small data center we have a few steps down the hall.
Not everybody is running containers, or is constrained by the performance of those containers, I guess?
I think the primary aspect where Macs are more appealing than Windows machines for many programmers is just that it’s a unixy machine and many of the tools that you’d care about from Linux / *BSDs / whatever are easily available. I guess this is maybe different in an era with WSL, but that’s a relatively new development, and since I’ve only used Macs and other unixy machines before I have no idea if that’s a viable option personally and I’d be skeptical…
In terms of “why a Mac over Linux?” I think it’s partially a matter of Macs being well supported and that most people don’t seem inclined to fiddle with Linux on their primary work computer.
Beyond that, though, I think MacBooks are just nice laptops with fewer compromises than most other laptops in my experience. They have good build quality and pretty much every aspect of them is pretty solid… Good keyboards, good chassis, good battery life, good screens, good trackpads, good speakers, good performance. I think it’s actually pretty hard to get something that’s as solid all around, I feel like with pretty much everything else there’s something that stands out to complain about. Like I love my Thinkpad, but god I wish I had an Apple trackpad, or an Apple silicon chip and the performance / watt that comes with it.
What? I’m a software engineer (a so-called “professional”) at a major corporation and we get the choice between Windows and Mac. Every single person I know in the company has chosen Mac.
This is always weird to me. Running containers on my Linux machine is way faster than all of my coworkers on Windows. But they still are able to run containers way faster than our coworkers on Apple.
I don’t see the appeal of an apple machine for coding unless you’re making Apple specific software. To each their own though.
I’m a heavy containers user. All the code I write is deployed on Linux. Regularly have a dozen or more running.
Performance is a mixed bag in my expereince. Some software is slower, but other software is faster on my Mac. The RAM on a good modern Mac (even laptops) runs at almost a terabyte per second, and the SSD runs at several gigabytes per second. That’s a lot faster than most Linux boxes and it’s often more than enough to overcome inefficencies like converting from one filesystem to another.
I’ve tried using a headless Linux server for my containers, and cloud Linux servers… but it generally hasn’t made a much of a difference and just adds unnecessary complexity.
As for why I like a Mac… the window manager is just so much better especially when you customise it with third party utilities. Also, I like how tightly integrated all my Apple devices are. My desktop Mac, my laptop, my iPad, my iPhone… they all work togerther seamlessly with a single keyboard/mouse, a single pair of wireless headphones, a single copy/paste clipboard, all the same files on my desktop/documents/etc.
They even integrate with my watch - when I SSH into a server on my Mac, it checks if my watch is nearby, checks if I’m wearing it (if you steal my watch, it auto locks), then offers for me to tap a button on the watch to unlock my SSH private key. When I’m wearing my motorbike helmet and try to use my phone… it can’t scan my face and instead falls back to useing my watch to unlock the phone.
The performance and battery life of my ultraportable laptop is also pretty awesome. I keep it plugged in (to a monitor) on my desk most of the time, but on the weekend I can use it all weekend without charging the battery and it’s actually got exactly the same CPU/RAM/performance/etc as my desktop workstation (which is not slow).
To get that level of performance, from a battery that is half the size (and therefore half the weight) of most PC laptops, is pretty amazing. Combine the performance and light weight and integration with my desktop workstation all together… and I can be productive wherever I want. I don’t need to be at my desk all the time.
Finally there’s a lot of really nice software which is exclusive to the Mac. Raycast, for example.
And then there’s all the really nice little things - for example Macs do OCR on images. You can select text in a screenshot or company log and copy/paste it. Macs have a thousand nice small features like that.
I’m willing to pay a slight Docker performance penalty to enjoy all of these things and more. And if I wasn’t it’d be easy enough to run the docker containers on a Linux server in the small data center we have a few steps down the hall.
Not everybody is running containers, or is constrained by the performance of those containers, I guess?
I think the primary aspect where Macs are more appealing than Windows machines for many programmers is just that it’s a unixy machine and many of the tools that you’d care about from Linux / *BSDs / whatever are easily available. I guess this is maybe different in an era with WSL, but that’s a relatively new development, and since I’ve only used Macs and other unixy machines before I have no idea if that’s a viable option personally and I’d be skeptical…
In terms of “why a Mac over Linux?” I think it’s partially a matter of Macs being well supported and that most people don’t seem inclined to fiddle with Linux on their primary work computer.
Beyond that, though, I think MacBooks are just nice laptops with fewer compromises than most other laptops in my experience. They have good build quality and pretty much every aspect of them is pretty solid… Good keyboards, good chassis, good battery life, good screens, good trackpads, good speakers, good performance. I think it’s actually pretty hard to get something that’s as solid all around, I feel like with pretty much everything else there’s something that stands out to complain about. Like I love my Thinkpad, but god I wish I had an Apple trackpad, or an Apple silicon chip and the performance / watt that comes with it.