Traduction libre de l'article Joomla! Next: Dead to the CMS. Hail the Application Platform de Seth Warburton

Ces dernières semaines, il y a eu un grand nombre de discussions sur "l'Avenir de Joomla".
Ou, pour être plus précis, il y a eu beaucoup d'arguments échangés, sans que personne ne sache réellement de quoi l'avenir sera fait. Apparemment, une feuille de route c'est déjà beaucoup demander. Et non, un article de blog avec quelques déclarations générales du type " Nous voulons augmenter l'adaptation du Framework et du CMS au cours des trois prochaines années" ne peuvent constituer un plan pour l'avenir.

Au milieu de mes coups de gueule (pour changer) sur Twitter, j'ai également proposé quelques réflexions quant au futur de Joomla - comme je l'ai toujours fait.

Même si je ne suis pas développeur, j'ai toujours des idées plein la tête afin "d'améliorer" Joomla dans l'avenir. Elles peuvent être mauvaises, impossible à mettre en pratique ou peut être que "je ne les obtiendrai jamais". Je ne sais pas. Mais je ne serais pas fidèle à moi-même si je ne rédigeais pas un billet sur le sujet.

Je vais commencer avec le premier concept, celui qui m'intéresse le plus - le CMS. Mais pas le CMS dans sa forme actuelle. Attendez, et lisez.

Joomla, la Plate-forme d'Applications

Joomla est, et a toujours été, un grand CMS. Pas étonnant que les Concepteurs de sites qui exigent plus qu'un simple blog se précipitent dessus. Mais parfois, des éléments de Joomla ne correspondent pas aux projets des concepteurs de sites. En en faisant "moins", Joomla pourrait en faire "plus", et pour plus de personnes.

Actuellement, Joomla se présente comme une offre globale, et le concepteur de sites ne peut rien y faire. Certaines extensions qui ne correspondent pas au projet ne pourront jamais être désinstallées. Les Bannières. Les Liens web. Les Fiches de contact. Pour certains, même le com_content est un élément qu'ils n'utiliseront jamais.

