Are you good at finding faults in your infrastructure, or are you good at making sure there are no faults. As Jason Cohen relates, Quality Assurance is not Quality Control.
Like many other topics, this is written to programmers, but is a good lesson for sysadmins as well.
Showing posts with label advice. Show all posts
Showing posts with label advice. Show all posts
Friday, November 28, 2008
Wednesday, August 27, 2008
10 professional skills that no IT administrator should be without
Whether you're a network administrator, systems administrator, cable monkey, or general IT grunt, there are a few professional skills that are indispensable in order to prosper. Sure, you can survive being surly and bitter, but to reach your full potential, it would be wise to take this list into consideration.
10) When something is broke, fix it
This can be as simple as a loose cable end, or as complex as an inefficient process. It's not your bailiwick to fix every problem in the entire infrastructure (then again, maybe it is), but an eye for improving things is highly appreciated in the right sort of company. If you see a way to improve something, talk to the appropriate people to see what can be done. You are part of the company, and by improving the whole, you're making things better for yourself, too.
9) Manage your time efficiently
Tom Limoncelli's book "Time Management for System Administrators" goes far more into detail than I can here, and the book is not just for sysadmins, despite the title. To summarize an important point, keep track of what you have to do, and when you have to do it. It's either due right now, it's due soon, or it's due later. If you categorize by those identifiers, you'll never have something sneak up on you.
8) Learn from people who know more than you
Discovery of new things on your own is exciting. You're full of wonder when you chance upon an unfamiliar subject. It's no doubt similar to the feeling Magellan or Columbus had. Like those people, you too are probably discovering something that other people have known about for a long, long time. While you should never stop exploring on your own, never be too proud to learn from the people who have been there before you. Even the guy who invented calculus stood on the shoulders of giants. You might be able to borrow someone's stepladder, anyway.
7) Organization shall set you free
There are people who have to keep track of lots and lots of things. Some of those people are librarians, and they use something called a Dewey Decimal System to manage thousands of discrete items. If you've ever wandered through a library just glancing at shelves, you've probably been amazed by how bizarre some of the book groupings can be. Despite the seemingly random categories, any librarian worth their salt can tell you where a book is filed in a moment's notice. That's because, despite what you or I might think of their cataloging system, it works. I'm certainly not suggesting the Dewey Decimal System for your network documents / asset tracking, but it's important that you have a system that you know how to use, and that it's one which works for you. A pile of papers isn't a system, and neither is throwing everything in the root of your home directory. Make it easy to find data that you need, and use the tools at your command to make it happen.
6) Pick your fights
You probably work with at least one other person. If that person is in IT, you'll probably disagree as to the best course of action. If that person is not in IT, it's almost certain that you'll disagree about the best course of action. As IT workers, we're exposed to a large amount of data, some of which is so obscure or esoteric that I'm tempted to call it trivia, however the lump sum of that data, when added to our experience becomes knowledge, and we use this knowledge to make judgments about procedures that other people might think are arbitrary decisions. Example: It's a bad idea to run CAT5 along the power conduit that feeds the florescent lights. It just is. We could explain why, but the person who wanted to do it wouldn't care why we refused. They just know that they aren't going to get their network cable. Discussions of this nature will be more or less serious, depending on the day and the phase of the moon. When it comes to the less serious discussions, my advice to you is identical to the advice that someone very wise gave me about my then-upcoming wedding. When the two of you disagree, go along with whoever cares more. If it's a bad idea, and the person knows that, but really really wants it, maybe you should consider giving it to them. Maybe.
5) Competence is next to Godliness
I was at Chipotle the other day, and I saw a 12 year old Honda with a completely useless rear spoiler that rose a foot above roof height. My initial thought was "I bet that guy doesn't race his car". Why not? Because he's just showing off; there's no substance behind his style. You can talk as big as you want about your skills, but unless they're real, it's all hot air. Always seek to increase your competency rather than people's opinion of you. If you succeed in the first, the second will follow.
4) Be honest...enough
Ah, honesty; you wear so many guises. There are laws against certain kinds of dishonesty. There are societal mores that frown upon others. Then, there is a certain kind of etiquette that requires a bit of fudging the truth. It's important to realize that people sometimes need to be let down gently, particularly when they're proud of something they did, or think they did, when in fact, they've screwed the pooch, so to speak. Honesty is also important when something breaks, though it's probably more important to know that the finger you use to point to the cause would be better used to fix the problem.
3) Take responsibility
Just as important as not pointing fingers at other people is recognizing when, through some fault of your own, something has gone to hell and someone else noticed. I've honestly never seen a member of management more amazed than when someone stood up, looked them in the eye, and took full responsibility for the problem. Worming your way out of a jam is a time honored tradition, and taking the opposite stance will confuse and confound those to whom you plead. An honest apology coupled with an assurance of future improvement, and perhaps a quick overview of that path, is the surest way to gain respect from people who are used to seeing the worst of people.
2) Be a team player
Sometimes, on occasion, and I must emphasize the rarity of this event, it is not all about you. In this instance, you might be part of a multi-department ninja-strike-team, or maybe you've been assigned a partner to get a major issue taken care of, but whatever the particulars, in dire times such as these, someone else is involved in the task at hand. When you inevitably succeed (is there another option?), to the victors go the spoils. In this case, it might be a raise, or more likely, a congratulatory email. The proper reaction is, despite how weasely your teammate(s) might have been, to share the responsibility of success. In fact, I've found that a good rule of thumb is to never assume more responsibility for success than the amount of blame you would have ascribed to your partner(s) if the project had failed.
1) Have an exit strategy
It's sad, but not all of our endeavors end in unblemished success. In fact, some times, they just up and fail. We're talking real end-in-fire type stuff here. You can usually tell when something like this is going to happen, because you find yourself pushing towards a solution that shows no sign of yielding to your will. Lots of times, you'll make little bits of progress as large sections of time leap by. You approach the deadline with no real progress to show, and your choice is to present a half (if you're lucky) finished product, or hack together some kludge that doesn't pass muster and hope you can fix it later while no one notices. Neither of these options is particularly appealing, so it's important to set a limit for yourself. If it's not 80% by this date (where "this date" is a decent amount of time ahead of the deadline) then we're going with Plan B. Of course, this necessitates having a Plan B, but I think that's a good idea regardless of what activities you're engaged in.
I certainly didn't cover everything you need, but I got some of the big ones, I think. If you disagree, or have more to add, please comment! If you liked the list, feel free to Digg it. If you're tired of these stupid lists of things, drop me a line at standalone.sysadmin@gmail.com and let me know.
10) When something is broke, fix it
This can be as simple as a loose cable end, or as complex as an inefficient process. It's not your bailiwick to fix every problem in the entire infrastructure (then again, maybe it is), but an eye for improving things is highly appreciated in the right sort of company. If you see a way to improve something, talk to the appropriate people to see what can be done. You are part of the company, and by improving the whole, you're making things better for yourself, too.
9) Manage your time efficiently
Tom Limoncelli's book "Time Management for System Administrators" goes far more into detail than I can here, and the book is not just for sysadmins, despite the title. To summarize an important point, keep track of what you have to do, and when you have to do it. It's either due right now, it's due soon, or it's due later. If you categorize by those identifiers, you'll never have something sneak up on you.
8) Learn from people who know more than you
Discovery of new things on your own is exciting. You're full of wonder when you chance upon an unfamiliar subject. It's no doubt similar to the feeling Magellan or Columbus had. Like those people, you too are probably discovering something that other people have known about for a long, long time. While you should never stop exploring on your own, never be too proud to learn from the people who have been there before you. Even the guy who invented calculus stood on the shoulders of giants. You might be able to borrow someone's stepladder, anyway.
7) Organization shall set you free
There are people who have to keep track of lots and lots of things. Some of those people are librarians, and they use something called a Dewey Decimal System to manage thousands of discrete items. If you've ever wandered through a library just glancing at shelves, you've probably been amazed by how bizarre some of the book groupings can be. Despite the seemingly random categories, any librarian worth their salt can tell you where a book is filed in a moment's notice. That's because, despite what you or I might think of their cataloging system, it works. I'm certainly not suggesting the Dewey Decimal System for your network documents / asset tracking, but it's important that you have a system that you know how to use, and that it's one which works for you. A pile of papers isn't a system, and neither is throwing everything in the root of your home directory. Make it easy to find data that you need, and use the tools at your command to make it happen.
6) Pick your fights
You probably work with at least one other person. If that person is in IT, you'll probably disagree as to the best course of action. If that person is not in IT, it's almost certain that you'll disagree about the best course of action. As IT workers, we're exposed to a large amount of data, some of which is so obscure or esoteric that I'm tempted to call it trivia, however the lump sum of that data, when added to our experience becomes knowledge, and we use this knowledge to make judgments about procedures that other people might think are arbitrary decisions. Example: It's a bad idea to run CAT5 along the power conduit that feeds the florescent lights. It just is. We could explain why, but the person who wanted to do it wouldn't care why we refused. They just know that they aren't going to get their network cable. Discussions of this nature will be more or less serious, depending on the day and the phase of the moon. When it comes to the less serious discussions, my advice to you is identical to the advice that someone very wise gave me about my then-upcoming wedding. When the two of you disagree, go along with whoever cares more. If it's a bad idea, and the person knows that, but really really wants it, maybe you should consider giving it to them. Maybe.
5) Competence is next to Godliness
I was at Chipotle the other day, and I saw a 12 year old Honda with a completely useless rear spoiler that rose a foot above roof height. My initial thought was "I bet that guy doesn't race his car". Why not? Because he's just showing off; there's no substance behind his style. You can talk as big as you want about your skills, but unless they're real, it's all hot air. Always seek to increase your competency rather than people's opinion of you. If you succeed in the first, the second will follow.
4) Be honest...enough
Ah, honesty; you wear so many guises. There are laws against certain kinds of dishonesty. There are societal mores that frown upon others. Then, there is a certain kind of etiquette that requires a bit of fudging the truth. It's important to realize that people sometimes need to be let down gently, particularly when they're proud of something they did, or think they did, when in fact, they've screwed the pooch, so to speak. Honesty is also important when something breaks, though it's probably more important to know that the finger you use to point to the cause would be better used to fix the problem.
3) Take responsibility
Just as important as not pointing fingers at other people is recognizing when, through some fault of your own, something has gone to hell and someone else noticed. I've honestly never seen a member of management more amazed than when someone stood up, looked them in the eye, and took full responsibility for the problem. Worming your way out of a jam is a time honored tradition, and taking the opposite stance will confuse and confound those to whom you plead. An honest apology coupled with an assurance of future improvement, and perhaps a quick overview of that path, is the surest way to gain respect from people who are used to seeing the worst of people.
2) Be a team player
Sometimes, on occasion, and I must emphasize the rarity of this event, it is not all about you. In this instance, you might be part of a multi-department ninja-strike-team, or maybe you've been assigned a partner to get a major issue taken care of, but whatever the particulars, in dire times such as these, someone else is involved in the task at hand. When you inevitably succeed (is there another option?), to the victors go the spoils. In this case, it might be a raise, or more likely, a congratulatory email. The proper reaction is, despite how weasely your teammate(s) might have been, to share the responsibility of success. In fact, I've found that a good rule of thumb is to never assume more responsibility for success than the amount of blame you would have ascribed to your partner(s) if the project had failed.
1) Have an exit strategy
It's sad, but not all of our endeavors end in unblemished success. In fact, some times, they just up and fail. We're talking real end-in-fire type stuff here. You can usually tell when something like this is going to happen, because you find yourself pushing towards a solution that shows no sign of yielding to your will. Lots of times, you'll make little bits of progress as large sections of time leap by. You approach the deadline with no real progress to show, and your choice is to present a half (if you're lucky) finished product, or hack together some kludge that doesn't pass muster and hope you can fix it later while no one notices. Neither of these options is particularly appealing, so it's important to set a limit for yourself. If it's not 80% by this date (where "this date" is a decent amount of time ahead of the deadline) then we're going with Plan B. Of course, this necessitates having a Plan B, but I think that's a good idea regardless of what activities you're engaged in.
I certainly didn't cover everything you need, but I got some of the big ones, I think. If you disagree, or have more to add, please comment! If you liked the list, feel free to Digg it. If you're tired of these stupid lists of things, drop me a line at standalone.sysadmin@gmail.com and let me know.
Labels:
administrivia,
advice,
top list
Tuesday, August 26, 2008
5 Ways to improve your network without breaking the bank
In reality, there are far more than 5 ways to easily improve your network's security and reliability, without spending hardly any money at all. I've just briefly gone over the most blatant 5 that make the biggest difference for next to no expenditure. Sure, a few office supplies might need to be sacrificed for the good of the many, and you will have to change the way you approach some problems, but read this list with an open mind. You might find it more efficient than the things you've been doing.
5) Take care of your networking cables
Nothing will kill packets with more random violence than an ethernet cable that hasn't been taken care of. Whether the culprit is a loose end, bent wires from folding it back on itself, or accidentally cutting it when you were removing plastic zip ties, the end result is that your quality degrades and packets get dropped. This can be prevented by recrimping the ends when necessary, or replacing the whole cable if need be.
4) Set your wireless power level
You probably don't work in an area that covers 100,000 square feet of space, which means that lots of the wireless signal you're sending out is being wasted. More troubling, it's much easier for the casual war driver to pick them up from the parking lot (or adjacent floors). There's just no need. Most APs support adjusting the power output from the radio. Lower the signal until you can't get it in the farthest reaches of your office, then bump it back up until you can get it again. It won't defeat someone dedicated who uses a pringles can, but it's better than nothing. Also, make sure you use WPA.
3) Optimize DNS
If I were to wildly make up numbers, I'd say that 60% of weird network errors can actually be traced back to DNS, particularly if your infrastructure has multiple DNS servers which are all manually edited then updated. It's easy to fatfinger a line in the config file, or forget to update all the servers but one, or to leave out a reverse DNS entry for a host, and with the right (or wrong) host configurations, each of these can cause seemingly random havoc on unsuspecting users. "Why is it taking to long to ssh into BoxA?". It might be a network issue, it could be a server problem, or, in my case, the reverse DNS entry COULD have an extra : in it. Solve these kinds of problems by scripting DNS changes. Do less by hand and eliminate accidental screw ups. That way you can concentrate on all the bad things which you do on purpose. This entire process of automating changes and then documenting them is called "Change Management". Look into it, it's a Good Thing(tm)
2) Monitor Bandwidth
If you've got managed switches, there's no excuse to be wasting those expensive configuration and reporting abilities. Pretty much every networking device and almost every network host has the ability to be monitored using SNMP. To ignore this potential source of pretty graphs is foolish. Get MRTG, or even better, Cacti, and get to work. Knowledge is power, and learning that what should be a small filesync is actually backing up a user's entire iPod directory, every night, helps you in many ways. Learning discretion by not hitting them with a foam bat, for one.
1) For the love of God, document!
If it's something that you could concievibly have to do again, and it took you longer than 10 seconds to figure out, document it. Document it someplace that makes sense. Put enough detail in that you can recreate your actions, or better yet, someone else can recreate your actions. The last thing you want is to get a promotion to a corner office and then have some peon come bothering you about network configurations while you should be lighting cigars with $100 bills. Document properly and this won't happen. I promise.
Thanks for listening. There are many, many simple ways of improving your network. Post some of your favorites below. If you liked the article, make sure to Digg it
5) Take care of your networking cables
Nothing will kill packets with more random violence than an ethernet cable that hasn't been taken care of. Whether the culprit is a loose end, bent wires from folding it back on itself, or accidentally cutting it when you were removing plastic zip ties, the end result is that your quality degrades and packets get dropped. This can be prevented by recrimping the ends when necessary, or replacing the whole cable if need be.
4) Set your wireless power level
You probably don't work in an area that covers 100,000 square feet of space, which means that lots of the wireless signal you're sending out is being wasted. More troubling, it's much easier for the casual war driver to pick them up from the parking lot (or adjacent floors). There's just no need. Most APs support adjusting the power output from the radio. Lower the signal until you can't get it in the farthest reaches of your office, then bump it back up until you can get it again. It won't defeat someone dedicated who uses a pringles can, but it's better than nothing. Also, make sure you use WPA.
3) Optimize DNS
If I were to wildly make up numbers, I'd say that 60% of weird network errors can actually be traced back to DNS, particularly if your infrastructure has multiple DNS servers which are all manually edited then updated. It's easy to fatfinger a line in the config file, or forget to update all the servers but one, or to leave out a reverse DNS entry for a host, and with the right (or wrong) host configurations, each of these can cause seemingly random havoc on unsuspecting users. "Why is it taking to long to ssh into BoxA?". It might be a network issue, it could be a server problem, or, in my case, the reverse DNS entry COULD have an extra : in it. Solve these kinds of problems by scripting DNS changes. Do less by hand and eliminate accidental screw ups. That way you can concentrate on all the bad things which you do on purpose. This entire process of automating changes and then documenting them is called "Change Management". Look into it, it's a Good Thing(tm)
2) Monitor Bandwidth
If you've got managed switches, there's no excuse to be wasting those expensive configuration and reporting abilities. Pretty much every networking device and almost every network host has the ability to be monitored using SNMP. To ignore this potential source of pretty graphs is foolish. Get MRTG, or even better, Cacti, and get to work. Knowledge is power, and learning that what should be a small filesync is actually backing up a user's entire iPod directory, every night, helps you in many ways. Learning discretion by not hitting them with a foam bat, for one.
1) For the love of God, document!
If it's something that you could concievibly have to do again, and it took you longer than 10 seconds to figure out, document it. Document it someplace that makes sense. Put enough detail in that you can recreate your actions, or better yet, someone else can recreate your actions. The last thing you want is to get a promotion to a corner office and then have some peon come bothering you about network configurations while you should be lighting cigars with $100 bills. Document properly and this won't happen. I promise.
Thanks for listening. There are many, many simple ways of improving your network. Post some of your favorites below. If you liked the article, make sure to Digg it
Labels:
advice,
networking,
security,
toplist
Thursday, August 21, 2008
Burnout and the toll it takes
Jack Hughes, over at the Tech Teapot, mentions a very appropriate subject for too many systems administrators: burnout.
As sysadmins, we're nearly always the go-to person for whatever happens. After a while, we start to get used to it, and lots of times, we can develop a hero complex, carrying the weight of the world on our shoulders, at least in our minds. This isn't healthy for a lot of reasons, the most important of which is your health.
Here's an example of what taking your job too seriously can do to you:
Part One
Part Two
Not to ruin the ending, but the most disgusting part is that, while the guy was taking medical leave, his company fired him. To be completely honest, he's much better off without a company like that, and if your company would do the same thing, then so are you.
To quote Peter Gibbons, "We don't have a lot of time on this earth. We weren't meant to spend it this way. Human beings were not meant to sit in little cubicles staring at computer screens all day..."
Even one of the most preeminent Systems Administrators around, Tom Limoncelli advocates leaving the pressure at work when you head home. For those of us on call 24/7/365, that can be a little hard, but it's important to try.
As sysadmins, we're nearly always the go-to person for whatever happens. After a while, we start to get used to it, and lots of times, we can develop a hero complex, carrying the weight of the world on our shoulders, at least in our minds. This isn't healthy for a lot of reasons, the most important of which is your health.
Here's an example of what taking your job too seriously can do to you:
Part One
Part Two
Not to ruin the ending, but the most disgusting part is that, while the guy was taking medical leave, his company fired him. To be completely honest, he's much better off without a company like that, and if your company would do the same thing, then so are you.
To quote Peter Gibbons, "We don't have a lot of time on this earth. We weren't meant to spend it this way. Human beings were not meant to sit in little cubicles staring at computer screens all day..."
Even one of the most preeminent Systems Administrators around, Tom Limoncelli advocates leaving the pressure at work when you head home. For those of us on call 24/7/365, that can be a little hard, but it's important to try.
Labels:
administrivia,
advice
Wednesday, August 20, 2008
Project Management Software
My company is in the market for some online collaborative project management software. Since I have never used any of it, I'm appealing to you, the reader. What do you use (if anything) for this?
Basecamp
goplan
Liquid Planner
Intervals
DeskAway
WorkZone
Anyone have any experience with one (or more) of these, or any others? I'd be very interested to hear your thoughts.
I've used Microsoft Project a very small amount, and the open source solution Planner a bit more, but neither are web based or collaborative.
A quick search on Freshmeat returns a lot of likely candidates, but I think we're looking for something commercial, for the supported aspect. On the down side, this will cost the company a certain amount of money every month. On the up side, I think they're finally realizing that my time is finite.
Here are the options we're looking at:
A quick search on Freshmeat returns a lot of likely candidates, but I think we're looking for something commercial, for the supported aspect. On the down side, this will cost the company a certain amount of money every month. On the up side, I think they're finally realizing that my time is finite.
Here are the options we're looking at:
Basecamp
- http://www.basecamphq.com/
- $149/month for unlimited projects and users
- 50GB
goplan
- http://goplan.info/
- $100/month for unlimited projects and users
- 25GB
Liquid Planner
- http://www.liquidplanner.com/
- $300/user/year
- 50GB
Intervals
- http://www.myintervals.com
- $175/month for unlimited projects and users
- 5GB
DeskAway
- http://www.deskaway.com
- $99/month for unlimited projects and users
- 25GB of storage
WorkZone
- http://www.teamworkzone.com/
Their pricing is not published online, but we got quoted $300/mo for 15 users and 3GB of space
Anyone have any experience with one (or more) of these, or any others? I'd be very interested to hear your thoughts.
Labels:
advice,
project management
Monday, August 18, 2008
Introduction to RAID levels
If you've never worked with large systems with a bunch of disks, you probably don't have a lot of experience with RAID. RAID stands for Redundant Array of Inexpensive Disks (or if you ask some people, the I stands for Independent).
SearchSMBStorage.com has a good article on how the most common RAID levels work.
For a much more in-depth discussion (and visualizations of the way data gets written to where), check out this article from pcguide.com
It all boils down to how important the information is, how much disk space you need, and how many drives you have at your disposal.
SearchSMBStorage.com has a good article on how the most common RAID levels work.
For a much more in-depth discussion (and visualizations of the way data gets written to where), check out this article from pcguide.com
It all boils down to how important the information is, how much disk space you need, and how many drives you have at your disposal.
Friday, August 15, 2008
OpenOffice trick to auto-increment IP addresses
I've been fleshing out my IP address spreadsheets, and I've been using a trick that I didn't know about for a long time, till someone on a forum showed me. It was indispensable.
You know how, if you want a series of numbers down a row, you can click the lower right hand corner, and drag it down, and it autoincrements the numbers for you? Well, in oocalc, if you try that with IP addresses, it just copies the original IP address. I don't know why, but it does. MS Office gets it right, heck I think even K Office will do it. OpenOffice, not so much.
The trick to doing it is to put a space in front of the IP address, first.
" 192.168.0.1" will allow you to drag it down as far as you want, incrementing the last octet.
You know how, if you want a series of numbers down a row, you can click the lower right hand corner, and drag it down, and it autoincrements the numbers for you? Well, in oocalc, if you try that with IP addresses, it just copies the original IP address. I don't know why, but it does. MS Office gets it right, heck I think even K Office will do it. OpenOffice, not so much.
The trick to doing it is to put a space in front of the IP address, first.
" 192.168.0.1" will allow you to drag it down as far as you want, incrementing the last octet.
Labels:
administrivia,
advice,
documentation,
networking
Subscribe to:
Posts (Atom)


