Catégories
Plugin et site web

Fonctionnalités de la plateforme Web de financement participatif avec priorisation ouverte – Smashing Magazine

A propos de l'auteur

Rachel Andrew est non seulement rédactrice en chef du magazine Smashing, mais également développeur Web, écrivaine et conférencière. Elle est l'auteur de plusieurs livres, dont…
Plus à propos
Rachel
Andrew

Rachel Andrew jette un œil à un nouvel effort de financement participatif des coûts de mise en œuvre des fonctionnalités du navigateur.

Dans mon dernier article, j'ai décrit quelques fonctionnalités CSS intéressantes – dont certaines ne sont disponibles que dans un seul navigateur. La plupart des développeurs Web ont une fonctionnalité qu'ils souhaiteraient être plus largement disponible, ou qui était disponible du tout. J'encourage les développeurs à utiliser, à discuter et à soulever des bogues d'implémentation avec les navigateurs pour essayer d'implémenter les fonctionnalités, mais que se passerait-il s'il y avait un moyen plus direct de le faire? Et si les développeurs Web pouvaient se réunir et financer le développement de ces fonctionnalités?

C'est le modèle que lance le cabinet de conseil open source Igalia avec son expérience d'Open Prioritization. L'idée de base est un modèle de financement participatif pour les fonctionnalités de la plateforme Web. Si nous voulons une fonctionnalité implémentée, nous pouvons mettre une petite somme d'argent pour aider à financer ce travail. Si l'objectif est atteint, la fonctionnalité peut être implémentée. Cet article est basé sur un entretien avec Brian Kardell, Developer Advocate chez Igalia.

Qu'est-ce que la priorisation ouverte?

L'idée d'une hiérarchisation ouverte est que la communauté choisit et aide à financer le développement des fonctionnalités. Igalia a sélectionné une liste de fonctionnalités cibles, qui sont toutes implémentées ou en cours d'implémentation dans au moins un moteur. Par conséquent, le financement d'une fonctionnalité l'aidera à devenir disponible sur plusieurs navigateurs et plus utilisable pour nous en tant que développeurs. La liste initiale est:

  • CSS lab( ) couleurs dans Firefox
  • :focus-visible dans WebKit / Safari
  • HTML inert dans WebKit / Safari
  • Arguments de la liste de sélection pour :not( ) dans Chrome
  • Prise en charge du confinement CSS dans WebKit / Safari
  • CSS d (Chemin SVG) support dans Firefox

Le site Web donne plus d'explications sur chaque fonctionnalité et tous les détails sur le fonctionnement du financement. Igalia travaille avec Open Collective pour gérer les promesses de dons.

Qui sont Igalia?

Vous n'avez peut-être jamais entendu parler d'Igalia, mais vous aurez bénéficié de leur travail. Igalia travaille sur les moteurs de navigateur et possède une connaissance spécialisée de tous les moteurs. Ils ont eu le deuxième plus grand nombre de validations pour la source Chrome et WebKit en 2019. Si vous aimez la disposition de la grille CSS, vous devez remercier Igalia pour la mise en œuvre dans Chrome et WebKit. Le travail pour ajouter la fonctionnalité à ces navigateurs a été effectué par une équipe d'Igalia, plutôt que par des ingénieurs travaillant en interne dans la société de navigation.

C'est ce qui rend cette idée si convaincante. Il ne s’agit pas de collecter de l’argent puis d’essayer de persuader quelqu'un de faire le travail. Igalia a fait ses preuves. Les développeurs doivent être payés, donc en externalisant l'argent, nous sommes en mesure de choisir ce qui sera travaillé ensuite. Igalia a également déjà des relations avec les moteurs pour que toute fonctionnalité suggérée soit susceptible de réussir.

Les navigateurs accepteront-ils ces fonctionnalités si nous les finançons?

Le fait qu'Igalia ait déjà des relations au sein des équipes de moteurs de navigation et ait déjà discuté avec elles des fonctionnalités sélectionnées signifie que si elles sont financées, nous devrions voir les fonctionnalités dans les navigateurs. Et, il existe déjà des précédents pour les principales fonctionnalités financées par des tiers et développées par Igalia. L'implémentation de la disposition de la grille dans Chrome et WebKit a été financée par Bloomberg Tech. Ils étaient frustrés par le manque d'implémentation de Grid Layout, et c'est Bloomberg Tech qui a fourni l'argent pour développer cette fonctionnalité sur plusieurs années.

Chrome et WebKit étaient heureux d'accepter la mise en œuvre; il n'y a pas eu de controverse sur l'ajout de la fonctionnalité. Il s'agissait plutôt d'une question de priorité. Les navigateurs avaient d'autres travaux jugés prioritaires, et l'engagement financier et le temps des développeurs étaient donc dirigés ailleurs. Les fonctionnalités qui ont été sélectionnées pour cette première tentative de financement participatif ne sont pas non plus controversées en termes de mise en œuvre. Si le travail peut être fait, les moteurs sont susceptibles de l'accepter. L'interopérabilité – les choses fonctionnent de la même manière entre les navigateurs – est quelque chose qui intéresse tous les fournisseurs de navigateurs. Il n'y a aucun avantage pour un moteur à prendre du retard. Nous arrivons essentiellement à contourner le processus de priorisation interne de la fonctionnalité.

Pourquoi les navigateurs ne font-ils pas simplement ce truc?

J'ai demandé à Brian pourquoi les sociétés de navigation ne financent pas ces choses elles-mêmes. Il expliqua,

