DEV Community

Nikita Armstrong
Nikita Armstrong

Posted on

What’s the best laptop for devs?

Currently looking a new laptop but can’t decide between :

1) MacBook Pro
2) Surface Book 2

Anyone any thoughts?

Top comments (45)

Collapse
 
val_baca profile image
Valentin Baca

My stock answer for someone needing a spiffy new laptop:

need macOS? Find a "late model" Macbook Pro without the touch bar.
Linux? Either Thinkpad X1 Carbon for mobility or T480 for more bang-for-the-buck.
Windows? Probably go with a Dell XPS 13"

If you're on a tighter budget, finding refurbished or used versions of all those could really save money without losing out on much versus having the latests new model.

Collapse
 
webreflection profile image
Andrea Giammarchi

Dell XPS 13" Developer Edition with Linux on it for the last 4 years: not a single regret ever.

Collapse
 
kharouk profile image
Alex Kharouk

I've been looking at the Dell XPS 13 for a while now as a possible upgrade for me. What is your opinion on transitioning from a MacOS/Windows programming background to Ubuntu?

Thread Thread
 
webreflection profile image
Andrea Giammarchi

My opinion is that Ubuntu is not suitable for developers, gamers, or power users, it's rather suitable for offices. Try antergos instead and see how that works, it's always updated to the latest stable, and it's great for gaming, office usage, and everything else too.

Remember to switch on dark theme on tweaks software, and you'll probably be forever happy :-)

Thread Thread
 
wrends1 profile image
Wrends

Wtf?

Thread Thread
 
webreflection profile image
Andrea Giammarchi

Wtf!

Collapse
 
databasesponge profile image
MetaDave 🇪🇺

I like the look of the T-Series, but maybe would go for a T580 for the 15" display. 14 is a little too tight for my liking, and I'm not one of the external monitor types.

Collapse
 
adamthewizard profile image
Adam

I was stuck between the two for ages too, and then I bought a custom one from PC Specialist and it is actually more powerful and about half the price! Worth thinking about ✌🏻

Collapse
 
rhymes profile image
rhymes • Edited

I googled "Surface Book 2" just to see what laptop that is and the second result was: My Surface Book 2 is sleek, fast, innovative — and I hate it.

Apparently there's a known issue with CPU and GPU high usage that can discharge the battery when it's connected to the power supply. From wikipedia:

When running workloads with high CPU and GPU usage on a 15-inch Surface Book 2 with the power mode set to "best performance", the notebook consumes more power than its 95-watt power supply can provide, and its battery discharges. If these workloads are run continuously, such as during gaming or video transcoding, the notebook eventually throttles its performance to decrease power consumption and prevent complete battery discharge

Don't know if it has been fixed. Despite this it seems like a good laptop.

I think the ultimate decision is OSX vs Windows and that depends mostly on what you do and what you need and how you use your laptop for programming and for everything else...

Lately Windows has gotten better for developers:

Collapse
 
mbtts profile image
mbtts • Edited

This question is similar (it was Surface Laptop not Surface Book) but you may still find the discussion useful for your decision making.

I answered there in more detail but to summarise:

  • Neither is a good option at the moment because they both use the 7th generation Intel chips, whereas the 8th generation offer a nice improvement and are shipping on other laptops.
  • Your mix of development/design/mobile development is important to consider - there are certain tasks which may be harder or impossible on Windows.
  • As others have mentioned Ubuntu or another Linux distribution can also be well suited to development (but again comes down to requirements).

