Come libero professionista, mi viene spesso chiesto dai miei clienti cosa devono scegliere tra elementi simili, nessuno dei quali migliore di un altro. Esempi:
"Devo che il mio sito Web di e-commerce sia in PHP o ASP.NET?"
"Devo ospitare questo normale servizio Web in Cloud o utilizzare un normale servizio di hosting?"
"Quale è meglio per il mio nuovo sito Web: MySQL o Oracle?"
eccetera.
Esiste forse al massimo l'1% dei casi in cui la scelta è pertinente e c'è una ragione reale e obiettiva per usarli l'uno sull'altro, sulla base di metriche e studi precisi. In tutti gli altri casi, non importa affatto. È totalmente, completamente irrilevante, o perché non ci sono implicazioni¹, o perché tali implicazioni sono troppo piccole per essere prese in considerazione², o, infine, perché è impossibile prevederle3.
Se conosci una cosa e non un'altra, la risposta a queste domande è semplice:
“Puoi scrivere l'applicazione in C # o Java, entrambi probabilmente equivalenti nel tuo caso. Nota che sono uno sviluppatore C #, quindi se scegli Java, non sarei in grado di lavorare sul tuo progetto e dovresti trovare un altro libero professionista. "
Quando conosci entrambe le tecnologie, non puoi rispondere.
In questo caso, come spiegare al cliente che la domanda che pone è soggetta a fiamma e non ha conseguenze reali sul suo progetto?
In altre parole, come spiegare che hai scelto di utilizzare una tecnologia piuttosto che una equivalente per i motivi legati alle risorse umane, senza dare l'impressione di non essere professionale o di non preoccuparti del progetto?
¹ Esempio: MySQL è migliore (peggio?), Dal punto di vista delle prestazioni, rispetto a Oracle, per un sito Web personale a cui accederanno, oh, siamo ottimisti, due persone al giorno?
² Esempio: per un determinato progetto, mi è stato chiesto di valutare se l'hosting di Windows Azure fosse più economico dell'hosting della stessa applicazione su un noto provider di hosting ASP.NET. Il costo si è rivelato esattamente lo stesso.
³ Esempio: il cliente ha un'idea di un'applicazione futura (l'idea stessa è estremamente vaga). Non esiste un piano aziendale, nessun requisito, niente di niente. Solo un'idea Ti viene chiesto se Java è migliore di C # per questa app. Cosa rispondi?