The other day someone was talking about pair programming at work, and someone said, "I already pair 5 hours of my day every day helping others".
Help Time - is a time in your schedule that is usually not accounted for. It's really hard to plan for and it usually begins any time someone walks to your desk and says, "Got a minute? I need your help."
And that's paid help. One of my bosses believed that as seniors we get paid to help. His belief was simple:
It's a silent part of our work profile. We are paid to help, mentor and train others. You should have an open door and an open heart when someone walks up to you for help specially at workplace.
To an extent I agree, but when your entire day goes in helping others put out the same kind of fires, it's often time to introspect philosophically if helping folks is really helping them? Or just making them dependent on you and boosting your self ego? Is that what you are really getting paid to do? When it comes to professional life, help without training and mentoring usually harms both the giver and the taker.
Then there is unpaid help. Someone, somewhere, who is remotely related to you, whose laptop just broke down and merely by the virtue of the fact that "You are in IT" you are expected to replace their RAM.
You know, the kind of help we all know about.
A lot of folks and self help gurus speak at length about the power of No. 'Just say no' is what almost every book out there says. But no is not always an option. Specially for people who are reluctant at saying no. As a regular nice guy (or girl) your chances of being exploited using the help bait are much higher than a jerk who can say no and get away with it.
There is nothing wrong with helping, but there are a few simple things you can do to not bite into the help bait more than you actually want to. Here are some:
#1: Help using advice, direction or artifacts: Advice and direction are easy to provide. A five minute conversation which says 'look at this' or 'google that' and you give the seeker a general direction he or she should go towards. If you want to be a little more involved give them an artifact which others can reuse. Scott Hanselman has an excellent post on the topic of building reusable artifacts while helping others, so I won't repeat that material.
#2: Help but in a timeboxed duration: Sometimes advice, direction or artifacts aren't enough. There are times when takers will seek for explicit customized help. For example that uncle of yours's who wants a full blown accounting system and he is expecting you to build it for free. This is where you don't have to say no to helping, but make it very clear that you would love to help but you're busy (see point #4 on excuses) and so you're only going to be able to do X.
This X, could be as simple as - "I won't be able to design an entire application for you but I can connect you with someone who does this really well and at a reasonable price. I'll also be there in the first half hour meeting to connect you two and then you guys can negotiate a rate and take this forward. It's the only person I know so I won't be able to connect you to others but you can look at others online if you don't like this guy."
Whether you are helping your fellow developers or personal acquaintances, time boxing your help time is a good idea and when that time runs out, schedule for a different day in your calendar. The other day a school friend called for a help he needed and I told him I'm completely booked (again, see point #4 on excuses) but, "let me get that done for you by Friday late evening". There was a slight awkward silence because he just needed an hour of my time and he was probably expecting immediate help, but he was finally ok with Friday late evening and we both were happy with the arrangement. As much as I wanted to help him on the same day, I couldn't help it. My help time quota for the day had already run out. When you run out of money you can't spend more. Time is no different when you budget it.
#3: Recognize Patterns: If the same person calls you from help regarding the same kind of thing over and over he isn't seeking help. He is just exploiting you. For example I had an acquaintance who had a habit of visiting strange sites and getting his machine loaded with malware ever couple of months.
The first time it happened I showed him how to reimage his machine and a couple of weeks later he called me again, stating his machine was infected again, how he wasn't feeling confident reimaging it himself and would 'prefer' I do it. I told him I wouldn't mind doing it but in that case it would have to wait for two months since I am badly tied up with this huge project I had taken up and may have to fly out next week.
Next day he called me about a small question when he was stuck trying to do it himself. I answered the question and he was able to get it done. Win-win.
Recurring patterns for same kind of help isn't someone seeking for help. More often than not it's someone exploiting you and sucking your time to feed their own agendas and their own laziness. They aren't bad people but when you help them with the same problem again and again instead of empowering them to fix it themselves you are feeding their laziness.
#4: Plan our excuses ahead of time and practice with loved ones: I have a collection of excuses predefined for all occasions. A few of these are ones that can be pushed back or questioned, which lets me validate how serious a person is. For example, "I've got a meeting during office hours but can we sit at 10 in the night and work at it?" - If the person' isn't serious he would usually refuse that offer. If he accepts the offer I can always tell him I got another call at 10 and help him the next day. Win-win.
Then there are excuses in my quiver that just cannot be challenged or negotiated with. For example, "I can't, I'm doing a course on machine learning and have my exam scheduled on that day". I've researched into which course, which exam and have rehearsed this excuse a thousand times over so I don't feel reluctant using the excuses. Be careful when using this though, since in most cases you aren't even obligated to give an excuse. Just saying "I have other important work (or personal) commitments" convincingly should be enough.
As geeks helping folks who are stuck is second nature to us. We see something broken and want to fix it. A lot of folks actually thrive on this weakness of ours. Practicing excuses and having a pre-planned list of excuses for each occasion in your repertoire helps a lot, especially if you are not great at saying no assertively. That's a skill I need a lot of work in.
Helping someone is a noble act and there is nothing wrong with helping people. It's a form of altruism. And like every charity, when it impacts your own well being it becomes dysfunctional. You can only give a small portion of what you have, and when it comes to time, it's really important you put a stake in the ground and pre-decide what percentage of your time you want to dedicate to helping others.
If it's a loved one you can give them a lot of time, if it's acquaintance who is a perpetual taker you may choose to give him nothing. There are no right answers but whatever you do, you should be doing it deliberately. Every time someone requests for help you shouldn't be taken off guard and end up providing hours or your precious life just because you were guilted or emotionally arm twisted into it.
Timeboxing help and picking who to help and how much to help, is an art you master and as you master the art you actually get better at helping people you really want to help and providing help on things you really care about. Go on, plan your help time deliberately and provide help that really matters to people who really matter to you.