Mise à jour mensuelle du développement Web 8⁄2018 : Le coût de JavaScript, l'éthique en open source et QUIC
Publié: 2022-03-10La technologie du bâtiment et les logiciels sont devenus un travail très responsable. Les gens font confiance aux produits que nous créons, et ils peuvent aussi avoir un impact significatif sur leur vie. Compte tenu de cela, nous devons non seulement réfléchir à des solutions inclusives, mais également nous lever et défendre l'éthique, la fiabilité et la sécurité. C'est une position qui nous donne du pouvoir.
Eric Meyer a publié un article élaborant les problèmes qu'apporte un web uniquement HTTPS. Il y révèle que les pays en développement souffrent beaucoup de cette évolution car ils ont souvent de mauvaises connexions Internet et, en raison du cryptage, ils subissent désormais plus d'erreurs de site Web qu'auparavant . Ben Werdmuller est intervenu et a publié l'article "Arrêtez de construire pour San Francisco" dans lequel il souligne l'un des plus gros problèmes que nous ayons en tant que développeurs : nous utilisons du matériel et une infrastructure privilégiés. Nous construisons des expériences en utilisant les derniers iPhones, Macbooks avec des connexions Gigabit ou 4G rapides, mais nous ne considérons jamais que la plupart des gens que nous construisons utilisent des appareils et des infrastructures qui sont loin d'être aussi bien équipés. Rendre le Web plus sûr est une excellente idée, sans aucun doute, mais nous devons également garder à l'esprit les conséquences que les dernières technologies et nos décisions de conception pourraient avoir pour les autres.
Nouvelles
- TypeScript 3.0 a été publié avec quelques fonctionnalités et correctifs de langage pratiques.
- Mis en œuvre dans Chrome depuis un certain temps déjà, les conseils client sont une fonctionnalité étonnante. Pour améliorer la confidentialité, la fonctionnalité des conseils client pour les images réactives a changé avec Chrome 67. Colin Bendell explique les différences et pourquoi les conseils client sont si utiles pour les performances.
- Les développeurs ont beaucoup posé de questions sur l'Intelligent Tracking Prevention (ITP) de Safari et sur la façon de déboguer les sites Web lorsqu'il est activé. Désormais, l'équipe WebKit partage le mode de débogage ITP qui vous offre beaucoup plus de flexibilité et d'outils pour détecter les problèmes.
- À partir d'octobre, la plupart des navigateurs se méfieront entièrement des certificats Symantec TLS et bloqueront ainsi l'accès aux sites Web qui les utilisent encore. Veuillez mettre à jour votre certificat si vous ne l'avez pas déjà fait.
- La dernière version de Chrome (68) apporte une nouvelle notification "non sécurisée" lors de la visite de pages HTTP. Soyez conscient de cela et mettez à jour vos sites en conséquence. Autre nouveauté de Chrome 68, la nouvelle API Page Lifecycle, une excellente nouvelle API pour les événements de page, ainsi que l'API Payment Handler. Le cache HTTP est désormais ignoré lors de la demande de mises à jour à un service worker, ce qui met Chrome en conformité avec les spécifications et les autres navigateurs. En dehors de cela, les valeurs de
cursor
grab
etgrabbing
sont désormais sans préfixe dans la nouvelle version - enfin.
Général
- Si vous construisez pour l'Open Source, vous devez décider quelle licence votre projet doit utiliser. Il y a maintenant une nouvelle option, la licence Just World. C'est pour les développeurs qui « sont d'accord en général avec les principes des logiciels open source mais sont mal à l'aise avec l'utilisation de leurs logiciels dans le cadre d'efforts visant à détruire des vies, notre environnement et notre avenir ».
- Les machines d'apprentissage en profondeur sont un sujet important de nos jours, mais certaines personnes explorent des algorithmes encore meilleurs qui surpassent facilement les machines d'apprentissage en profondeur dans les jeux vidéo.
- « Simple, correct, rapide : dans cet ordre » de Drew DeVault est un excellent rappel pour définir les priorités dans le développement Web et logiciel.
- Jonathan Fulton a écrit une ressource pratique intitulée "Les concepts d'architecture de base que j'aurais aimé connaître lorsque j'ai commencé en tant que développeur Web", qui est une excellente architecture Web 101 et une base pour les nouveaux arrivants dans notre industrie.
Interface utilisateur/expérience utilisateur
- Ethics for Design est un projet où douze designers et chercheurs de huit villes européennes discutent de l'impact, parfois néfaste, du design sur nos sociétés et de ce que les designers peuvent faire pour travailler pour le bien de tous et pas seulement de quelques-uns.
Outillage
- Prashant Palikhe a écrit une longue histoire sur l'art du débogage avec les outils de développement de Chrome, que je peux fortement recommander car c'est une référence très complète pour connaître les outils de développement d'un navigateur. Si vous utilisez un autre navigateur, ce n'est pas un gros problème car la plupart des outils sont assez similaires.
- WebP est un format d'image avec quelques fonctionnalités intéressantes et probablement l'un des nouveaux formats les plus connus en plus des formats JPEG/PNG courants. Cependant, la création d'images WebP peut toujours être un défi, c'est pourquoi Jeremy Wagner a écrit un guide sur la façon de convertir des images en WebP.
- Douglas Creager présente la nouvelle journalisation des erreurs réseau qui vous permet de demander aux agents utilisateurs de collecter le même ensemble d'informations qui apparaîtraient dans les journaux de votre serveur.
- Beaucoup d'entre nous sont accros aux outils de communication comme Slack. Les gens de Wildbit ont décidé de fermer Slack pendant une semaine, ce qui a eu un effet significatif sur leur fonctionnement. Une étude de cas intéressante sur la façon dont nous avons tendance à être trop à l'aise avec un outil utile et à ne plus l'utiliser comme nous le devrions. De temps en temps, il est important de réinitialiser nos esprits.
- Dennis Reimann a publié la première version stable de UIEngine, un atelier pour le développement piloté par l'interface utilisateur.
Sécurité
- Un nouvel Observateur est là : l'API ReportingObserver vous permet de savoir quand votre site utilise une API obsolète ou se heurte à une intervention du navigateur. Jusqu'à présent, il est disponible dans Chrome 69. Vous pouvez facilement l'utiliser pour envoyer des erreurs qui n'étaient auparavant disponibles que dans la console à votre backend ou à votre service de gestion des erreurs.
Performances Web
- Vous souvenez-vous de QUIC (Quick UDP Internet Connections) ? Le protocole conçu par Google qu'ils utilisent en interne et qui s'annonce plutôt bien pour une utilisation plus large ? Alors que l'IETF normalise actuellement le format vers la fin de l'année, les ingénieurs de Cloudflare partagent maintenant leur expérience de test.

