What is the best laptop for programming? In the previous article we armed ourselves with a comprehensive mobile workstation checklist to see how popular laptops stack up against the needs of a software developer. We considered popular options like the MacBook Pro, Surface Book i7, and the Dell XPS 15. They’re decent machines, but their flaws burn brightly in the harsh light of The Checklist.
So if you’re not bemused by the Big Three in laptop choices — perhaps due to their lack of features or your lack of funds — where can you find a solid programming laptop? I’ll give you a few tips for finding the mobile workstation of your dreams. These tips they aren’t foolproof but they’ll get you close enough; let’s call them “heuristics”.
Heuristic #1: Use a curated “best laptops” list
There are some decent “best developer laptops” lists out there. For example, LappyList maintains a nice list which may serve your needs. It lists a number of popular laptops and their attributes in a grokkable tabular format, starting with the ultra budget friendly sub-$300 options, and ending with the budget-bunker-busting high-end MacBook Pro.
If you’re short on time — or just don’t care — grab a laptop from this list that’s within your budget constraints and you’ll probably be happy enough.
Where LappyList falls short
LappyList is a decent list, but I feel it is incomplete. At the time of writing, the fastest CPU in any laptop on the list was Intel’s i7 6700MQ. As you’ll see in the next section, this isn’t the fastest available mobile CPU. Also, looking at this list, a new developer may conclude that there’s really nothing better out there than a MacBook. If you truly want performance, may your quest continue… to the next heuristic.
Heuristic #2: Let the CPU benchmarks guide your sword
Now that everyone is using SSDs, the biggest bottleneck for most developers is their CPU. A high-end CPU should be near the top of your laptop features priority list.
Enter CPU benchmarks.They don’t tell the whole story, but CPU benchmarks are useful for discovering how different processors stack up against one another and against the marketing hype. Often true performance in modern mobile chips fails to impress because chip manufacturers must balance performance against battery life.
How important is battery life, really?
When you really get down to it, most programmers don’t care much about battery life, even if they think they do. Maybe you’re an exception, but how often are you really coding unplugged? Maybe that’s the real reason for all the hubbub over “rock star” developers — coding unplugged is as rare as an unplugged rock concert. ;-)
For software engineering, you don’t want a Prius – you want a McLaren. The shorter you can keep those red->green->refactor cycles the better. The shorter the feedback cycle, the quicker you code, the quicker you learn. How many of us have dealt with programming sessions that look more like this?:
write test and compile –> WAIT –> run test –> WAIT –> write code and compile –> WAIT –> run tests –> WAIT –> doh! –> fix code and compile –> WAIT –> run tests –> WAIT –> green –> Now where was I?
That’s not cool. Your slow computer is the bottleneck to your creative process. When you have to choose, favor performance over battery life.
Scanning the benchmarks
You’ll quickly notice a few things here:
- Intel dominates the high-end CPU market.
- Most of the high-end CPUs are not for laptops.
You’ll also find yourself getting a crash course in Intel’s CPU naming scheme.
- You don’t want a processor with a “U” at the end of the model number, even if it’s an Intel Core i7. Their benchmarks are abysmal, because they only have two cores. Think of “U” as being a mnemonic for “Underperforming”.
- You do want a processor with an “MQ” at the end of the model number. Think of it as a mnemonic for “mobile quad-core”. Yummy.
Don’t limit yourself to Intel’s i7 CPUs. The fast mobile processors are actually in their Xeon line. Note the benchmarks for the E3-1545M and the E3-1575M. The 1575M blew the closest mobile i7 out of the water by almost 2000 points.
Heuristic #3: Search eBay by CPU
Now that you have a list of high-end mobile CPUs, try this as an experiment: Start near the top of that list and start searching eBay for laptops containing those CPUs. This doesn’t mean you are going to buy a laptop on eBay — at this point you’re using it for research.
For example, search for “4910MQ”, which scored 9,408 on PassMark’s CPU benchmark. As I write this article, there’s an Alienware, a Dell, an HP, and a Lenovo laptop on the first page of the search results. You’ll also start getting an idea of the prices you’re looking at. If laptops containing the 4910MQ are out-of-sight expensive, try a 4810MQ, for example. Keep going down the list of benchmarked CPUs until you find one that’s used in laptops matching your budget.
Beyond pricing alone, how do you know which of these laptops you should spring for, if any?
Do your homework
This is where you’ve got to do your homework. For each laptop that looks interesting, look up detailed product specs and start reading reviews. Keep your customized “mobile workstation checklist” handy to see how each laptop stacks up against it. Pretty soon you’ll start zeroing in on a laptop that matches your unique style and circumstances.
Laptop Finding Heuristic #4: Consider buying used
If you’re patient and you don’t mind the risk of buying a machine without a warranty, you may save a significant amount of money by buying a used laptop, especially if it isn’t super popular.
For example, try using eBay’s saved search feature to alert you to new listings matching your dream laptop’s description. If it’s a “Buy It Now” style listing from a reputable seller and it’s under budget, buy it! If it’s an auction, well you know the drill.
Not every listing for the same model of laptop will have the same features. Bear that in mind while you’re shopping. Decide on the features that are “must haves” and which ones you could live without, if necessary. Also, some parts like RAM are trivial to upgrade, so you could buy a cheaper used laptop with only 4GB of RAM, then buy 32GB separately and upgrade it yourself. Other parts, like the CPU and a PCIe SSD are generally expensive to purchase by themselves, so make sure that the laptop already has them installed.
Laptop Finding Heuristic #5: Use my shortlist
If you want raw mobile power and aren’t impressed by the MacBook Pro and its competitors, take a look at this list of mobile workstations.
- HP ZBook 15 G2
Yes, that was a really short list. To date I haven’t found another laptop (mobile workstation really) that’s as performant, reliable, and maintainable as HP’s ZBook line. It takes the Mobile Workstation Checklist and eats it for breakfast. There’s a reason they’re used in so many government contracts. And fortunately for those of us buying used, their heft and girth keep them from going mainstream, which means they have a lower resale value.
The most recent model is the G3, but I listed the G2 because its standard i7 processor is faster than the G3’s standard i7 processor and you can likely find more G2’s used in the wild. However, it’s possible to get the G3 configured with a Xeon E3-1545M. Woah.
Where can you buy these guys?
Any heuristics I missed?
What about you? Have you found any heuristics or tricks for finding a good machine for the budget-minded developer? Share your thoughts in the comments below.