How to Get Good at Computers

2 April 2025

I often hear things such as "technology moves so fast it's impossible to keep up with it" or "there is too much to learn when it comes to programming". While it takes some effort, I don't think it's really that complicated and I'd like to share my guide for getting good at computers. The goal of the guide is to learn enough to get a feel for how computers work which should hopefully dispel any fears of the unknown.

Step 1 - Learn C

The first step is to learn the C programming language. The reasons for learning C in the context of getting a feel for programming:

The C Programming Language book is less than 300 pages long and it explains C in its entirety. Learn how to manage complexity of programs that have 1k-10k lines of code. Get a feel for what is an executable and what is a library.

Step 2 - Install Arch Linux

The next step is installing and configuring Arch Linux. Why Arch Linux? Because you start with a blank slate, and it comes with famously great Wiki pages that guide you through the entire process.

The goal is to set up a computer usable for your day-to-day computing tasks by starting from zero. Every part of your system will be chosen intentionally:

You will exercise reading and following the documentation. When something goes wrong, you will practice the skill of getting out from the mess you yourself have created. The setup process rewards discipline since you cannot just do whatever and hope for the best. Computers are deterministic creations - they do exactly what you tell them.

Conclusion

That's it! When you are done, you might observe that a good bit of software you used before is over-complicated mess for no good reason. Most of the software that you will install is written in programming language that is more than 50 years old so you should be reassured that not all programming knowledge is as fleeting as some would have you believe. You will understand computers from the OS to the arbitrarily complex programs. That level of understanding is satisfactory for me, at least for now...