- Lorsque vous avez du contenu généré par l'utilisateur, vous ne savez souvent pas si vous avez un seul élément ou une liste d'éléments à produire. Chez Colloq, nous voulions faire de la sémantique correctement et avons construit un système qui nous permet de sortir une balise
p
lorsqu'un seul élément est dans le conteneur, sinon une listeol
/ul
avec divers éléments de liste.
Accessibilité
- Dave Rupert partage les A11Y Nutrition Cards, un projet qui tente de digérer et de simplifier les attentes en matière d'accessibilité en matière de création de composants.
- Les liens de saut sont des fonctionnalités d'accessibilité assez courantes. Hampus Sethfors a maintenant écrit un article expliquant pourquoi de nombreux liens sont toujours rompus et comment les réparer correctement.
Javascript
- Un an après le lancement de leur Progressive Web App, Zack Argyle de l'équipe d'ingénierie de Pinterest revient en arrière. Il est important de noter pourquoi ils ont décidé de créer une PWA : "Notre expérience Web mobile pour les personnes dans des environnements à faible bande passante et des plans de données limités n'était pas bonne". Mais les résultats pour eux sont incroyables à voir.
- Philip Walton présente la nouvelle API Page Lifecycle qui nous aide à déterminer plus facilement les états des pages dans le navigateur via des événements, tels que la page en arrière-plan (non visible), active, gelée ou même terminée.
- Oups, vous savez tous que
eval()
en JavaScript est mauvais, n'est-ce pas ? C'est pourquoi nous interdisons généralement son utilisation dans les politiques de sécurité du contenu. Mais Remy Sharp nous rappelle qu'il y a une ligne de code qui est tout aussi mauvaise pour la sécurité. - Addy Osmani a étudié le coût de JavaScript en 2018 et partage maintenant la preuve que chaque octet de JavaScript est toujours la ressource la plus chère que nous puissions envoyer aux téléphones mobiles, car il peut retarder considérablement l'interactivité. C'est un problème, en particulier pour les téléphones moins performants qui sont largement utilisés en dehors de l'industrie technologique.
- Hidde de Vries explique comment nous pouvons rendre les titres de page accessibles dans JavaScript Single Page Application.

