...making Linux just a little more fun!

<-- prev | next -->

# Time Management for System Administrators

By René Pfeiffer

### Time Management?

Once upon a while ago I got a Christmas present from my fiancée. It was a book. Its title was "Time Management for System Administrators". So technically it was both a present and a message for me, because I am a professional system administrator working as a freelancer. In turn this article is both a book review and a collection of thoughts from the other end of the terminal. Many of you work as sysadmins, developers, project coordinators, or similar jobs. The problems of time and task management are very similar.

### What's bothering you?

Do you have a hard time focusing your thoughts? Do you forget to deal with tasks, or do some tasks slip through your mind? Do you get cranky when people ask questions or report problems by phone (or at all)? Are you afraid of deadlines? Are you late for appointments? Trouble getting out of bed?
The chances of getting a yes from IT staff are quite high. I won't try to find a reason, but I noticed that getting overloaded is very easy if you don't track issues before they turn into major problems. The first step is to periodically review what you are doing and to make it a habit. Developers call it refactoring, sysadmins call it maintenance, you can call it whatever you want, but make it a habit to review what you are doing. First you need to know, then you can think of solutions or improvement. It's very similar to diagnosing server problems or finding bugs in software.

### Tools of the Trade

The list of tools you use for work may be very long. Of all tools you use two are the most important ones: a calendar and a TODO list. These don't have to be digital. Analogue calendars and lists will do just fine - but make sure you can use them on a daily basis! Did you get the daily in the last sentence? Daily!

It means that you will use your calendar and TODO list for work every day. This implies that these tools must not be inoperable as soon as you buy a new cell phone, play with the server setup of your CalDAV installation, fiddle with firmware, buy a new notebook (the ones with the paper or the electronics inside) or run out of ink.
Your calendar allows for a basic planning of resources and your future. The TODO or task lists allows for tracking what you still have to do and what you've already done. The latter is especially useful when figuring out days where you were busy but have no idea of what you really did. In this case just look it up in your task list and you're done!

A remark about notes: do take notes! Do not try to remember anything - you will fail sooner or later! The act of writing down has a psychological side effect. You can forget immediately what you wrote down, because you can look it up later (when you browse through your task list to see open tasks). I never make phone calls without having my notes ready (and I tell people on the phone if I have notes or not; if not I ask them to call back later). This is a useful habit. It is also a good advice in case you cannot sleep. Whenever my mind is busy racing through the tasks I have still do to, I write everything down. Usually I'm calmer after that and can relax. You should try it some time.

Since I am a freelancer I suggest adding a time recording tool to the basic toolbox. Most companies use time recording tools for determining how much work was spent on which task. Ostensibly these records are needed for generating invoices after the tasks are finished, but tracking time is always a good idea. You should track time for all tasks. This helps in answering questions like "How long does it take to set up a LAMP server and deploy it in the DMZ?" or "Can you add a new backup client on server XY before the next backup run is activated?" A lot of time is spent on these estimates, so keep a list of frequent tasks or small projects and use it for reference.

I omitted a list of software on purpose, because finding the right tools is different for every one of us. Invest some time, try different tools, code the tools for yourself - do whatever you must, but do it. It's well worth the effort.

### Communication and Interrupts

Well-designed communication protocols and a lower rate of interrupts are a benefit to every server hardware and software application. The same is true for human beings. Computers can do multitasking a lot better than most humans can. Ringing telephones (and other symmetric communication lines) are the bane of focused work. What can you do?
In case you work as a team (i.e. you have co-workers) you can try to shield each other. Divide the time where one of you is reachable, so that the others can work uninterrupted when not "on duty". If you work alone, try defining and communicating "office hours". This doesn't mean that you should turn down anyone calling you "out of line". It just means that you can try and control the interrupts to some extent. Emergencies stay emergencies, of course.

