Sign in

Younes Jaaidi

@younesjd.dev
985 followers 134 following 345 posts

👨🏻‍🍳 Software Cook, Teacher & Coach @ marmicode.io ✨ Google Developer Expert for #Angular 🌊 Nx Champion ✅ marmico.de/test.ng: Pragmatic Angular Testing Course 👨🏻‍🏫 marmico.de/workshops 📚 marmico.de/cookbook

PostsRepliesMedia
Younes Jaaidi @younesjd.dev · 23/07/2026
User expectations drive engineering priorities. Half a century of innovation to reach single-digit latency... in milliseconds. The new SLA: single-digit latency... in seconds... to display: Great question! • thinking...
010
Younes Jaaidi @younesjd.dev · 23/07/2026
I also think that you can’t tell if it’s generated by the em dash use, but by its abuse 😆
020
Younes Jaaidi @younesjd.dev · 23/07/2026
Parentheses don’t mean the same and they don’t read the same. Different sentences don’t work either. You can’t replace an em dash.
110
Younes Jaaidi @younesjd.dev · 23/07/2026
💯 I decided to not care about it anymore. Being non-native, people can tell from my style and mistakes, it’s not generated 😅 As a person who loves mentioning side notes, and related thoughts, I can’t live without em dashes.
130
Younes Jaaidi @younesjd.dev · 22/07/2026
and docs are here testmex.dev
020
Younes Jaaidi @younesjd.dev · 22/07/2026
🔄 Re-runnable: run it again as your suite, and Vitest, evolve ↩️ Safety net: runs Vitest, rolls back only the failing tests 🧩 Tooling aware: #Angular CLI, #Nx, #React, Testing Library... 🚧 Coming next: Agent instructions for the non-deterministic edge cases #javascript #testing
110
Younes Jaaidi @younesjd.dev · 22/07/2026
I got tired of burning tokens, and worse, review time on Jest to @vitest.dev migrations, so I built Vitestify, a CLI that does it for you. npx @testmex/vitestify 🎯 Deterministic & beyond test files: configs, setup files, mocking APIs... 🪜 Incremental: tests that fail keep running under Jest 🧵
1103
Reposted by Younes Jaaidi
Vladimir @vladimir.berlin · 10/07/2026
`vmThreads` is 30% faster in Vitest 5 for your jsdom tests. It is now a much better alternative to the default forks+jsdom. Vitest 5 also comes with a `vitest doctor` command that will find the best settings for you! As a note, browser mode also becomes ~30% faster, but for different reasons :)
an app with 342 modules + real deps is ~32% faster. 1022 modules + heavier deps is ~28% faster
0579
Younes Jaaidi @younesjd.dev · 10/07/2026
The trick is to use LinkedIn and X from time to time so when you get back to bsky, even that little noise becomes enjoyable. More seriously, I’d love a social and blogging platform where you’d have to pay per post.
130
Younes Jaaidi @younesjd.dev · 10/07/2026
Obviously, diffing, comments etc... are still handled by your current tools (e.g. Github)
010
Younes Jaaidi @younesjd.dev · 10/07/2026
👀 Reviewer routing. Maybe one person takes the design doc and another takes the implementation. See who reviewed what, at the commit level. Still early, but I'm curious how you deal with this? and if such an OSS tool would be useful to you and what you would except from it?
110
Younes Jaaidi @younesjd.dev · 10/07/2026
🏷️ Tags for each Charted Coding step (design, scaffold, red, green, ...), so a reviewer knows what kind of change they're looking at. 🤖 More importantly, it should tell if the AI commits were supervised or not.
110
Younes Jaaidi @younesjd.dev · 10/07/2026
🫠 The problem is that most tooling is PR-first. I want to read the story, not just the last scene. So I'm exploring a commit-first review tool: 🔥 A heat map of review cost, so attention goes where it matters.
110
Younes Jaaidi @younesjd.dev · 10/07/2026
- design doc, - scaffolding (the noisy boilerplate), - failing test, - making the test pass. That sequence is the review. You can watch the feature get built, decision by decision.
110
Younes Jaaidi @younesjd.dev · 10/07/2026
🍿 Reviewing a PR is like watching the last five minutes of a movie and being asked whether the plot made sense. The thing about Charted Coding (github.com/marmicode/sk...) is that it breaks a feature into small intent-driven commits: 🧵 #AI #AIAssistedDev #ChartedCoding #TDD
design doc, scaffolding (the noisy boilerplate), failing test, making the test pass. 

That sequence is the review. You can watch the feature get built, decision by decision.

🫠 The problem is that most tooling is PR-first. I want to read the story, not just the last scene. So I'm exploring a commit-first review tool:

🔥 A heat map of review cost, so attention goes where it matters.
🏷️ Tags for each Charted Coding step (design, scaffold, red, green, ...), so a reviewer knows what kind of change they're looking at.
🤖 More importantly, it should tell if the AI commits were supervised or not.
👀 Reviewer routing. Maybe one person takes the design doc and another takes the implementation. See who reviewed what, at the commit level.

Still early, but I'm curious how you deal with this? and if such an OSS tool would be useful to you and what you would except from it?

Obviously, diffing, comments etc... are still handled by your current tools (e.g. Github)
221
Younes Jaaidi @younesjd.dev · 08/07/2026
static.klipy.com
Inception Teapot
ALT: Inception Teapot
010
Younes Jaaidi @younesjd.dev · 08/07/2026
A few days ago, while coaching a team. They showed me this Angular code... ... it turns out that the ubiquitous language of chromatography data systems (en.wikipedia.org/wiki/Chromat...) overlaps almost perfectly with #Angular 's. 😄 #javascript
Dark-themed code editor showing an Angular component class that uses signal-based inputs and a computed value. The class declares two required inputs, detectors and injections, and a computed property named signals that returns a flattened array of all signals from each injection using this.injections().flatMap(injection => injection.signals). Syntax highlighting emphasizes Angular APIs such as input.required and computed.
110
Reposted by Younes Jaaidi
Rainer Hahnekamp @rainerhahnekamp.bsky.social · 07/07/2026
At Google I/O Connect, we got the chance to record in a professional studio. So I asked my three “Angular Buddies”, @younesjd.dev, Marko Stanimirović, and @manfredsteyer.bsky.social to join me for a conversation about #Angular. Signals, what is still missing, and AI. 🎥 youtu.be/0_NsqGF8gM8
youtu.be
What’s Next for Angular? Google I/O Connect Berlin Roundtable
YouTube video by Rainer Hahnekamp
045
Younes Jaaidi @younesjd.dev · 07/07/2026
What matters most here is the review cost and steering opportunities.
000
Younes Jaaidi @younesjd.dev · 07/07/2026
In the meantime, here's an example where I measured “Common” usage of Spec Kit vs. Charted Coding. Note that on token usage, Spec Kit almost ties, but only if you accept everything and it all goes well. That's the Waterfall bet, and it rarely pays.
100
Younes Jaaidi @younesjd.dev · 07/07/2026
Wanna dive more into this or share your feedback, because I need more of it? See you Thursday live on #NgAsiaAngular YouTube channel youtube.com/@NgAsiaAngular
100
Younes Jaaidi @younesjd.dev · 07/07/2026
Small steps. Tight loops. Cheap reverts. That's the whole game, and none of this is new. It’s just some of the core values of Kent Beck’s eXtreme Programming: feedback, and courage — the courage of reverting.
100
Younes Jaaidi @younesjd.dev · 07/07/2026
Cheap reverts close doors to slop. When steps are small, drift has nowhere to hide — the wrong turn shows up in a few dozen lines, not 600. And because you review right after each step instead of babysitting a long run, you stay focused.
100
Younes Jaaidi @younesjd.dev · 07/07/2026
The trick is making every step small enough that validating or reverting costs nothing. Around 1 minute to produce. A few minutes to review. And then, every time: continue, or revert and try again.
100
Younes Jaaidi @younesjd.dev · 07/07/2026
- 💰 The Sunk Cost Fallacy: we wait 10 min for the agent, spend half an hour reviewing, and end up... not really convinced. But reverting means throwing all that time away, so we ask the agent to patch on top instead. Now we’re building on something we already don't trust.
100
Younes Jaaidi @younesjd.dev · 07/07/2026
- 🛶 The Drift: the slop and unwanted behavior that slips through the review, and whatever your harness is made of, - 🔁 The Context Switching: yes, multi-agent views look cool... but most humans are bad at multi-tasking (I'm among the worst 😅),
110
Younes Jaaidi @younesjd.dev · 07/07/2026
But I still believe the real move is smaller steps — at least for complex or original features. The real cost is not token usage, and it's not even the review cost. It's what the loop does to you:
100
Younes Jaaidi @younesjd.dev · 07/07/2026
Nothing changed since the 20th century. Waterfall is still broken and AI just makes us hit the wall faster… but still not soon enough to make it a good feedback loop. The instinct is to want faster, smarter agents, or more agents judging each other. 🧵
Alt text:

Side-by-side comparison of two AI-assisted software development workflows.

Left panel: 🌱 “Common” Spec Kit

A table compares six commands by LLM Cost and Review Cost:

Command	LLM Cost	Review Cost
/speckit.specify	$0.66	~1,200 words
/speckit.clarify	$0.53	~300 words
/speckit.plan	$0.68	~2,200 words
/speckit.tasks	$0.29	~1,800 words
/speckit.analyze	$0.26	—
/speckit.implement	$2.56	~600 lines of code

Total: $4.98 with an estimated review time of 1h30 to 3h.

The review-cost column is shaded red, emphasizing the amount of text and code that must be reviewed.

⸻

Right panel: 🧭 Charted Coding

A similar table compares a different workflow:

Command	LLM Cost	Review Cost
/charted-design	$0.88	~930 words
/charted-review	$0.87	—
3× /charted-scaffold	$1.19 (avg. ~$0.40 each)	~230 lines of code (avg. ~80 each)
3× /charted-red	$0.69 (avg. ~$0.23 each)	~200 lines of code (avg. ~70 each)
3× /charted-green	$2.25 (avg. ~$0.75 each)	~90 lines of code (avg. ~30 each)

Total: $5.88 with an estimated review time of 40 minutes to 1h30.

The review-cost column is shaded green, highlighting that work is split into much smaller, incremental review units.

Overall message: Although Charted Coding costs slightly more in LLM usage ($5.88 vs. $4.98), it dramatically reduces review effort by replacing large documents and a single ~600-line implementation with smaller, incremental design documents and code changes, leading to a much shorter overall review time.
241
Younes Jaaidi @younesjd.dev · 07/07/2026
The trick is making every step small enough that validating or reverting costs nothing. Around 1 minute to produce. A few minutes to review. And then, every time: continue, or revert and try again.
lnkd.in
LinkedIn
This link will take you to a page that’s not on LinkedIn
000
Younes Jaaidi @younesjd.dev · 07/07/2026
- 💰 The Sunk Cost Fallacy: we wait 10 min for the agent, spend half an hour reviewing, and end up... not really convinced. But reverting means throwing all that time away, so we ask the agent to patch on top instead. Now we’re building on something we already don't trust.
lnkd.in
LinkedIn
This link will take you to a page that’s not on LinkedIn
100
Younes Jaaidi @younesjd.dev · 07/07/2026
- 🛶 The Drift: the slop and unwanted behavior that slips through the review, and whatever your harness is made of, - 🔁 The Context Switching: yes, multi-agent views look cool... but most humans are bad at multi-tasking (I'm among the worst 😅),
lnkd.in
LinkedIn
This link will take you to a page that’s not on LinkedIn
100
Younes Jaaidi @younesjd.dev · 07/07/2026
But I still believe the real move is smaller steps — at least for complex or original features. The real cost is not token usage, and it's not even the review cost. It's what the loop does to you:
lnkd.in
LinkedIn
This link will take you to a page that’s not on LinkedIn
100
Younes Jaaidi @younesjd.dev · 25/06/2026
Bye #GoogleIOConnect @shairez.bsky.social @eliraneliassy.bsky.social
030
Younes Jaaidi @younesjd.dev · 25/06/2026
Thanks Logan 😊 We have to meet at an event some day
110
Younes Jaaidi @younesjd.dev · 25/06/2026
Thx Logan 😊
010
Younes Jaaidi @younesjd.dev · 25/06/2026
If you’re at #GoogleIOConnect and wanna chat about where AI-Assisted Dev, Testing, and sailing meet with Monorepos and Polyrepos, come hang out I’m under the A/C by the Modern Web Guidance booth #angular #testing #nx
060
Younes Jaaidi @younesjd.dev · 25/06/2026
#GoogleIOConnect is kicking off
110
Reposted by Younes Jaaidi
Vite @vite.dev · 23/06/2026
🚀 Vite 8.1 is out ⚡ Experimental Full Bundle Mode: ~15x faster dev server startup & ~10x faster full reloads on large apps 🧩 Chunk Import Map to keep chunks stable & improve caching 🦀 WASM ESM integration 💡 Lightning CSS on the road to default 👀 and more! vite.dev/blog/announc...
vite.dev
Vite 8.1 is out!
Vite 8.1 Release Announcement
119935
Younes Jaaidi @younesjd.dev · 23/06/2026
🤯 I had the chance to play with #Polygraph early — and it just fixes the messy reality of AI-assisted dev: collaborating with other devs, and across multiple repos. Can't wait for you to try it. Watch it launch live today 👇 🎁 Bonus: many amazing talks about #ai ❤️ #monorepo monorepo.tools/conf
monorepo.tools
AI ❤️ Monorepos · Conf 2026
A free half-day virtual conference for engineers working at the intersection of monorepos, CI, and agentic AI. June 23, 2026.
064
Younes Jaaidi @younesjd.dev · 12/06/2026
Fun crowd too!
000
Reposted by Younes Jaaidi
Abbey Perini @abbeyperini.dev · 12/06/2026
@younesjd.dev 's talk Ashes to Ashes, Spec to Spec: The Rebirth of Modern Testing at #ReactSummit
Younes speaking on the React Summit stage. The room is packed. His intro slide is projected behind him. He's giving a thumbs up
011
Younes Jaaidi @younesjd.dev · 11/06/2026
Just landed in Amsterdam. This church says roses bloom even in bleak winter. 🥀 Good — we’ll need flowers for tomorrow’s service at @reactsummit.gitnation.org: one last goodbye to our old testing frameworks, and what’s next with @vitest.dev… and more 🎁 Ashes to ashes, spec to spec. ⚰️
Person standing in front of a brick church, holding out a hand toward a graphic that reads “ASHES TO ASHES, SPEC TO SPEC” with a bouquet icon. A Dutch inscription is visible high on the church wall.
010
Younes Jaaidi @younesjd.dev · 03/06/2026
With AI-Assisted Development, your #Angular tests become the agent's main feedback loop. Brittle tests = noise. A focused suite = clear signal: what works, what broke, what's next. The #testing strategy matters more than ever. Early bird closes Friday 👇 marmicode.io/workshops/pr...
Promotional banner for an online “Pragmatic Angular Testing” workshop. A bearded instructor wearing a red apron stands in a kitchen with copper pans hanging in the background. On the left, large white text reads “PRAGMATIC ANGULAR TESTING WORKSHOP.” On the right, the event details: “June 16–18, Hands-on · Online.” Below, the banner identifies the instructor as Younes Jaaidi, a Google Developer Expert. In front of the instructor is a stylized cooking pot containing Angular, Vitest, JavaScript, and testing-related icons, reinforcing the cooking-themed branding. The overall design uses dark purple tones with bright white and magenta accents.
020
Reposted by Younes Jaaidi
AriPerkkio @ariperkkio.dev · 01/06/2026
Building this integration has been amazing opportunity to dogfood all APIs we've added into @vitest.dev in past years. It's using features like new Reporter APIs, Vitest plugin hooks, browser commands, CDP, test tags and much more! Vitest is definitely one of the most extensible JS tools out there.
1237
Younes Jaaidi @younesjd.dev · 01/06/2026
Thanks Logan. It made me realized that I wasn't following most of my friends 😅
110
Younes Jaaidi @younesjd.dev · 01/06/2026
Also, Jean-Sébastien Butcherton stole 5 minutes of my slot and got fired on stage. So long Jean-Sébastien 👋. By the way, you forgot an onion on stage 🧅. Thank you all for the warm welcome 🤗 and see you soon!
010
Younes Jaaidi @younesjd.dev · 01/06/2026
Now, about live AI-assisted demos: we all dread the agent going rogue mid-talk... but this time, it's the smoke machine that did not behave 💨. ...
110
Younes Jaaidi @younesjd.dev · 01/06/2026
#NgBaguetteConf keeps getting bigger every year — great job! Genuinely useful talks back to back, and a crowd that was as enthusiastic as they come. The questions afterward were the gems I'm looking for at confs. ...
A large modern lecture hall with tiered seating filled with attendees at a tech conference or developer meetup. Many people are using laptops, tablets, or phones while listening to a presentation taking place out of frame. The room features high ceilings with curved wooden panels, large floor-to-ceiling windows letting in natural light, and dark walls with purple seating accents. The audience appears engaged, with most facing toward the front-right side of the room. The atmosphere is professional and focused, typical of a software engineering conference session.A cheerful group selfie taken in a cozy pub or café with exposed brick walls and warm lighting. Around a dozen people are gathered closely together, smiling at the camera. Several are making playful gestures, including a thumbs-up and raised hands in the background. The person holding the camera in the foreground is laughing with an open-mouthed smile, giving the photo an energetic, celebratory feel. The setting features dark wood furnishings, mirrors, and mixed-colored chairs, creating an informal atmosphere typical of an after-hours meetup or conference social event. The mood is friendly, relaxed, and social.A speaker stands behind a podium, appearing to act out a humorous scene during a conference presentation. They are wearing a light-colored beanie, round glasses, and a white apron, with a dish towel draped over one shoulder, giving the appearance of a cook or chef. Holding a phone to one ear while looking toward a laptop on the lectern, they appear focused on an imaginary conversation. The dark stage background contrasts with the bright clothing and stage lighting. The scene has a theatrical, playful feel, suggesting a live talk that incorporates storytelling, role-playing, or cooking-themed metaphors.
220
Reposted by Younes Jaaidi
Logan Dupont @logandupont.com · 29/05/2026
Enjoy! I created a starter pack for the event 😊
011
Younes Jaaidi @younesjd.dev · 29/05/2026
#NgBaguetteConf is kicking off, and we’re both ready! Let’s see where AI-assisted development and testing meet… 🧭
120