CSS
- Max Bock a exploré quelques techniques CSS Grid pour construire les mises en page de demain avec un code relativement simple.
- Sara Soueidan explique comment nous pouvons créer des commutateurs à bascule inclusifs avec du HTML et du CSS modernes.
- Jen Simmons partage les erreurs courantes de CSS Grid et comment les résoudre.
- Ethan Marcotte explique l'unité
fr
encore relativement nouvelle que nous utilisons principalement pour les grilles CSS.
La vie de travail
- Paris Marx a expliqué pourquoi il pense que les nomades numériques ne sont pas l'avenir. Il soutient que l'indépendance géographique n'est possible que grâce aux infrastructures de communication construites avec des fonds publics et qu'il n'est pas juste d'en abuser.
- Cette semaine, j'ai appris à quel point il peut être utile de sortir des sentiers battus et comment le travail à distance et la poursuite de votre passe-temps peuvent aider à résoudre des problèmes techniques.
- Ce n'est pas la première fois qu'une entreprise teste une semaine de travail de 4 jours. Cependant, c'est formidable de voir comment le concept peut être établi avec succès et avec des avantages pour les deux - les employés et le travail effectué.
Aller plus loin…
- Tobias van Schneider a expliqué pourquoi le studio Sagmeister-Walsh a tant de succès en restant petit et pourquoi rêver grand mais rester petit est si important pour la pensée créative.
- Ben Werdmuller partage ses réflexions sur la façon dont il est devenu différent de démarrer une entreprise lorsque vous êtes, par exemple, à San Francisco. C'est une histoire où 117 000 $ sont considérés comme un "faible revenu" à San Francisco et comment cela limite les idées.
- Jeremy Nagel nous fait réfléchir à l'impact de notre code open source : en tant que développeurs, nous avons tendance à croire que rendre notre code disponible gratuitement est une décision incroyable, mais nous oublions que nous le mettons également à la disposition des mauvais joueurs - aux mineurs de charbon, aux des entreprises qui contribuent à la pollution, à ceux qui utilisent les gens pour s'enrichir tout en les maltraitant, à ceux qui vous arnaquent indirectement. Ce n'est pas que vous ne pouvez rien y faire; vous devez être conscient de ces problèmes et appliquer une meilleure licence ou ajouter une déclaration dédiée à votre code.
- L'Inde a un gros problème de déchets plastiques. Depuis quelques mois, quelques pêcheurs n'ignorent plus le problème du plastique mais collectent tous les déchets dans leurs filets et les ramènent sur le rivage où ils sont utilisés pour construire des routes. Une excellente idée pour utiliser efficacement les déchets.