Dans ma vision (partagée avec d'autres), avoir la possibilité de "ne pas installer" ces extensions ferait de Joomla une Plate-forme puissante. Cela pourrait être la base d'une solution CRM (Gestion de la Relation Client), ERP (Progiciel de Gestion Intégré), ou de commerce en ligne... Actuellement, il permet déjà être toutes ces choses, mais vous vous retrouvez coincé avec des fonctionnalités dont vous n'avez pas besoin.

La "solution"

La solution à ce problème (*je ne suis pas développeur, et je ne prétends pas non plus que ma solution fasse "loi") serait un Joomla comme Plate-forme d'Applications. Si vous êtes paniqué à la lecture du mot "Plate-forme", détendez-vous. Respirez. Et laissez-moi expliquer.

La prochaine version "Joomla" ne devrait pas être un CMS, mais bien une "Plate-forme d'Applications". Nous devrions proposer un Joomla avec uniquement les éléments du noyau du CMS. L'installeur, les bibliothèques, la gestion des utilisateurs, le système de menu. Tout ce qui pourrait être enlevé, devrait l'être. Ce qui resterait, serait une "Plate-forme d'Applications" – une "Plate-forme" que vous pourriez utiliser pour installer les extensions, les Templates (et pourquoi pas les bibliothèques) dont le concepteur de site a besoin pour son projet.

Sauf que désormais, ils ne seraient plus des Concepteurs de sites. Ils seraient des "Concepteurs d'Applications"; un tout nouveau marché dont Joomla pourrait tirer profit en jouant sur ses points forts : Offrir un solide Framework que les développeurs pourront utiliser pour leur code; combiné à la facilité d'installation offerte dont nous bénéficions déjà aujourd'hui. Concepteurs d'Applications. Laissez-vous imprégner un moment par cette notion.

Cela représente un énorme potentiel; pensez-y . Les personnes pourraient utiliser la Plate-forme d'Applications pour la réalisation d'un site de commerce en ligne, un site CRM, un site de Gestion de Projets ou même une Plate-forme de sauvegarde pour les applications qui sont habituellement une galère à sauvegarder (Cela a déjà été fait auparavant. Joomla + Akeeba Backup = une méthode très efficace pour sauvegarder un WordPress, un Prestashop, ou des applications personnalisées...). Elles pourraient faire ce qu'elles veulent avec.

Qu'en est-il du CMS ?

Si vous vous précipitez dès maintenant vers la zone des commentaires pour demander "QU'EN EST-IL DU CMS! ?", détendez-vous. J'adore le CMS. Je travaille avec tous les jours. C'est notre produit le plus populaire.

Dans ce futur orienté "Plate-forme d'Applications", le CMS existerait toujours – cependant, dans un format légèrement modifié. Au lieu d'être proposé par "défaut", le "CMS" serait une distribution de la "Plate-forme d'Applications". - le noyau avec l'ensemble des composants supplémentaires ajouté. On pourrait alors proposer cette distribution comme l'actuel CMS. Les utilisateurs n'en seraient pas dérangés.

Le temps du "déshabillage".

Pour que cela fonctionne, nous devrions "déshabiller" le noyau du CMS. Ou nous pourrions réécrire le CMS à partir de zéro; selon ce qui est le plus commode. Je ne suis pas développeur et je ne sais pas quelle serait la meilleure approche - je suis sûr qu'il existe des esprits brillants dans le coin avec des solutions en tête.

L'objectif serait de séparer tous "les composants" qui composent le CMS. D'un côté, nous aurions le Framework pour applications, le "noyau". De l'autre, les composants qui seraient développés séparément.

Ceci permettrait aux personnes de travailler seulement sur ce qu'elles souhaitent. Cela permettrait également de créer une sorte "d'ordre naturel". Si, par exemple, il n'y a que peu d'intérêt manifesté pour le composant de "Bannières" et que personne n'est intéressé par sa maintenance ; son développement pourrait être arrêté au lieu de forcer les développeurs à poursuivre sa maintenance.

Je suppose que ceci impliquerait une façon différente de travailler. J'ai failli écrire "je ne suis pas certain que le JoomlaCode soit paré pour la tâche", mais encore une fois... le JoomlaCode est une relique du passé. Presque une ruine.

Rejoignez le Futur. Ou le "présent". Ce qui vous convient...

Pour créer un CMS moderne, vous avez besoin d'outils modernes. Actuellement, l'outil principal qu'utilise Joomla n'est pas d'une grande aide. Le cas échéant, il l'est par des contributions d'utilisateurs. JoomlaCode est vieux, complexe et pas vraiment convivial pour ses utilisateurs (je pense qu'ils ont inventé ce concept (ndt : User Friendly) après la création du JoomlaCode).

Beaucoup d'utilisateurs Joomla ont rencontré des problèmes avec le JoomlaCode au point qu'ils ont cessé de contribuer.

Mais attendez une minute, n'avons nous pas un dépôt Github ? Oui, et non. Il existe, mais la logique Joomla impose que lorsque vous faites une requête de "pull", vous devez descendre au cœur même du Code Joomla. Connectez-vous (si vous pouvez), essayez et trouvez le traqueur (emportez votre GPS) et ensuite créez un élément traqueur qui pointe vers une requête de "pull".

Toutes sortes d'excuses ont été données, y compris "il ne correspond pas à notre façon de travailler". Mais si "votre façon de travailler" est celle de la collaboration, n'est-il pas temps que VOUS adaptiez votre façon de travailler, au lieu d'imposer des rituels antiques à des personnes désireuses de pouvoir contribuer ? Pensez-y ! J'attendrai. Mais ne prenez pas trop de temps. JoomlaCode est un lieu effrayant ...

Note de l'auteur : Après avoir écrit ce post, j'ai vu le JTracker en action, un POC pour un nouveau traqueur qui repose sur Github. Cela semble très prometteur!

Ce n'est pas réalisable ! Ah !

Si vous pensez que cela - la création d'une version "allégée" du CMS, en séparant les composants du cœur – n'est pas réalisable, j'aimerais vous soumettre deux éléments qui vous convaincront du contraire. Bien que l'un d'entre eux soit en statut Fin De Vie, j'ai aimé le concept et le fait qu'il ait bien fonctionné.

Elément A : Square One

