IT people
I’ve been having a few problems with an IT department lately. Being freelance, you wouldn’t think this happens much, but sometimes my clients consist of a marketing/managerial person, who wants to do something interesting online, and the IT department, that wants to go home early.
I pitched for a job building a small site that had quite bit of content saying that I would deploy a simple CMS, written in PHP or something and with a little DB backend, to store the content. It will be really simple, I said. You’ll be able to access any page and edit it, move it around or create new pages all through a nice simple web interface (I’m envisaging something kind of like Zope’s interface). My client doesn’t know HTML so it was cool. We agreed a price and a date for the work to start.
I got a bit nervous about IT, as I’ve had problems before. I said to my client that since we had a month before the project was to begin we should contact IT and get all the technology and access set up so that on the first day of the project I could FTP or telnet in and start running code. Oh boy.
IT don’t like CMSs and they tell us so. They tell us about this great strategy they have of making all the web editors from the different departments train in an HTML edit and learn to FTP. Fine I say, but you could be saving a lot of time and keeping your pages more consistent and well structured if you had a CMS to help you.
This conversation has gone back and forth and has become religious in proportions. I think I said in one of my earliest emails to my client that I didn’t want this to turn into a religious war with her stuck in the middle and this is exactly was has happened. I feel bad, she’s getting close to just forgetting the whole thing.
Today it reached new levels, with the IT’s lead agitator issuing the following statement:
[…] I can guarantee that a CMS will make things harder and more expensive for you in the long run. It’s easier to just run a static website on [our] central webserver and learn how to make changes to it.
Which is just malicious IMHO. First of all the whole point of the CMS is to make the process of updating quicker and easier, thus cheaper. If it doesn’t do that then I wouldn’t be recommending that my client pay me to develop one. Contrary to any opinion you may have formed, I recommend what is good for my clients, not for myself. Sometimes I have bias, but I’m an expert and there are reasons for the things I tell them.
The second sentence just illustrates that this guy isn’t thinking this through from the client’s point of view. It’s easier for him if she gives in and edits the pages by hand. It’s not easier for her. How could it be, she’s going to have to learn HTML. Sysadmins think HTML is easy, because to make a simple page is easy. Making a working site that has good design, good implentation (i.e. bug-free, no broken links), good usability and good information architecture is hard for anyone, even an expert. Somebody who is a) making their first site and b) supposed to be doing something else is going to find it an uphill struggle. In this situation they are most likely to just not do it, or to do the minimum. It’s to alleviate this problem that they hire experts in the first place.
I understand where IT guy is coming from to a certain extent. When faced with the option of doing things themselves, IT people, very much including myself, will often opt to learn. That’s a big big part of what makes computing interesting. Other people don’t think like this, they just want it done without the hassle.
This issue still hasn’t been resolved and with each passing email I worry that the argument grinds my client down more and more and that soon she will just throw her arms up the air and that will be the last of it.
IT people need to try and put themselves in the shoes of their customers more. First of all they need to treat them more like customers and not like a flock of sheep. Next they need to understand the business reasons behind why something has been requested. The people on the other side often don’t make the original requirements known to IT, which is why IT people don’t trust them in return. I recently had a project which would have gone a lot better if I’d gone down into the trenches to talk to the users, but instead somebody who knew less than me about UI design created a design and handed it over to me to implement. When I went to train the users, I got lots of “Why does it work like that?”, “It would be better if it did this…”
So IT people, I know it’s hard when you just want to write shell scripts/reboot servers/play god games, but please try and understand your customers needs more and, shock, put them before your own rather than passing the buck. Be brave enough to tell them the real costs and to suggest implementation techniques that differ from their own, but keep to the user’s needs and people will hear you out.
For my part, this is the core of my job. When people contact me they’ve often been thinking about their new site for a while, but they will have got some things wrong. If I don’t go back to first principles, I end up implementing their mistakes and then getting the blame when a system that does the wrong things is shipped. I can’t work like that, I need to make sure people get what they need and to do that I need to be able to be honest with them and eager to help them.