As for instant messaging tools, e-mail clients and similar applications: Try to turn them off once in a while. For example if you are writing an article for the Linux Gazette, you most probably don't need to be notified of incoming e-mails. The same is true for instant messaging. Just before starting to write this article I set my Jabber status to "Do not disturb". Mailing lists are a welcome distraction, too. Do you have unread e-mails piling up in the folders of your favourite lists? If so try at least to automatically filter your incoming e-mails. It's also a good idea to unsubscribe from one mailing list per week or month (actually you can unsubscribe from RSS feeds and other sources of distraction, too). You don't need to get all the information, you just need to get the right information. Find your personal balance on a weekly or monthly basis.

As for the dreaded phone: In case you have no shield, you can nevertheless politely tell the caller that you cannot deal with her/his problem in the moment and that you will call back. Make a note in your calendar or in your task list, then proceed with what you were doing. If it's urgent, the caller will tell you so. Keep in mind that others might not realise that you are occupied with other tasks. Cell phone numbers do not have presence information.
I cannot stress this too much: always be polite! Most people really understand when you are busy. Most of the time you just have to acknowledge their call and postpone the conversation.

### Random Collections of Methods

#### The Dreaded Meetings

Meetings are fun! After a day filled with meetings most of us feel like having wasted their time. If this is the case then something went clearly wrong. Meetings are necessary, but you have to be aware of their purpose.

- Coordination Meetings
  The purpose of this meeting is to give all participants a status report. In theory, some people report, the others listen, and everyone then goes to work. You might not even have to sit down for this kind of meeting (standing during a meeting is a perfect measure to shorten the duration).
- Work meetings
  These meetings are usually longer and involve a lot of participation from the, well, participants. The goal of a work meeting is to produce something that can be published, implemented, printed, or otherwise used sensibly (yes, I know, you can print anything, but you get my point).

If you are planning a meeting, make sure you consider the following points:

- Purpose
  You must have a clear idea about the purpose and the expected results of the meeting. If you can't think of anything, don't arrange a meeting.
- Agenda
  Write down the issues that need to be addressed.
- Participants
  Who needs to attend? Who does not need to attend? If the individual points of the agenda only address two participants at once, consider splitting the meeting into more meetings. You don't want to bore people.
- Preparation
  What needs to be prepared? Do the participants need to know something in advance? If so, inform them! There's no point to sitting around a table and reading papers for half an hour before the meeting can even start!

All tasks that are distributed during a meeting must have deadlines. Use your calendar and set a date! This is the only way to get things done. And don't tell everyone that deadlines can be moved if there's a reason to do so.

What if someone is late for a meeting? Easy: try hard not to care. Don't start any meeting a second later than announced! We live in a world where reliable time sources are abundant (think NTP clients). Everyone has a chance to synchronise and everyone has sufficient means of communication (think cell phones and wireless gadgets). If not, then there's the summary. Every meeting has a summary which should be distributed to all participants. So you don't have to wait if you lead the meeting, and you don't have to hurry if you're late. You can catch up later.
What about decisions? No problem there, either. If you're late for a meeting, you've already claimed that you do not care. If you care, inform about being delayed or be on time.

#### Cycles and Automated Tasks

Every company and every individual has cycles. Every day, I go to sleep and I get up. Once every month, I write invoices and pay my rent. Every winter semester, I teach a class. Every night, the backup server executes the backup schedule, and every Saturday the backups are copied to the archive server.
You have to identify cycles in your job and incorporate them into your schedule. As soon as you have done that, the amount of "sudden surprises" will decrease. Knowing what happens next is also a good way of disttributing your workload more evenly. Remember, I am only talking about periodical events here.

Once you know your cycles, try to automate tasks. Technically this isn't coupled to cycles; you should always automate your tasks. Servers have automatic upgrades, garbage collections, backups, scripted actions; you need to catch up! My fiancée persuaded me to find or implement a time recording system that automatically generates the invoices for all tasks of a month. It took me some weeks to implement it (and it's not "ready" yet, but it's working). This means I record my tasks daily, and at the beginning of every month I browse through the automatically generated PDFs on the fileserver, check the invoices and send them to customers. Before that, I spent hours of wading through the notes on my desk and through the entries in my calendar, cursing, copying task descriptions, and remembering all (?) the things I hadn't recorded. So this one day of bad mood has been effectively programmed away.
It's just an example, but I am sure that you will find a lot of tasks in your day that can be automated. Do it! It frees your mind and you can concentrate on more important issues. If you don't believe this, ask your local sysadmin. These people usually write scripts for everything, too. It really works.

