Keyboarding and the Command Line

My first experience with computers was with the TRS-80 Model I, when I was in junior high, in 1984. Back in those days, familiarity with the keyboard was a must, when GUIs were an unknown beast, and knowing the commands to make your computer do what you want it to do was considered elitist. I took typing class to increase my typing proficiency; alas, I am nowhere near 100+ wpm. However, at the level I’m at (~45 wpm), I’m able to do most of the things I want to do without too much trouble, like blogging, and typing at the command line.

When I took a business class in high school, I first came across the One True Keyboard, the Model M. For those not familiar with computer history, IBM introduced this keyboard in 1985, and it came standard with PS/2 computers. While the PS/2 line became extinct shortly thereafter, its keyboard became the progenitor of modern keyboards, and rightly so. The layout was meant to help typists familiar with the IBM Selectric line of typewriters transition to computers and not have such a learning curve.

While I am a proud owner of an original Model M, I realize that modern keyboards have their place, too. One such genre of keyboards is the mechanical keyboard. After the 90s spate of rubber dome keyboards, which are mushy pieces of junk, the mechanical keyboard has a satisfying feel. Being a big fan of the clicky sound of the buckling spring switches of the Model M, I feel strongly about having the tactile feedback of pressing a key. For me at least, my typing is greatly improved by both hearing and feeling when a key has made contact, and seeing the character I typed appear on the screen at the same time.

To that end, I recently purchased a Corsair K70 LUX Gaming Keyboard, and it rocks the Cherry MX Blue switches which has the tactile bump and click, making typing on these keyboards a pleasure.

I’ve been a long-time fan of Coding Horror. I was inspired by the owner of the website, Jeff Atwood’s post We are typists first, programmers second, where he had this to say about the necessity of learning how to type efficiently:

We are typists first, and programmers second. It’s very difficult for me to take another programmer seriously when I see them using the hunt and peck typing techniques.

…there is nothing more fundamental in programming than the ability to efficiently express yourself through typing. Note that I said “efficiently” not “perfectly”. This is about reasonable competency at a core programming discipline.

I couldn’t have said it better myself. I am aspiring to become a sysadmin, and while one is not required to program applications to do one’s job, one will, at a minimum, be required to write scripts to do certain tasks. Typing proficiency is required to make writing the script less time-consuming.

If you run Linux on your computer(s), and are somewhat a geek, then you know that familiarity with the command line is a must. There is relatively little that can be accomplished with merely a mouse click; specifying exactly what you want your computer to do requires typing on the command line.

I felt compelled to make this post because I’m seeing a complacency and jadedness become prevalent with respect to the ancient art of keyboarding. Using a keyboard will remain relevant for years to come. Using a mouse alone for computing is not enough. People who know how to leverage the command line for their needs know what I mean when I say that Linux makes getting “down and dirty” with the computer possible, and you are able to make your computer do things which are difficult, if not impossible, with Windows.

Long live the keyboard!