My beginner’s guide to choosing a laptop for programming
Tags: laptop, hardware, beginners, guide
Published: 2017-06-19 13:21:44

---
title: My beginner’s guide to choosing a laptop for programming
published: true
description: The key characteristics to consider when you are choosing a laptop for coding
cover_image: https://thepracticaldev.s3.amazonaws.com/i/c45k88f1dd3vll6h327k.jpg
tags: laptop, hardware, beginners, guide
---

Programming can be a lot of fun! No, seriously. That is a very creative and in many ways rewarding occupation. Under one very important condition: that is if you using top-notch tools. Lagging, glitches and other stuff like this can kill the mood and make your coding an extremely frustrating activity. I, for now, will leave out the software details and save coding editors for the next post. Today I am going to concentrate on the hard stuff, namely a laptop. Here is my advice on what to consider when choosing one. I will list the issues by importance, starting from the crucial and going down to optional.

##First things first

Why laptop? Plain and simple – for mobility. Modern laptops are very powerful machines and they can deliver everything you need and even more all in a compact slick case. You do not have to be at your desk to work and that is awesome. Not only for freelancers but for all of us as well it is a great advantage. 

Some programmers have a preconception about laptops that they are inferior to desktops. They were – in the early years of their existence, but now the niche of the light and compact toys for web-browsing and media entertainment is taken by tablets and smartphones, while laptops keep building up muscles and taking up the desktops living space. 

There are only two reasons why you might want a big box under your desk, namely: the affordable price and the relatively easy hardware upgrades. Well, you can’t have it all at the same time and [there is bound to be a trade-off](https://www.computerhope.com/issues/ch001399.htm).

##The core issue

You do not really need the high-end CPU to do your programming. However, I would not recommend low-end processor either. The thing is, today software becomes greedier and greedier for resources. You will want to manage heavy programming works all the time, even with other stuff running. Whether you are developing an app, a website, or something else, you will have to deal with graphic and sound editors and all the additional applications. Therefore, it never hurts to have a top-notch CPU.

##Enough room

You definitely must have a zippy and spacious SSD – 1 TB is recommended. I often hear people saying that 256 GB is enough today. After all, you can store and access your media via a cloud service of choice or your own NAS. That is all fine for media, however, our bulky files are not limited to tracks and clips. Again, you will never know what software you might need, and today, when a simple thing like antivirus program demands over 2 GB just to install itself, 1TB does not seem like a waste of money. Of course, a smaller SSD can also be manageable, but you will have to jump through the hoops to avoid issues with performance. Check out [makemacfast](https://makemacfast.com/) for the complete list of speed problems you may encounter. 

<img src="https://thepracticaldev.s3.amazonaws.com/i/og4no9u2e70q0184yho5.jpeg">

##Back to our muttons

Did I say muttons? I meant RAM, really. Although many say that 8GB of RAM is a plenty, I would go for 16GB, just in case. For instance, I often have 2 or 3 virtual machines running, so it is always good to know there will be no lagging. Plus, as a hardcore gamer, I prefer to be ready for any upgrades and smashing new titles that might be released in a year or two (I know, I know, it’s not about programming, but still it is huge for most of us, right?) Games become greedier, just as well.

Furthermore, if you are going to multitask, work with big data, large images, vectors and such, you'll be kicking yourself for not getting 16GB. FYI, 8GB might be fine for *Photoshop*, but not nearly enough for *Illustrator*.

##Getting pretty graphic

Luckily, integrated cards are getting [better and better] (https://www.extremetech.com/extreme/221322-intel-claims-its-integrated-gpus-now-equal-to-discrete-cards) with each generation, so strictly speaking, you do not need that *for coding per se*. However (my favorite world), if you work with game development or do 3D modeling, you will need something superior, so consider a dedicated graphic card. It goes without saying for gamers, but that is another story, so do not get me started on this one.

##Juicy bits

By which I mean battery, of course. Long battery life is not crucial, but it is recommendable. Remember why we opted for the laptop in the first place? That’s right, for mobility. With the limited battery capacity, your mobility is pretty limited as well. Of course, you can always set camp next to the power socket in Starbuck, but that is not always available. Plus, say goodbye to working and having fun out in the open and during the road trips. 

All in all, you might think that you are saving, when you settle for smaller SSDs, integrated graphic card, and less RAM, but in fact, you may rob yourself in the long run. If you pack your machine with all the best today, you will survive without an upgrade much longer. As I already mentioned, upgrading laptops is not as trouble-free as messing with a big box. Therefore, for a mobile computer, it makes sense to stuff it full with the high-end components for a bigger lifespan.