The Programmer and His Client
There are times that a programmer needs to interact with the client requesting for his service. Through that, the programmer receives first-hand information and may have a chance to ask directly the things that are a little unclear.

But is it really that helpful?

The Way I Think

Usually, the moment you offer the programmer a problem that you want to solve, he already visualizes and formulates a basic algorithm in mind on how he might attack it.

He then confirms his algorithm and the way he understands to the client to make sure that they are on the same page of the project course.

But the question is -- Is it really better to have that kind of direct contact between the programmer and client? Would it really help to hear all the information directly from them?

The Good Side of Direct Contact

As stated above, having a direct communication to a client means you get a chance to hear their ideas directly from them. With that, you can ask things that might be unclear for you before or even during the developing stage.

With the lesser people in between, the lesser the chance of misunderstanding, the more faster the development could be.

The Stupid.. Err.. Bad Side

Though having the good side, one thing I hate about being on the direct talk to a client is how sometimes their non-technical knowledge affects you.

Admit it or not, most of them are non-technical and see your works on the user's point of view. Most of the time, they'll ask or request things thinking that it looks easier and explaining it clearly confuses them. Some clients actually starts to react anxiously when you explain it.

I often encounter clients who think that their additional requests are as easy as adding a simple button or link where in fact it is something that can mainly affect the whole system and algorithmic flow.

Adding such requests is not an issue but explaining that these additional are technically out of the original plan and may require more time and resources on their part (um.. additional fee) is what they don't understand -- and that's why I hate it.

What Could be Wrong with This?

Having direct conversation with clients can make or break the whole project. Talking to the clients may help you on building the system faster with their preferred flow but having their rants directly thrown at you is something that stresses me out.

I believe that stress is a part of every code a programmer creates but having additional from hearing the users' rants is something that causes more pressure and so may affect how a code is being created. I know it is not a good quality of a good programmer but come one stress is still stress!

I honestly hate being on the end where I need to talk with the users. For me, I'll ask them in case I have a question, let it stop there.

Their requirements needs to be written and finalize first on their end before I talk to them. Let their personal rants be kept unless it has something to do with me or the program that I created. I hate questions that doesn't concern me nor the code.

That's all.

What could be your position here? Do you like working directly or have someone like a Project Manager do the job for you?

1 comment :

  1. I cannot say anything yet about that because I am not yet in that position, but as far as my experiences with clients, there are some approaches you may take regarding this.

    When I have the client, I usually ask for their inputs about their requirements/changes they desire to add/modify in the system. I let them use the program that I've made and they sure have many comments altogether, but you know, most of their comments are usually minor and almost all of these are forgotten in the next phase.

    If changes are difficult, there are chances that there are some problems with the way you started the project in the first place. Anyway, that's my point. ^_^