Monday, January 20, 2014

Support 101

If it Wasn't Challenging Would it be Rewarding?

And more importantly would anyone pay you to do it?

I hope to create a series of posts about specific support scenarios I've worked through.


The Reward

Supporting a technology can be your most challenging tasks - but I've also found it the most satisfying.  Nothing feels quite as good as showing someone a quick and easy solution to a problem they have using your technology.  Truly it is part of what attracted me to programming in the first place - automating what was once a hard/manual task.


The Unreward

I was tempted to name this section as "the reality" - but in actuality I've had far more rewarding support scenarios than taxing/unsatisfying ones.

Below is an actual transcript I had over communicator with someone who was located in a different city (from where I was working).  To preserve anonymity and stay within the legal boundaries of the NDA's I had signed - I've removed the specifics.  Probably the most important aspects from this communication were:

  1. The user expects me to drop everything to answer his questions
  2. His questions/messages come so rapidly I'm forced to give him my full attention
    1. The frequency of his messages and his lack of clarity also make it clear he hasn't and isn't going to read the documentation I've pointed him at
    2. This gives me an indication that he doesn't respect my time as much as his own
  3. The user isn't giving this task his full attention and is trying to do more than one thing at a time


The Dialogue



7:44 AM NotGoingToReadTheDocsUser
Sup in PatientProgrammerTech is it easy to add a new ttype to schema?
\Aka I want to [achieve this technical goal].
I was going to hack [the fundamental infrastructure of this tech you own]
9:07 AM Patient Programmer
PatientProgrammerTech has no difficulty with [the technical goal he has]...
Let me see if I can find a good example of that..
[Lengthy explanation with sample code and links to documentation]

9:16 AM NotGoingToReadTheDocsUser
Its not in here at all
Do i add this code somewhere?
9:16 AM Patient Programmer
[Further sample code and explanations]

9:18 AM NotGoingToReadTheDocsUser
the question is where to drop this.
I have PatientProgrammerTech open
9:19 AM Patient Programmer
[Further sample code and explanations]
9:20 AM NotGoingToReadTheDocsUser
[Additional questions without having read the documentation links]
9:20 AM Patient Programmer
[More answers]

9:22 AM NotGoingToReadTheDocsUser
[Additional questions without having read the documentation links]
9:22 AM Patient Programmer
[More answers]
9:22 AM NotGoingToReadTheDocsUser
[Additional questions without having read the documentation links]
9:22 AM Patient Programmer
I don't understand your question... perhaps phone me?


[More back and forth]

9:29 AM Patient Programmer
all configurable...
10:25 AM NotGoingToReadTheDocsUser
will continue this at a later time
I'm flooded with other things for the time being.
10:25 AM Patient Programmer
ditto
1:27 PM NotGoingToReadTheDocsUser
[Additional questions without having read the documentation links]

2:02 PM Patient Programmer
[More answers]

8:47 AM NotGoingToReadTheDocsUser
[Additional questions without having read the documentation links]
8:48 AM Patient Programmer
we're probably arguing semantics here... but [more technical explanations]... hang on... a tick... I have something you may find enlightening...

8:54 AM NotGoingToReadTheDocsUser
Ok.
I;ll get back with you went i look at this
we have some crazy [unrelated bugs in our application].
9:34 AM NotGoingToReadTheDocsUser
[Additional questions without having read the documentation links]
9:35 AM Patient Programmer
[More answers]
9:36 AM NotGoingToReadTheDocsUser
[Additional questions without having read the documentation links]
9:37 AM Patient Programmer
[More answers]
9:38 AM NotGoingToReadTheDocsUser
[Additional questions without having read the documentation links]

9:40 AM Patient Programmer
[More answers]
9:41 AM NotGoingToReadTheDocsUser
[Additional questions and still not understanding]
9:41 AM Patient Programmer
okay hang on NotGoingToReadTheDocsUser - call me
you're misunderstanding a lot here
[More technical explanations]
9:43 AM NotGoingToReadTheDocsUser
after lunch I have been putting it off.
the other thing is
If I can't solve this thing in a hour I'm going to do some other way for my [technical problem].
9:44 AM Patient Programmer
[More technical explanations]

1:18 PM NotGoingToReadTheDocsUser
Is it possible to explain this to me by text?
becuase I'm looking at a [unrelated bug in our application] and keep getting up from my desk.
1:21 PM Patient Programmer
I can try... but I feel like we're running in circles...
do you have anyone on your team who is PatientProgrammerTech savvy?  Your request is easily handled by PatientProgrammerTech - many teams have done this - I'm not sure what you need that I haven't told you...
1:21 PM NotGoingToReadTheDocsUser
[Additional questions without having read the documentation links]
1:22 PM Patient Programmer
okay... so what don't you know that you need to know?
[More technical explanations]