Square One était une des rares Distributions Joomla. Jeremy Wilken a créé une version qui permettait de désinstaller des composants faisant partis du noyau; ce qui offrait la possibilité de créer un Joomla "allégé". Même si Square One n'existe plus, son esprit continuera de vivre.

Elément B : Joomla "Lite"

Certaines personnes ont l'étrange habitude d'essayer et de prouver un fait par le code au lieu de parler sans fin. Michael Babker est une de ces personnes. Il a présenté une preuve (qui fonctionne) du concept de Joomla "Lite". Joomla "Lite" permet le découplage des composants du noyau; ce qui (en théorie) autorise les "Concepteurs d'Applications" à utiliser uniquement les éléments dont ils ont besoin.

Michael est un homme très occupé, et le développement sur la preuve du concept est pour le moment suspendu. Mais là encore, l'esprit du concept continue de vivre.

Vous pouvez trouver le dépôt pour Joomla "Lite" ici : https://github.com/JLite-POC

Remarquez les dossiers pour les composants Fils d'actualité, Bannières et Liens web. C'est là que les extensions (maintenant séparées) sont empaquetées, ainsi elles peuvent être installées depuis l'installeur. Le futur c'est maintenant! ;)

Si vous vous sentez l'âme d'un explorateur, vous pouvez tester JLite par vous-même en le téléchargeant :  https://github.com/JLite-POC/Framework/archive/master.zip

Note de l'auteur: j'ai emprunté à Michael le nom de "Joomla Lite" avec sa permission.

Vous souhaitez capter de nouveaux marchés ? Alors faites que cela devienne une réalité.

"Nous voulons augmenter l'adaptation du Framework et du CMS au cours des trois prochaines années"

C'est super, mais le marché du CMS stagne déjà. Et le Framework, aussi fabuleux qu'il soit, est un produit de niche. Et l'un des très nombreux Frameworks PHP déjà existants, devrais-je ajouter.

Et pourquoi ne pas fixer un nouvel objectif ?

"En créant le Framework d'Applications, nous voulons positionner Joomla à la fois sur le marché des Concepteurs de Sites et des Concepteurs d'Applications; autorisant ainsi plus de personnes à créer des solutions sur une base Joomla."

Réfléchissez à ça ! Combien d'outils vous permettent de déployer des applications personnalisées avec peu ou aucune connaissance en développement ? Je n'en connais pas un. Joomla pourrait alors se positionner sur ce marché. Si un "Projet" a tout ce qu'il faut pour le faire, c'est bien Joomla.

  • Nous avons l'expertise pour que la gestion, l'installation et la désinstallation d'extensions / composants / accessoires soient un jeu d'enfant.
  • Nous avons la connaissance permettant à tout un chacun de mettre à jour les différents composants d'un simple clic.
  • Il existe un grand, un très GRAND nombre d'extensions qui peuvent être utilisées pour créer des applications.

Si Joomla veut rester dans la course, il lui faut changer ses propres règles. Etre PLUS qu'un CMS. Permettre à tout un chacun de devenir des Concepteurs d'Applications. (Non, je n'ai pas enregistré ce nom de domaine. Pas encore.)

Conclusion

Je raisonne juste à voix haute, mais je suis convaincu qu'un Joomla "Lite" pourrait apporter à Joomla "l'impulsion" dont il a besoin. Il pourrait permettre à Joomla de s'ouvrir à de nouveaux marchés, sans frustrer la base des utilisateurs actuels. De mon point de vue, le Framework d'Applications est un élément qui pourrait changer Joomla, drastiquement. Je ne vais pas dire aux gens "Allez-y, faites le" car ce n'est pas l'esprit de l'open source, mais j'espère que ce billet en inspirera quelques-uns.

Traduction libre de l'article Joomla! Next: Dead to the CMS. Hail the Application Platform de Seth Warburton
A propos de l'auteur
Marc-Antoine THEVENET
Nom: Marc-Antoine THEVENET
Just a Joomla! SuperUser Vous êtres francophone et vous souhaitez écrire ou traduire un article sur le JCM ? N'hésitez pas à me contacter : mathevenet@community.joomla.org
Derniers articles de l'auteur