Ask HN: Best budget Linux laptop for a developer?
If I spend the money on another MacBook (Air or 13" Pro) I am probably looking at a machine of 2011/2012 vintage. Unfortunately I'm not sure the Air machines will be sufficiently powerful for my needs (low-voltage CPUs, only 4GB non-upgradable RAM). Also, all of the the pre-retina MacBooks seem to be let down by their screens: glossy, TN panels with (except for the 13" Air) at most 800 vertical pixels.
Another option is a Lenovo ThinkPad, again probably from around 2012 (with the traditional 7-row ThinkPad keyboard). The ThinkPad X220 seems good, but is let down by its poor quality "clickpad" and, again, poor screen resolution (but at least IPS is an option). The T420s has a more traditional ThinkPad trackpad and better screen resolution, but no IPS and inferior battery life.
So, all of these machines have downsides. For my needs, I think the T420s is probably the best compromise.
Would you recommend (for or against) a ThinkPad T420s for use with Linux?
Is there another machine available for around $300 that I should consider?
86 comments
[ 2.6 ms ] story [ 150 ms ] threadIf you're going for a regular second-hand thinkpad (which is also a fine choice for linux in my opinion), the poor quality trackpad doesn't have to be an issue. Many people swear by the trackpoint 'nipple', once they get used to it.
If you're just going to mess around to see what it's like developing running Linux, save the $300 and do it in a virtual machine to start with. Then if you like it you can buy some hardware.
https://www.reddit.com/r/SuggestALaptop/
Might be some help to find there.
You can also permanently install a non-ChromeOS OS on (some?) Chromebooks, but you might have to fiddle with a BIOS flash and a write-protect screw first.
EDIT: I used chrx to install it. I don't recall any issues during the process. I also upgraded the SSD to 256GB.
Extremely easy to upgrade, well built, difficult to damage, great battery life with minimal TLP configuration, and the slim form factor was great for mobility.
You may also look at X200 with LibreBoot. Quite a lot of places sell these.
Those are very expensive, OP stated that his budget is $300, those are almost $600. I don't know any company apart from Minifree that sells those.
I have to ask, though: Are you an avid user of the track point? Are there any hidden settings or "techniques" I'm missing?
I really never got to terms with them and often still use the (not that great) mousepad if I really have to do something with the mouse pointer...
(Of course, since I mostly use Spacemacs/Qutebrowser, that's not too often the case anymore)
x220, you need to get an i7 to get a usb3, but the battery life is great, and it's small, and you can upgrade to 16gb ram.
Stick with thinkpad. the 20 series is the last series to offer the classic keyboard. After that, e.g., x230, t430s, you get chiclet keys.
x61, x201, x220. Stick with those. I'd go with x220, but you could even get an x61, and put 8gb of ram in it...it's ddr2 though, so it will be expensive.
Are you sure about this? I have an i7 x220 and it doesn't come with USB3. I think I remember having a tough decision between the x220 (USB2 + nice keyboard) on the x230 (USB3 + chiclet keyboard).
http://www.thinkwiki.org/wiki/Category:X220
"Three USB ports (of which one is USB 3.0 on the i7 model)"
I would check and make sure that you got one with an i7.
http://www.thinkwiki.org/wiki/Install_Classic_Keyboard_on_xx...
- you don't really need IPS for development.
- you can swap battery easilly in T420s and you can get additional in the ultrabay if battery life is really big concern. (in any case always get a new battery if you are buying second hand laptop)
It's a T60 with upgraded CPU (T7600), second hand 60GB SATA II SSD, 3GB RAM (limited due to chipset bug), ExpressCard with USB 3.0 and a 9-cell battery which lasts for 1/2 hours.
I spend around $100 for this machine in total, only $25 for the T60 itself.
I'm not using this particular machine because the specs are so great, but because I found it on Ebay and it was painted yellow. It's such an awesome thing. It runs Debian with XFCE4 fine, but websites like Facebook in Firefox isn't that fast. For development purposes it's perfectly fine.
I'm thinking about upgrading this machine with a motherboard from a T60p with a FireGL GPU one day, but I have to research if that would work.
You could take the same route as I did, but if that's too much work I'd go for a X201 with SSD and 8GB RAM.
I paid $15,- on Ebay for the CPU with free shipping.
Thinkpad is overpriced. Zenbook is good alternative to Mac.
The ones I found were: Asus Zenbook, Samsung Ativ, Lenovo Ideapad (2-in-1)
The Ativs are really nice except for the "Windows 8 COA BIOS key in system, need to download copy of Windows 8 from Samsung" that was one ebay listing I saw.
The Carbon X1 is a good series but has fan, also battery life not good and 14"
I'm favoriting your question as I'm looking myself. It's tough man, a lot of the older computers don't have good battery life or are stuck with 4GB ram. Macbook Air 2013 is probably your best bet as far as actual battery life/build quality but it runs Apple OS, you could dual-triple boot that was an option I was considering myself however the battery life is partially software on Apple's side.
The Dell 13.3 edge displays are nice haha, surface book would be nice as well, but yeah out of budget.
There are some other ones that slip my mind. So many times I was sold on a laptop then found problems like heat/battery life/display problems.
Right now I get away with 13.3" (Samsung Chromebook 2 Exynos $140 (slow processor)) and Cloudbook 14 by Acer (battery life $99 good battery life longer in Windows than Linux with TLP I tested 9+ hrs), but these suck 4GB ram, 2GB ram respectively. The chromebook what's nice about it is the screen/size. I have crouton on the chromebook but it's not as convenient as just having full linux (watching shows better on chromebook side).
I'm mostly productive on my 8GB desktop though with 2 screens. Laying back coding in bed has yet to be proven productive for me haha but that's the "reason" I'm trying to find a good dev ultrabook for cheap. I'm also concerned about theft, so the idea of lugging around a Dell 13.3" edge display xps... I don't know what I would do if someone just stole that... so a "disposable" but useful laptop is appealing. This Acer Cloudbook 14 is close but that fixed 2GB ram damn...
Keep in mind my search is for ultrabook, hopefully the fans either don't exist or are positioned in a way where you can set your laptop on your lap.
Especially if you plan on developing web apps I can only recommend to use an older-generation machine. While this might sound counter-intuitive, it is an easy way to make sure your programs work well on both older as well as newer hardware.
This is very specific to the workflow of the developer. If you develop on a Windows Stack (through VMs) you very well could want the extra power to run the Visual Studio debugger. Or you may also want the extra power to run several Virtual machines. There are plenty of good reasons to get a high powered machines for web apps.
Having 100 chrome tabs open at once
No you quickly lose track of the "right" tab and then you're hunting through them all trying to figure out which one was most recently relevant. But I like that ability to open open open
If going with the T60P or older, then a good SSD is an absolute requirement, IMO.
I have a T60 here with a fractionally misaligned GPU heatsink. If you take a look at the motherboard (http://i.imgur.com/lUOwImO.jpg) you can see that the GPU is covered by the lower-right-most portion of the heatsink - and there are literally no screws holding the heatsink down, only the force of the heatpipe. Mine's ever so slightly misaligned... and the system idles at ~72°C and easily gets to 85°C+ as a result :(
I've very carefully tried to bend the heatpipe into different positions (it's rather pliable copper and I'm afraid I'll break it) and while the heatsink is pushing down onto the GPU, it isn't pushing down squarely onto the chip perfectly.
So the system has hit its thermal limit once.
I use my much older T43 with the T60 sadly sitting to my left collecting dust on its keyboard. I'd love to use it, but apparently the thermal issues are unfixable (I asked a friend who's used ThinkPads for way longer than I have, and they promptly noped out.)
I completely completely agree with you regarding the concept that older hardware results in better-designed and faster software. (If I had the money and I could deliver a pallet of T42s to Google's front door as a protest-prank, I would.)
I'm hesitant to put an SSD in mine though. The disk is swapping about 65% of the time I'm using the machine (although I have 2GB)... I fear I'd wear through the flash cells in 6 months. I'm completely serious.
I.e. just put an SSD in the thing and be done with it. Just make sure to get a big enough device if you're worried over write exhaustion as write lifetime is directly related to device size.
techreport.com/review/27909/the-ssd-endurance-experiment-theyre-all-dead
Some excerpts on the failure mode:
...all of the drives wrote hundreds of terabytes without any problems. Their collective endurance is a meaningful result....
...The Corsair, Intel, and Kingston SSDs all issued SMART warnings before their deaths, giving users plenty of time to preserve their data...
...Samsung's own software pronounced the 840 Series and 840 Pro to be in good health before their respective deaths...
...If you write a lot of data, keep an eye out for warning messages, because SSDs don't always fail gracefully. Among the ones we tested, only the Intel 335 Series and first HyperX remained accessible at the end. Even those bricked themselves after a reboot. The others were immediately unresponsive, possibly because they were overwhelmed by incoming writes before attempted resuscitation....
...Also, watch for bursts of reallocated sectors. The steady burn rates of the 840 Series and 840 Pro show that SSDs can live long and productive lives even as they sustain mounting flash failures. However, sudden massacres that deviate from the drive's established pattern may hint at impending death, as they did for the Neutron GTX and the first HyperX....
Thanks for the info. This is separate technology than the emmc or whatever that's prevalent in new "cheap" laptops now that is used for main memory. Like the laptops that come with 16GB storage haha.
I'm aware of ACD (https://redd.it/5s7q04) but I'm in Australia, where "real" internet (ie, upload speeds above 100KB/s) are a dream for 95%+ of the country (including me), so the ~5-8TB of (un-deduplicated) data I have here would take at least 1090 days to upload if I did it 24/7 and had perfect and unwavering 100KB/s upload. During which my entire connection would be unusable because TCP. Heheh.
The "send me a HDD" route won't work because the data has been sliced-and-diced in various ways (the worst case example being a disk image tar+split'd to fit on a FAT32-formatted HDD) and I need to de-Rube-Goldberg everything first. That would take me about 6 months, and I'd definitely want a properly mirrored setup for that.
Moral of story: I probably don't want your old computer with its tiny HDD. (And if I could go back in time and tell myself that the hotswappable disk thing I was hearing about in 2006 most emphatically did not apply to my two 486s, and that plugging that HDD in with power on would not only take out the PSU but also the floppy drive controller, that may have helped things a bit... what I had to do in the end was duplicate the HDD contents between the two machines in question so I had my files available on both - the triplicates-of-my-duplicates snowball started there, I think.)
I honestly won't be surprised if, once I've deduped everything, I only have about 50GB of truly important stuff, and a few hundred gigs of "I can redownload that if I need it".
I guess your alternative could be to use local storage.
haha, I cry about my own problems with 1Gbps connection.
My plan is to write a multithreaded disk [re]indexer (since full indexing sadly seems to be the only solution at the moment; no filesystems have a "fast dump" mode yet), along with a bunch of utilities that try to make sense of the generated index.
(By "[re]indexer" I mean that, if you pass the indexer an old database, and any file has the same size and mod/ctime as what's in the old database (or matches any other rule you specify), the checksum for that file won't be recomputed. You could also pass in an old database and simply tell the indexer to scan a specific set of subdirectories on disk that you know have changed, and the indexer would copy simply copy the old database to the new for every path/file outside the ones you've specified.)
Building an index and then working off of that has a lot of benefits - instantaneous visualization without needing to rescan the disk on every program start, realtime similar-file searching, listing every file with the same checksum as you browse around, etc.
Obviously this tool will wind up on here when I eventually (:P) do write it. I probably should think about starting on it already but in all seriousness I'll likely be motivated to start working on it once it looks like I'll finally be able to put my ZFS pool together. (Hopefully that plan doesn't backfire, and I don't get the remaining $ all at once and abruptly wind up with a bunch of disks and no tool... and we wind back to the first approach, of just starting now)
Local storage is definitely the goal, once I can afford it (expensive medical issues that prevent me from straightforwardly getting a traditional job are really fun, FYI xD). I don't really find cloud storage flexible enough for my requirements at this point.
Sadly the NBN has been sufficiently politically meddled with that it's not likely to be 1Gbps - and indeed current installations are only 100Mbps with no path past that. But I heard recently on a news story (on the radio of all places) that if people need an upgrade path with the NBN, that that will be available. Nobody mentioned how much said upgrade would cost, but I'd be willing to drop a few hundred on it once I have a job. What on earth issues do you have with your connection?! lol
[ Sound of penny falling on head and subsequent facepalming ]
Of course, why didn't I realize that. Good point. I have an SSD here with some data on it; if I can figure out where to stash that I might install it, heh.
For $300 you'll come out great. Any ThinkPad will do, but look it up on thinkwiki.org first.
There's a huge variety of these machines and they're all pretty solid. You can pick your flavor. I tend to optimize for being lightweight, high RAM, 64-bit. Make sure you get one with a built-in WiFi card and reasonable battery life. All this will be in the item description.
I went for a refurbished Dell E6410 from eBay (2.6Ghz i5, 8GB RAM, 128GB SSD) and installed Ubuntu on it. I got it for £170 ($210). It is surprisingly good (especially considering the price).
Also the 4GB ram kind of sucks. How is GalliumOS to you? I use trusty (not os) primarily for i3.
This is worth a note for many people. There are astonishingly few good editors that you can easily compile or get binaries for ARM CPUs. Upside: I ended up picking up Vim and Spacemacs because of this.
Also note that crouton can be a bit hacky on those devices - I set up chroagh 3 times, and for each time, the X11 integration stopped working after a couple of weeks for some reason. Working from the TTY is still pretty doable, though.
Also: Install the chroot on an SD card. Crouton requires you to put your device into Dev-Mode and press a hotkey on each boot. I ended up touching my spacebar during the prompt by accident once, and the thing happily wiped its flash memory.
Another thing to keep in mind is that you most likely won't be able to run a custom kernel, even if you boot your own system. So, there's no guarantee you'll have the fancier options at your disposal (iotop, setting inotify-limits etc).
That super loud beep(s) too what the heck.
Does ChromeOS by default implement something like TLP? I installed it in Linux side, but not sure if when you run linux if the TLP carries over. Maybe it doesn't matter anyway , my Chromebook still has like 95% capacity thank fully and it pulls on average like 10 Watts with a 35Wh battery... but it lasts I don't know 3-5 hrs trying to keep it between 30-80% charge.
Thanks a lot for the great tips. What about read/write stuff on SD I think I heard it's hard on the SD card versus say USB 3.0 (use that for my Acer Cloudbook).
Also what's up with right-click on Chromebooks, weird ways.
I would assume the default system does power management quite well (at least on my device it does), so if you're running a chroot that shouldn't matter too much. If you boot your own system I'm not sure, though, I guess the best one can do is try.
If you follow the instructions to set up an Arch Linux[1] boot system for your device for example, it will most likely just copy the ChromeOS kernel over, so I would assume the support also depends on the device's system...
[1]: https://archlinuxarm.org/platforms/
Anyway thanks for your time.
I can't seem to find 8GB chromebooks, they might not exist yet and when they do expensive oh well. Quit being poor is what I keep saying to myself. "Hey buddy why don't you snap out of it and quit being poor?" haha.
I only wanted to point out that they don't have their own kernels for some devices, which indicates that it isn't practical to use a completely self-compiled kernel for whatever reason (I would assume there are some crucial blob drivers).
Good luck with your setup!
yeah anyway thanks for the information
You just have to find a decent refurb or recycling shop (i.e. those that take and resell ex-corporate stock); I imagine you've got an even wider choice in the US.
What's the place?
The question is how much battery life do you want. I get around 3 hours with an older battery. I can push out more with different settings.
The Thinkpad T520 is probably an option with better battery life, but I have no experience with it. It's likely also significantly lighter since I don't think it requires the larger AC adapter. I'd try the T520 if I wanted something more portable.
I'm currently running Ubuntu 14.04 and run Windows in a virtualbox with no issues. I've used this machine since 2015. I don't notice a performance difference between this and my older desktop (2010-ish, 16gb, i7) running Ubuntu 16.04.
Edited to add: If anyone from Lenovo sees this thread, I'm snap upgrading if the Thinkpad "retro" is released.
Edit: 2010~2011 era Thinkpads actually make great cheap Linux dev machines. If you want something a little smaller than the 15" T520, the T420 is great too. And if you want something "ultraportable" the X220 is a great choice and can be had for under $100 used on Ebay.
Many companies tend to replace them after a few years so there are a lot of them on the market, and they are generally quite cheap.
Once thing to keep in mind however is the screen. At least for older ones, it tends to be bellow average (low resolution, low contrast, low fidelity colors, etc) as companies tend to "forget" to check the "good screen" option. It's obviously a generalization, there are some with good screens, but keep it in mind.
I'm the happy owner of an x61, upgraded with 4Go of RAM and an SSD, plus a new battery, it still going strong.
Personally, I'm always reluctant to pay a lot for a laptop. A laptop can, easily be stolen, fall one the floor, be damaged in any way. Cheap secondhand thinkpads fit my needs wonderfully in that regard. A few years ago, just 2 weeks after I bought my x61, I slipped on an ice patch, fall on it heavily and the screen was dead. I just bought another one, exactly the same, swapped the disk and I was good. It wasn't a big dent on my budget, it would have been a different story with a brand new Macbook Pro.
Other notes:
I've a thinkpad T460s (i7) at work, it tends to overheat a little, I would not recommend it. And there are a bunch of X1 carbons there to, they are not very reliable machines. Personally I would stick with the basic X2x0 or T4x0 models.
Thinkpads are really easy to repair, easy to disassemble and there are a lot spare parts on ebay (keyboards, battery...)
I couldn't find it again, but back in the day, there was a webpage which gives you the configuration details from the type number at the bottom, it was really convenient to get all the config beforehand from the seller, you just needed to ask in this type number. Don't know if it still exists.