DEV Community

Discussion on: My beginner’s guide to choosing a laptop for programming

edunham profile image
E. Dunham

There are also some form factor constraints that might be less relevant to young people, but risk wrecking your body if you use your laptop for too many hours a day for too long. I am biologically predisposed to being physically weaker than the average computer scientist, so these are the factors I also consider when getting a new machine:

  • Keyboard spacing and key travel. Never buy a laptop with a keyboard that you haven't typed on -- go to the local Mac or Windows store to try out other models in the line of the laptop you're considering. Key travel is how far each key has to be pushed down to register a keystroke, and if you're used to typing hard, having key travel that's too short can get very uncomfortable.

  • Screen size. If your vision is perfect, an 11" high-res screen might let you fit 2 80-char columns of code side by side... but if not, or if you don't enjoy squinting at tiny things, err on the side of a large enough screen to hold at least 161 characters horizontally in a font that's comfortable for you.

  • Machine + charger weight. Laptops tempt you to carry them; needlessly heavy laptops will just make your life worse if you try to bring them to the local library when your home internet is on the fritz, or on a trip.

  • Number and type of ports. In my opinion, between the laptop and optionally its docking station, you need at LEAST one video out of the type that your TV or monitor at home takes as input (or an adapter), plus at least 3 USB ports. 1 for an external keyboard, 1 for an external mouse, and 1 or more for charging your phone or reading external media or whatever you happen to need. This is because sitting for many hours staring at a point right above your hands is just not something the human body is very good at -- you'll find yourself choosing between neck pain from staring downward, arm pain from awkwardly reaching up too high and typing, or perhaps both.