Как фрилансера, мои клиенты часто спрашивают меня, что они должны выбрать между похожими элементами, ни один из которых не лучше другого. Примеры:
«Нужно ли, чтобы мой сайт электронной коммерции был на PHP или ASP.NET?»
«Нужно ли размещать этот обычный веб-сервис в облаке или использовать обычный хостинг?»
«Какой из них лучше для моего нового сайта: MySQL или Oracle?»
и т.п.
Может быть, в большинстве случаев, когда выбор уместен, не более чем в 1% случаев существует реальная, объективная причина использовать один над другим, основываясь на точных показателях и исследованиях. Во всех остальных случаях это не имеет значения вообще. Это совершенно, совершенно не имеет значения, либо потому, что нет никаких последствий », либо потому, что эти последствия слишком малы, чтобы их можно было принять во внимание», либо, наконец, потому что невозможно предсказать эти последствия ».
Если вы знаете одно, а не другое, ответ на эти вопросы прост:
«Вы можете написать приложение на C # или Java, что, вероятно, эквивалентно в вашем случае. Обратите внимание, что я разработчик C #, поэтому, если вы выберете Java, я не смогу работать над вашим проектом, и вам нужно будет найти другого фрилансера ».
Когда вы знаете обе технологии, вы не можете ответить на это.
В таком случае, как объяснить клиенту, что вопрос, который он задает, является пламенным и не имеет реальных последствий для его проекта?
Другими словами, как объяснить, что вы решили использовать одну технологию вместо эквивалентной по причинам, связанным с человеческими ресурсами, не создавая впечатление непрофессионализма или не заботясь о проекте?
Пример: MySQL лучше (хуже?) С точки зрения производительности по сравнению с Oracle для персонального веб-сайта, к которому будут обращаться, о, давайте будем оптимистичны, два человека в день?
² Пример: для данного проекта меня попросили указать, будет ли хостинг Windows Azure дешевле, чем хостинг того же приложения на известном хостинг-провайдере ASP.NET. Стоимость оказалась точно такой же.
³ Пример: у вашего клиента есть идея будущего приложения (сама идея крайне расплывчата). Нет бизнес-плана, нет требований, вообще ничего. Просто идея. Вас спросят, лучше ли Java для этого приложения, чем C #. Что ты отвечаешь?