Back in my day, and I’m not that old, programmers were a subset of people who were “really good with computers”. It would be hard to find a programmer who didn’t know how to use the operating system of their choosing far beyond end user level.
These days things are a little different. Now we’re encouraging everyone to code and become a programmer, so a lot of newcomers no longer have many a sleepless night fighting with, say, SuSE CDs, under their belts.
As a result, you run into people who can be somewhat competent within a given development environment, who don’t know how to create a symbolic link or tail a log.
This is not said to disparage newcomers. On the contrary, it’s quite commendable how quickly many young programmers are now able to learn a whole stack of technologies in order to create applications.
It is, however, an impediment to their ability to become productive and successful programmers.
So my advice today is to break free of that limitation by learning the command line. You don’t need to become a wizard, but, as usual, you should get acquainted enough with it that you know how to use the command line to accomplish tasks that are simply not exposed in GUI interfaces.
I’m specifically talking about the Unix-based command line, such as Bash. Technically it can be used on Windows as well, but realistically hardcore Windows programmers might find learning the Windows Powershell to be more useful.
Where to start? There are countless tutorials and books on the subject. I personally recommend Michael Hartl’s learn enough command line tutorial, as it’s specifically aimed at newer developers.
Get more stuff like this
Subscribe to my mailing list to receive similar updates about programming.
Thank you for subscribing. Please check your email to confirm your subscription.
Something went wrong.
I’m very agree with this one. I’ve already seen posts like “Why you should learn command line if you already have so useful GUIs, it’s like you don’t want to be in leg with time”. At the same time people who say this are not proficient with CLI. IMO, knowing CLI on a very good level, is often much more effective and even makes it easier to perform different tasks.