There’s an conversation shaping up on the Code4Lib email list with the title “Why Learn Unix?”, and this is a wonderful question to ask. A lot of technical library jobs are asking for UNIX experience and as a result a lot of library schools are injecting bits and pieces of it into their courses, but without a proper understanding of the why of Unix, the how might just go in one ear and out the other. When I was learning about Unix in library school, it was in the context of an introductory course to library IT. I needed no convincing, I fell in love almost immediately and cemented my future as a command line junkie. Others in the course were not so easily impressed, and never received a satisfactory answer to the question of “Why Learn Unix?” other than a terse “Because It’s Required”. Without a solid understanding of a technology’s use, it’s nearly impossible to maintain motivation to learn it. This is especially true of something as archaic and intimidating as the Unix command line interface that looks like something out of an early 90’s hacker movie. Those who don’t know Unix get along just fine, so what’s the big deal?
The big deal is that Unix is the 800 lb. gorilla of the IT world. While desktops and laptops are usually a pretty even split between Windows and Mac, the server world is almost entirely Unix (either Linux or BSD, both of which are UNIX variants). If you work in a reasonably technical position, you have probably had to log in to one of these Unix servers before to do something. If you are in library school and looking to get a tech oriented library job after graduating, this WILL happen to you, maybe even before you graduate (a good 50% of my student worker jobs were the result of knowing Unix). As libraries move away from vendor software and externally hosted systems towards Open Source software, Unix use is only going to increase because pretty much all Open Source software is designed to run on Linux (which is itself Open Source software). The road to an Open Source future for libraries is paved with LIS graduates who know their way around a command line.
So let’s assume that I’ve convinced you to learn Unix. What now? The first step on the journey is deciding how much Unix you want to learn. Unix is deep enough that one can spend a great deal of time getting lost in its complexities (not to say that this wouldn’t be time well spent). The most important initial steps of any foray into the world of Unix should start with how to log in to the system (which can vary a lot depending on whether you are using Windows or Mac, and what Unix system you are trying to log in to). Once you have that under control, learn the basic commands for navigating around the system, copying and deleting files, and checking the built-in manual (University of Illinois has a great cheat sheet).
How to learn Unix as opposed to why is a completely separate conversation with just as many strong opinions, but I will say that learning Unix requires more courage than intelligence. The reason most people actively avoid using Unix is because it is so different from the point-and-click world they are used to, but once you get the basics under your belt you may find that you prefer it. There are a lot of things that are much easier to do via command line (once you know how), and if you get really good at it you can even chain commands together into a script that can automatically perform complex actions that might take hours (or days, or weeks, or years) to do by hand. This scriptability is where Unix systems really shine, but by no means do you have to dive in this deep to find value in learning Unix. If you take the time to learn the basics, there will come a time when that knowledge pays off. Who knows, it might even change the direction of your career path.
Do you have any questions or opinions about the need for librarians to learn Unix? Are you struggling with learning Unix and want to air your grievances? Are you a wizard who wants to point out the inaccurate parts of my post? Let me know in the comments!