1:24 PM NotGoingToReadTheDocsUser
[Additional questions without having read the documentation links]
1:24 PM Patient Programmer
[More technical explanations]
1:25 PM NotGoingToReadTheDocsUser
[Additional questions without having read the documentation links]
1:25 PM Patient Programmer
[More technical explanations]
1:26 PM NotGoingToReadTheDocsUser
[Additional questions without having read the documentation links]
1:27 PM Patient Programmer
[More technical explanations]
1:27 PM NotGoingToReadTheDocsUser
[Additional questions without having read the documentation links]
1:28 PM Patient Programmer
[More technical explanations]
1:28 PM NotGoingToReadTheDocsUser
[Additional questions without having read the documentation links]
1:28 PM Patient Programmer
[More technical explanations]
1:28 PM NotGoingToReadTheDocsUser
[Additional questions without having read the documentation links]
1:29 PM Patient Programmer
[More technical explanations]
1:30 PM NotGoingToReadTheDocsUser
[Additional questions without having read the documentation links]
1:30 PM Patient Programmer
[More technical explanations]
1:30 PM NotGoingToReadTheDocsUser
[Additional questions without having read the documentation links]
Ok. I'm listening
1:31 PM Patient Programmer
[Let him know I've got to get back to the work I've been assigned - but will get back to him immediately after]
1:31 PM NotGoingToReadTheDocsUser
thats fine
1:50 PM Patient Programmer
[More technical explanations]
1:50 PM NotGoingToReadTheDocsUser
I'm sitting on my thumbs for another issue anyways lol
1:50 PM Patient Programmer
[More technical explanations]
1:51 PM NotGoingToReadTheDocsUser
ok.
1:51 PM Patient Programmer
[More technical explanations]
1:55 PM NotGoingToReadTheDocsUser
Pause on that
[Additional questions without having read the documentation links]

1:58 PM Patient Programmer
sent you an email...
1:59 PM NotGoingToReadTheDocsUser
im looking it
and questioning this one thing
[Additional questions without having read the documentation links]
2:00 PM Patient Programmer
[More technical explanations]
2:01 PM NotGoingToReadTheDocsUser
ok...
[Additional questions without having read the documentation links]
2:02 PM Patient Programmer
[More technical explanations]
2:10 PM NotGoingToReadTheDocsUser
[Additional questions without having read the documentation links]
HERES the biggest question i guess

2:15 PM Patient Programmer
I don't mean to offend - but I think you would benefit from a presentation/overview on PatientProgrammerTech... I think you're learning things the hard way... somewhat... backwards...
2:15 PM NotGoingToReadTheDocsUser
[Additional questions consciously ignoring my last suggestion]
2:15 PM Patient Programmer
This is a good starting point:
http://companyintranet/PatientProgrammerTech:Welcome

on the above page there are a couple of good presentations that cover everything I've been telling you
2:18 PM Patient Programmer
this one is a good basic one:
http://CompanyIntranet.com/PatientProgrammerTech/Documents/Default.htm
and the one on the bottom is more advanced
http://CompanyIntranet.com/PatientProgrammerTech/Documents/Advanced.htm
2:19 PM NotGoingToReadTheDocsUser
Your right
you know what the damn problem is?
[Additional questions without having read the documentation links]

2:24 PM Patient Programmer
NotGoingToReadTheDocsUser - I'm going to need you to start looking at the doc's... sorry... but I need to get back to [the project I work on]...

I sent this one to you a while ago - take another peek:
http://companyintranet/PatientProgrammerTech:UseCase
[Specific to his scenario]

This is a good overview of how we achieve reflection:
[link]
it is a subsection from this:[related link] 


Conclusion

At the start of the above dialogue I posted one possible reason for this person's distraction - but it could equally be distraction being imposed upon him by coworkers, management, etc:


I'm guessing I'm not the only one that has had to deal with a user that just flat out refused to rtfm - even when you ask politely.  I'm not sure what the moral of the story is here - but probably the best advice I can offer when dealing with "a horse that doesn't want to drink" is to do your best to keep your cool and perhaps give the user the opportunity to do some research on their own.  That isn't to say you should ignore the user - but that also doesn't mean you should reply the minute he sends you an email or a message.  The coddling you give them can make them dependent on it.  As I've heard some people say - "the more you help them, the more you hurt them".  


No comments:

Post a Comment