Je travaille dans une boutique Microsoft faisant principalement du développement web.
Nous avons eu un client qui nous a demandé de revoir (améliorer) le modèle de données de son application Web, mais a dit qu'il voulait développer son application en PHP (il connaît "un gars" qui peut le faire).
Quand je lui ai demandé pourquoi il voulait utiliser PHP, il m'a donné l'ensemble standard d'arguments des années 90:
- Microsoft est mauvais et PHP est gratuit
- Écrire une application ASP.NET coûte plus cher (au niveau logiciel)
- Pourquoi Facebook utiliserait-il PHP si c'était une mauvaise idée? [classique]
Il avait quelques commentaires supplémentaires sur les coûts associés à l'utilisation de .NET.
La vérité est que "Microsoft coûte cher" ne tient plus la route, avec leur suite "Express", vous pouvez développer une application ASP.NET sans rien payer pour un logiciel.
En ce qui concerne l'hébergement, vous pouvez économiser quelques dollars avec PHP sur .NET, mais cela ne représente qu'une petite fraction des coûts de développement prévus (nous avons cité 10-15k).
Pour en revenir à ma question, quels arguments donnerais-je à un client en faveur d'ASP.NET sur PHP? [veuillez fournir les sources des allégations quantitatives]
la source
Réponses:
Dites-lui juste la vérité .. Vous n'êtes pas une boutique PHP. (C'est une raison suffisante pour laquelle VOUS ne pouvez pas le faire en PHP)
C'est le prix que vous proposez pour .Net. S'il peut battre ça ailleurs, tant pis.
C'est une tactique de vente horrible pour faire tomber votre concurrence en fonction de la plate-forme utilisée. (Même si cela a beaucoup de poids dans l'esprit des clients)
Vendez-vous, vendez vos forces, admettez où vous manquez d'expertise. Vous gagnerez le poste selon vos mérites.
"Nous pouvons créer d'excellents sites Web, consulter notre portefeuille, consulter nos antécédents, vérifier nos références. Nous pouvons faire ce que vous demandez et nous pouvons le faire à un prix équitable et compétitif, mais nous ne pouvons pas le faire en PHP. "
la source
Vous perdez probablement votre temps. Si la perspective envisage un emploi de 10 à 15 000 $ et a de la difficulté à choisir entre une entreprise professionnelle et «un gars», il n'a probablement pas 10 à 15 000 $. (S'il envisageait de retenir votre entreprise de services professionnels utilisant ASP et une autre entreprise de services professionnels utilisant PHP, ce serait une autre histoire.)
la source
Je suis d'accord avec les commentaires "parce que vous êtes une boutique asp.net" et "(un gars) == drapeau rouge", mais j'ai quelques choses à ajouter, certaines pour et d'autres contre asp.net. Notez que je suis un MVP MS ASP.Net actuel, donc je peux avoir un biais ici:
Il utilise des exemples tels que Facebook comme exemple de résultats PHP typiques. La réalité est que la nature hautement disponible de PHP signifie qu'il y a beaucoup de développeurs PHP inférieurs aux normes. Le stand-out est loin du typique, dans ce cas. En effet, PHP est le nouveau VB.
Il assimile également des millions de dollars d'investissement dans le code et la conception réalisés par Facebook avec ce qu'il peut attendre de son "gars". Pommes et oranges ici. Si vous y mettez suffisamment d'argent et de temps, vous pouvez exécuter Facebook sur COBOL et Paradox. Ce n'est ni pour ASP.Net ni contre PHP. C'est à vous de vous assurer qu'il apprécie ce qu'il achète: du temps de programmeur. Et peut-être un certain niveau de professionnalisme que vous pouvez lui offrir et le gars PHP peut-être pas.
Vous avez mentionné une parité des coûts dans les outils de développement. Au mieux, vous dites: «Engagez-nous parce que nous ne sommes pas bien pires». Vraiment, cela ne signifie rien pour lui. Il ne se soucie pas du coût de l'outillage. Tout ce qu'il voit est un coût de soumission et un coût d'exploitation, et ici, le coût d'exploitation (hébergement) légèrement plus élevé peut vous nuire. Ce n'est pas beaucoup, mais ce n'est pas zéro. S'il suggère que vous pourriez réduire votre enchère en passant à PHP, il est erroné.
Le "php guy" ne prévoit probablement pas de construire un site à partir de zéro, et vous ne devriez peut-être pas non plus. Il est beaucoup plus probable qu'il pense qu'il va déposer une installation Joomla avec un joli modèle préexistant pour le faire arriver là-bas, et repartir avec tout l'argent pour presque aucun travail. Parfois, c'est une arnaque et le produit livré n'est pas bon. Parfois, il y a une vraie valeur ici ... s'il connaît vraiment le produit, le site est un bon choix pour le CMS, et il prend le temps de fournir un résultat soigné, il n'y a rien de mal à cela. Assurez-vous de ne pas oublier l'option d'utiliser un joli CMS basé sur .Net comme point de départ et peut-être d'améliorer votre offre de cette façon.
la source
Vous vous trompez également. Asp.Net n'est pas "meilleur" pour tout le monde et n'est donc pas meilleur. Je suis un développeur C # / ASP.Net et je l'ai depuis 10 ans. J'ai également réalisé des sites PHP professionnels ainsi que des applications en Javascript, Ruby et Objective-C.
Aucun d'entre eux n'est strictement "meilleur" que les autres. Ils répondent tous à un besoin et peut-être que PHP correspond parfaitement aux besoins de vos clients.
la source
Ma réponse standard était la vieille maxime: "Rapide, bon marché, bon. Choisissez deux." Vous êtes un pro shop ASP.NET, pas "un gars". L'avantage réel pour lui n'est pas dans la langue qu'il choisit, mais dans le support qu'il obtient lorsque le projet quitte la production et passe sur un serveur en direct. "Quelqu'un" va-t-il être là pour l'aider lorsque son site plante?
la source
Juste pour le supprimer, il existe des raisons légitimes d'avoir une exigence pour une pile technologique particulière. Celles-ci peuvent aller de l'infrastructure (souvent dérivée de «il doit fonctionner sur du matériel X, des systèmes d'exploitation Y») à la maintenance («nous avons des développeurs en Z, mais seulement assez pour maintenir, pas pour construire, nous avons donc besoin de vous pour le construire). , et nous pourrons alors le soutenir à long terme ").
En tant qu'ingénieur logiciel, vos clients doivent vous faire confiance pour créer le meilleur logiciel possible pour l'argent qu'ils vous paient. Vous devez obtenir toutes les exigences du système, du fonctionnel au non fonctionnel, ainsi que toutes les contraintes. Documentez également toutes les hypothèses que vous faites. Une fois que vous avez une bonne idée de la situation dans son ensemble, vous pouvez travailler à finaliser les exigences et les contraintes.
En fin de compte, cela revient à vous faire une recommandation et une proposition, et votre client l'accepter. Voulez-vous compromettre votre meilleur jugement pour un client (ou tout employeur)? Je ne voudrais pas.
la source
Je viens de voir une entreprise payer près de 200 000 $ pour un site Web de commerce électronique PHP pas encore prêt pour les heures de grande écoute (j'ai perdu le contrat il y a un an à cause de ces clowns). Cela fait plus de 10 mois de développement. Le site est magnifique, mais il manque tellement de "bases" de commerce électronique, c'est une blague. J'avoue, je suis un mauvais vendeur - mais voici l'argument utilisé par la société PHP: c'est "gratuit" et "open source"! Facebook l'utilise! Linux & MySQL est "gratuit"! C'est plus rapide qu'ASP.Net! C'est plus rapide à développer!
La vérité est que le site Web d'origine (écrit en ASP.NET) avait deux fois les fonctionnalités et a été complété par un seul développeur en 3 mois pour un coût de 25 000 $ (y compris le coût d'une licence FULL et à processeur unique de SQL Server 2008 R2 & Visual Studio Pro). Le site de 200 000 $ avait une équipe de développeurs, et STILL n'est pas terminé après 10 mois, soit la moitié de la vitesse (avec mise en cache) de l'ancien site.
Si vous voulez les vendre ASP.Net, dites "LAMP peut être gratuit, mais votre temps de développement coûtera plus cher ... BEAUCOUP PLUS!" Facebook utilise PHP, c'est vrai, mais ils ont commencé dans un appartement où l'argent était bas et le temps libre. Facebook utilise Oracle et BEAUCOUP de programmes compilés ces jours-ci (de sorte que ce point est théorique).
Si vous avez besoin de réutilisation et de maintenance de code simple, les langages scriptés peuvent rapidement se transformer en cauchemar (y compris ASP ici également).
Si vous avez besoin de performances, optez pour un langage compilé - aucun langage de script ne sera jamais en concurrence avec le code compilé et ne le sera jamais car l'interprète ajoutera toujours des frais généraux. La mise en cache aide énormément, mais ASP.Net a aussi la mise en cache.
Bien sûr, Linux est gratuit, mais les experts Linux coûtent très cher en cas de problème. Win server coûte $$$ à l'avance, mais les experts ne sont pas chers à trouver (et presque omniprésents) en cas de problème. La connectivité aux réseaux gagnants est simple et solide, donc l'intégration dans d'autres systèmes d'entreprise est un jeu d'enfant (progiciels comptables, expéditeurs, etc.) avec la meilleure gestion de compte utilisateur que j'ai vue (bien que MS ait beaucoup emprunté à Novell) .
Les frais généraux de l'interface graphique que les gens de Linux disent être un gros gaspilleur de ressources sont presque un problème avec le matériel d'aujourd'hui. Si vous rencontrez un problème, il existe des versions non GUI de Windows Server (version "Core") disponibles avec powerShell.
la source
La principale raison pour laquelle vous ne devez pas utiliser PHP est que cela coûtera beaucoup plus cher à votre boutique à temps.
Cependant, plutôt que de simplement dire «non», vous avez une autre option. Vous pouvez proposer de le faire en PHP, tant que le client est prêt à payer le coût supplémentaire de vos développeurs pour apprendre un nouveau langage / plateforme.
Cela rendrait le temps utile pour vous, et en fait, il paierait pour une formation supplémentaire pour vos développeurs. Faire du développement en PHP ne leur fera pas de mal, ils apprendront probablement certaines choses.
S'il n'est pas disposé à payer le coût supplémentaire, alors il cherche quelqu'un d'autre.
la source
Non. Si ce sont les choses sur lesquelles le client chipote avant même que le projet ne démarre, vous devez renvoyer le client. Même si vous le convainquez d'opter pour la route .NET, il / elle ne sera jamais heureux. Si le client "connaît un gars", alors il devrait l'utiliser. Ils ont déjà pris leur décision.
la source
Vérifiez le prix de l'hébergement pour Windows et Linux. L'écart est assez proche. Maintenant, SQL Server est un autre problème de prix. Prévoit-il de payer pour les outils de développement? Pourquoi devrait-il se soucier de combien vous avez investi dans Visual Studio?
Votre entreprise peut-elle rivaliser avec l'argument «Je connais un gars» en fournissant autant de développeurs qualifiés que nécessaire et gérer le chiffre d'affaires pendant la durée du projet? Non pas que vous ne puissiez pas trouver de développeurs PHP qualifiés.
Facebook convertit désormais son PHP en C + Code . Les sites SO fonctionnent assez bien avec ASP. Jeff et Joel ne feraient jamais rien de mal.
la source