Astuce #1: privilégiez les technologies accessibles
December 12th, 2007La technologie: l’ingrédient essentiel
En cuisine, la qualité des produits fait la différence entre un plat médiocre et un met succulent. Une préparation minimaliste suffit à restituer la saveur d’un bon produit tandis que les sauces et les épices les plus sophistiqués peineront à hisser une viande médiocre au rang de pièce de premier choix.
Il en va de même de la technologie : un choix judicieux fait la différence entre un projet réussi et un projet en difficulté. La question devient donc : comment choisir le bon langage de programmation ou le bon outil pour un projet donné?
Le critère de l’accessibilité
Parmi les différents critères, l’accessibilité est déterminante. Il s’agit de la capacité d’une technologie à être facilement prise en main par les développeurs.
Les questions à se poser lorsqu’on parle d’accessibilité sont:
- Quelle aide va-t-on trouver en cas de problèmes? Existe-t-il des forums de discussions ou des communautés? Quel est le prix du support payant?
- Existe-t-il des livres variés sur le sujet? La documentation est-elle facile d’accès et abondante?
- Dispose-t-on de composants facilement réutilisables?
PHP, le cas d’école de l’accessibilité
Une des technologie les plus accessibles est le langage PHP. C’est même banal de le souligner. Le web fourmille de ressources abondantes et de qualité sur le sujet: documentation, livres, tutoriels, forums, frameworks, etc, etc.
Lorsqu’on développe en PHP, on progresse rapidement et on résoud les difficultés sans trop de peine. Pour peu qu’on connaisse les bases de la programmation sur le web, on parvient en peu de temps à une mise en oeuvre professionnelle.
Donc, si vous prenez des développeurs expérimentés mais qui ne connaissent rien à PHP, vous êtes quasiment assurés qu’il maîtriseront des outils comme PHP et MySQL dans un laps de temps raisonnable. Et même s’ils ne les maîtrisent pas, ils sauront résoudre les problèmes qui se présentent et produire du code de qualité.
Et ce qui est vrai de PHP l’est également de technologies plus complexes et moins abordables comme Java et Struts ou propriétaires comme .Net et C#. Ces technologies profitent d’un support abondant, diversifié et riche sur le web.
Les inconvénients du manque d’accessibilité
A l’inverse, les technologies peu accessibles nécessitent un minimum de pré-requis:
- les formations payantes sont indispensables
- les livres sont rares et chers
- les forums et les communautés en ligne sont quasiment inexistant
- Les ressources ne sont pas accessibles en ligne: il faut recourrir à des experts, à des consultants externes ou à des documentations propriétaires
- Il faut combler le manque d’expertise par le recours à des sociétés spécialisées ou à des consultants pour les tâche de conception ou d’architecture
Pour le projet, cette situation crée un risque supplémentaire:
- Disposera-t-on des budgets nécessaires? (on sait que les budgets formation sont les premiers coupés en cas de problèmes).
- Si les développeurs ne maîtrisent pas la technologie, ne feront-ils pas des erreurs de mise en oeuvre? Les consultants externes comprendront-ils le contexte spécifique de l’entreprise?
Une vision darwinienne des technologies peu accessibles?
Les projets reposant sur des technologies accessibles ont plus de chance de réussir à moindre coût que leurs concurrents bâtis sur des technologies hermétiques.
Dans la lutte pour la survie de l’espéce “langage de programmation”, les technologies accessibles devraient surclasser les autres. Donc, si vous investissez sur PHP et MySQL ou sur Java, Struts et JBOSS vous faîtes certainement un pari gagnant sur le futur (sauf si vous coupez l’accès internet à vos développeurs, bien sur)