Bootstrapping (The Computer)

Professional developers usually have an absurdly powerful computer and peripheral setup. In the office you’ll see multi monitor setups galore; at conference you’ll see multitudes of expensive laptops. Some developers obsess about exactly the right keyboard - after all things like the DAS keyboard exist because people actually buy them.

You might think that to get started you need something similar - nothing could be further from the truth. To get started you need pretty much only whatever computer you have. Any modern computer is going to be overkill for your first steps into software engineering. That being the case there are some definite nice to haves.

A Good (basic) development Machine

What you should buy if you want a computer with a developer focus on a budget! You’ll see that this laptop is also a good general purpose machine for any word processing or office stuff you need to do.

(Written early 2018, probably out of date before I finished writing it :sob:)

Form Factor

Who are we kidding, it’s going to be a laptop - everything is these days. If you are shopping around then look for one that has the following things:

Size of the laptop is personal preference. It’s nice to be able to throw it in a bag and take it places but you don’t want it cramped as you’ll be typing on it a lot. I’d say the sweet spot is around 14 inches or so.

Screen

Having a readable screen is a major plus. Often you are going to have two things side by side on your screen:

  1. A text editor / IDE - for writing your awesome programs
  2. A web browser - for looking up the documentation you need to write those awesome programs.

You don’t need one that you can touch but you will want a screen with a high resolution because you will be looking at text a lot. A higher resolution (even if the screen is not physically bigger) can make text a lot easier to read with tired eyes.

Keyboard

You are going to be typing - a lot. A nice keyboard makes all the difference. Look for one with full size keys and as close to a default layout as possible.

Storage

You don’t need a huge storage device in your laptop for development. Your actual programs are simply text files and are tiny. The programs you are going to use to build with are also (generally) quite small. What you will want, however, is a fast storage device. When developing you will often be using an IDE (an Integrated Development Environment) which greatly benefits from being to rapidly find find and access many small files.

The minimum you should go for is a 128GB ssd drive.

Also – everything you make is going to be backed up to the cloud (for free) and you should always be able to rebuild from scratch.

CPU / Graphics

Most modern processors are going to be able to handle what we throw at them seamlessly. Stay away from the ultra low power Celerons and target something like a core I3 / I5. You won’t need a hugely powerful CPU and whatever integrated Graphics core that comes with your laptop will be fine.

Memory

As much as you can get that doesn’t cost more. 4GB is the absolute minimum and 8GB is probably a sensible default.

Operating System

It’s going to come with Windows. Buy a Macbook (pro) if you like and have the budget (it’s what I’m using and probably 70%+ of professionals at all the hip conferences). But they aren’t cheap. Realistically the laptop you buy for <£500 is going to come with a copy of windows and that’s fine.

For the adventurous you may want to think about running linux on it at some point. Don’t let that get in the way of finding out if you want to be an engineer though. You can do everything you need to do in windows.

Examples

2018-02-07: Currys / PC World / Lenovo seem to be selling off some stock at the moment. this is a great time to pick up a really decent laptop!

£329: Lenovo IdeaPad 320s 14’’ Laptop

  • 128GB SSD Storage
  • Core i3-7100U Processor (2 cores, 4 threads) - fine
  • 4GB memory
  • 14’’ 1920 x 1080 display - Great
  • Full Sized keyboard
  • Windows 10

This thing is a complete steal at this price! The only real weakness is the memory and it’s upgradable later!

series

This article is Part 2 in a 2-Part Series.

Written on February 5, 2018