Ask HN: Best Laptop for Developers Right Now?

29 points by InInteraction ↗ HN
I get to choose a new laptop for work (data processing, data visualization, deep learning). I'd like to switch to Linux (probably PureOS) as I think it can do what a Mac does, and it's better at some things. What are people using?

36 comments

[ 3.7 ms ] story [ 102 ms ] thread
Generally a ThinkPad (T or X-series), or if you want power, go for a System76 machine. Either will kick a MacBook Pro out of the ring.
I looked around for alternatives, but I haven't seen anything else more compelling than a MacBook Pro.
This year's Thinkpad X1 Carbon.
Do you use it? What do you think about its touchpad vs Mac?
ANy laptop with enough memory, great ram and good design is great.
Thinkpad P series, Dell XPS or Precision series are good choices outside Apple for mobile workstations (non-"U" CPUs)
I'm a firm believer that all laptops below the 2000 range are terrible so just pick one that has enough RAM and solid build quality. Probably Dell XPS or a Thinkpad
I currently use a Dell E7470 running Linux (elementaryOS specifically), and a Razer Blade running Windows 10.

Really like both. The Dell has a great range of ports built in (including ethernet), so no carrying around a bunch of dongles.

The Razer has a faster CPU (quad core vs dual core) and the best keyboard (laptop or not) I have ever used.

I recently purchased a 2016 Macbook. Reasoning is, they last longer.

My sony vaio stopped turning on after 2 years and my dell xps didn't even last 1.5 years. My 2009 Macbook still runs today, but it's no longer powerful enough.

Thinkpad T-series which I bought 5 years ago for $2K.

I am amazed how it still holds under a daily heavy use at home and in the office.

Hope the new ones are as reliable.

I'd go with a Dell Precision M6800 or M4800, depending on your desired size. It can run linux natively, has a full sized keyboard, and all components are replaceable (even the CPU is a pretty doable replacement).
Lenovo Thinkpads are top tier. Shoot for X and T series for best build quality.

You want high resolutions, so customize it to the highest you can get. Some people may say it makes stuff look too small, but software will continually will improve to handle HDPI scaling, but that's easier than trying to switch out a screen yourself. Remember you'll at least have an editor and docs on the screen at the same time.

You said you want to do deep learning / big data stuff, Tensorflow can work with CUDA. Feel free to go for the NVIDIA laptops (T and P series), which can fall back on intel integrated graphics for power savings. NVIDIA's Linux and FreeBSD drivers are nice.

These laptops work well with Linux and FreeBSD.

On FreeBSD, newer intel chipsets graphics and wifi may have issues. If there's an issue with wifi support, consider a USB wifi like "ASUS (USB-N10) wireless-N USB Adapter" or "TP-LINK TL-WN725N Wireless N Nano USB Adapter", which have chipsets that are supported on FreeBSD and Linux very well.

Consider outlet.lenovo.com for deals on these laptops. Older generation laptops work well

Steer clear of anything with *40 at the end. T440, X240, etc. are the scourge of the Thinkpad line. They removed the physical keys from the buttons in the mouse and the trackpad itself is horribly poor quality. http://www.laptopmag.com/images/uploads/4020/g/lenovo-thinkp... is bad. http://www.laptopreleasedate.com/wp-content/uploads/2016/01/... is good.

You can go for X series and grab an external monitor / base station to plug into. This gives you may portability. But I still advise you go for 1080p resolution, if you compromise for less, it may be too squished to program in.

Please don't give Lenovo any of your money after all the shady stuff that they have done.
My personal experience with them is also really bad. I bought one of their laptops several years ago. It had wifi problems, that were supposedly fixed if you bought a laptop after $DATE. I did it and it was still fucked up.

I sent it back so they would fix the issue, but I got another broken laptop. After I wrote them another email or two I stopped receiving responses from them... I was just straight out ignored. I was also a teenager that needed a laptop so I just lived with shitty wifi (speeds up to 1Mbps, wifi range <10m)... Not to mention trackpad was really shitty as well - Touch with another finger by mistake? OOOOPS your cursor has gone somewhere.

TLDR: - They were saying problems were fixed when they weren't

- They didn't even try to fix my laptop when they said they will

- They ignored me after I complained for the 2nd time

- Shittiest laptop I ever had would not recommend (mid-range Lenovo ultrabook of 2011 - I think)

Question: Did I just had bad luck and should my experience not affect my future purchases?

Edit: I know you were probably referring to spyware they were installing, but I just wanted to put my experience somewhere because it cost me too many nerves

