Yann Leflour's Avatar

Yann Leflour

@yleflour.me

Engineer and maker at ๐Ÿ’œ - Exploring software craftsmanship with AI @ https://pairprog.io - Writing about it @ https://blog.pairprog.io

76
Followers
216
Following
148
Posts
15.08.2023
Joined
Posts Following

Latest posts by Yann Leflour @yleflour.me

Preview
GitHub - obra/superpowers: An agentic skills framework & software development methodology that works. An agentic skills framework & software development methodology that works. - obra/superpowers

Superpowers is an amazing piece of engineering

It may seem like a simple brainstorm / plan / execute worflow, but the execution is top notch

If you care about software craftsmanship, then it's a must have in your toolset

The output's quality for each step is unparalled

github.com/obra/superp...

12.02.2026 08:50 ๐Ÿ‘ 0 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0

But when you go into specifics they add in the usual constraints

"Can't pick the top model because we have a contract with company X or Y"

"Here's 30$ in tokens per month, we expect you to become AI experts"

"But we have Claude Code at home" -> it's Gemini CLI

And so on...

03.02.2026 23:18 ๐Ÿ‘ 1 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0

3. I've invested in learning how to use this tool in my field of expertise. Holy cow, it's transformational but will be a plague for human intent, knowledge, and creativity.

17.10.2025 12:16 ๐Ÿ‘ 2 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0

Our generation had a progressive switch from slow 2D to nervous 3D and it shows

It's the same between fast & flashy 3D cartoons vs old school 2D animation

Old school is way easier on the kid's mind and gives them time to adapt without being overloaded

09.10.2025 09:50 ๐Ÿ‘ 0 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0

My eldest gets obsessed by screens. It's hard to make him snap out of it and he can get really angry when playing (which defeats the purpose). My stance:

- Tablets are a no-go
- Switch games make him too twitchy
- Things are going much smoother with my old GBA. So now investing in retro gaming

09.10.2025 09:50 ๐Ÿ‘ 0 ๐Ÿ” 0 ๐Ÿ’ฌ 1 ๐Ÿ“Œ 0

My kids are French and I can tell you that if you went 4 days without comment, it's more about the other person hating kids than your kids being kids

American or not

10.08.2025 16:30 ๐Ÿ‘ 1 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0

It's July 2025 and prompting is still a skill

A skill I have a hard time teaching

Some people just get it, but most struggle

And no, LLMs are not very good at prompting themselves without another prompt to guide them

29.07.2025 12:13 ๐Ÿ‘ 0 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Post image @synstack/fs - turn verbose fs code into elegant one-liners  - ๐Ÿš‚ Method chaining - `dir('./src').file("my-file.txt").read.text()` - ๐Ÿ”’ Immutable operations - each method returns a new instance - ๐Ÿ“„ Multi-format support - JSON, YAML, XML, Base64 out of the box - ๐Ÿ›ก๏ธ Type-safe JSON/YAML with Zod schema validation - catch data errors at runtime - ๐Ÿš€ Auto-creates parent directories - no more mkdir -p before writing files - ๐ŸŽฏ Powerful glob patterns - find files with `dir.glob("**/*.ts", "!*.test.ts")` - ๐Ÿ”„ Sync & async APIs - use what fits your workflow

@synstack/fs - turn verbose fs code into elegant one-liners - ๐Ÿš‚ Method chaining - `dir('./src').file("my-file.txt").read.text()` - ๐Ÿ”’ Immutable operations - each method returns a new instance - ๐Ÿ“„ Multi-format support - JSON, YAML, XML, Base64 out of the box - ๐Ÿ›ก๏ธ Type-safe JSON/YAML with Zod schema validation - catch data errors at runtime - ๐Ÿš€ Auto-creates parent directories - no more mkdir -p before writing files - ๐ŸŽฏ Powerful glob patterns - find files with `dir.glob("**/*.ts", "!*.test.ts")` - ๐Ÿ”„ Sync & async APIs - use what fits your workflow

If you are tired as me of working with native path and fs libraries in NodeJS, you might like my
www.npmjs.com/package/@sy... NPM package.

A library to finally turn verbose JS filesystem code into elegant one-liners

28.07.2025 11:00 ๐Ÿ‘ 1 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0

My guess is that such tool would have absolutely helped a good project manager deal with the clutter

They would have asked the LLM the right questions & steered the RAG project to surface the relevant information for decision making

This is the usual paradox of trying to replace instead of enhance

27.07.2025 09:00 ๐Ÿ‘ 0 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0

Cursor has a system prompt issue.

I'm using LLMs for a complex software migrations and have leveraged everything I know about prompting.

While the model is the same as Claude Code, Cursor seems unable to follow the provided instructions.

Cursor simply feels broken now

25.07.2025 10:56 ๐Ÿ‘ 0 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0

1. Make the characters face down so it looks like they're looking at the player
2. Faster animation but pause between drops
3. When landing, put them in kneeling position and add aome impact on the landing
4. When all 4 have landed, strike a pose for a second before starting play

25.07.2025 07:06 ๐Ÿ‘ 1 ๐Ÿ” 0 ๐Ÿ’ฌ 1 ๐Ÿ“Œ 0
Post image Post image Post image