People can quibble either way on some, but generally in 2018 these rules still apply:

  • If you do any mobile development (including React Native/Flutter) then macOS makes most sense for access to the iOS simulator.
  • If you do some design or work closely with designers and require Mac specific tools (like Sketch) then macOS also makes most sense.
  • If you use a predominantly Microsoft stack (C#/.Net) then Windows is the way to go.
  • If you primarily develop with a non-Microsoft stack (Python/Java/Ruby/Go/Rust etc. etc.) then Linux is the best option.

WWDC has come and gone without any new hardware and to my knowledge there are no reliable rumours of Surface updates either (aside from a budget model). I suspect both will get updated around September/October but they may come sooner.

The MacBook has well documented keyboard issues and the Surface Book is bizarrely missing Thunderbolt and has some quality issues of its own (like an unreliable power button). It is a frustrating game of waiting as the next round of updates will very likely address these issues and be “the time to buy” for MacBook and Surface Book.

If you need to buy now then I would pick either the Thinkpad X1 Carbon or Thinkpad T480s. The reason I would pick the Thinkpad models over the Dell XPS 13 is because they both have slightly larger screens (14"), more comfortable spill-proof keyboards, higher build standards and include a webcam in the right position.

Collapse
 
patrickodacre profile image
Patrick O'Dacre • Edited

I'd avoid MacBook like the plague because of what I learned here: youtube.com/user/rossmanngroup

I wouldn't do surface because I don't do design and don't need the whole tablet thing.

You can buy a lot of power for the price of those two...

I personally have an Asus rog and love it. The prices are reasonable and you get all the power you need.

If you're doing video editing etc it may not be a good choice, not sure.

For my next laptop I'll go ThinkPad or Dell xps because I love Linux.

Collapse
 
nickjj profile image
Nick Janetakis • Edited

Depends on what you use it for.

I modified a chromebook to run Linux natively on it and am very happy with it as a portable computing device.

It's not what I use full time (I have a desktop workstation) but I still do a lot of programming on it.

It easily runs large Dockerized rails apps + VSCode + streaming music + lots of browser tabs without breaking a sweat.

IMO it's the best set up you can get for $350, that's for sure.

It ticks all the right boxes:

[x] It has a 1080p IPS monitor that rivals $1,000+ laptops
[x] It has a real SSD and an SD card
[x] The keyboard feels really really nice
[x] It weighs under 3 pounds and looks sleek

Details on which model I have and how I set it all up can be found at nickjanetakis.com/blog/transform-a....

Collapse
 
djviolin profile image
István Lantos • Edited

The ones that you look on the shelf, touch it's shiny 13inch aluminium body, opening and closing the perfectly functional hinge, praise it's good bright, high resolution screen, taking into your hands to see the slim side of it, putting it back aaaaand walking over, because usually they are the most expensive in the entire store...

...and before you exiting, you see and old design Macbook Air which still looks great in real world...

Collapse
 
fzngagan profile image
fzngagan

I'll suggest you go for mbp. I have used linux and windows for coding earlier in my college days but in both of them, things could break if you got into customization or tweaking and as a dev you dont want to be fixing os issues in your valuable time so macos is very stable and controls your access to certain parts of the os unless you really really intend to. This gives you the benifit of focusing on your work and not the os. UI and UX are the best in macos eg touchpad gestures etc and slick UI. Last but not the least hombrew which is the best package manager I believe which manages all packages you need especially coding related tools. Go for mac and I promise you wont look back ever again.

Collapse
 
vgrovestine profile image
Vincent Grovestine • Edited

I'm just repeating what's already been said, but a Thinkpad T-series is the way to go, IMHO--I'm 6 years into a T520 and it still has plenty of life left. Alternatively, the X-series for portability or the newest generation A-series (AMD Ryzen) for a slightly less expensive option.

Collapse
 
bkimballbrian profile image
Brian Kimball

I use a Lenovo T450S with Windows 10. No complaints, and I have not run into anything I cannot do. The surface pro 2 looks awesome. I am not a Mac guy, but I have heard a lot of complaints about them lately.

Collapse
 
tctien342 profile image
tctien342

An windows laptop running hackintosh :))

Collapse
 
nyanev profile image
Nikolay Yanev • Edited

I've been a mac user for 8 years. Last year I bought most powerful MBP 15" 2017 and won't recommend it. After a few months, some of the keys have stopped working, battery life is awful it lasts 3-4 hours. I consider building a hackintosh for 1/4 of the price. Another good option for Linux/Windows machine is Lenovo X1 Carbon.

Collapse
 
mathur_anurag profile image
Anurag Mathur 

This completely depends on the stack you are building and the target deployment machine.

For most development on Web, iOS, macOS, Java, JS, and allied, I would prefer MacBook Pro even if the deployment target is on Linux.

If you are developing on a predominantly Windows stack like SQL Server, Visual Studio, .NET, it may help to code on a Windows laptop. I would prefer a laptop to a Surface any day.

Collapse
 
pkristiancz profile image
Patrik Kristian

Me personally suits most Lenovo ThinkPad series bussines laptops with keyboard containing trackpoint (aka clitoris :D) i love that layout so much i have at my hi-end desktop thinkpad external keyboard (two to be precise, another as failsafe in drawer). i have that notebook for 5 years and is good as new! (ok, bettery is a litte weak), but i love it

Collapse
 
jitheshkt profile image
Jithesh. KT

Running on a 4 year old i3 Lenovo laptop. Recently upgraded ram form 4GB to 8GB. Does the job for me. It is FHD, light weight and fast enough to get my day today work done (PHP, React, React Native..etc)