I bought the Dell XPS 13 (9650) about 8 months ago. It comes preloaded with Ubuntu so you don't have spend too much time debugging drivers. This was my main concern since I was going to be running Linux as my only OS. I've only had a few problems with wifi drivers and ethernet over USB C so far. Costco occasionally has the high end model (preloaded with windows of course) on sale for $400 less than the dell site which is a great deal.

Resources:

1. http://www.dell.com/ca/p/xps-13-9350-laptop/pd

2. https://wiki.archlinux.org/index.php/Dell_XPS_13_(9350)

From what I've read you want a good Nvidia GPU for machine learning so you can run cuda. Now you can rent GPU instances from AWS but it's probably cheaper to buy your own system if you are doing it often enough. As others said you may want to consider a more powerful desktop machine with 2x Nvidia GPU and just network that up to your laptop to offload workloads.

Personally I'm going to try AWS route first to see how much I enjoy the machine learning route. Then I can make a better decision without dropping a few thousand first.

I'm running MacBook pro 15 with touch bar. I prefer the older models that still have real USB ports. I also really dislike the new keyboard and giant mousepad. Never use the touch bar but that's just me. One last note... On new macs the hardware is impossible to modify. Hard drive and ram are soldered into the boards...

The Dell XPS 13 has a great screen size / weight ratio, which is really what I am looking for in a laptop. Works out of the box with Ubuntu.
(comment deleted)
My ideal laptop I haven't found it yet.

Major latest GNU/Linux distributions works out of box(I usually had to configure something manually to make it work)

Decent CPU, Memory, Storage(This is the easiest requirements to satisfy because my work is mostly relies on CLI tools and web browsers)

No power hungry GPUs(especially nVidia's)

15 inches builtin 4k display(this is hard. I can find 12 inches with no dedicated GPU or 15 with dedicated GPU laptop)

DisplayPort(Most laptops only have HDMI port) Ethernet(I don't want to carry USB-Ethernet adaptor) 4 USB ports(I don't want to carry USB hub.)

For me its also a MacBook Pro 15". It's beautiful, durable hardware. You can use it for many years and sell it afterwards for a good price, if you want to upgrade. The OS combines the best of Linux and Windows, but looks better. The terminal practically takes the same commands as in linux, very powerful. The OS is well thought through as opposed to the mess you see with Windows sometimes.
I really think resale value on macs isn't highlighted enough in these discussions. If you upgrade your laptop every 2-3 years, Macs becomes significantly cheaper since they generally fetch a reasonable resale value compared to high-end dell's and lenovo's. A 1500 PC that you sell for 400 dollars 3 years later isn't more much more than a 2000 dollar laptop that later resales for 800 (1100 vs 1200).

Not to mention, most truly decent PC laptops are within a few hundred dollars of their macbook equivalent. I suppose the opposite argument can be made though, that if you want to buy used hardware PC's a way better deal.

Laptops embody engineering tradeoffs.

If |deep learning| implies a discreet GPU then battery life will suffer. It will particularly suffer under Linux because the GPU and CPU manufacturers don't have not created Linux drivers that allow dynamic switching between the GPU and CPU graphics core when running the display. The CPU graphics cores generally use less power than the GPU and the switching provides longer durations running on battery power.

A similar tradeoff comes in terms of processing power versus weight and bulk. Fast multicore processors need to dissipate more heat. Heat sinks add weight. Fans require passages to move air and add bulk.

If portability and light weight is the killer feature then there are one set of alternatives. If 64GB of ECC; two teraflop of GPU; and a quad core Xeon are killer features then there are another set of alternatives.

Why even bother doing ML on a laptop? Use Amazon's Machine Learning cloud to conserve your battery.
There's a tradeoff to using the Amazon just as with everything else and other tasks that are computationally intensive: yesterday, I had 16 16bit 16megapixel TIFFS stitching with Hugin for about thirty minutes flat out.
If you ever want to develop iOS apps, you pretty much have to get an Apple laptop unless you're willing to spend ages messing with hackintosh and trailing behind Xcode updates.

Not sure why all the hate for MacBooks. You can triple boot OS X, Linux and windows if you want. And since so many people use macs, there's plenty of community support for getting Linux to work.

Dell XPS 13, 9360. Can ship with Linux preinstalled, and you can of course install your distribution of choice. I run Debian unstable on it and use it as my main development machine. Works with the Display-Link USB 3.0 dell docking station (haven't tried the Type C Usb yet). Even supports dual-head. But you have to install the drivers from the display link homepage. It is not a beast when you need performance. At the office my boss provides me a Dell XPS 15, with i7, 16gig and nvidia graphics card, works with the docking station too.