Articles

How to Find the Best Programming Laptop: Buying Guide

How to Find the Best Programming Laptop: Buying Guide

August 30, 2024

|
Josh pointing at the camera in front of a bunch of our favorite programming laptops with text reading "Best Laptops for Programming Buying Guide"

Best Laptops for Programming: Buying Guide

Summary

We're going to walk you through what to look for when shopping for the ideal software development laptop.

Related Configurations

Related Videos

Introduction

You may not know this, but our team's passion for tech goes way deeper than laptops. Many of us have Computer Science degrees and started our careers in the software industry. So, we're going back to our roots today to bring you this guide on what to look for in a programming laptop. If you feel like you've already got a great idea of what you're looking for, here's a list of laptops we recommend.

Now, stating the obvious, there are many different types of coders working in very different ways. For example, some coders just use their laptop to remote into a more powerful desktop or server. Their laptop needs may be more basic. This article focuses on what you would need to run your full development and testing environments locally. However, if you can’t afford a laptop that meets our criteria, do not let that prevent you from having a wonderful career as a software developer. You can code on almost any computer. Josh learned on an Apple IIe! You are just going to have to make some sacrifices to bring down the laptop’s price. Hopefully this guide will help you decide which compromises can and can't be made in a laptop for development.

Display

The first choice to make when picking out your new laptop is what screen size to buy. Seeing a large amount of code on screen is going to make you more effective as a developer. For example, you can see the bigger picture of the algorithm you are working on or more easily discover the root cause of an issue when browsing through a large log file. If you have to constantly scroll to see what’s going on when you're debugging you’ll be less efficient and you’ll often forget the details of what you were previously looking at. This means you’ll want a laptop with a screen large enough to get real work done.

On the other hand, portability is still going to be a factor for many software developers. Many of the ones we know love having the freedom to work in a coffee shop or co-working space. Or, if you've ever been in a corporate office, you might notice that many of them like to carry their laptops to meetings. Therefore, we recommend a somewhat light and compact laptop with a 16 inch display. Ideally it would be no heavier than 5 pounds. If portability is more important to you than the productivity provided by screen size, then you might want to go for a laptop with a smaller display around 14/14.5 inches that is under 3.5 pounds. That screen size is still large enough to see a decent amount of code.

It's not just the size of the screen that determines code visibility, though, it's also the screen's brightness and resolution. The higher the resolution the crisper the code looks and the more visible it will be at smaller font sizes. Higher brightness also helps with this. Particularly in brightly lit environments. For example, if your screen is glossy and the display brightness is not high enough, it will not be able to overpower reflections, and that will be distracting. That's why we recommend a screen with at least 210 pixels per inch (often shortened to ppi) and a display brightness of 500nits if it is glossy. If it's a matte panel you can probably get away with 400nits instead.

Specifications

CPU

When it comes to the laptop’s processor, most modern ones are powerful enough for coding, but there are some "gotcha"s to be aware of. Firstly, the type of laptop that you can buy may be dictated by your employer or school. They could require certain applications or environments that only run on specific hardware, so make sure to check with them first before buying.

If you have a choice, here are some general rules of thumb:

  • For front-end development you can code on a laptop with any CPU.
    • This includes Intel, AMD, Qualcomm, or Apple.
  • For native iOS application development, you will need a Mac to compile Apple-specific code.
  • For native applications on Qualcomm, you'll want a Qualcomm laptop.
  • For native Android applications, you'll want to avoid a Qualcomm laptop as they don't run well on that hardware.
  • For gaming and game development, you'll want a laptop with a dedicated graphics card. We recommend Nvidia graphics.
  • For AI/ML development, if you plan to train models locally, you'll also want dedicated graphics from Nvidia.
    • If you plan to do this remotely, you can skip this requirement.
  • For back-end development, Intel, AMD, and Apple all work well
    • Intel and AMD give you an advantage by allowing you to run Linux without a virtual machine

Let's dive into the Linux issue specifically. If you're unaware, a lot of the back-end code behind the internet runs on Linux servers. If you get a machine that allows you to match your development environment to your production one, you can avoid a lot of nasty surprises that might pop up during a code deployment.

Back on Qualcomm laptops, we'd caution you on buying one of these for software development right now. Many specialist applications don't run well. If you don't know what your future development needs will be, it's simply safer to avoid one.

Memory

When it comes to memory, you are going to hate us for saying this, but it depends on what you are coding. No one can give you a precise answer unless they know exactly what you are doing on your laptop. For example, if you are testing a very memory intensive application and you need to run multiple instances to ensure concurrency controls work, you’ll need a lot of memory. Same goes if you run virtual machines on your laptop to test an application. As a developer you should err on the side of caution and buy a laptop that will last you for many years to come. The more memory the better.

The absolute minimum for a new programming laptop should be 16GB, but a general safe amount is 32GB. So, try to get that if you can.

Storage

When it comes to storage, it is also highly dependent. If you plan to download a large production database for debugging purposes, you’ll want a large amount of storage. 512GB of storage will probably work for students, but 1TB should be the minimum for professionals. Again, more is always better.

However, if you are deciding between buying more memory or storage on your new laptop, get more memory. Storage is often upgradeable after you buy or you can even buy an external drive even if it isn't. With memory it is often soldered, meaning there is rarely anything you can do to upgrade it.

Keyboard & Trackpad

As a coder, you're going to want a nice keyboard as you'll be typing a lot. You should seek out one that is enjoyable and comfortable. This often includes looking for a standard layout, as reaching for a key to press the wrong one is incredibly frustrating.

When it comes to the trackpad, you’ll want a good one here too. Accurate enough for placing the cursor in specific locations within the code. Having no need to carry around an external mouse is a nice to have.

Minimizing Distractions

Coding is a brain-power intensive task. When you’re in the zone, you’ll want to minimize distractions. That means you’ll want a laptop that doesn’t feel overly warm to the touch. And, if you are coding in a quiet environment or one without headphones on, you won’t want to hear fan noise. This may not be relevant to you specifically, but is again a nice to have.

Battery Life

Most modern laptops do not have good battery life if you use them for higher performance tasks, and coding can be a high-performance task. If battery life is important to you, you should buy a MacBook. They are still by far the best in this department. The next best would be to get a laptop with a large battery that is powered by AMD’s latest Zen 5 chips or one from Qualcomm. Intel’s newest Lunar Lake processors, also called Core Ultra series 2, are meant to be pretty good as well. But, overall, we would not suggest relying on your laptop to last a full day of coding when on battery. Plus, using the laptop consistently when on battery will degrade it. So we recommend buying a small lightweight USB C charger to carry with you, regardless of which laptop you buy.

Conclusion

Whether you're a veteran programmer or you are shopping for your first laptop to code on, we are hopeful this guide was able to point you in the right direction. Now that you have all the information you need, here is our list of suggested programming laptops linked again for you below.