To learn coding, you don’t need fancy tools. You just need:
- A MacBook Air or an equivalent laptop
- An environment where you can focus
- A happy mood
Alright, if you want to hear the detailed analysis, read on.
Mac, Windows or Linux?
Mac, Windows or Linux will do. You should use a system that you’re familiar with.
But which is truly better?
Alright, let’s dive into it.
Mac? Many programmers use Mac because the interface is user friendly, and it’s easy to install software for software development. If you have a Mac, you can develop most types of web and mobile applications. Mac also has a great built-in command-line interface with a lot of community support.
Windows? Its command-line interface is generally inferior to Mac, but it’s been improving with more tools built by the community. Software installations for software development have a larger variance compared to the Mac. Sometimes, you can install things you need in one-click. At other times, you have to Google a lot to install something.
Linux? Linux has the most flexibility out of the three. You can install anything you want in any way you prefer (if you know how). But, it’s the least user- friendly out of the three. For beginners, Mac and Windows are easier to start with.
What screen size do I need? How many monitors do I need?
I learnt everything about coding in a 13-inch laptop. I am currently using a 13-inch laptop. I code with a 13-inch laptop. 13-inch is fine (See #1 in the image below). 15-inch is good too.
I recommend a setup where you can focus on one thing at a time. So, you only need 1 monitor to be productive.
The common problem with multiple monitors is that your eyes have to constantly travel back and forth, and left to right. It’s unproductive for your mind to have constant context switching.
I also find a widescreen monitor (25-inch) to be productive (See #2 in the image below). Keep in mind that, if the screen size is too big, you will also be unproductive since your eyes have to travel back and forth across a big screen.
The only two-monitor setup I’ve found productive is the top-down approach (See #3 in the image below). This way, you can focus on one screen at a time and use the other for referencing.
Two side-by-side monitors are not good as it puts strain on your neck for a prolonged amount of time. You want to avoid constantly turning your neck left and right.
Do I need a new computer?
No. Probably not.
You shouldn’t buy a new computer unless you find your computer slow when you’re coding.
The cheapest model of Macbook Air can do most things in coding. So, the Macbook Air is your benchmark.
Can you give me a benchmark computer specification?
A recommended benchmark for a computer is
- Memory: 8GB of RAM (4GB is OK too)
- Storage: 128GB of SSD storage drive (make sure it’s SSD so reading/writing files is fast)
- CPU: 1.8GHz dual-core Intel Core i5 or anything better (CPU is usually not the bottleneck when you’re coding)
- Graphics card: Standard, normal, nothing special
This specification is from the cheapest mode of Macbook Air. This is the benchmark. If you want to upgrade, you can
- If you want to play games on this computer, upgrade the graphics card.
- If you really want a faster CPU, upgrade the CPU.
- If you want 1TB of storage, upgrade the storage.
A note on Memory. 8GB of RAM is pretty standard now. Memory allows you to run multiple programs at the same time easily. 4GB of RAM is fine too, but your computer might be slower if you run too many programs at the same time. You are also welcomed to upgrade to 16GB of RAM. That just means that you can run many programs at the same time without any lag.
Should you use a laptop or desktop computer?
If you want to work at cafe or anywhere, you need a laptop.
Else, a desktop computer is good enough.
Laptops are fantastic tools for coding. You will only have performance issues with laptops if you want to play video games OR if you want to do video editing.
Let me emphasize again. A Macbook Air is your benchmark.
Your surroundings and environment to code
Coding requires your full undivided attention and a lot of perseverance. Make sure you put yourself in a position where you can focus.
Some advice you can try
- Turn off your TV and every other distractive devices
- Listen to music that you can enjoy and focus on coding
- Eat healthy food OR any food that makes you happy
- Maintain a good mood so you don’t get pissed when you can’t solve a problem quickly
- Turn every challenge into a lesson, instead of self-shaming
- Make sure other people won’t disrupt your flow of thoughts
Generally, the following is what you want to achieve
- Be happy
- Be able to focus continuously
- Be tenacious enough to persevere
This is written by me and the team at Altcademy — an online coding bootcamp with 5,000+ students from 80+ cities.
If you have any questions about coding, message us, and we will answer them!