🔗 Article : https://grafikart.fr/tutoriels/service-interchangeable-2349 Créer un service réutilisable ne consiste pas seulement à écrire une classe qui fonctionne. L'objectif est surtout de réfléchir à la surface minimale dont l'application a besoin, pour pouvoir remplacer...
🔗 Article : https://grafikart.fr/tutoriels/service-interchangeable-2349
Créer un service réutilisable ne consiste pas seulement à écrire une classe qui fonctionne. L'objectif est surtout de réfléchir à la surface minimale dont l'application a besoin, pour pouvoir remplacer facilement l'implémentation plus tard.
______________________
Soutenir la chaîne :
⭐ Devenez premium : https://grafikart.fr/premium
Retrouvez Grafikart :
🐦 Twitter : https://twitter.com/grafikart_fr
💬 Discord : https://grafikart.fr/tchat
🔗 Article : https://grafikart.fr/blog/pourquoi-peu-ia Aujourd'hui, je voulais revenir sur ma ligne éditoriale et vous expliquer pourquoi je ne parle pas tant que ça d'IA générative sur la chaîne. Je précise tout de suite que le sujet n'est pas de savoir si l'IA est utile ou...
🔗 Article : https://grafikart.fr/blog/pourquoi-peu-ia
Aujourd'hui, je voulais revenir sur ma ligne éditoriale et vous expliquer pourquoi je ne parle pas tant que ça d'IA générative sur la chaîne. Je précise tout de suite que le sujet n'est pas de savoir si l'IA est utile ou non pour les développeurs.
00:00 Introduction
00:27 L'approche technique
00:58 L'approche utilisateur
03:33 L'approche actualité
04:50 Pourquoi ne pas changer ?
08:25 Conclusion
______________________
Soutenir la chaîne :
⭐ Devenez premium : https://grafikart.fr/premium
Retrouvez Grafikart :
🐦 Twitter : https://twitter.com/grafikart_fr
💬 Discord : https://grafikart.fr/tchat
🔗 Article : https://grafikart.fr/tutoriels/connectrpc-go-2348 Quand on développe une API autrement qu'en TypeScript, on se retrouve souvent avec un problème de synchronisation : les types existent côté serveur, mais il faut les recopier ou les maintenir à la main côté client....
🔗 Article : https://grafikart.fr/tutoriels/connectrpc-go-2348
Quand on développe une API autrement qu'en TypeScript, on se retrouve souvent avec un problème de synchronisation : les types existent côté serveur, mais il faut les recopier ou les maintenir à la main côté client. Dès que l'API évolue, un oubli peut rapidement créer un décalage entre les deux parties. [ConnectRPC](https://connectrpc.com/) apporte une solution en permettant de construire une API gRPC compatible avec les navigateurs à partir de de définition protobuf.
______________________
Soutenir la chaîne :
⭐ Devenez premium : https://grafikart.fr/premium
Retrouvez Grafikart :
🐦 Twitter : https://twitter.com/grafikart_fr
💬 Discord : https://grafikart.fr/tchat
🔗 Article : https://grafikart.fr/tutoriels/protobuf-2347 Quand on échange des données entre deux applications, on utilise souvent du JSON par défaut. Le format est lisible, simple à manipuler et largement supporté, mais il montre vite certaines limites dès que l'on cherche à...
🔗 Article : https://grafikart.fr/tutoriels/protobuf-2347
Quand on échange des données entre deux applications, on utilise souvent du JSON par défaut. Le format est lisible, simple à manipuler et largement supporté, mais il montre vite certaines limites dès que l'on cherche à optimiser les échanges :
______________________
Soutenir la chaîne :
⭐ Devenez premium : https://grafikart.fr/premium
Retrouvez Grafikart :
🐦 Twitter : https://twitter.com/grafikart_fr
💬 Discord : https://grafikart.fr/tchat
🔗 Article : https://grafikart.fr/tutoriels/react-call-2346 Lorsque l'on veut afficher une boîte de confirmation dans React, on se retrouve souvent à ajouter un état `open`, à câbler les callbacks, puis à conditionner la suite de l'action en fonction du choix de l'utilisateur....
🔗 Article : https://grafikart.fr/tutoriels/react-call-2346
Lorsque l'on veut afficher une boîte de confirmation dans React, on se retrouve souvent à ajouter un état `open`, à câbler les callbacks, puis à conditionner la suite de l'action en fonction du choix de l'utilisateur. Pour une simple suppression, cela fait beaucoup de code autour du composant qui déclenche l'action. [React Call](https://github.com/desko27/react-call) propose une autre approche : transformer un composant React en fonction que l'on pourra appeler dans la logique de notre callback directement. L'idée est particulièrement intéressante pour les boîtes de dialogue, les systèmes de notification ou les alertes
______________________
Soutenir la chaîne :
⭐ Devenez premium : https://grafikart.fr/premium
Retrouvez Grafikart :
🐦 Twitter : https://twitter.com/grafikart_fr
💬 Discord : https://grafikart.fr/tchat
🔗 Article : https://grafikart.fr/tutoriels/hyperloglog-2345 Imaginez-vous travailler chez YouTube : on vous demande de compter le nombre de vues d'une vidéo, comment feriez-vous ? Intuitivement, on penserait à enregistrer tous les utilisateurs qui consultent la vidéo puis à...
🔗 Article : https://grafikart.fr/tutoriels/hyperloglog-2345
Imaginez-vous travailler chez YouTube : on vous demande de compter le nombre de vues d'une vidéo, comment feriez-vous ?
Intuitivement, on penserait à enregistrer tous les utilisateurs qui consultent la vidéo puis à compter la taille de la liste. Mais, pour une vidéo avec plusieurs millions de vues, stocker chaque identifiant utilisateur peut rapidement coûter cher en mémoire. C'est là qu'[HyperLogLog](https://en.wikipedia.org/wiki/HyperLogLog) intervient : en se basant sur les probabilités, il peut fournir un compteur avec une faible empreinte mémoire, en échange d'une petite marge d'erreur.
______________________
Soutenir la chaîne :
⭐ Devenez premium : https://grafikart.fr/premium
Retrouvez Grafikart :
🐦 Twitter : https://twitter.com/grafikart_fr
💬 Discord : https://grafikart.fr/tchat
🔗 Article : https://grafikart.fr/blog/html-partial-update Le streaming HTML permet déjà au navigateur d'afficher une page progressivement au fil du chargement du document. Le problème, c'est que ce flux reste linéaire : si un bloc au milieu de la page met du temps à être...
🔗 Article : https://grafikart.fr/blog/html-partial-update
Le streaming HTML permet déjà au navigateur d'afficher une page progressivement au fil du chargement du document. Le problème, c'est que ce flux reste linéaire : si un bloc au milieu de la page met du temps à être généré, tout ce qui arrive après est bloqué. Chrome expérimente une nouvelle approche avec le Declarative partial update, qui permet d'injecter des morceaux d'HTML à des emplacements précis et ainsi de charger la page dans le désordre.
______________________
Soutenir la chaîne :
⭐ Devenez premium : https://grafikart.fr/premium
Retrouvez Grafikart :
🐦 Twitter : https://twitter.com/grafikart_fr
💬 Discord : https://grafikart.fr/tchat
🔗 Article : https://grafikart.fr/blog/greywall-decouverte Les actualités récentes nous ont montré qu'en tant que développeur, on doit être attentif lorsqu'on exécute des commandes, que ce soit avec les agents IA ou avec les outils que l'on utilise au quotidien. Les...
🔗 Article : https://grafikart.fr/blog/greywall-decouverte
Les actualités récentes nous ont montré qu'en tant que développeur, on doit être attentif lorsqu'on exécute des commandes, que ce soit avec les agents IA ou avec les outils que l'on utilise au quotidien. Les dépendances que l'on importe dans nos projets peuvent aussi devenir de bons vecteurs d'attaque. Greywall apporte une couche de protection en offrant la possibilité d'exécuter les commandes dans un bac à sable afin de contrôler ce à quoi les outils ont accès.
______________________
Soutenir la chaîne :
⭐ Devenez premium : https://grafikart.fr/premium
Retrouvez Grafikart :
🐦 Twitter : https://twitter.com/grafikart_fr
💬 Discord : https://grafikart.fr/tchat
🔗 Article : https://grafikart.fr/tutoriels/frankenphp-2344 Aujourd'hui, lorsque l'on veut héberger une application PHP, on a recours à 2 briques : un serveur web comme Nginx ou Apache, puis PHP-FPM pour interpréter les fichiers PHP. Si on utilise Docker, cela implique deux...
🔗 Article : https://grafikart.fr/tutoriels/frankenphp-2344
Aujourd'hui, lorsque l'on veut héberger une application PHP, on a recours à 2 briques : un serveur web comme Nginx ou Apache, puis PHP-FPM pour interpréter les fichiers PHP. Si on utilise Docker, cela implique deux conteneurs qui doivent communiquer ensemble. FrankenPHP propose un serveur web tout-en-un capable de servir les fichiers statiques et d'exécuter le code PHP.
- 00:00 Introduction
- 01:24 Installation & utilisation
- 05:19 Mode worker
- 13:55 Early hint
- 14:27 Mercure & Hot reload
- 17:38 Création d'un binaire
- 18:20 Conclusion
______________________
Soutenir la chaîne :
⭐ Devenez premium : https://grafikart.fr/premium
Retrouvez Grafikart :
🐦 Twitter : https://twitter.com/grafikart_fr
💬 Discord : https://grafikart.fr/tchat
🔗 Article : https://grafikart.fr/blog/langage-debuter La première étape quand on veut débuter dans le développement est de choisir son premier langage de programmation et ce n'est pas un choix facile.... ______________________ Soutenir la chaîne : ⭐ Devenez premium :...
🔗 Article : https://grafikart.fr/blog/langage-debuter
La première étape quand on veut débuter dans le développement est de choisir son premier langage de programmation et ce n'est pas un choix facile....
______________________
Soutenir la chaîne :
⭐ Devenez premium : https://grafikart.fr/premium
Retrouvez Grafikart :
🐦 Twitter : https://twitter.com/grafikart_fr
💬 Discord : https://grafikart.fr/tchat
🔗 Article : https://grafikart.fr/tutoriels/light-dark-css-2343 Sur les systèmes d'exploitation modernes, les utilisateurs peuvent basculer entre un thème clair et un thème sombre selon leurs préférences. La bonne nouvelle, c'est qu'on peut détecter cette préférence...
🔗 Article : https://grafikart.fr/tutoriels/light-dark-css-2343
Sur les systèmes d'exploitation modernes, les utilisateurs peuvent basculer entre un thème clair et un thème sombre selon leurs préférences. La bonne nouvelle, c'est qu'on peut détecter cette préférence directement en CSS pour adapter les couleurs de notre site automatiquement. Il y a 2 approches qui permettent de prendre en compte cette préférence : la media query `prefers-color-scheme` et la fonction `light-dark()`.
______________________
Soutenir la chaîne :
⭐ Devenez premium : https://grafikart.fr/premium
Retrouvez Grafikart :
🐦 Twitter : https://twitter.com/grafikart_fr
💬 Discord : https://grafikart.fr/tchat
🔗 Article : https://grafikart.fr/blog/new-site-laravel Dans cette vidéo je vous partage les choix technologique fait dans le cadre du développement de la nouvelle version du site. 00:00 Introduction 02:31 Pourquoi Laravel ? 11:48 Pourquoi Tailwind CSS 13:45 React & Custom...
🔗 Article : https://grafikart.fr/blog/new-site-laravel
Dans cette vidéo je vous partage les choix technologique fait dans le cadre du développement de la nouvelle version du site.
00:00 Introduction
02:31 Pourquoi Laravel ?
11:48 Pourquoi Tailwind CSS
13:45 React & Custom Elements
16:39 Inertia
20:26 FrankenPHP
23:19 La migration
______________________
Soutenir la chaîne :
⭐ Devenez premium : https://grafikart.fr/premium
Retrouvez Grafikart :
🐦 Twitter : https://twitter.com/grafikart_fr
💬 Discord : https://grafikart.fr/tchat
Petite vidéo pour vous présenter la nouvelle version du site et les nouvelles fonctionnalités. ______________________ Soutenir la chaîne : ⭐ Devenez premium : https://grafikart.fr/premium Retrouvez Grafikart : 🐦 Twitter : https://twitter.com/grafikart_fr 💬 Discord :...
Petite vidéo pour vous présenter la nouvelle version du site et les nouvelles fonctionnalités.
______________________
Soutenir la chaîne :
⭐ Devenez premium : https://grafikart.fr/premium
Retrouvez Grafikart :
🐦 Twitter : https://twitter.com/grafikart_fr
💬 Discord : https://grafikart.fr/tchat
🔗 Article : https://grafikart.fr/blog/google-workspace-ksuite Cela fait plusieurs mois que j'ai migré mes emails en quittant Google Google Workspace et je vous propose de partager avec vous mon expérience. 00:00 Pourquoi j'ai quitté Workspace 02:25 Les remplaçants 04:50...
🔗 Article : https://grafikart.fr/blog/google-workspace-ksuite
Cela fait plusieurs mois que j'ai migré mes emails en quittant Google Google Workspace et je vous propose de partager avec vous mon expérience.
00:00 Pourquoi j'ai quitté Workspace
02:25 Les remplaçants
04:50 Migration vers KSuite
11:44 Retour d'expérience
______________________
Soutenir la chaîne :
⭐ Devenez premium : https://grafikart.fr/premium
Retrouvez Grafikart :
🐦 Twitter : https://twitter.com/grafikart_fr
💬 Discord : https://grafikart.fr/tchat
🔗 Article : https://grafikart.fr/tutoriels/css-organisation-2341 Dans ce chapitre, on va s'intéresser à un problème que l'on rencontre assez rapidement quand on commence à appliquer le CSS : comment s'organiser ? ______________________ Soutenir la chaîne : ⭐ Devenez premium :...
🔗 Article : https://grafikart.fr/tutoriels/css-organisation-2341
Dans ce chapitre, on va s'intéresser à un problème que l'on rencontre assez rapidement quand on commence à appliquer le CSS : comment s'organiser ?
______________________
Soutenir la chaîne :
⭐ Devenez premium : https://grafikart.fr/premium
Retrouvez Grafikart :
🐦 Twitter : https://twitter.com/grafikart_fr
💬 Discord : https://grafikart.fr/tchat
🔗 Article : https://grafikart.fr/tutoriels/css-layers-2340 Dans ce chapitre, on va revenir sur une notion importante en CSS : la **spécificité**. On va aussi découvrir un nouvel outil très utile pour mieux organiser nos styles : les **calques** . ______________________...
🔗 Article : https://grafikart.fr/tutoriels/css-layers-2340
Dans ce chapitre, on va revenir sur une notion importante en CSS : la **spécificité**. On va aussi découvrir un nouvel outil très utile pour mieux organiser nos styles : les **calques** .
______________________
Soutenir la chaîne :
⭐ Devenez premium : https://grafikart.fr/premium
Retrouvez Grafikart :
🐦 Twitter : https://twitter.com/grafikart_fr
💬 Discord : https://grafikart.fr/tchat
🔗 Article : https://grafikart.fr/tutoriels/css-nesting-2339 Dans ce chapitre, on va découvrir deux éléments de syntaxe supplémentaire ______________________ Soutenir la chaîne : ⭐ Devenez premium : https://grafikart.fr/premium Retrouvez Grafikart : 🐦 Twitter :...
🔗 Article : https://grafikart.fr/tutoriels/css-animations-2338 Dans ce chapitre, on va découvrir les **transitions** et les **animations** en CSS. Ce sont deux mécanismes proches, mais ils ne répondent pas exactement au même besoin. ______________________ Soutenir la chaîne :...
🔗 Article : https://grafikart.fr/tutoriels/css-animations-2338
Dans ce chapitre, on va découvrir les **transitions** et les **animations** en CSS. Ce sont deux mécanismes proches, mais ils ne répondent pas exactement au même besoin.
______________________
Soutenir la chaîne :
⭐ Devenez premium : https://grafikart.fr/premium
Retrouvez Grafikart :
🐦 Twitter : https://twitter.com/grafikart_fr
💬 Discord : https://grafikart.fr/tchat
🔗 Article : https://grafikart.fr/tutoriels/css-transform-2337 Dans ce chapitre, on va s'intéresser à la propriété **`transform`** qui permet d'appliquer des transformations à un élément (le déplacer, le redimensionner, le faire tourner ou encore le déformer)....
🔗 Article : https://grafikart.fr/tutoriels/css-transform-2337
Dans ce chapitre, on va s'intéresser à la propriété **`transform`** qui permet d'appliquer des transformations à un élément (le déplacer, le redimensionner, le faire tourner ou encore le déformer).
______________________
Soutenir la chaîne :
⭐ Devenez premium : https://grafikart.fr/premium
Retrouvez Grafikart :
🐦 Twitter : https://twitter.com/grafikart_fr
💬 Discord : https://grafikart.fr/tchat
🔗 Article : https://grafikart.fr/tutoriels/css-overflow-2336 Dans ce chapitre, on va découvrir la propriété **`overflow`**. Elle permet de gérer ce qu'il se passe lorsqu'un contenu dépasse de son conteneur, et notamment de contrôler l'apparition des zones de défilement....
🔗 Article : https://grafikart.fr/tutoriels/css-overflow-2336
Dans ce chapitre, on va découvrir la propriété **`overflow`**. Elle permet de gérer ce qu'il se passe lorsqu'un contenu dépasse de son conteneur, et notamment de contrôler l'apparition des zones de défilement.
______________________
Soutenir la chaîne :
⭐ Devenez premium : https://grafikart.fr/premium
Retrouvez Grafikart :
🐦 Twitter : https://twitter.com/grafikart_fr
💬 Discord : https://grafikart.fr/tchat