LLMs have helped me build dozens of libraries I've always wanted in Javascript

My favorite one is
www.npmjs.com/package/@sy...

The concept is simple, what if you could write clean template strings in JS ?

I've been using it for clean error formating, LLM messages, and more

23.07.2025 11:00 ๐Ÿ‘ 0 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0

I really don't get why they haven't defaulted all their commands to git equivalent, like "git ls"

01.07.2025 14:37 ๐Ÿ‘ 0 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0

You're not alone feeling this dissonance

I'd also note that it's hard having a rational and nuanced discussion about this with most people

10.06.2025 14:04 ๐Ÿ‘ 2 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0

I just went through the "Introducing Zod 4" post

What strikes me the most is the amount of work done to reduce TS inference costs and prevent infinite type instantiation errors

Would love a write-up focused on all the tips and tricks to do so on such a complex library to type

20.05.2025 07:23 ๐Ÿ‘ 1 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Post image
13.05.2025 11:04 ๐Ÿ‘ 0 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0

The spec allow it

But you'd have to add your own notification pattern on top, making it non compatible with a base A2A client/UI

Which kind of breaks the advantages of using an industry standard

06.05.2025 16:55 ๐Ÿ‘ 0 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0

It feels wrong not to have it

I totally get that asynchronous task handling is the expected behavior

But I don't get why we can't have the best of both worlds

If I built a good A2A endpoint, I'd love to be able to plug a frontend with streaming to it

06.05.2025 16:44 ๐Ÿ‘ 0 ๐Ÿ” 0 ๐Ÿ’ฌ 1 ๐Ÿ“Œ 0

My main gripe with the protocol is that it doesn't allow for direct human interaction

If you want to talk with an agent, you can't stream the response without some serious workarounds

Would have loved some Assistant API endpoints compatibility

06.05.2025 16:11 ๐Ÿ‘ 0 ๐Ÿ” 0 ๐Ÿ’ฌ 1 ๐Ÿ“Œ 0

I'd say that it makes even more sense in that case

I've built AI based tools dedicated to understanding such codebases and extracting business rules

I would never have dared getting into those projects without LLMs

14.04.2025 16:25 ๐Ÿ‘ 1 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0

I found a good to separate engineers from AI button pushers that works for now

I let them use AI however they want but send them straight to a failing test without context

The catch being you can't solve the issue without going through the project's context, and LLMs love going straight to code

11.04.2025 17:23 ๐Ÿ‘ 39 ๐Ÿ” 0 ๐Ÿ’ฌ 3 ๐Ÿ“Œ 0

When I'm hired to enable a team with AI tools what I'm actually paid for is asking the right questions to reverse engineer how the team works

When I have that, building the tools is the easy part

Also why I fear that the agents trend will do a lot of harm to craftsmanship

07.04.2025 11:00 ๐Ÿ‘ 1 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Post image Post image

If you're building LLM based products, check out napkin.ai

Blending pre-made templates with LLM formatting may seem like a straightforward idea but they've executed it really well with a clean UX

And if you need to fill a presentation with corporate BS, just ask it to generate the text as well ๐Ÿ˜…

31.03.2025 15:06 ๐Ÿ‘ 0 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0

Like the only topic that got me to keep X installed unfortunately

I actually value ML news being more downstream focused here. As I work on AI engineering and product, I still get the big news without the constant FOMO I experience on X

21.03.2025 07:16 ๐Ÿ‘ 6 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Vibe Coding with AI in 2025
Vibe Coding with AI in 2025 YouTube video by Programmers are also human

I've used vibe coding (AI codes without you reviewing) to build a visualizer for a graph with Cline

Would never trust a core product or mission critical system coded like this

People are mistaking vibe coding and vibe engineering

youtube.com/shorts/1_rSr...

18.03.2025 08:16 ๐Ÿ‘ 0 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0

On the other side, I've started to review LLM chats in my recruitment process and about 80% of candidates just ask LLMs to write the code for them without any follow up questions about engineering decisions or explanation

As a recruiter I don't need button pushers, I need engineers

13.03.2025 10:25 ๐Ÿ‘ 1 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0

The issue is companies considering interns simply as executing resources, without agency or engineering capabilities

LLMs now do a lot of the executing and these companies don't know how to train engineers, which mean they see interns as useless

13.03.2025 10:25 ๐Ÿ‘ 0 ๐Ÿ” 0 ๐Ÿ’ฌ 1 ๐Ÿ“Œ 0

Mostly because the Angular team fumbled the 2.0 release hard

You didn't want to stay on AngularJS for new projects but the Angular 2.0 API kept changing through their >100 release candidates

So you defaulted to React which was barebone but more stable

And React Native also made the difference

10.03.2025 07:55 ๐Ÿ‘ 1 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0

An upside of LLMs is that, just by using them, people will get better at providing instructions and the right context

The downside is that they'll likely stay to get frustrated when you take over 1mn to respond

07.03.2025 23:16 ๐Ÿ‘ 0 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0

I am and I plan on including a version of it as a plugin in my product. Haven't started working on this part yet though

I wonder how you are approaching the problem. Detecting, storing, and querying knowledge is a hard one to abstract

Best guess is a graph approach like Zettelkasten

06.03.2025 18:35 ๐Ÿ‘ 0 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0