I decided that for today's post I would write about a concern I've had with every company that I've worked for in IT.
Arrogance, plain and simple. So many IT workers seem to have this holier-than-thou attitude toward their users. (SNL even has a skit about an obnoxious IT guy) Users are clueless, they are a pain in my ass, they don't understand how anything works, etc etc etc. This attitude is apparent to the end user, who doesn't generally challenge the IT worker because:
- They really don't understand.
- They need the services of the IT worker.
- If someone approaches you with an arrogant attitude, you won't be interested in learning anything anyway.
I'd like to remind everyone that we in IT are servants! The only reason we exist is to make the company run better and a major part of that job is making sure the end users know the very basic fundamentals of why things are, and what technology is capable of to make things better. This is especially true in programming and design. If you make your end users feel uncomfortable discussing things with you, you will end up missing out on the guidance they can offer about business logic, UI flow/layout, etc. Make sure that your users know that they can approach you with any questions or concerns... they are not a hindrance to your job, they are the reason it exists!
This is not to say that you should get into deep discussions with a “clueless user who will never get it anyway”... but we should try our best within time constraints to think of metaphors that are easily understandable to someone who cares enough to think about it. In meetings we shouldn't be afraid to use that white board, draw pictures! You would be amazed how quickly users can understand relational constraints when you draw it out of them. Just saying to a group of users “We did X because <insert technical jargon here>” makes them feel like you're hiding behind technical terms which breeds anxiety and distrust. I have found that the more understandable you can make the technology and programming process, the more the users will be willing to shape their process to match what technology does well... it's a win-win scenario at that point.
I'll wrap this post up by pointing out that with all the buzz about off-shoring and the general lack of demand in the IT market one of the biggest differentiators we have as programmers is people skills.