Vue normale

Il y a de nouveaux articles disponibles, cliquez pour rafraîchir la page.
À partir d’avant-hierFlux principal

GitType - Le jeu qui vous fait retaper votre propre code (pour redevenir bon !!)

Par : Korben
3 octobre 2025 à 09:10

Vous savez ce moment où vous regardez votre historique Git et vous vous demandez qui est le débile qui a écrit ce code dégueulasse ?

Ah bah ouais, c’était vous il y a 3 mois ^^. Eh bien GitType a trouvé la meilleure des thérapies qui est de vous faire retaper tout ça, lettre par lettre, comme une punition de primaire version développeur, totalement gamifiée avec des points, un chrono, et la possibilité de mesurer à quel point vos doigts sont devenus flasques depuis que Copilot fait tout le boulot à votre place.

Le tagline du projet, c’est “Show your AI who’s boss: just you, your keyboard, and your coding sins”. Et c’est pas une blague, c’est un manifeste car pendant que Copilot, ChatGPT, Claude Code et compagnie écrivent du code à notre place, GitType vous fait faire exactement l’inverse… il vous force à retaper du code pour redevenir bon !

Et contrairement aux tests de frappes classiques comme Ttyper ou tt qui vous font taper du texte générique, GitType utilise du VRAI code source. Votre code, celui de vos repos préférés, ou des repos trending de GitHub. Comme ça, vous ne vous entraînez pas sur du “ the quick brown fox jumps over the lazy dog ” à la con, mais sur vos propres merdes spaghettico-syntaxiques en Rust, TypeScript, Python ou Go.

Le jeu vous propose plusieurs modes. Y’a le mode Normal pour vous échauffer tranquillement, le Time Attack quand vous voulez vous mettre la pression, et des niveaux de difficulté de Easy à Zen pour ceux qui veulent méditer en tapant du code. Le tout avec un tracking en temps réel de votre WPM (words per minute) et de votre précision. Comme ça, plus vous progressez, plus vous montez dans le ranking avec des titres de développeur qui évoluent.

GitType supporte plus de 15 langages de programmation et propose plus de 15 thèmes visuels en mode Dark ou Light, avec possibilité de personnaliser le vôtre. L’installation est simple…

curl -sSL https://raw.githubusercontent.com/unhappychoice/gittype/main/install.sh | bash

Ou via Brew, ou avec un téléchargement direct de binaires. Ça prend 30 secondes chrono. Autre truc sympa aussi, vous pouvez cloner n’importe quel repo GitHub directement depuis le jeu pour vous entraîner dessus.

Comme ça, vous pourrez réaliser votre fantasme le plus humide, à savoir retaper le code de Linus Torvalds !

Cet outil va comme ça l’air de rien vous réapprendre à taper du code vous même, parce que faut bien le reconnaitre, depuis que tout le monde s’est mis au vibe coding, c’est difficile de dire à nos doigts et nos cerveaux de s’y remettre. Avec GitType, vos doigts retrouvent leurs réflexes, vous mémorisez mieux la syntaxe, vous devenez plus rapide au clavier, votre haleine redevient fraiche et vous chopez enfin des matchs sur Tinder, c’est SÛR !!

Ce projet est dispo en open-source sous licence MIT et franchement, vu comment nos IA nous assistent de partout, c’est pas plus mal de garder un peu de muscle mémoire au cas où…

Source

Pensez à activer les versions immuables sur GitHub pour éviter les problèmes de sécurité

Par : Korben
15 septembre 2025 à 09:58

Vous saviez qu’en ce moment, les attaques sur la supply chain faisaient des ravages ? En effet, les attaquants exploitent régulièrement la possibilité de modifier des tags existants pour injecter du code malveillant dans les pipelines CI/CD.

Mais heureusement, GitHub a enfin sorti LA fonctionnalité qui peut empêcher ce carnage : les Immutable Releases et je pense que c’est le genre de truc que tous les développeurs devraient activer illico sur leurs repos. Je vais vous expliquer pourquoi.

En fait, une fois que vous publiez une release avec cette option activée, plus personne ne peut toucher ni aux assets ni au tag associé. C’est comme si vous mettiez votre release dans un coffre-fort dont vous jetez la clé. Même vous, en tant que mainteneur, vous ne pouvez plus modifier les binaires ou déplacer le tag vers un autre commit.

D’après la documentation officielle , chaque release immuable génère automatiquement une attestation cryptographique. Cette attestation contient le SHA du commit, le tag et la liste des assets. Vos utilisateurs peuvent vérifier l’intégrité de ce qu’ils téléchargent en s’assurant que cela correspond exactement à ce que vous avez publié.

Pour activer cette option merveilleuse, c’est dans les settings de votre repo ou de votre organisation. Une fois activé, toutes les nouvelles releases deviennent alors automatiquement immuables. Les anciennes releases restent toutefois modifiables (pour éviter de casser vos workflows existants), mais bon, c’est mieux de migrer progressivement.

Attention quand même, il y a quelques pièges à éviter. Premièrement, vous ne pouvez plus ajouter d’assets après publication. Donc si votre CI upload les binaires après avoir créé la release, il faut inverser : Créez d’abord une draft release, uploadez les assets, puis publiez. Deuxièmement, si vous supprimez une release immuable, vous ne pourrez JAMAIS réutiliser le même tag. C’est définitif.

Pour les projets qui utilisent des tags de version majeure style v1 qu’ils mettent à jour régulièrement (coucou GitHub Actions), pas de panique. Vous pouvez continuer à utiliser cette pratique pour les tags qui ne sont pas associés à des releases. L’immuabilité ne s’applique qu’aux releases publiées, pas aux tags simples.

Les équipes de sécurité recommandent d’ailleurs d’activer cette fonctionnalité sur tous les repos qui publient du code versionné. C’est particulièrement critique pour les bibliothèques open source, les GitHub Actions, et tout ce qui est consommé par d’autres projets. En gros, si votre code finit dans la supply chain de quelqu’un d’autre, vous leur devez cette protection.

Le truc cool aussi, c’est que ça protège contre les erreurs humaines. Combien de fois j’ai vu des mainteneurs qui écrasaient accidentellement une release avec la mauvaise version ? Ou qui supprimaient un asset critique par erreur ? Avec les Immutable Releases, ces accidents appartiennent au passé.

Pour les entreprises, c’est un argument de vente en or. Ça permet de garantir à vos clients que vos releases ne peuvent pas être altérées après publication, c’est un niveau de confiance supplémentaire surtout dans des secteurs régulés où la traçabilité est cruciale.

Bref, GitHub est en train de déployer progressivement cette fonctionnalité en public preview. Pour l’instant, il faut l’activer manuellement pour chaque repo, mais ils travaillent sur une API pour permettre l’activation en masse. D’ici là, prenez donc 2 minutes pour l’activer sur vos projets critiques.

Voilà, après les dégâts causés par les attaques de type tag hijacking ces dernières années, ne pas activer les Immutable Releases sur vos repos publics, c’est comme laisser votre porte d’entrée grande ouverte avant de partir en vacances. Vous pouvez le faire, mais ne venez pas pleurer si ça tourne mal.

Google Stitch - L'IA qui transforme vos gribouillis en interfaces pro

Par : Korben
8 septembre 2025 à 12:20

J’sais pas si vous avez vu, mais Google a sorti en beta, encore un truc qui va mettre les experts UX/UI au chomdu ! Son petit nom c’est Stitch (rien à voir avec Lilo) et vous pouvez le découvrir sur stitch.withgoogle.com . En gros, Stitch c’est une boîte à outils expérimentale qui utilise de l’IA pour transformer vos idées de site ou d’appli mobiles en interfaces utilisateur fonctionnelles en un rien de temps.

Le principe c’est comme d’hab, vous entrez une description en langage naturel du style “Vazy crée-moi une app mobile dark theme avec une navbar, une carte de profil et un bouton d’action flottant, wesh”, et hop ! Stitch vous sort de son chapeau l’interface complète avec le code HTML/CSS qui va bien. C’est annoncé officiellement depuis mai sur le blog Google Developers depuis Google I/O 2025. Oui, je sais, j’suis pas pressé. J’ai un métier moi (non).

Et si vous n’êtes pas inspiré, mais que vous trouver l’app ou le site d’un concurrent sexy, vous pouvez également uploader une capture écran de son interface ou d’un gribouillis de votre cru, ou même un wireframe fait à l’arrache. Et Stitch analysera l’image et vous crachera une version propre et fonctionnelle.

Gemini 2.5 est bien sûr le maître d’œuvre et Stitch vous propose deux modes : Gemini 2.5 Flash pour la rapidité (350 générations par mois), ou Gemini 2.5 Pro pour des résultats plus sophistiqués (50 générations par mois). Notez que le mode Pro est particulièrement bon quand vous travaillez avec des inputs visuels complexes.

L’intégration avec Figma est aussi un vrai plus. Vous pouvez donc exporter directement votre design dans Figma tout en préservant les calques et les composants ce qui est pratique pour les designers qui veulent peaufiner le résultat ou pour les équipes qui bossent déjà avec cet outil. Par contre, moi j’y ai pas accès, donc je pense qu’il faut un abonnement pro pour profiter de cette option.

Pour les développeurs, le code généré est également plutôt propre et bien structuré. Moi j’ai testé en demandant une interface pour une potentielle application Korben sur iOS / Android (j’suis pas sûr qu’il y ait un vrai besoin cela dit) et il m’a pondu un truc assez classique mais très propre, basé sur Tailwind CSS.

Et évidemment, chez Google, ils vous diront que l’objectif n’est pas de remplacer Figma ou Adobe XD, mais plutôt de faciliter la phase initiale de prototypage qui peut être fastidieuse. Mais bon, à terme, je pense que ce sera la fin pour ce genre d’outils sauf s’ils embrassent eux aussi, l’IA générative.

