Bonjour,
Actuellement, je dois admettre que je ne suis pas vendeur. Je suis programmeur (à mon compte). Récemment, j'ai un client qui me donne un peu de fil à retordre.
Mais je comprend: Ce client a toujours développée elle-même en php procédural avec des bases de données MySQL/MyISAM simples, ce qui lui permettait une certaine cadence de développement, mais surtout une constance dans l'avancement de son développement.
Ce client étant surchargée, j'ai recu le mandat d'un de ces projets. Dans les grandes lignes, il s'agit d'une boutique en ligne.
Donc je commence à programmer mes Objets, mes Factory, modéliser la base de données. Puis soudain, elle voit les heures augmenter, mais ne constate que bien peu de progrès "visible".
Pris de panique, on me demande d'arrêter le projet.
J'ai beau lui donner des arguments, rien à faire: C'est trop long, et les craintes que je dépasse son budget ou les échéances (que j'ai toutes deux acceptés pourtant) deviennent trop grandes.
Exemple d'arguments/réponses:
L'orienté objet est plus facile à maintenir:
- Je n'ai pas de problème à maintenir mes autres sites
La gestion des erreurs est meilleure:
- PHP log les erreurs de mes autre sites.
Le code sera testable unitairement
- J'ai jamais eu besoin de ca
La base de données supportera les transactions et l'intégrité référentielle, ce qui donnera une boutique beaucoup plus sécuritaire.
- Sur mes autres sites, j'ai des "statut" (?) qui m'indique ce qui s'est mal passé.
L'orienté objet c'est comme la peinture: c'est plus long de poser le ruban-masque, et pendant qu'on pose ca, la peinture avance pas, mais après l'application de la peinture est plus rapide.
- Ca la convaincu une fois, mais le projet à été interrompu une seconde fois.
Le code sera en grande partie ré-utilisable pour de futur projet.
- Ca n'appaise en rien ses inquiétude pour le projet actuel.
... donc comme vous pouvez vous imaginez, je passe presqu'autant de temps à la rassurer qu'à avancer. Ce qui n'est pas pour aider.
Là je viens de simplement lui dire quelque chose dans la veine de:
"Vous recherchiez un programmeur d'expérience, ce n'est pas mon premier projet et je sais où je m'en vais. Je suis en mesure de respecter les budgets et les échéanciers, à condition que vous n'interrompiez pas le projet sans arrêt."
Bref, comment faites-vous pour gérer des clients qui:
- ont assez de rudiment pour saisir le langage PHP et s'intéresser à l'avancement technique
- n'ont pas assez de connaissances pour bien comprendre les fondements de l'orienté objet pour les projets ayant une certaine ampleur, et qui en reviennent toujours à comparer avec le procédural.
Merci pour vos commentaires et suggestions, car je commence vraiment à trouver mon travail de plus en plus frustrant et désagréable.
Partager