«C'est simple à imaginer, par exemple« Apple a tout l'argent du monde », mais cela ignore les réalités complexes. L'entreprise d'Apple n'est pas son navigateur Web. En fait, le navigateur Web lui-même n'est une entreprise lucrative pour personne. Les navigateurs et les normes sont volontaires, ils sont communs. En termes de coûts, cependant, les navigateurs sont considérables. Ils sont massivement plus complexes que la plupart d'entre nous ne le pensent. Aujourd'hui, seules 3 organisations ont investi les nombreuses années et millions de dollars annuels nécessaires pour faire évoluer et maintenir un projet de moteur de rendu. Chacun d'entre eux fait déjà un investissement massif et sans précédent dans les biens communs. »

Brian a ensuite souligné l'investissement considérable de Firefox dans Servo et de Google dans LayoutNG, des projets qui amélioreront l'expérience du navigateur et permettront également de mettre en œuvre de nouvelles fonctionnalités de la plate-forme. Il y a beaucoup de choses que tout navigateur pourrait être mis en œuvre dans leur moteur, mais la façon dont ces fonctionnalités sont hiérarchisées en interne peut ne pas toujours correspondre à nos besoins en tant que développeurs.

Il m'est venu à l'esprit qu'en finançant la mise en œuvre du navigateur, nous faisons la même chose que nous faisons pour les autres produits que nous utilisons. Beaucoup d'entre nous auront développé un plugin pour une fonctionnalité nécessaire dans un CMS ou payé un tiers pour le fournir. Les développeurs CMS passent leur temps à travailler sur le produit principal, en s'assurant qu'il est robuste, sécurisé et à jour. Sans le produit de base, l'ajout de plugins serait impossible. Les tiers peuvent cependant apporter des éléments à cette plate-forme, et dans un sens, c'est ce que nous pouvons faire via une hiérarchisation ouverte. Montrez qu'une fonctionnalité en vaut la peine pour nous de promettre de l'argent pour l'obtenir au-delà de la ligne.

Comment cela correspond-il aux projets tels que le Web que nous voulons?

SmashingConf a soutenu le projet Web We Want, où les développeurs ont présenté des idées de plate-forme Web à discuter et à voter sur scène lors de conférences. J'ai participé à plusieurs de ces événements en tant qu'hôte et membre du panel. Je me demandais comment une hiérarchisation ouverte cadrait avec ces efforts existants. Brian a expliqué que ce sont des choses très différentes en disant:

«… si vous me demandiez ce qui pourrait améliorer ma maison, je pourrais nommer un million de choses. Certains d’entre eux ne sont même pas pratiques à distance, ils seraient tout simplement super. Mais si vous avez dit de faire une liste des choses que vous pourriez faire avec un budget pour ce que chacun coûte – ma liste sera considérablement plus pratique et liée aux réalités que je sais exister.

À la fin du mois, si vous dites "il y a votre liste, et voici 100 $, qu'en ferez-vous?" c'est une question très directe qui m'aide à accomplir quelque chose de pratique. Peut-être que je vais peindre. Je vais peut-être acheter un nouvel éclairage. Ou peut-être que je vais l’économiser pendant quelques mois pour quelque chose de plus coûteux. »

le Web que nous voulons Le projet pose une question ouverte, il demande ce que nous voulons de la plateforme. Beaucoup de désirs ne sont pas des choses qui existent déjà en tant que spécification. Pour commencer à mettre en œuvre l'une de ces choses, il faudrait commencer dès le début, avec une idée qui doit être prise dès la phase de spécification. Il y a peu de certitudes et il serait très difficile de fixer un prix.

Les fonctionnalités sélectionnées pour cette première expérience de priorisation ouverte sont délibérément limitées. Ils ont déjà une mise en œuvre; ils ont une spécification, et Igalia a déjà parlé aux responsables du navigateur pour vérifier que les fonctionnalités sont prêtes à fonctionner mais ne figurent pas dans les priorités immédiates.

Soutenir ce projet signifie soutenir un morceau concret de développement, qui peut se produire dans un délai raisonnablement court. Publier une idée sur Web We Want, rédiger une idée sur votre blog ou ajouter un problème décrivant une toute nouvelle fonctionnalité sur le référentiel CSSWG GitHub permet potentiellement de faire émerger une nouvelle idée dans la discussion. Cependant, ces idées peuvent avoir un long chemin lent à devenir réalité. Et, compte tenu de la nature des discussions sur les normes, cela ne se produira probablement pas exactement de la manière que vous imaginiez. Il est utile de proposer ces choses, mais il est très difficile d'estimer le temps et les coûts d'une mise en œuvre finale.

Le même problème est vrai pour la fonctionnalité très recherchée des requêtes de conteneur, Igalia est allé jusqu'à mentionner les requêtes de conteneur dans sa FAQ. De nombreuses personnes impliquées dans le processus de normalisation et chez les fournisseurs de navigateurs étudient les requêtes de conteneur, cependant, ces discussions n'en sont qu'à leurs débuts. Ce n'est pas quelque chose qu'il serait possible de mettre une valeur monétaire à ce stade.

Être impliqué!

Il y a plus d'informations sur le site Open Prioritization, ainsi qu'une FAQ détaillée répondant à d'autres questions que vous pourriez avoir. Je suis enthousiaste à ce sujet, car je suis toujours désireux d'aider les concepteurs et les développeurs à s'impliquer dans la plate-forme Web. C'est notre plateforme. Nous pouvons attendre que les fournisseurs de navigateurs accordent des choses à l'utilisation, ou nous pouvons contribuer activement via des idées, des rapports de bogues et avec Open Prioritization un peu d'argent, pour aider à l'améliorer.

Smashing Editorial(il)

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *