Kernl proposera des mises à jour de plugins et de thèmes privés hébergés

Publié: 2016-01-27

noyau

Jack Slingerland a commencé à pirater WordPress en 2008, mais récemment, sa carrière l'a amené un peu plus loin qu'il ne le souhaiterait. Le jour, il est ingénieur logiciel senior chez CA Technologies à Raleigh, travaillant dans React/Redux, Node, ElasticSearch, Grails et Groovy. Mais la nuit, il est occupé à construire Kernl, un service qui fournit des mises à jour privées de plugins et de thèmes pour WordPress.

Une fois qu'un plugin a été ajouté au service, les mises à jour fournies par Kernl ressembleront exactement aux mises à jour de WordPress.org.

« La fonctionnalité principale de Kernl est de fournir des mises à jour de plugins et de thèmes privés pour les développeurs WordPress. Cependant, ce sont nos caractéristiques différenciantes qui m'excitent », a déclaré Slingerland. "Nous avons la validation du code d'achat (afin que seuls les utilisateurs autorisés puissent télécharger les mises à jour) et le support d'intégration continue (CI).

"Le truc CI est vraiment bien, car il permet aux développeurs WP de pousser leur code dans GitHub ou BitBucket, puis de le faire automatiquement empaqueter et déployer pour leurs clients. Le CI a toujours été difficile à faire sur WordPress parce que votre environnement de « production » est souvent quelque chose que vous ne contrôlez pas », a-t-il déclaré. "Kernl résout ce problème."

L'idée de Kernl est venue à Slingerland après des années passées péniblement à travers le travail des clients.

"Une chose qui me harcelait constamment était la difficulté d'obtenir des corrections de bogues ou des mises à jour de fonctionnalités pour mes clients", a-t-il déclaré. « Souvent, je ne gérais pas leurs sites, donc leur fournir des mises à jour impliquait beaucoup d'envois d'e-mails et de communication.

"J'ai eu l'idée de Kernl en 2011, mais je ne l'ai jamais exécutée avant l'année dernière", a déclaré Slingerland. "J'espérais pouvoir aider d'autres personnes à résoudre le même problème que moi."

Kernl a été lancé en alpha privé en mai 2015 avec environ 65 utilisateurs alpha. En novembre, il l'a ouvert à la version bêta publique et le service compte désormais environ 100 utilisateurs bêta. Les testeurs mettent actuellement Kernl à l'épreuve :

  • Kernl héberge 73 plugins et 43 thèmes (117 au total)
  • Le service a traité 4,07 millions de vérifications de mise à jour depuis mai
  • Kernl traite environ ~2 vérifications d'état de mise à jour/seconde
  • 14 100 mises à jour ont été téléchargées depuis Kernl

Comment Kernl se compare-t-il à WP Pusher ?

J'ai demandé à Slingerland comment Kernl se compare à WP Pusher, qui permet aux développeurs de déployer des thèmes et des plugins WordPress à partir de GitHub et Bitbucket.

"Kernl n'exige pas que votre utilisateur final installe quoi que ce soit d'autre que votre plugin/thème", a déclaré Slinglerland. "Si je comprends bien WP Pusher, vous installez d'abord WP Pusher, puis dites à WP Pusher de gérer les mises à jour pour un plugin/thème donné via son référentiel de contrôle de version. Mais cela doit se produire sur chaque installation d'utilisateur final et peut sembler compliqué pour les utilisateurs non techniques.

« Kernl fonctionne de manière transparente avec votre plugin/thème, tout comme ceux qui sont installés à partir du référentiel WordPress.org. Cela rend l'installation et la mise à jour familières et s'intègre parfaitement », a-t-il déclaré.

«Nous avons également la validation du code d'achat, qui va recevoir de l'amour et une API après la mise en ligne. Kernl prend également en charge la gestion des versions de votre plugin/thème, afin que les commits intermédiaires ne soient pas envoyés au hasard à vos clients.

L'importance de l'intégration continue

L'une des raisons pour lesquelles Slingerland a construit Kernl est qu'il souhaite aider davantage de développeurs WordPress à ajouter une intégration continue à leurs flux de travail. Cet aspect particulier de l'application (la fonctionnalité "push to build") a posé le plus grand défi technique, mais a été l'un des problèmes les plus importants à résoudre pour Kernl.

"Il y a beaucoup de cas extrêmes que je n'avais pas prévus, surtout une fois que j'ai commencé à intégrer à la fois BitBucket et GitHub", a déclaré Slingerland. « Dans ces cas, les bêta-testeurs ont été inestimables pour aider à dénicher les bogues.

« Disposer d'un flux de travail solide d'intégration et de déploiement continus change vraiment la façon dont vous envisagez le développement », a-t-il déclaré. « Au lieu d'avoir des versions de fonctionnalités « big bang » une fois par trimestre, il devient plus facile d'itérer sur votre idée. Échouez rapidement, validez vos idées/changements et itérez à nouveau. C'est un grand catalyseur de la méthodologie de développement Agile, et je pense que la communauté des plugins/thèmes WordPress en a manqué. Cela encourage également de bons tests, ce qui est presque nécessaire si vous déployez en continu.

Slingerland vise Kernl aux développeurs qui créent des plugins et des thèmes WordPress qui ne sont pas hébergés sur WordPress.org. Une poignée de ses utilisateurs bêta ont même utilisé le service pour distribuer des mises à jour à leurs propres bêta-testeurs avant de publier une version officielle sur WordPress.org.

Kernl hébergera n'importe quel plugin ou thème gratuitement tant qu'il est à la fois open source et disponible gratuitement. Le prix des plugins et des thèmes commerciaux ira de 5 $ à 25 $/mois. Le service est gratuit pendant la période bêta, qui devrait se terminer à la mi-février.

Kernl ne contrôlera pas les licences de produits

Après une enquête plus approfondie concernant la position de Kernl sur les licences des produits qu'il héberge, Slingerland déclare qu'il ne contrôlera pas les licences de ses clients. Cela signifie que les auteurs de thèmes et plugins non-GPL seraient les bienvenus pour distribuer leur logiciel via sa plateforme. Étant donné que les thèmes et les plugins sont des œuvres dérivées de WordPress, ils doivent être sous licence GPL.

Le manque de volonté de Slingerland de contrôler les logiciels non GPL a le potentiel de faire de Kernl une ruche pour les produits qui enfreignent la licence de WordPress. Le service facilite la distribution de logiciels non GPL qui se font passer pour l'administrateur comme des plugins/thèmes conformes réguliers lorsqu'il s'agit de mises à jour.

La distribution de logiciels non-GPL peut être un facteur décisif pour les développeurs WordPress qui sont fortement attachés à la GPL. La GPL protège la liberté des utilisateurs d'utiliser et de modifier le logiciel à n'importe quelle fin, et de nombreux développeurs ont bâti leur entreprise et leur réputation sur le maintien de cette liberté.

Les logiciels hébergés par Kernl peuvent être conformes ou non aux licences GPL, et l'utilisateur peut ne jamais le savoir. Cela laisse l'utilisateur vulnérable d'une manière que les mises à jour officielles de WordPress.org ne font pas. Les développeurs qui ne veulent pas être obligés de prendre en charge une plate-forme qui a le potentiel de distribuer des logiciels non-GPL peuvent vouloir chercher une alternative.