Smart Working for *nix Administrators
“Working smart” means to work in the most efficient manner, improving productivity which in-turn results in lesser working hours. Increased productivity at works gives better job satisfaction and ultimately a huge change in the quality of life.
This article is specific to:
- sysadmin work
- for sysadmins who does infrastructure management remotely
- for those who are using a *nix desktop with KDE
- for those who likes Tom(keyboard) more than Jerry(mouse)
What I have written in this article are already being practiced by many star sysadmins, I have interacted with. Most of these are habitual and ingrained in their daily work style and is very subtle. But these small things which they practice everyday make these performers smart. I thank all those smart sysadmins for their contributions in making this article.
- Distraction free screen
- Cleaning up & organizing home, desktop and mail
- Not cluttering desktop by opening too many windows
- Useful addons/extensions in web browsers
- Shortcut keys
- Maintaining a to-do list
- klipper and klipper invocation shortcuts
- Improving typing speed
- Restrain from logging into personal IM ids
- Creating a log of all the work done somewhere
- Muti-Tasking Overload
- Questions to super charge your life!
bash-3.1$ ls -l
A Distraction free screen
Nowadays, the computer screen is a like a football field with 10 simultaneous games going on, while you are trying to follow one of them. There are a lot of apps and utilities which takes your attention away from what you are working on, or what you should be working on.
One of the most widespread & the silliest distractions I have seen are the “toaster” popups that come up while using the popular Instant Messengers. A good example is the guification alerts that pops out of gaim/pidgin IM client every now and then. Guifications is a useful Pidgin plugin that displays “toaster” popups in a user-defined corner of the screen. It is highly configurable and can be configured for almost all activities by people in our contacts list. Due to its impressive list of alerts and “configurability“, I see many people using most of its features and in the long run, it ends up to be an irritant.
Your brain has got a finite processing power, like a CPU. Everything happening around you is being processed by it. So more the activities, changes or occurrences happening around, the more our brain is chugging.
So what? My brain can take it all
Sure, it can – but similar to a server, as the load goes high, the performance decreases. So ultimately, it is affecting the way you work. Now, if you turn off all the pop-up alerts except the most important ones, like the “Chat message“, “IM message” and the “Invited” in the guification notification list, the purpose for installing guification is met. What useful info are you gonna get(in normal working environments) by seeing alerts when a person logs in or when a person go idle/away or when he/she comes back.
Once, when I asked somebody about this, he said he is so used to it that he rarely notices it. If this was the case, then why have it configured in the first place? But the interesting point here is, he was distinguishing or filtering these popups as IM messages coming to him or as something that doesn’t need immediate action. This means, his brain was reading each of the notification – consciously or sub-consciously.
Let’s do a small calculation. If there are 40 people in a shift, and each person does 1 instance(best case scenario – never happens ;-)) of login, logout, idle, away, reactivation of idle & away, in their Instant Message client(eg. gaim/pidgin).
For each of these instance, lets assume that 10 seconds of processing time is required(or wasted!) by the brain. So 10 sec * 6 =1 Minute. Now assume that 50% of the total workforce present has enabled guification alerts. Multiply that 1 minute by 20 people(50% of 40 people present), as you are going to get alerts of all these people.
So due to guification, in each shift, a person is less productive for 20 minutes. In a month, 20 minutes * 20 people(who have installed guification) * 3 Shifts * 30 days = 600 hours. Ie, in effect 3.75(600/160) people are working at lower productivity for a full month due to guification alerts.
Now we can easily calculate the productivity loss and the resulting financial implications. So please disable the unwanted guification/toaster popup alerts and keep only the very essential ones.
Cleaning up & organizing home, desktop and mail
Now you want me to clean up also? Yeah – this helps a lot.
First of all, it saves lots of disk space . Most of the data we have in our home is either rubbish or “rubbish which we think is valuable”. We store lots of docs, mails, files etc, but haven’t touched it for months – even years. If it has remained untouched for that long, then it is going to remain the same for the next billion years.
A clean environment is a productive environment. Research has proven so. Psychologists says so. Why do you think critical and high performance labs are so meticulous in cleanliness? There should be some reason.
Now, a well organized clutter free home directory, desktop, kmail saves hell lot of time. How? You don’t have to search for stuff you have just downloaded, from the pages of trash you have in your home directory. Or you don’t have to scroll down and break your finger to find out some mail that you just received. Also, you will know exactly where to look at, to find a file that you had saved in the past. I am not going into numbers as in the previous case – but I can assure you that the figures will be almost the same as above – and this time its pure wastage of time – not lesser productive time – but time wastage – time > /dev/null.
Another effective method to make sure you can track your downloaded files, is by designating a folder to be used for all the downloads, or stuff you think will be used only rarely. So whenever you get free time, you can look through it and delete it as required.
5S is a structured methodology to reduce waste and optimize productivity. This concept can be ported to the sysadmin environs and can be made very effective. There is a wikipedia article which gives an introduction to 5S – refer : http://en.wikipedia.org/wiki/5S_%28methodology%2
Not cluttering desktop by opening too many windows
Yeah, too many open windows or tabs = too much confusion. You will have to click more tabs or more windows to identify the work space you need, or from where you need to get info. If you are an alt-tab person, you will get an alt-tab carpel-tunnel syndrome. Else, you will go nuts by the end of your work time. So, close the windows/tabs after use ;-).
You can use a session saving plugin/addon or option of your browser, so that the frequently used URLs open in separate tabs and comes up when you start your browser each time. This will save a lot of “starting” time, which is spend in typing and open each URLs once you login. The firefox browser has got an inbuilt session saver/restore feature.
Useful addons/extensions in web browsers
All the popular web browsers have got options for addons or extensions to enhance the features and for ease of use. Opera, for example, has already got a number of useful features in its default installation, which for many people is bliss. I love firefox, so I will speak about the addons in my favorite web browser.
“I know this – I have some in my firefox”. If you have – great. Don’t have – then you can consider having some. Thank you guys and gals who gave their suggestions. Some of these people are firefox-addon power users. You wont believe the number of addons they use. Addon-freaks, please get enlisted with developer.mozilla.org. Your experience is very valuable for the community.
I am listing some of the useful firefox addons:
- Tab Mix Plus – It includes many features such as tab restoration, tabs duplication, tab focus control, undo close tabs and windows, and much more. If you have multiple tabs opened in your browser, you can avoid scrolling to left or right to access them, by enabling the tabs to be opened in multiple rows. It also has a crash recovery enabled session manager. This can save and restore combinations of opened tabs and windows.
- ChromaTabs – It assigns a specific color to the sites’ browser tabs. This helps distinguish tab contents based on individual colors.
- ShowIP – It shows the IP address of the current page in the status bar. You can also query custom services like whois by IP and Hostname. There has been reports of this plugin making firefox slow – so be wary when you use it.
- MeasureIt – To check the widths and heights of designs live. Helps while mapping the client’s design to HTML. Reduces the need for trial and error for spacing and all, while working with stylesheets and HTML.
- Adblock – Blocks ads for normal sites. Speeds up loading sites.
- Ardwark – HTML analysis.
- Total validator – To check if the HTML we are writing is validated – live
- Web Developer – Adds a menu and a toolbar with various web developer tools.
- Ctrl l – clears the screen
- Ctrl u – clears the line of text you have typed backwards from the current position of the cursor.
- Ctrl r – known as reverse-incremental search. It searches a previously typed command pattern. Hit on Ctrl r again to go further backward to get something you typed previously. You need not type the command itself. If you remember any unique string you had typed in the previous command, just type it and the command which contained it will be shown. To get the command into the normal prompt, hit on the “right arrow” key. You can edit it as you need after this. Or else, if you feel you can execute it straight away from the “Ctrl r” prompt, just hit “Enter”.
- Ctrl s – known as incremental search. This is the reverse of Ctrl r. If you are cycling through the history backwards using Ctrl r and you just missed the command you need, you can go forward by using Ctrl s.
- Alt b – moves the cursor backward to the beginning of the word(delimiters can be space, comma, period, colon, special characters etc.
- Alt f – moves the cursor forward to the end of the word(delimiters can be space, comma, period, colon, special characters etc.
- Alt l – changes the word to lowercase. Have to type this after bringing the cursor to the beginning of the word.
- Alt u – changes the word to uppercase. Have to type this after bringing the cursor to the beginning of the word.
- Alt Backspace – deletes 1 word behind the current position of the cursor.
- Alt Left Arrow – Moves to the next opened konsole in the Left.
- Alt Right Arrow – Moves to the next opened konsole in the Right.
Using the keyboard predominantly always helps in speeding up what you do. Some of the useful bash shortcuts are mentioned below:
Using shortcuts for konqueror, firefox, opera, internet explorer etc will make your work a lot more efficient and faster. The following link lists the most common keyboard shortcuts in Firefox, and the equivalents in Internet Explorer and Opera:
http://www.mozilla.org/support/firefox/keyboardFor kde & konqueror shortcuts, refer
Maintaining a to-do list
How can I make a to-do list. Okay…. , which is your favorite application which is most convenient to write on? For me, its knotes, as I don’t have to save each time i write on it. So my to-do list is in there and I keep apending to the top of the list under a date. Whenever I complete a task in the to-do list, I mark it as DONE. Make your own systems. If you need assistance, read the book “Time Management for System Administrators” by Thomas A. Limoncelli, O’Reilly publications.”
klipper and klipper invocation shortcuts
Why klipper? Simple, when using klipper, you can access the history of the text you used to copy-paste, which has high probability of coming in use again in the immediate future. Also, if you are using mouse to access klipper, only one of your hand is working. While using klipper with shortcut, both of your hands are working. Two is always better than 1; and faster too – at least in this case.
Improving typing speed
An IT professional spends most of his time doing 2 things – Thinking and then typing. Its well known that the first activity takes a lot of time and is generally of no use 😉 . So at least lets make the typing part work well. There are lots of applications to do this. KTouch is a wonderful app available from your KDE desktop. A friend was showing me an addon in firefox(Addictive Typing Lessons) which does the same. There are a lot of sites too which can be used for typing practice – free of cost. Ask google and it will surely help you.
Restrain from logging into personal IM ids.
This one is gonna be difficult. But this has to be done to take control of your work time. Else, the work will get delayed, you will have to sit extra hours and it will be overheads all-around. This is actually the all time chart-topper in time-wasters. Most of the times, its not in your control to initiate a chat. Someone else starts and it gets carried away. I understand the need of keeping in touch with friends. Believe me, they will appreciate more if you can just give them a call.
So, please minimize logging into your msn/yahoo/gmail personal IM ids, at least during your working hours and call your friends after your work.
Creating a log of all the work done somewhere
There are 2 major advantages in doing this. First, you have a record of work you did on a particular day. You can backtrack and find when you did something – your professional life is getting documented. You now have a solid record which displays your work, if someone comes asking you what you did on Monday 7th March 2005. Another advantage is, if you didn’t do anything productive in a shift, when you are going to log your work – you will realize that it was a lazy day. And you will(or should ;-)) come the next day charged up, to rock(read “work”).
Some of the tools I have seen used effectively for documenting and reporting work are timesheet.php & dotproject – which are free softwares.
Multitasking is good to an extent, but too much of it and switching too fast between totally varied types of activities leads to lower productivity. I am quoting the following from a news report in “The New York Times”
“The human brain, with its hundred billion neurons and hundreds of trillions of synaptic connections, is a cognitive powerhouse in many ways. “But a core limitation is an inability to concentrate on two things at once,” said RenÃ© Marois, a neuroscientist and director of the Human Information Processing Laboratory at Vanderbilt University.
http://www.nytimes.com/2007/03/25/business/25multi.html?_r=1&hp&oref=sloginIn a recent study, a group of Microsoft workers took, on average, 15 minutes to return to serious mental tasks, like writing reports or computer code, after responding to incoming e-mail or instant messages. They strayed off to reply to other messages or browse news, sports or entertainment Web sites.”
So, by reducing the distractions that come in between our work, a great deal of switching can be avoided. Also try to determine an optimal amount of time on individual tasks. By having a clear plan for your day, week and month with realistic objectives, we will be able to focus more on the subject at hand.
I don’t know for sure what will be an optimum period of focus on a particular task – and nobody does – but it seems they are researching into it. Until then, if you or your seniors are seeing a drop in the quality of the work product you are delivering while you are working very hard, and if its consistently happening, then its time to check what all you are multi-tasking and how often it is being done(ie. if you are doing a lot of different works).
Del”e*gate, v. t. [imp. & p. p. Delegated; p. pr. &
vb. n. Delegating.]
1. To send as one’s representative; to empower as an
ambassador; to send with power to transact business; to
commission; to depute; to authorize.
2. To intrust to the care or management of another; to
transfer; to assign; to commit.
The above definition is from kdict. The words to note in the above definition are :
If you know something very well, and have lots of experience doing it, you can delegate it to him/her or to a group of people. Make sure that it will be useful for him/her and its their interest area(ideally).
By delegating effectively, you will be able do new things assigned to you, will be able to groom people into better individuals, and ultimately, will be able to create a better professional ecosystem. There are hundreds of articles in the net explaining the intricacies and the art of delegation. Again, ask google or go buy a book.
A person who has read this article till this point, should already be knowing the importance of automation. Learning PERL and BASH scripting will always help you, even if you don’t like automation. To practice scripting, you can write small scripts to make the repetitive tasks in your daily work “un-repetitive”, so that you can spend more of your time on finding or doing new interesting stuff. There are a lot of books and tutorials in the Internet which will help you learn scripting.
Questions to super charge your life!
- Is this the best use of my time right now?
- What am I trying to accomplish right now? Is it urgent/important? (Focus on a single task)
- How can I eliminate distractions right now? (Disconnect yourself from the outside world)
- What action can I take instead of worry right now?
- How can I put worry/anger on hold right now?
- How can I choose happiness/peace right now?
- What do I want to accomplish today? (Keep a prioritized to-do list. Set times & plan your day)
- What have I been avoiding that I can do today?
- What can I cross off my list by deleting or delegating? What is not important?
- What can I stop holding/clinging to help me break free?
- What are my top 3 current goals?
- What will I do today towards my major goals?
- What is most important to me in life?
- If my world was going to end within one year, what would I be doing right now?
- What will I do, see, explore, or experience today that is new?
- What beneficial routines can I start today?
- Who can I learn from today?
- What did I learn today?
- What am I grateful for? Who should I thank today?
- Where did I find Joy today?
Go through the following questions once in a while, when you are stuck with something, when you are lost, or when you are bored. The whole list is in the link mentioned in the footnotes. I am pasting a few that is very relevant. Thanks to my friend, Varkeychayan, for pointing me to these questions.
The whole thing sums up into one term – Improvement. Only if we have a yearning for improvement, the whole idea of smart working starts to kick in. I have heard different terms used at different instances – like optimize, automate, short cuts etc. All these are related and has just one goal – to improve, to be more efficient, to be more productive. So lets turn on that switch in our head and start monitoring ourselves to find avenues to improve, optimize or automate constantly, and to be a lean, smart sysadmin.
Time Management for System Administrators By Thomas A. Limoncelli
About the author: Chacko Cherian Poothicote has been working in Bobcares for more than 4 years. His experience is mainly in data center administration and related remote infra structure management. He is a passionate advocate of Linux. Apart from his technical expertise, Chacko finds interest in learning and practising system implementations for ISO standards.