There are other cycles tied to your biology as well. Some people like to get up early, some like to work into the night. There's no problem with that as long as you a) know your personal circadian rhythm and b) are nevertheless able to interact with society.

#### A Word on Schedules

There will be periods where you will definitely be unable to do concentrated work. For example our office will be cleaned every Tuesday (also a perfect example for a cycle). This is a pretty regular event. Since there will be a lot of cleaning around my desk and in the rooms, I always try to get the things done that don't need a lot of concentration: paperwork, phone calls, light correspondence, sorting stuff, maybe even cleaning my desk, too. Plan your schedule according to these events. Try to combine the right task with the right moment.

#### Deadlines

Deadlines are the driving force behind everything. Actually they're quite old and most of them are not negotiable. Gather enough food for the Winter. Give a talk at the conference about cluster filesystems. Write and submit an article for the Linux Gazette before the 20th of every month. The list is long. So what about deadlines? Nothing. They just are. Of course they can cause a lot of trouble, but having deadlines is the only way of really getting things done. They force you to assign priorities to your tasks. Make sure you use them for requests and all of your tasks.

#### Delegate!

Believe it or not, you cannot do everything on your own. It's impossible, even if you got `root`. It can't be done. So first thing you should do is to stop trying to do everyting yourself! Now!
Learn to trust others. Learn to ask them for help and to accept what they are doing. The hardest part is accepting that others deal with tasks a little differently. That's why we can talk to each other and set guidelines. This can be done with politeness and cooperation. And it works - provided you give it a try.

### Conclusion

So I guessed right, this isn't a book review at all. I left out most of the stuff that Thomas A. Limoncelli describes in his book. It's also not rocket science. Most of the hints and best pratices are known to anyone who's ever worked in a company or as a freelancer. You just need a wake up call to improve your habits from time to time. I suggest taking a look at "Time Management for System Administrators". There's a second link to a Wikipedia article about "verbal self defense". Check it out, too. It's about being polite even in the worst of all situations you can imagine. If you work in sales you know what I am talking about, but system administrators have "difficult" customers, too. Difficult is not the right word. If someone has lost data or is frustrated by the behaviour of applications he/she has all the right in the world to be "difficult". Bear that in mind and skip the luser joke, people turn to you for help, not because they want to make your life "difficult".

### Further reading

- Time Management for System Administrators
- Wikipedia, Verbal Self Defense

| Share |

Talkback: Discuss this article with The Answer Gang

René was born in the year of Atari's founding and the release of the game Pong. Since his early youth he started taking things apart to see how they work. He couldn't even pass construction sites without looking for electrical wires that might seem interesting. The interest in computing began when his grandfather bought him a 4-bit microcontroller with 256 byte RAM and a 4096 byte operating system, forcing him to learn assembler before any other language.

After finishing school he went to university in order to study physics. He then collected experiences with a C64, a C128, two Amigas, DEC's Ultrix, OpenVMS and finally GNU/Linux on a PC in 1997. He is using Linux since this day and still likes to take things apart und put them together again. Freedom of tinkering brought him close to the Free Software movement, where he puts some effort into the right to understand how things work. He is also involved with civil liberty groups focusing on digital rights.

Since 1999 he is offering his skills as a freelancer. His main activities include system/network administration, scripting and consulting. In 2001 he started to give lectures on computer security at the Technikum Wien. Apart from staring into computer monitors, inspecting hardware and talking to network equipment he is fond of scuba diving, writing, or photographing with his digital camera. He would like to have a go at storytelling and roleplaying again as soon as he finds some more spare time on his backup devices.

Copyright © 2010, René Pfeiffer. Released under the Open Publication License unless otherwise noted in the body of the article. Linux Gazette is not produced, sponsored, or endorsed by its prior host, SSC, Inc.

Published in Issue 179 of Linux Gazette, October 2010

<-- prev | next -->