HACKER Q&A
📣 mraza007

Mac or Linux based laptop for development


I’m coming from linux world but after using macbook for 3 months I’m tempted to buy a macbook buy they are pricey and at the same time I don’t wanna leave the Linux ecosystem


  👤 dividedbyzero Accepted Answer ✓
It totally depends on what kind of development work you want to do. Windows apps? Then get a Surface Pro or the like.

iOS or native macOS apps? Get a Macbook.

Web development? It doesn't matter as long as you're comfortable using the respective OS (macOS or Linux).

Data science? If you plan on using the built-in GPU for machine learning, don't get a Macbook. The 16" ones have AMD GPUs that aren't well-supported for ML, everything below has Intel GPUs which, while plenty powerful for day-to-day usage, aren't usable for ML. Get a Thinkpad or Dell with a Nvidia GPU and an Intel GPU, so you can use the dedicated GPU for ML exclusively. If you plan on running such workloads in the cloud (as many do) it doesn't matter.

Backend work? Depending on the backend, it won't matter. PHP, Ruby, Java, Scala, Python, Go, Rust, ... can be done on macOS and Linux equally well. ASP.net and the like will require Windows.

Devops-heavy work? If you expect to be running lots of VMs on your laptop, get a Linux laptop with as much RAM as you can cram into it. A 16" MBP with lots of RAM will do, too, but that's going to be pricey. If you can run such workloads in the cloud, it doesn't matter.

If you want the most versatile, also get a Macbook. It'll run Linux and Windows virtualized just fine, macOS natively, you can do Android development and iOS development, all in a single machine. Depending on your needs a spec-ed up Air may be powerful enough, still not exactly cheap though. That's what I do, but with a 13" Macbook Pro (plus GCP instances for ML training).

If you want to stick with Linux in earnest, and don't see yourself developing native macOS or iOS apps in the forseeable future, get a Dell or Thinkpad with good Linux support for your distro of choice.


👤 cpach
It all comes down to a matter of taste really.

IMHO: If you can afford it, get a Macbook of some kind. For a laptop/desktop, I would take macOS over Windows or Linux, any day. IMHO, macOS has the best apps and the best desktop experience. With Homebrew, you can install ~99% of all CLI utilities that you could run on Linux.

I switched from Linux to macOS seven years ago and so far there are no Linux applications that I haven’t found a good alternative for.

But to each their own and YMMV.


👤 rvz
You can still have it all on a Macbook plus with Windows and Linux installed too.

Macbooks have the g̶o̶l̶d̶ diamond standard of trackpads from any other laptop you can find. Triple boot Windows, macOS and Linux without any effort or need of 'Hackintoshing' and in general, Touch ID and Apple Watch authentication in macOS on a Macbook take the pain out of repeatedly typing in passwords for SSH, PGP, password-managers etc.

macOS on a Macbook just adds the added extra convenience Apple gives you which doesn't exist on any Linux laptop which makes development effortless and gets out of my way.


👤 meretext
I'm typing this on my primary machine, a late 2012 MacBook Pro. That's 8 years of full daily use, travel, downloads, compiling, running Docker, etc. And I really do mean every single day, morning onwards. Not saying all MacBooks will stand up that long, but my secondary laptop is a 2010 MacBook Air, and it's still kicking, though OS upgrades aren't available anymore for it. Aside from the keyboard problems of the past few years (one of the reasons I waited to upgrade), I've found them to be very reliable. Even my PowerBook with the Motorola CPU was still running up until a couple of years ago when I cleaned house. And as they can run OSes in VMs (Linux, FreeBSD, Windows ...), I feel the MacBook Pro is the best development platform, and really, best platform for most things. I have mutt installed for email, so you can still run all your CLI 'apps' if you like. Yeah, it is truly an awesome machine. And this one, 2 months before Apple Care expired, I took it in for a 'checkup' -- they replaced over $1,100 worth of parts, including the logic board. I hadn't noticed anything wrong about the machine, but apparently it didn't meet their standards. If you're already leaning that way, buy one, use it for a while, and if it's not what you want later, sell it and consider the loss as you renting the laptop for that period of time. I could upgrade now the keyboards are fixed, but, well, this still works. Now I think I'll wait for the ARM-based MacBooks coming hopefully later this year.

👤 rrao84
I have done codec development, heavy C++ programming, web development (front end), worked with MS Office exclusively for a year when I was a "manager" and now onto to blogging and copywriting. My trusty companion in all of this has been my Macbook Pro 2015 (Early) and it has never once crashed or stopped working.

I have seen so many Windows machines come and go and nothing can hold a candle to a MacbookPro. This is my personal opinion - ymmv. But, if you are looking for a 1-time purchase that will last you atleast 6 years, and you use your machines carefully, then a Macbook Pro is worth the investment.

Fair warning: I have no idea how the ARM-based macs are going to turn out.


👤 varbhat
I am using Thinkpad E14 . I find it perfect for my usecase. It supports Linux 100℅ , built very well, has best keyboard, has flawless efi firmware.

👤 codegladiator
Get Windows. WSL is great. And the machines powering windows are also great. I recently deleted my Ubuntu 18 setup and using Win 10.

👤 chagaif
You need both and windows as well.