Kamran Kashif, créateur de CouchCMS, explique son système de gestion de contenu convivial

L'incroyable Design Shack Deal de cette semaine vous permet de remporter une licence commerciale de l'impressionnant CouchCMS pour seulement 9 $! CouchCMS offre aux concepteurs la possibilité de créer pour leurs clients des sites personnalisés gérés par le CMS, sans aucune connaissance de PHP.

Nous avons rencontré le développeur derrière CouchCMS pour savoir de quoi il s'agissait, pourquoi il l'avait créé et pourquoi vous devriez envisager de l'utiliser pour vos projets. Si vous n'avez pas encore ramassé votre copie, vous ne voudrez pas la manquer!

À propos de Kamran

  • Prénom: Kamran Kashif
  • Emplacement: Inde
  • Antécédents de travail: Développeur / concepteur Web avec plus de 10 ans d'expérience - 4 ans en tant que pigiste. Partenaire cofondateur de SYS-Solutions et développeur principal de CouchCMS, un système de gestion de contenu créé spécifiquement pour les concepteurs.
  • Entreprise: SYS-Solutions
  • Site Internet: http://www.couchcms.com/

Pourquoi avez-vous créé CouchCMS?

Je pense que c'était un cas classique de «gratter votre propre démangeaison». Lors de la création d'un site Web dynamique, j'ai toujours rencontré deux problèmes distincts avec la plupart des CMS avec lesquels je travaillais, l'un du point de vue du concepteur et l'autre du point de vue du client, qui, en fin de compte, était celui qui devait utiliser le CMS.

Tout concepteur web indépendant qui codifie sa conception en HTML / CSS et doit ensuite, par choix ou par nécessité, porter cette conception sur un CMS tout seul, trouvera le scénario trop familier

Vous avez en main une version statique entièrement fonctionnelle de votre conception, puis vous commencez à démembrer votre œuvre d'art soigneusement conçue et à en insérer des éléments dans le CMS que vous avez choisi pour le projet.

Le processus varie d'un CMS à l'autre et, bien que certains rendent la tâche moins difficile que les autres, en général, les règles strictes sont définies par le CMS et vous êtes obligé de jouer avec eux ou de les contourner. Votre conception est reléguée à un statut secondaire et le CMS gère désormais le processus de développement.

Cette partie est aussi où, le plus souvent, se salir les mains en code PHP ne peut être évité.

Je conviens que de nos jours, la plupart des concepteurs de sites Web peuvent travailler avec PHP dans une certaine mesure, mais appelez-le la chose "cerveau droit, cerveau gauche", peu sont à l'aise avec cela. Étant donné le choix, ils préfèrent avoir un autre moyen de faire avancer les choses. Le problème est que peu de CMS leur offrent ce choix.

Design Driving Development

J'ai toujours souhaité avoir un système où tout fonctionnait à l'envers: la conception oriente le processus de développement, indiquant au CMS quelles fonctionnalités ajouter et où. Pas l'inverse comme on le fait de manière conventionnelle. Je souhaitais également que le concepteur puisse le faire sans être obligé de mettre un chapeau de développeur.

En tant que concepteur, on connaît le concept consistant à utiliser des balises HTML pour baliser des parties de son modèle qui demandent aux navigateurs de les gérer de manière particulière.

Je souhaitais que la même logique puisse être étendue pour avoir un ensemble de balises similaires pouvant être utilisées pour baliser des parties du modèle, cette fois en demandant au CMS de les traiter de manière particulière.

