328 private links
Stackoverflow était sur une pente descendante d'utilisation avant l'arrivée des LLMs. Cela n'a fait qu'amplifier le phénomène.
Mais, à travers ChatGPT ou Claude Code, personne ne voit mon nom ni celui des autres contributeurs et contributrices, personne ne réalise qu’il y a des soirées entières offertes pour aider.
SQLite lessons:
- The SQLite gem supports user defined functions (udfs) and we used it to implement some missing functions in SQLite like regexp, if and stddev so that we wouldn't have to deal with too many sql migration workarounds.
- SQLite doesn't support unsigned bigints. Previously, the mariadb was using unsigned bigints for certain ids, so we had to switch those to bigints for the migration.
- Collation in SQLite is rather weak compared to MariaDB. Lobste.rs used utf8mb4_general_ci in MariaDB, but used NOCASE in SQLite. The downside of NOCASE is that it only supports ASCII characters, not the full UTF case folding.
- Use the preferred Contentless-Delete Tables in SQLite for your full text search tables. These are not the default. I'm constantly surprised by the default choices of SQLite.
[...]
Overall lessons:- I think a key ingredient in making this work was good communication from everyone that participated. I don't think this would have been possible otherwise.
- Migrating the underlying database without having access to the production database is really hard to get right. This was my first underlying database migration without having access to production. One lesson I'll take away from this is that I'll make sure to have realistic dataset sizes before doing another underlying database migration in the future.
Wishes:
- I wish we could say in a test, "Fail if you encounter any full table scans". Which would have caught the perf issues we experienced during the first deploy.
- I wish creating a production like dataset would be much easier than having to manually write something and waiting a week.
That a good point: how is amount_due defined in Stripe ?
It's better to make the property explicit than making assumptions.
Un retour sur des outils d'IA pour la sécurité.
The feedback of a developers tired of the stress induced by the job, a disalignment of values and arbitrary measure of values.
About learning between humans, it seems. Josh W. Comeau receently shared that the last course "sell roughly 1/3 as many copies as a typical course launch. [...] There's sort of a double whammy with AI:
- Many people are wondering whether developer jobs will even exist in a few months.
- Even if they do want to learn new dev skills, LLMs can provide personalized tutoring so there's less incentive to buy a paid course.
The entire vibe has shifted. The majority of [community] folks are still on Twitter but there’s so much AI grifting and misery and hate in that place. LinkedIn is a parody of itself at this point. Bluesky feels reasonably cosy but way too much of a bubble. The community isn’t there. The forums are dead, the new Discord is quiet.
How they went down from 11MB to 900KB all included for pages.
The time to first byte went from 1.1s down to 0.048s, 0 cumulative layout shifts.
They recommend https://astro-component-starter.cc/
A feedback from Robb Knight.
How he gets to write blog posts, the tech stack used for the blog, some blog recommendations, POSSE and more.
L'article relate la gestion des bots d'IA: ils sont devenus un enfer depuis quelques temps.
Un site web ne se résume pas à des fichiers statiques : beaucoup de pages HTML sont générées dynamiquement par des CMS ou frameworks comme WordPress, Symfony ou Python. Chaque visite peut donc consommer du CPU, de la RAM, des accès base de données et de la bande passante. Quand des visites massives ou illégitimes arrivent, elles peuvent ralentir les sites des clients hébergés.
Jusqu’en 2023, les principaux robots étaient surtout des crawlers classiques comme Googlebot ou Bingbot. Certains bots mal réglés, comme Ahrefsbot, pouvaient poser problème, mais ils étaient généralement identifiables et blocables. Certains crawlaient très mal, visitant des milliers de sous-pages inutiles ou coûteuses, contournant les caches et saturant CPU/RAM.
Au début, la défense consistait à bloquer les bots via leur User-Agent, c’est-à-dire le nom qu’ils déclarent lorsqu’ils visitent un site.
Ensuite, certains bots ont commencé à se cacher derrière de faux User-Agent, en se faisant passer pour de vieux navigateurs ou appareils obsolètes. La stratégie de blocage consiste à interdire certaines plages IP de prestataires clairement identifiés et à bloquer certains navigateurs improbables ou représentant quasiment 0 % du trafic réel.
Cela demande du temps d’ingénieur, consomme des ressources serveur, de la bande passante, use les machines, et augmente donc les coûts continuellement.
Dernièrement en 2025, les bots ont commencé à avoir des IPs résidentielles et des User-Agent crédibles. Octopuce cite le cas d'un crawler sauvage utilisant 1,3 million d’adresses IP distinctes en deux semaines, dont 950 000 n’ont fait qu’une seule requête. Ces nouveaux crawls utiliseraient des téléphones Android via des applications douteuses permettant de monétiser la bande passante des utilisateurs. Cette méthode est illégitime et sûrement illégale.
Octopuce conclut sur l'utilisation d'Anubis comme parade partielle, mais aucune solution n'existe actuellement. Ce coût de l'IA n'est pas prise en compte dans le bilan environnemental réel des services d’IA.
The migration to Codeberg is really easy.
After 20 years of programming, they started its own business.
- Fresh Mayhem — interactive learning HackRF + PortaPack compatible dashboard
- Free Willy — LLM-powered Flipper Zero compatible dashboard control from your desktop
- Claude Conductor — 300+ stars on GitHub, open source
- Claude Anchor — persistent memory framework for Claude Code
- Pager themes — custom theme that is compatible with the Hak5 WiFi Pineapple Pager
- The Rusty Suite — a growing family of privacy-first desktop apps, $10/mo for everything
6.6kW of power with 18 panels.
Bloquer les IPs lisant des wordpress douteux, des .php sur un site statique, etc...
The AI is a capable to build product from scratch, up to a limit.
A good use of <picture>, sparingly creating a system to fetch the main content of the page, minification, image optimization of all formats,
The final product was lightning-fast even on the weakest data connections and most underpowered devices. Showing it off at trade shows, we found that competitive products were still displaying a loading spinner when our application was already loaded, rendered, and running.