Catégories
Astuces et Design

Webs tissés | Astuces CSS

Il y a un peu d'ironie avec Jamstack.

Le concept est simple: vous placez des fichiers statiques pré-rendus sur un hébergement Web (un CDN) conçu pour bien le faire. C'est tout. Si vous avez besoin d'en faire plus, tout ce que vous faites à partir de là est fait avec JavaScript côté client, qui concerne probablement les fonctions sans serveur, car c'est le partenaire spirituel de Jamstack en back-end. J'ai entendu Guillermo Rauch dire à Smashing Conf l'autre jour que ce n'est pas exactement une «pile» en ce sens que ce que vous faites est presque entièrement non normatif. Bien que j'aime le mot Jamstack, cela me semble également juste.

L'ironie est que tandis que le le concept est simple, cette simplicité peut être le cause de complexité.

Netlify, la société largement derrière Jamstack, le sait. Ils savent que sans serveur back-end avec des langages back-end, quelque chose comme un formulaire de contact basique devient compliqué. Au lieu d'être dans un territoire de problèmes résolus, nous devons trouver une autre façon de traiter cette forme. Donc, ils résolvent ce problème pour vous (entre autres, comme les fonctions d'authentification et sans serveur). Mais il y a des tonnes d'autres entreprises qui veulent être ce rouage dans votre machine.

Ce n’est qu’une complication potentielle. Qu'utilisez-vous pour un CMS ou autre stockage de données? À quoi ressemble votre processus de construction? Comment voyez-vous les aperçus des modifications de contenu? Comment vous authentifiez? Et si vous avez besoin d'un widget de calendrier sophistiqué? Et si vous souhaitez vendre quelque chose? Tout ce qu'un site Web peut faire, Jamstack a une réponse – c'est juste que combiner toutes ces réponses peut sembler décousu et potentiellement déroutant.

Dave a récemment joué avec Eleventy + Tailwind + Netlify CMS (qui est Jamstack-y) et a déclaré que cela ressemblait à du bétail:

Donc, mon petit mashup, qui était censé n'être que 3 technologies, a fini par m'exposer à environ 20 technologies différentes et m'a fait creuser dans le code source de dépendance de niveau nième après minuit. S'il y a une allégorie de ce que je n'aime pas dans le développement Web moderne, c'est bien celle-ci. Vous voulez utiliser trois outils, mais vous devez savoir utiliser vingt outils à la place. Si les modules et les composants sont comme LEGO, il s'agit de vider tout le bac sur le sol juste pour trouver un petit morceau dont vous avez besoin.

«Les toiles enchevêtrées que nous tissons», en effet.

Dans une conversation entre Richard MacManus et Matt Mullenweg¹, Richard cite Matt:

Vous pouvez patcher une douzaine de services, chacun avec son propre compte et sa propre facturation, pour des centaines de dollars par mois, pour obtenir un résultat similaire à celui que vous auriez pour quelques dollars par mois en utilisant WordPress sur l'hébergement partagé », a-t-il déclaré. «Et ce serait plus fragile, car la chaîne n'est aussi solide que son maillon le plus faible. Vous enchaînez différents ensembles d'outils, connexions, facturation, hébergement… toute partie de celui-ci peut interrompre l'ensemble du flux.

Si j'envisageais Jamstack pour un projet particulier, et que le total général était vraiment Douze services, je reconsidérerais probablement, en particulier si je pouvais atteindre un outil comme WordPress et le réduire à un. Il y a beaucoup d'autres critiques justes de Jamstack, en particulier depuis ses débuts. L'histoire du "CMS avec aperçu" n'est pas particulièrement géniale, par exemple, une fonctionnalité à laquelle vous ne pensez même pas avec WordPress parce que, duh, évidemment, il l'a.

Et Jamstack peut faire des choses qui sont très en avance sur le jeu que je chéris. Déploiement basé sur Git? Tous les sites Web devraient l'avoir. Des aperçus de mes pull requests? Damn hot. Premières demandes inférieures à -100 millisecondes? Oui s'il vous plaît. Vous n'avez pas à vous soucier du cache? Doux. Rattrapez-vous, autres piles.

Je dis qu'il y a des choix de bébés ours à faire ici. Vous y parvenez en faisant ce que vous faites probablement déjà de toute façon: enfiler votre pantalon pour adulte, réfléchir à ce dont votre projet a besoin et choisir la meilleure option.

J'ai des sites de production WordPress. Comme celui-ci! C'est bien!

J'ai des sites de production Jamstack. Comme celui-ci! Ce n’est pas un réseau de services compliqué. Il s'agit d'un générateur de site statique avec du contenu dans le référentiel GitHub déployé avec Netlify. Bien que CSS-Tricks puisse faire environ 100 choses que ce site ne peut pas faire, il a quelques astuces dans sa manche que CSS-Tricks ne peut pas faire, comme accepter les pull requests sur le contenu.

J'ai l'impression d'avoir assez bien choisi dans tous mes cas.

Laisser un commentaire

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