November 10, 2016

The Customer is NOT Always Right – And Sometimes They Need To Be Fired.


I was recently hired to write a specification and then redesign a complex website.

laptop-repairsThe website currently uses a lot of custom code and at least three other environments, some proprietary and some open source. It is a patchwork of unintegrated programming much of which does not talk to each other rendering some of it useless.

With this as the background, I embarked on a journey of technological forensics and reverse engineering, deciphering the needs and the functionality requirements.

After creating a functional specification, the next task was to decide upon the best solution to give the client. I looked for a solution which would provide us with the most functionality as possible and the least amount of customization forming one integrated and efficient website.

After our initial research and survey of available technologies, the client made a decision to stick with a set of environments which meet some of their needs. I understood their desire for maintaining their current system and set out to find an environment which would integrate with it and meet the rest of their functional requirements.

The choice became narrowed down to two choices. We created a chart outlining in an easy-to-read grid which technologies documented they they offered which of the functional requirements. The choice became clear and obvious, at least to us.



The client came back saying that they chose the other option. Not only did they not accept our recommendation, but they offered no reason why they preferred the other choice.

I felt like a doctor whose patient approaches them after visiting WebMD. The patient comes with their own self-diagnosis and course of treatment. They ask the doctor to write a prescription. The doctor refuses, citing research why he believes this will not serve the patient and out of fear of being sued for malpractice pursuing what he does not believe to be the correct course of treatment.

I, too, refused to continue on the project. Not only did I not understand why a client with no technical background would make a decision contrary to the consultant they hired, but I could envision that were we to pursue this course of action and it did not end well, I would be blamed for a lousy job despite my recommendation against it. I decided that before we began any work on production, it was better to cut my losses and fire the client – which is exactly what I did.

Leave a Reply

  • (will not be published)