L’outil propose évidemment un chat interactif pour affiner le design, des sélecteurs de thèmes, et la possibilité de modifier le résultat en temps réel. Vous pouvez aussi jongler entre les versions web et mobile de votre interface en un clic. Pour l’instant, c’est gratuit mais avec des limitations mensuelles. Il vous faut un compte Google et c’est disponible dans 212 pays, uniquement en anglais.

C’est donc parfait pour les débutants avec des idées d’apps, les développeurs qui veulent prototyper rapidement, et les designers qui cherchent à explorer des variantes rapidement avec une bonne UX/UI faite dans les règles de l’art.

Mais attention quand même… Pour ma part, j’ai testé le bouton de téléchargement pour récupérer un design et ça n’a pas fonctionné… preuve que c’est vraiment encore en beta !

Voilà, donc si vous voulez tester, rendez-vous sur stitch.withgoogle.com . Ça peut vous faire gagner du temps sur les phases de brainstorming et de prototypage rapide.

Merci à Rpc2dot0 pour la découverte !

Python - Comment un petit projet de Noël est devenu le langage de l'IA et de la science

Par : Korben
2 septembre 2025 à 14:02

Y’a pas une semaine qui passe sans que je code un petit peu de Python, alors quand je suis tombé sur ce documentaire que Cult.Repo vient de sortir , je me suis dit que c’était l’occasion d’en apprendre un peu plus sur ce langage qui fait tourner l’IA chez Google, Meta et OpenAI, et qui (je viens de l’apprendre) a commencé comme un projet de vacances. Guido van Rossum son créateur cherchait juste un truc pour s’occuper pendant les vacances de Noël en 1989. Son bureau était fermé, il s’ennuyait, alors il a pondu les bases d’un nouveau langage en deux semaines. Pour le fun.

Le documentaire montre vraiment bien comment ce petit projet perso est devenu un monstre. Au départ, van Rossum bossait au CWI à Amsterdam sur un langage appelé ABC, sauf qu’ABC avait plein de défauts et surtout, impossible de l’étendre. Python, c’était donc sa revanche… prendre le meilleur d’ABC (comme l’indentation pour structurer le code) et virer tout ce qui l’énervait.

Le nom Python, d’ailleurs, ça n’a rien à voir avec le serpent. Van Rossum était fan des Monty Python. Il cherchait un nom court, mystérieux, et il lisait les scripts de la série à ce moment-là. Voilà donc comment le langage le plus utilisé au monde a hérité du nom d’une troupe de comiques britanniques.

Un fait marquant dans cette histoire, c’est la crise de 2018. Le 12 juillet 2018, Guido van Rossum a tout plaqué . Il était le “Benevolent Dictator For Life” (BDFL) de Python depuis le début, et là, pouf, terminé.

La raison ? Une discussion autour de la PEP 572, qui proposait d’ajouter l’opérateur walrus (:=) à Python. Les échanges sont devenus tellement toxiques sur les mailing-lists que van Rossum a craqué. Il a dit en gros : “J’en ai marre de me battre pour mes décisions et de voir que tout le monde les déteste. Je me casse.” On dirait moi quand je me suis cassé des réseaux sociaux ^^.

Cette histoire de PEP 572, c’était pas juste une dispute technique. C’était l’une des pires discussions de l’histoire de Python , avec des threads énormes sur plusieurs mailing-lists et des sondages. Les développeurs trouvaient que ça allait contre la philosophie de Python, c’est à dire la simplicité avant la complexité et Van Rossum a fini par avoir gain de cause, mais le prix à payer était trop élevé.

Ce qui est fascinant, c’est que Python a survécu à cette crise. Van Rossum n’a pas nommé de successeur et a laissé la communauté se débrouiller. Les 100-200 développeurs avec droits de commit ont alors dû créer un nouveau modèle de gouvernance avec comme deadlines le 1er octobre 2018 pour les propositions, et le 1er novembre pour voter. Et ça a marché.

Notez que Van Rossum est resté dans le Steering Council de Python jusqu’en 2019, puis s’est retiré des nominations pour 2020. Mais il reste confiant sur l’avenir et dit que la communauté Python est solide, avec un noyau dur dynamique, et qu’il ne serait jamais parti s’il pensait qu’ils ne pourraient pas guider le langage pendant encore des décennies.

Cult.Repo prépare déjà des documentaires sur Vite (qui sort le 9 octobre à Amsterdam) et C++ . Si c’est du même niveau que celui sur Python, ça vaut le coup d’œil. Bref, si vous codez en Python ou si vous vous intéressez à l’histoire de la tech, regardez ce documentaire car c’est rare de voir les coulisses d’un langage de programmation racontées comme ça, avec les conflits, les personnalités et les décisions qui ont façonné cet outil qu’on utilise tous les jours.

❌
❌