Agence web créative 44

Menu

Développer “à la main” vs usage d’un CMS

Récemment j’ai rencontré de jeunes développeurs, surtout des purs et durs, des rois du code, aficionados (voir ayatollahs pour certains) du C#, C++, JEE et autres Java, mais aussi du PHP et du JQuery qui nous concernent davantage pour cet article. Ils m’ont parlé de leurs réalisations pour leurs clients, entièrement codées par leurs soins. Lorsque je leur ai demandé s’ils utilisaient des CMS pour leurs développements, j’ai pu ressentir, suivant le cas ; une incompréhension, un certain malaise, un dédain complet, apercevoir un rictus moqueur et pour le cas le plus extrême, l’impression d’avoir proféré une insulte.

Pourtant lorsque je leur ai posé la question simple qui, pour moi, résume les développements les plus spécifiques : « Et si vous décidez de partir vivre en Australie, avec le décalage horaire, comment vont faire vos clients pour ne pas être dépendants de vous ?  ». La réponse a rarement été autre que : « mais ils pourront quand même compter sur moi ».

Dé-pas-fini-tion des outils de gestion de contenu

Pourquoi revenir sur les multiples sites, pages wiki qui décrivent déjà les CMS et leurs fonctionnalités dans un article de plus ? C’est simple, en abordant un autre point de vue. Partant du principe que le développement est un processus long et exigeant, donc coûteux, ce coût doit être supporté par quelqu’un, soit le développeur, soit le client. Pourquoi dans ce cas, perdre du temps à coder et recoder des fonctionnalités qui ont déjà été réalisées, la plupart du temps avec le plus grand soin, par des équipes, mêmes bénévoles, de développeurs passionnés et surentraînés ? Avons-nous du temps à passer sur la création de gestion d’utilisateurs, de gestion de paniers, de création de catalogues ? Sommes-nous armés pour développer des fonctionnalités à toute épreuve sur la sécurité, pour protéger notre application ou le site internet de nos clients ? La liste n’est pas exhaustive.

De mon point de vue, il vaut mieux consacrer du temps à développer les fonctionnalités manquantes et à pousser au plus loin le CMS choisi dans ses moindres retranchements.

La légende des CMS

Le point de vue du client

Que dit la légende ? Du point de vue du client, utilisateur avancé de ses moyens informatiques, il peut paraître simple, voir tentant de se lancer dans la réalisation de son propre site internet (il suffit de voir certaines campagnes TV sur ce sujet) … au même titre qu’un bricoleur averti peut se lancer dans le chantier de sa propre maison. Un autre point de vue est de faire croire au client que c’est tellement simple à utiliser et à mettre en œuvre qu’une agence devrait le faire quasi gratuitement.

Le point de vue du « programmeur »

Concernant le deuxième volet de la légende, il concerne plutôt les développeurs et les webdesigners. Parmi les réflexions les plus souvent mentionnées, on retrouve ; A) un CMS, ça ne permet pas de faire grand-chose, car avec un CMS on est bridé dans les fonctionnalités et on est bridé graphiquement. B) Avec un CMS, on ne contrôle pas ce qu’il se passe vraiment et surtout on ne sait pas comment c’est codé « derrière ». C) Avec un CMS aussi, on est dépendant des développeurs.

Le pire et le meilleur

Pour répondre aux légendes décrites avant, il faut considérer que le développement web ressemble à beaucoup d’autres concepts de la vie de tous les jours. En effet, un client final peut se lancer dans la création de quelque chose sans les connaissances métiers adaptées. Il faut beaucoup de persévérance, pas mal de temps (non, encore plus …) et comprendre que le résultat attendu ne peut pas être le même que celui obtenu par une équipe formée et expérimentée. Pour ma part, je ne me lancerai pas dans la construction de ma maison.

Pour le point de vue du développeur, un CMS nous libère du développement des fonctionnalités standards pour nous permettre d’aller très loin. Lorsque nous développons un Template de A à Z, libre à nous de lui donner la forme et le graphisme voulu, sans plus de contrainte d’un développement sans CMS. Pour les fonctionnalités c’est pareil, le « Core » du CMS est du ressort des développeurs de la solution, mais nous pouvons « overrider » la plupart des fonctionnalités (sur les bons CMS uniquement.). En ce qui concerne le point B) sur les développements faits par d’autres, c’est la même chose que lorsque vous achetez une voiture, vous devez garder le contrôle de son pilotage (à la limite vous pouvez faire du « tunning », question de goût), mais vous devez faire confiance aux ingénieurs qui l’ont développée.

Pour la notion de dépendance aux développeurs, ça peut être vrai avec des solutions exotiques, purement commerciales. Pour notre part, nous avons fait le choix d’utiliser des CMS en Open Source, qui ont le mérite d’être développés collégialement et qui ont peu de chance de disparaître sans solutions de remplacement. Ce choix, nous sommes des milliers (millions ?) dans le monde à le faire chaque jour.

