Як фрілансер, мене часто запитують мої клієнти, що вони повинні вибрати між подібними елементами, жоден з яких не кращий за інший. Приклади:
"Чи потрібно, щоб веб-сайт електронної комерції знаходився на PHP або ASP.NET?"
"Чи потрібно розміщувати цю звичайну веб-службу в Cloud або використовувати звичайний хостинг?"
"Який з них краще для мого нового веб-сайту: MySQL чи Oracle?"
тощо.
Мабуть, не більше 1% випадків, коли вибір є релевантним, і є реальна, об'єктивна причина використовувати один над іншим, виходячи з точних показників та досліджень. У всіх інших випадках це зовсім не має значення. Це абсолютно, абсолютно не має значення або тому, що жодних наслідків немає¹, або тому, що ці наслідки занадто малі, щоб їх враховувати², або, нарешті, тому, що неможливо передбачити ці наслідки³.
Якщо ви знаєте одне, а не інше, відповідь на ці питання простий:
"Ви можете або написати програму на C # або Java, і те, ймовірно, у вашому випадку еквівалентне. Зауважте, що я розробник C #, тому якщо ви виберете Java, я не зможу працювати над вашим проектом, і вам потрібно буде знайти іншого фрілансера. "
Коли ви знаєте обидві технології, ви не можете на це відповісти.
Як у цьому випадку пояснити замовнику, що питання, яке він задає, підлягає вогневій і не має реальних наслідків для його проекту?
Іншими словами, як пояснити, що ви вибрали використовувати одну технологію, а не еквівалентну з причин, пов’язаних з людськими ресурсами, не створюючи враження, що це непрофесійно чи не піклується про проект?
¹ Приклад: Чи кращий (гірший?) MySQL, ефективніший, порівняно з Oracle, для особистого веб-сайту, до якого звертаються, о, давайте будемо оптимістично двома людьми на день?
² Приклад: для даного проекту мене попросили активувати, чи хостинг Windows Azure буде дешевше, ніж хостинг того самого додатка у відомого хостинг-провайдера ASP.NET. Виявлена вартість точно така ж.
³ Приклад: ваш клієнт має уявлення про майбутню програму (сама ідея є надзвичайно розпливчастою). Тут немає бізнес-плану, ніяких вимог, взагалі нічого. Просто ідея. Вас запитують, чи для цієї програми Java краща за C #. Що ти відповідаєш?