Imaginez avoir une paire de balises pouvant indiquer au CMS de rendre la région marquée par celle-ci comme modifiable (cela pourrait avoir des paramètres permettant de spécifier si le CMS l'affiche sous la forme d'un éditeur wysiwyg, d'une zone de texte simple, d'une liste déroulante ou de cases à cocher, etc. Un modèle puis peut avoir n'importe quel nombre de régions modifiables au lieu d'une seule proposée par défaut par la plupart des CMS.

Une autre balise pourrait déclarer un modèle clonable, c’est-à-dire faire en sorte que le CMS permette aux utilisateurs finaux de créer plusieurs copies du modèle, chacune contenant ses propres données. Encore une autre peut être utilisée pour lister toutes les pages ainsi créées avec des extraits du contenu extrait par une autre balise.

Il n’est pas difficile de voir qu’un tel système pourrait très facilement être utilisé pour intégrer la fonctionnalité CMS dans un modèle HTML existant en un rien de temps. Plus important encore, cela pourrait être fait sans avoir besoin d'aucune connaissance de PHP.

Les clients ont peur des panneaux d'administration CMS

Le problème du point de vue du client était de nature encore plus grave: le panneau d’administration de la plupart des CMS que j’utilisais intimidait beaucoup de mes clients! L’objectif final d’un CMS est de donner plus de pouvoir à l’utilisateur final et à tout CMS, même puissant, s’il semble trop complexe ou déroutant dans l’esprit de l’utilisateur, son objectif a échoué.

J'ai vu nombre de mes clients peiner à travailler avec les CMS que notre industrie ne jure que par jurons. Ce qui semble assez simple à un développeur ou à un concepteur Web apparaît rarement pareil à un client qui n’a tout simplement pas eu la même exposition aux technologies de l’information - aussi parfaitement compétent ou intelligent qu’il puisse être.

J'aurais aimé avoir un CMS qui me donnerait une toile vierge pour commencer. Quelque chose qui me permettrait d'afficher uniquement les éléments absolument indispensables à l'exposition du client et non un iota de plus. Aucun tableau de commandes et d’options non désirées et inutiles dans le panneau d’administration ne sert à confondre un utilisateur moins averti.

Voilà donc les caractéristiques que je souhaitais avoir. Nous avons actuellement des CMS qui possèdent certaines de ces fonctionnalités, mais pas dans leur intégralité. D'une part, nous avons des produits comme CushyCMS ou Surreal qui permettent de marquer plusieurs régions. Cependant, ils sont assez limités dans les autres fonctionnalités requises pour créer un site de complexité même modeste et n'étant pas disponibles en version auto-hébergée, ils n'ont pas tout à fait conclu la transaction.

D'autre part, nous avons des poids lourds comme ExpressionEngine et TextPattern. Je dois admettre que ExpressionEngine est un système de gestion de contenu qui se rapproche le plus de ce que je cherchais. Cependant, un prix exorbitant de près de 300 USD et un panneau d'administration résolument complexe pour les utilisateurs finaux m'ont incité à rechercher d'autres solutions TextPattern a le XHTML comme les balises que je voulais mais a une courbe d'apprentissage abrupte.

Donc, en fin de journée, le CMS Je cherchais tout simplement pas. J'avais le choix de continuer d'attendre son apparition ou de le construire moi-même. J'ai choisi la dernière option.

Quand avez-vous décidé de créer votre propre système de gestion de contenu et comment démarrez-vous même un projet aussi ambitieux?

Eh bien, au début de l’année dernière, alors que je travaillais sur un projet Drupal, cette idée de construire un système de gestion de contenu simple mais polyvalent m’est une nouvelle fois venue à l’esprit.

Cette fois, j'ai demandé à mon partenaire Abdul Raoof Khan et à moi-même à quel point il était difficile de le faire. Nous avons commencé à travailler sur l'idée et, dans dix-huit jours, nous avions un prototype opérationnel prêt à l'emploi. Nous l'avons montré à des amis en utilisant notre navigateur Web pour enregistrer des pages complètes de sites Web aléatoires, puis en intégrant notre système de gestion de contenu dans le format HTML déchiré et en créant un site Web dynamique et fonctionnel en quelques minutes à peine. (Remarquez que je n'approuve pas l'idée d'extraire des conceptions HTML, cela n'a été fait que pour tester notre concept!)

Les réactions que nous avons eues nous ont incités à développer plus avant la CMS. Quelques révisions plus tard, nous avons déployé un système de gestion de contenu plutôt grossier sur certains de nos clients non férus de technologie et ils ont vraiment adoré la facilité avec laquelle ils pouvaient gérer leurs propres sites.

C'est à ce moment-là que nous avons décidé de créer un produit à part entière. Nous l'avons nommé CouchCMS pour refléter la facilité qu'il était censé fournir et nous nous sommes efforcés de le terminer. Il a fallu environ sept mois de plus pour arriver là où il en est et le développement se poursuit.

Parlez-nous de certaines des fonctionnalités dont vous êtes le plus fier dans CouchCMS. Qu'est-ce qui le distingue des autres systèmes?

Si je devais nommer une seule fonctionnalité, ce serait la capacité de Couch de permettre la création de sites assez complexes à partir de tout modèle HTML statique sans avoir à utiliser de PHP.

Une autre caractéristique qui le distingue des autres systèmes est la façon dont il permet au concepteur de créer autant de régions modifiables que nécessaire (et de tout type).

Couch facilite grandement la création de 'panneaux d’écriture' (comme les appellent les utilisateurs de WordPress), quelle que soit leur complexité.
À titre d'exemple, jetez un coup d'œil aux deux captures d'écran suivantes. Voici un panneau d'écriture avec une seule région modifiable définie:

Alors que ce qui suit est un plus complexe avec plusieurs régions modifiables de différents types définis:

Une des fonctionnalités les moins appréciées est la façon dont Couch permet de convertir vos formulaires HTML ordinaires en formulaires entièrement auto-validants, dois-je dire sans code PHP.

Enfin, je suis heureux d’avoir enfin un CMS qui me donne une toile vierge pour le modeler exactement comme je le souhaite. Voici ce que vous obtenez lorsque vous effectuez une nouvelle installation de Couch:

Je n'ai pas encore trouvé de CMS qui me salue avec une interface aussi nue. Ce qui suit est ce que cette toile vierge formera finalement une fois que je serai à travers avec le site:

Nous ne le commercialisons pas de cette façon, mais Couch est effectivement un cadre assez simple pour que même les non-développeurs puissent créer leur propre CMS.

Que pensez-vous de WordPress et pourquoi certains de ses utilisateurs devraient-ils envisager de passer à votre système?

Que Worpress soit ou non un véritable CMS ou juste un moteur de blogs, ce débat a finalement été mis de côté avec le support des post-types personnalisés dans WordPress 3.0.

WordPress est un joyau d'un CMS, il n'y a pas deux façons de le faire. Comme tout autre développeur indépendant, j’ai moi-même perdu le compte du nombre de sites que j’ai réalisés dans WordPress au cours des dernières années. Cependant, et je le dis au risque de contrarier beaucoup de lecteurs, à mon avis, ce n'est pas un "CMS du concepteur".

Pour que WordPress s'adapte à vos besoins, il faut encore une quantité inconfortable de PHP à explorer. La raison pour laquelle il est si populaire parmi les concepteurs, à mon sens, est que les concepteurs trouvent ce code PHP déjà écrit pour eux par la fantastique communauté de développeurs autour de WordPress. Cela pourrait prendre la forme de milliers de plugins disponibles ou de la pléthore d'extraits de qualité partagés sur Internet.

Pour illustrer mon propos, je peux citer un exemple qui me vient à l’esprit: la fameuse «boucle Wordpress» a toujours existé depuis que vous pouvez vous en souvenir. Pourtant, il a fallu plusieurs années avant que des développeurs intrépides démontrent que la boucle pouvait être utilisée plusieurs fois, créant ainsi les thèmes de magazine. Et maintenant, voyez quelle révolution les concepteurs ont provoquée avec ces thèmes de magazine.

Pour ce qui est des raisons pour lesquelles certains utilisateurs de WordPress devraient envisager de passer à Couch - j’ai déjà mentionné les problèmes que je rencontrais moi-même. À en juger par la réponse de Couch, je peux supposer que je ne suis certainement pas le seul à éprouver ces problèmes. Si un designer utilisant actuellement WordPress pense qu'il partage les mêmes tribulations, il est invité à essayer Couch pour son prochain projet.

Où les parties intéressées peuvent-elles aller pour apprendre à configurer une installation CouchCMS?

Je leur suggère de commencer par un didacticiel très détaillé, présenté sur notre site, à l'exemple de l'exemple Construire un site du monde réel. Dans ce didacticiel, nous construisons un site complet de portefeuille dans le monde réel, en partant de zéro, et expliquant également le processus d'installation.

Ils peuvent également trouver une documentation très complète sur notre page Documents.

S'ils utilisent Windows, ils pourraient envisager de télécharger un ensemble WAMP portable disponible sur notre page de téléchargement. Cela a tout pré-installé et ne nécessite qu'un seul téléchargement et cliquez dessus pour commencer à utiliser Couch.

Enfin, nous avons un forum actif. S'ils rencontrent des problèmes ou ont des questions, ils sont les bienvenus sur nos forums.

Quel est votre système de tarification?

Couch est gratuit pour une utilisation personnelle et non commerciale. Actuellement, son utilisation commerciale nécessite une licence qui coûte 39 dollars par domaine (le prix est de 9 dollars seulement ici).

J'aimerais ajouter que nous réfléchissons sérieusement à l'introduction d'une version de base de CouchCMS qui serait totalement gratuite, même sur des sites commerciaux. Restez à l'écoute.

Où voyez-vous CouchCMS aller dans les prochaines années? Des gros projets?

Nous constatons maintenant qu'il est nécessaire d'ouvrir une API pour les développeurs afin de leur permettre d'étendre les fonctionnalités natives de Couch.

Par exemple, Couch n'a pas de type de champ Colorpicker ou Calendar popup. L'API permettrait à un développeur de créer facilement ceux-ci. Cela ouvrira également la possibilité de créer des addons pour Couch comme un simple forum ou un commerce électronique.

L'idée est de permettre aux développeurs d'ajouter des fonctionnalités à Couch et de les exposer sous forme de simples balises à utiliser par les concepteurs. Couch a été conçu pour les designers et nous allons toujours nous concentrer sur cela.

Conclusion

Pour résumer, si vous ou vos clients êtes constamment frustrés par la complexité des solutions de CMS les plus modernes, vous devez absolument consulter CouchCMS. Il offre aux concepteurs la possibilité de conserver la plupart de leurs conceptions HTML actuelles et ne nécessite que quelques balises pour définir le contenu comme étant modifiable.

Cette semaine seulement, vous pouvez économiser 77% sur une licence commerciale CouchCMS et commencer à l'utiliser pour votre client aujourd'hui. Visitez notre page Offres pour en savoir plus.