Raising the Bar for Linux Trainers

You can write shell scripts in mere seconds, hack the kernel in your sleep and perform other feats of Linux wizardry—but can you teach?

I love teaching Linux. Whether teaching introductory-level courses to people new to Linux or teaching advanced best-practices courses to experienced administrators, I hear common feedback. Most Linux instructors are good, but we can be better. There are common problems with Linux training that most of us have experienced or will experience at some point. I'm convinced that there also are common solutions. After hundreds of hours spent in the classroom, there are a few key concepts I'm convinced will make committed Linux instructors as awesome as the operating system we teach.

If you're interested in taking your practical experience to the classroom or if you already have a role as a mentor or teacher, here are some keys that will help you improve your students' experience.

Key #1: Treat the Student Like a Professional Client

Linux is no longer a technology for counterculture geeks and hackers working in their parents' basements. Linux professionals, including trainers, must present themselves as real pros. That means taking an interest in all students' successes and engaging them as clients. I do consulting as well as training. No good consultant would think about walking into a client's site, opening a terminal and typing away at random. First, the consultant asks questions about the client's objectives, understands the environment and only then starts working. A good trainer approaches the classroom the same way. We don't just open the book, fire up the slides and go through the motions. Instead, we focus on the students.

Focusing on students means understanding what they need from the course. Why are the students in the course? What are their learning objectives? How can they leave feeling that the course was a valuable expenditure of their time and money? A good instructor finds the answers to those questions and then tailors the course to fulfill the students' expectations.

A trainer also has to look inward. A real professional trainer never appears condescending or detached. The pro trainer fosters an inviting classroom environment that makes all students relaxed and comfortable to ask questions. We've all experienced bad training. The instructor was perhaps more concerned with showing how much he or she knew rather than with transferring the knowledge. Or, the trainer might have just read slides (in monotone..."Bueller, Bueller, Bueller") for hours.

I've been the student in those situations. In either case, the instructor has forgotten a key element of the classroom experience. What he or she has forgotten is that a classroom environment is designed to be interactive. A good instructor expects to have a conversation about the topic with the students.

Key #2: Teach Concepts, Not Commands

An increasing number of enterprises are adopting Linux-based technologies for mission-critical business functions. As they do so, more existing system administrators are transitioning from other operating systems like Windows to Linux. With a growing number of students coming from Windows system administration, we have existing knowledge on which to build. We should use that to our advantage to help students understand the Linux-specific applications of standard system administration practices. If we focus on the common ground we already have with the students who have professional IT experience, we automatically become better instructors.

One of the biggest mistakes made in Linux training is just teaching lists of common commands and options. Teaching that way is boring and ineffective. Teach concepts. An experienced Windows admin knows how to manage users, modify file permissions and schedule automated jobs. So, instead of jumping directly to describing useradd, chmod and cron, speak first about the common concepts involved in accomplishing these tasks in either operating system. Help the students understand the philosophy behind the way things are done in Linux. Only after those discussions, introduce the commands.

The command line is very intimidating for Linux newbies. What makes any subject less intimidating to learn is understanding the patterns involved. By "patterns", I mean the common concepts that carry throughout any application of a particular topic. For instance, most good Linux courseware starts with an early module discussing the command-option-argument pattern of the Linux command line. A good instructor helps the students apply that to the lab environment. Let's take that idea a step further.

For instance, several potentially destructive file management commands (cp rm, mv) have an option to make them less destructive. The commands have a common option to make them prompt the user before completing a destructive action. The option is -i. Of course, many of us who have used Linux for many years take this simple fact for granted without ever wondering why -i is the option used. Take a look at the man page. It states that -i puts the command in "interactive" mode—thus the prompt.

You might ask, "Why does it matter?" In this example, it matters, because if we're teaching a class of people who are used to being prompted before a file deletion takes place, they will be wondering, "How can I make this command prompt me in case I make a mistake?" By knowing what the -i option stands for, the instructor can explain the reason or pattern for the -i option's behavior. When you know why -i was chosen for an option, it becomes much easier to remember.

The same can be true of using -v to make commands verbose, -h to make file sizes human-readable and so on. Explain what the option means and how to use it, and provide examples as patterns for students to imitate. Demonstrating and explaining the pattern to common command syntax is the first step in transforming the command line. A good instructor transforms an intimidating black terminal with a blinking cursor into a powerful ally of the Linux newbie.

