Charles Desneuf

Charles Desneuf

@selrahcd.bsky.social

Agile Tech coach Expect to hear about testing, archi, DDD, and maybe music.

256 followers525 following598 posts

View full thread

demonstrating the bug but showing me a smaller unit of code where it intended to implement the fix. That was the correct fix but not the right proof that the issue was gone.

I don’t know if I’ll keep that system but so far it helps me stress less about reviewing code changes and I hope that it will drive agents better. I’m curious about what you think of that idea and if you’ve tried similar things how it went.

View full thread

TDD-Red: one test change, that test must fail and that commit must be followed by a TDD-Green commit TDD-Green: must follow a red, and must be passing. I don’t claim that this alone will make your agent do interesting TDD cycles but at least that’s a start.

Another type: Regression-test: a test change, must fail and be followed by a fix. Use it when fixing a bug. That one must be accompanied with another trailer indicating what error is to be expected at failure. The hooks validates the error. I had once the agent create a failing test not…

View full thread

The hook can also run the tests to make sure they are passing which means that when you review a code change you can easily see if tests were written before the implementation change and were passing, and if the refactoring is still ok.

You don’t have to play the computer in your head and verify that behavior is preserved. The tests are serving as the safety net for refactoring they are supposed to be. (As long as they are decent test…) Once this was in place it gave me some other commit types ideas:

View full thread

Mine is X-Commit-Type and has multiple values. The commit hook looks at the trailer and enforces rules. Let’s start with the boring ones: Feat: you can do whatever you want Fix: same thing Docs: you can edit doc

View full thread

The goal is to know if tests were created before, and are ensuring that behavior is preserved, or after/at the same time, which means they are worth nothing in term of trust. At first I wanted to have a way to avoid checking if a commit that was supposed to contains only test changes…

I’m currently refactoring some code and I do not trust agents to preserve behavior. I have a workflow where tests creation and modification to support the new implementation and the refactoring are splitted in multiple more easily reviewable commits.

Charles Desneuf reposted

Replying to @selrahcd.bsky.social

Yes, I'm not convinced AI is better than the best teams I worked with in the long-run. But if you're just used to working in a feature factory and not caring about quality I can see why it looks like the same thing but faster.

Charles Desneuf reposted

A Montpellier hier. Comment ces images ne font pas l'ouverture des JT ?

Bon Pote@bonpote.com

Le plus honteux, c'est que ça ne fasse pas l'ouverture des JT, des débats en plateaux. Des dizaines de vidéos de néo-nazis circulent sur les réseaux mais eux, RIEN. Courage Eric, la presse indépendante va et doit prendre le relai

Charles Desneuf reposted

Someone on LinkedIn had the profound idea that you should not follow domain-driven design because it forces you to bind your domain model to closely with the real world. Instead you should understand which use cases and constraints are worth modelling. We should find a name for that.

A nullable column for a classification field is a sign that you’ve given up understanding something.

Charles Desneuf@selrahcd.bsky.social

Software Design tip: Saying that something doesn't have a value in a category is a form of categorizing too. Try to find a name for that "Not a value" instead of going with null.

Software Design tip: Saying that something doesn't have a value in a category is a form of categorizing too. Try to find a name for that "Not a value" instead of going with null.

Charles Desneuf reposted

If you can't recognize better and worse test design, you can't usefully instruct an AI to write tests. If you've never seen well-designed tests, learn what they are first. #harness_engineering

Charles Desneuf reposted

Une honte. Une défaite totale. Une indignité que la gauche regrettera longtemps. C'est un minable travail qui aboutit à la mise en danger des personnes malades et handicapées en pleine montée du fascisme, avec l'assentiment de la gauche.

Clémentine Autain@clementineautain.bsky.social

Un progrès. Une victoire. Une dignité nouvelle. À 295 voix contre 232, la loi sur la fin de vie est solennellement adoptée ! C'est un long et impressionnant travail dans la société qui aboutit à la création d'un nouveau droit, celui de l'aide à mourir.

Charles Desneuf reposted

Une vague géante pour Louis Vuitton. Cinq camions de police pour une piscine de cité. La planète brûle, mais tout le monde n’a pas le même droit à l’eau, à l’ombre, au luxe ou à l’espace public. Les riches privatisent l’espace, l’eau, les forêts, les récits et les imaginaires…

Charles Desneuf reposted

"nous sommes tous dans le même bateau"

Mr. Propagande@mrpropagande.bsky.social

Séquence lunaire sur Quotidien où depuis son plateau climatisé, Yann Barthès se moque des personnes qui vivent sous les toits et nous explique que riches et pauvres sont égaux face à la canicule

Bi-annual reminder that the best way to improve your tests is to add randomness to your fixtures creation toolset. This is the best way if you have a fixture creation toolset, otherwise making that toolset is the best way. So I guess that makes it the second best way.