I make web applications for a living working from home.

Sometimes a client pick a technology stack that is likely to hurt the project (severely over-engineered, bad combination of components or just the wrong set of tools for the task).

The cynical may think: bad choices for the client are not necessarily a bad deal for you, aren't you charging by hour?

However this is a tough spot when you operate over online freelancer markets like oDesk/Elance, because a disaster project is likely to get you a bad review and hurt your reputation, even if it is not your fault.

My dad used to say that either you have the customer or have the reason; how do you talk sense into a client that made wrong choices for the project?

  • 4
    And never accept the project if you know in advance it's being built on something you find wrong. I did the same when stopped using library A in favor of library B. Now, no matter how good reasons a client may have for using library A, I either try to convince him why I switched to B or I don't accept the project. Money isn't worth getting bad reputation.
    – Peter MV
    Mar 5, 2014 at 21:09

2 Answers 2


In my experience, when prospective clients specify technologies, they're coming more from a place of having heard of others using them successfully, rather than of having considered the use case and made an educated and informed decision. I talk to them about why they chose the tools they did. If their reasoning is sound, awesome. If not, I remind them that they hired me for my expertise and that my job is to choose the most appropriate tools.

  • 3
    Exactly! Remind them that you are the expert, not them. If they were the expert, they would be doing it themselves
    – Canadian Luke
    Mar 5, 2014 at 16:48
  • 1
    While it's aimed primarily at designers, I found this to be a useful read: designprofessionalism.com/index.php - Mr. Rutledge pretty much makes the same point as you did in your closing sentence.
    – Tieson T.
    Mar 6, 2014 at 5:37
  • 1
    I will never forget Sam Walton's 2 rules. Rule 1 - The Customer is Always Right Rule 2 - See rule 1 The asking "why" is a good determination. If they're not listening to your reasons for using another tool. RUN Jul 20, 2021 at 17:53

If, after talking with them at length about their requirements and how well their requirements mesh with my capabilities, they still choose a platform that isn't as well suited to their project as others, I make sure to include assumptions in my proposal that cover problems I anticipate I might have. I'll have made sure to tell them that some requirements, like choosing the platform, may increase development time required even if all other aspects of the project remain the same.

For instance, a client may choose Ruby on Rails, and require that Heroku be used. Now a simple three file PHP site with a DB on a cheap host might meet all their other needs, but if they insist then I make sure to quote my time estimates accordingly, beef up the section on website maintenance needed after my development is done, suggesting that maintenance will be necessary due to various Heroku issues I've dealt with in the past, and added assumptions such as, "Heroku supports necessary rails libraries and I won't have to debug anything but my own code" etc. They know that if the assumptions break, then we'll have to have a talk about time estimate overruns.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.