Ask HN: Best Laptop for Developers Right Now?
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 ] threadAlthough "for work" I'd recommend getting a desktop computer, especially if you wanted to do deep learning.
Oh, it's something that I haven't done in years.
[0] - http://shop.lenovo.com/us/en/laptops/thinkpad/p-series/p51/
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.
The new XPS 15 with 32GB RAM. I'm just worried about battery time since more RAM mean less battery time.
Any one have this? Impressions?
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.
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.
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.
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
Resources:
1. http://www.dell.com/ca/p/xps-13-9350-laptop/pd
2. https://wiki.archlinux.org/index.php/Dell_XPS_13_(9350)
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...
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.)
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.
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.
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.