Archive for the 'Code Life Lessons' Category

Users as Messengers

Friday, July 20th, 2007

Users are messengers. As always – don’t shoot the messenger.

When users do something that’s annoying or irritating, or just plain dumb, it’s likely that there’s a message underneath the inane questions. Underneath the need to check if the computer is turned on is… a message. Don’t lash out against the users for being dumb, but try to see what the message is – you just might be able to solve the problem (and at least cut down on the stupid questions you have to deal with).

I’ve been avoiding the WPMU Forums. The community is bombarded by “dumb” questions constantly, and people are Frequently Asking Questions that aren’t addressed in the FAQ. The people supporting the software (out of the kindness of their hearts) are fed up, and so get pretty snippy. I can’t bear to read the posts on the forums, when most of time the simple questions are answered with irritation, rage, sarcasm, or (in my perception) just plain rudeness by the volunteers there. Generally, I don’t think the attitude is justified towards “Joe User” asking his first Dumb Question, but I totally understand where they’re coming from. It can be frustrating to answer the same question over and over again.

So given all these user-caused irritations, the volunteer time is spent dealing with the users themselves, and not trying to understand the underlying message there: there’s a problem with how the community is set up. The documentation is lax. The FAQ is misleading. The search features on the website are weak. I feel that these reasons are why the users keep acting “dumb”: they follow “standard” procedure – reading the FAQ, etc, and then turn to the forum when those fail. The users are simply delivering a message – “Clean up this community, and I won’t have to bug you.  I can’t find what I need.”

I think this lesson applies to most projects with user interaction. If you’re constantly bombarded with concerns or problems, there’s something to be sorted out there. There’s a message in that which points you back to the cause of the problem. Instead of treating the symptoms, take some time to listen to the fundamental message hidden there, and address the root issue. You’ll relieve the pressure on yourself (less annoying user requests), and also better please the users (they can find what they need without asking for help).

Ultimately, some problems are intractable and can’t be solved.  Not everything is in your power.  But a surprising number of things are.  Taking the time to really listen to the story behind the “Why doesn’t it work?!” request may just help reduce your stress levels.


P.S. I’m pretty sure that the WPMU volunteers know the systemic problems in the community, really. Unfortunately, because of the project’s reliance on and its near-zero chance of website changes, I don’t think the project will ever really change. The main volunteers have pretty much given up trying to fix the problems, and it appears to me that they have contented themselves with being jaded on the forums. Any effort to improve the community is generally given no support by the community leaders, even to the point of essentially discouraging any attempts. It’s hard to be hopeful for change in a group when the most influential members are so bitter.

Meetings, Part 2

Wednesday, June 27th, 2007

Like I said before: don’t underestimate meetings.

Don’t underestimate the good they can do, and don’t underestimate the bad. Also, as I’ve learned over the past few weeks – don’t underestimate their ability to completely morph into something different than intended.  They are wild creature which behave on a logic that is entirely their own.  :)

I use Outlook at work for calendaring and email*. I make pretty solid use of the calendaring features of Outlook, so I send meeting invitations out to people when I know that I want to schedule time for us to meet. Now, when I think of “meetings”, I generally don’t have them in my mind as formal affairs. It’s purely a scheduling convenience – I know I can be forgetful, and I know many other developers to be the same. I want an easy way to get reminders and know where I might be spending my time on a given day.

For those formal affairs, like the dreaded Staff Meeting, they get separated as capital-M Meetings. Apparently, though, not everyone views scheduled meetings the same way – for many if it’s been scheduled (i.e., if it’s down on paper), it’s a formal affair. Something to note.

Why does this happen?

I think in this particular case, it’s purely because we’re a fairly disorganized house. Everyone kinda does their “own thing”, and rarely makes use of communication, documentation, or project management tools. It’s a sort of backlash response to an highly politicized and bureaucratic environment (government and academia can be like that).

So when something comes down the pipe making use of groupware we have available, I think the natural response from those that have hardened themselves in this wasteland of red tape is to label it as “official”. Which really translates as “Bureaucratic Meeting” – note the capital letters!

I don’t think my experience is unique.  The meme of the software IT group that combats red tape and bureaucracy has been around for as long as I can remember.  It is the dragon that cannot be slain by code alone.  But as a result, many of the people that have been in the trenches a long time become jaded and paranoid.  It would be wise for anyone in such a group to keep aware of such responses.

For me, I just gotta keep it in mind.  Now, when scheduling meetings, I

  1. Schedule the meeting as before (email, Outlook, etc).
  2. Fill in some details to flesh the idea out to all attending.
  3. Wait for responses.
  4. Completely ignore all original meeting planning in step 2.
  5. profi– er, Brace for impact. It’s not gonna go the way I planned. ;)


P.S. As an aside – the current disorganized state of our department is changing… slowly. I rail like a wild-eyed prophet from atop my soapbox, and every once in a while the managerial deities see fit to grant me some rain.   It’s just my job to make sure that I now properly irrigate my fields, so maybe they’ll give me a little more.  ;)

* Before you start throwing rotten fruit, it’s because we’re in a mostly-MS house working with aspiring Managers at a College of Business. Something like MS is almost a given for business functions in this sort of “enterprise” environment. :P (The Webserver and a lot of app development are Unix, though).