Mais ça va plus loin

Si le CMS est un excellent atelier logiciel, il permet dans la plupart des cas des échanges de données, voir, une interaction entre plusieurs CMS : transfert de données de publication via les webservices, intégration de gestion d’utilisateurs communs (entre WordPress et Prestashop par exemple). Passerelles avec des logiciels de gestion, des crm, etc. les possibilités sont larges.

En conclusion

Amis développeurs soyez ouvert aidez-nous a à faire évoluer nos outils CMS. Je suis persuadé que vous avez toutes les qualités pour développer de nouvelles fonctionnalités et pourquoi pas, si vous voulez continuer le développement « bas niveau » de nous inventer de nouveau CMS.

Evidemment, j’exprime ici UN point de vue, et comme il n’y a que les imbéciles qui ne changent pas d’avis, faites valoir vos arguments. Le débat est ouvert ! j’attends vos remarques, commentaires, expression de votre désaccord etc.

Et comme j’aime à le répéter encore et encore : faites confiance aux professionnels !

Nos CMS préférés

Tous en Open Source bien entendu.

Les CMS pour le contenu rédactionnel

Ces CMS ont pour vocation générale de publier des articles de contenu texte ou des articles multimédias, ils existent des possibilités d’extensions pour leur ajouter des catalogues, mais ce n’est pas notre choix actuel.

Joomla

En version 3.5, à l’heure où j’écris ces lignes, c’est notre CMS historique. Il bénéficie d’un grand choix d’extensions et la communauté de développeur est extrêmement active. La plupart des extensions bénéficient d’abonnements bien adaptés aux agences comme la nôtre.
Licence Opensource : http://opensourcematters.org/
Quelques exemples en Joomla : http://www.maisons-marines.fr , http://www.adrenaship.com, http://www.aivee.fr

WordPress

Aujourd’hui en v4.5 , c’est le CMS préféré lorsque les besoins de référencements sont les plus importants. Ce CMS bénéficie d’une grande quantité d’extensions et s’appuie sur le template engine SMARTY. Nous avons, comme pour Joomla, développé notre propre système de template optimisé et dédié à WordPress.
Licence Open source : https://wordpress.org/about/
Quelques exemples en WordPress : http://www.tymad.com, http://www.domaine-la-sensive.com, http://www.mediaveille.com

Les CMS e-commerce

Ces outils sont dédiés à la création de sites de vente en ligne avec des fonctionnalités toujours plus avancées sur l’organisation de catalogue, l’échange de données et les fonctionnalités marketing.

Prestashop

Notre préféré pour la vente en ligne. Il permet de mettre en œuvre toutes les fonctionnalités nécessaires à la commercialisation de produits et services en ligne. La plupart de ses addons sont payants, mais permettent de bénéficier d’un support développeur important. Cet outil permet de développer d’autres extensions et affichages en fonction des besoins de nos clients.
Open source : https://www.prestashop.com/fr/licence-osl
Quelques exemples en WordPress : http://www.fog-automotive.com/fr/ (catalogue), http://www.kasquettes.com (catalogue et vente de produits personnalisables), http://www.cliquez-luxe.com/ (catalogue et vente)
Consultez-nous pour vos projets : https://www.web-ia.com/contactez-nous

2 Commentaires

  • Johan /2 juillet 2016 at 8 h 46 min

    Un bon aperçu de la fameuse question du CMS vs “Code maison”. Sur le fond, c’est vrai qu’il est préférable de passer du temps à développer de nouvelles fonctionnalités plutôt que de continuellement en re-développer d’anciennes déjà existantes. Ma question serait alors : CMS Open-source vs CMS propiétaire ? Même si certains arguments de cet articles sont également valables pour cette question, je reste persuadé qu’en terme de sécurité, un CMS propriétaire sera moins vulnérable aux attaques qu’un CMS sur-utilisé du type WordPress continuellement sujet aux attaques de bots…

    Répondre
    • Sylvain Chevallier /4 juillet 2016 at 7 h 24 min

      Johan, merci pour ce commentaire. En ce qui concerne la sécurité des CMS Open source, il existe des développements (composants, modules, plug-in), en règle générale payant sous forme d’abonnement annuel qui sont vraiment efficaces. Ils ont pour vocation de lutter contre les attaques brutes force, les spams, les injections xss et SQL, permettent de détecter des changements dans les fichiers du site et peuvent bloquer (blacklister) les importuns. Toutefois si rien ne permet de rendre les sites infaillibles, j’estime pour ma part qu’il est possible de proposer le même niveau de sécurité en open source que sur des CMS propriétaires.

      Répondre

Laissez un commentaire