Key #3: Bring Real-World Experience to the Classroom

There is a disturbing practice in mainstream IT training. For many technology fields, certification equals experience or know-how—not so in our world. Certification is not how we measure experience in the Linux world. Linux experience is measured more by how many distributions a person can fluently administer, whether or not they are intimidated when they have to compile a binary from source, or if they are able to script repetitive tasks easily.

My point is, it is not uncommon to see trainers for many of the large training companies have a very long list of industry certifications ranging from basic desktop troubleshooting to "security" certifications. Adding a Linux certification to a long list of certifications does not make people experts, nor does it make them qualified to teach. It simply means they were able to pass another test. Even worse, if the exam does not have any practical portion where examinees are challenged to accomplish various administration tasks, it proves only that they are good test-takers.

Real work experience matters more than passing any exam. Although I carry a number of Linux certifications and teach many certification classes, my ability to answer the real-world questions my students have comes from my experience in production environments. Being able to turn slides about scripting into an interesting dialogue about working efficiently in Linux comes from long nights in the data center. Explaining how to use Linux in real development projects comes from working in development labs using Linux.

If you intend to begin teaching Linux, please don't try to know everything required to pass some certification. Instead, become more of whatever you already are. By that, I mean if you are the person who can write complicated iptables chains on the fly, think about how you can teach that to others. Perhaps you're the "go-to" geek for resizing logical volumes or attaching SAN storage. Figure out how to take the experience that has made you valuable in production environments and transfer it to the training center. Sure, there is a necessity for an instructor to be familiar with all the topics of a course; however, the value of the instructor comes from his or her depth in a few topics upon which he or she can expand and make a real impact for the student.


Darren Douglas has been a Linux admin, advocate and trainer for ten years. He is Principal Consultant at Synse Solutions.


Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

After hundreds of hours spent

jackie zaber's picture

After hundreds of hours spent in the classroom, there are a few key concepts I'm convinced will make committed Linux instructors as awesome as the operating system we teach. cell phone spy software
cell phone listening

I was a loyal user linux. And

Anonymous's picture

I was a loyal user linux. And until now I still use it. Linux is very important in my activity argues
Cipto Junaedy ingin cepat hamil

Linux as a Unix-Like Operating System

Anonymous's picture

I find it really interesting how Linux is open source. I have often wondered about its ability to be used when one wants to play Microsoft based computer games. Is there compatibility there?

I like the idea of not having to worry about a bajillion viruses etc. but I don't want to give up gaming either.

genital warts

Thanks for the Great Article!

Anonymous's picture


I know a ton of people from my college days that have tried switching over to Linux. I haven't done it myself because I am not tech savvy at all, but I keep hearing about how great the Linux operating system is. I really want to check it out further.

gossip magazine online

Normal is getting dressed in

priya deshpande's picture

Normal is getting dressed in clothes that you buy for work and driving through traffic in a car that you are still paying for – in order to get to the job you need to pay for the clothes and the car, and the house you leave vacant all day so you can afford to live in it.

Beauty deprived of its proper

Anonymous's picture

Beauty deprived of its proper foils and adjuncts ceases to be enjoyed as beauty, just as light deprived of all shadows ceases to be enjoyed as light. ~John Ruskin


This is truly a great read

gorgh567's picture

This is truly a great read for me. I have This is truly a great read for me. I have bookmarked it and I am looking forward to reading new articles.
Used Toyota Celica | Used Mazda CX 7

however, the value of the

Anonymous12's picture

however, the value of the instructor comes from his or her depth in a few topics upon which he or she can expand and make a real impact for the student.


yes,it's good to know!

askuyue's picture

Hi , Darren
I am glad to thank you for summary,i teach myself!

Good Article

Vivek Thakar's picture

Hello Mr. Darren,

I have experienced couple of bad training. India is a good IT hub but it is very difficult to find good Linux teachers even after paying good amount of fees. I have discontinued looking for good teachers but after reading your article I would love to attend your class some day.


Vivek Thakar

Great article

Hans-Georg Eßer's picture

Hi Darren,

thanks for the great article. I teach Linux command line topics as well (though normally I'm more focused on more theoretical stuff, such as OS principles). I agree with every word, and I especially liked the last part of your remark "Let them see you as a new friend who sincerely wants them to be comfortable in the new operating environment. It helps tremendously if that's how you really feel."