<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Julien Avezou</title>
    <description>The latest articles on DEV Community by Julien Avezou (@javz).</description>
    <link>https://dev.to/javz</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3245143%2Ff6cf9acd-541d-4ad4-a846-2788da803c99.png</url>
      <title>DEV Community: Julien Avezou</title>
      <link>https://dev.to/javz</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/javz"/>
    <language>en</language>
    <item>
      <title>Building a Chrome Extension to Make AI Use More Intentional</title>
      <dc:creator>Julien Avezou</dc:creator>
      <pubDate>Mon, 15 Jun 2026 14:44:53 +0000</pubDate>
      <link>https://dev.to/javz/building-a-chrome-extension-to-make-ai-use-more-intentional-20k0</link>
      <guid>https://dev.to/javz/building-a-chrome-extension-to-make-ai-use-more-intentional-20k0</guid>
      <description>&lt;p&gt;After posting several articles about the impact of AI on developers and sharing resources to help mitigate some of the risks, I wanted to share a new tool I've been building and experimenting with.&lt;/p&gt;

&lt;p&gt;I introduce you to &lt;strong&gt;ThinkMode&lt;/strong&gt;! &lt;/p&gt;

&lt;p&gt;A chrome extension that helps developers choose a thinking mode before prompting AI, and calculate the associated cognitive cost after prompting AI.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8icle77n9enb460xiv67.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8icle77n9enb460xiv67.png" alt=" " width="800" height="422"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;AI makes it easy to skip thinking. &lt;/p&gt;

&lt;p&gt;This tool helps slow down and integrate thinking before and after prompting the AI. &lt;/p&gt;

&lt;p&gt;As a browser extension it can be easily integrated into your everyday LLM chat prompting workflow.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Idea
&lt;/h2&gt;

&lt;p&gt;Before opening a prompt, ThinkMode asks you to describe what you are trying to do.&lt;/p&gt;

&lt;p&gt;It then recommends one of 5 modes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Explore&lt;/strong&gt;: understand the problem before solving it&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Challenge&lt;/strong&gt;: pressure-test an existing plan&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Decide&lt;/strong&gt;: compare options and tradeoffs&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Audit&lt;/strong&gt;: review quality, correctness, tests, and edge cases&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Reflect&lt;/strong&gt;: learn from what you just did&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The goal is to match the prompt with the kind of thinking intended for the task.&lt;/p&gt;

&lt;p&gt;The tool also includes a &lt;strong&gt;manual AI usage log&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;After using AI, you can log how you used it. &lt;/p&gt;

&lt;p&gt;Usage is grouped into three categories:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Supportive&lt;/strong&gt;: AI helps expand your thinking&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Mixed&lt;/strong&gt;: AI saves time but may compress understanding&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Risky&lt;/strong&gt;: AI may replace your judgment&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Each log adds to a &lt;strong&gt;cognitive cost meter&lt;/strong&gt;. Riskier usage fills it faster.&lt;/p&gt;

&lt;p&gt;Cognitive cost measures tradeoffs between using AI to expand understanding vs outsourcing judgment.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fd2qzsfjv0ae152wi27n0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fd2qzsfjv0ae152wi27n0.png" alt=" " width="800" height="538"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;When the meter is full, ThinkMode temporarily pauses supported AI chat pages for 5 minutes.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdjk7urhdsgipcn3ecncb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdjk7urhdsgipcn3ecncb.png" alt=" " width="800" height="438"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Most developer tools optimize for speed. &lt;/p&gt;

&lt;p&gt;I wanted to experiment with a tool that introduces &lt;strong&gt;intentional friction in order to surface reflection&lt;/strong&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  How it works
&lt;/h2&gt;

&lt;p&gt;ThinkMode is a Manifest V3 Chrome extension built with React, TypeScript, and Vite.&lt;/p&gt;

&lt;p&gt;The architecture includes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;a content script detects supported AI chat pages&lt;/li&gt;
&lt;li&gt;a floating button opens the extension&lt;/li&gt;
&lt;li&gt;a background service worker coordinates the side panel&lt;/li&gt;
&lt;li&gt;a React side panel handles the main workflow&lt;/li&gt;
&lt;li&gt;shared TypeScript modules handle recommendation logic and prompt generation&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The extension currently supports ChatGPT, Claude, and Gemini pages.&lt;/p&gt;

&lt;p&gt;There is &lt;strong&gt;no backend nor LLM API call&lt;/strong&gt; involved. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;ThinkMode does not read conversations, scrape page content, send analytics, or store data remotely.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The recommendation engine is deterministic. It uses simple keyword rules to choose a thinking mode which felt reasonable considering this is an MVP.&lt;/p&gt;




&lt;h2&gt;
  
  
  What I Learned
&lt;/h2&gt;

&lt;p&gt;&lt;em&gt;Sometimes the useful AI tool is not the one that gives you a better answer.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;It can be the one that helps you ask a better question.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;I'm curious: &lt;/p&gt;

&lt;p&gt;Have you ever caught yourself accepting an AI answer before fully understanding the problem?&lt;/p&gt;

&lt;p&gt;If so, what habits or tools help you stay engaged in the thinking process?&lt;/p&gt;




&lt;h2&gt;
  
  
  How to install
&lt;/h2&gt;

&lt;p&gt;You can download the extension &lt;a href="https://chromewebstore.google.com/detail/nbecnbmefilkkijpldhnbmmbcochhdpo" rel="noopener noreferrer"&gt;free here from the chrome web store&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Otherwise you can run the extension locally using developer mode from chrome extensions. The code is open source &lt;a href="https://github.com/JulienAvezou/ai-thinking-mode-browser-extension" rel="noopener noreferrer"&gt;here on github&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Feel free to fork it and adapt it to your own needs. &lt;/p&gt;

&lt;p&gt;Would really appreciate a star or review if you find it useful!&lt;/p&gt;

&lt;p&gt;If you can think of ways to improve this tool or want to see other features, let me know in the comments! &lt;/p&gt;

</description>
      <category>ai</category>
      <category>webdev</category>
      <category>productivity</category>
      <category>buildinpublic</category>
    </item>
    <item>
      <title>I Built an Interview Prep Tool Instead of Grinding LeetCode</title>
      <dc:creator>Julien Avezou</dc:creator>
      <pubDate>Mon, 08 Jun 2026 13:20:06 +0000</pubDate>
      <link>https://dev.to/javz/i-built-an-interview-prep-tool-instead-of-grinding-leetcode-35a0</link>
      <guid>https://dev.to/javz/i-built-an-interview-prep-tool-instead-of-grinding-leetcode-35a0</guid>
      <description>&lt;p&gt;I am currently preparing for Software Engineer interviews.&lt;/p&gt;

&lt;p&gt;Like many developers, my first instinct was to open LeetCode and start grinding problems.&lt;/p&gt;

&lt;p&gt;It seems that most interview prep I see suggests grinding random problems.&lt;/p&gt;

&lt;p&gt;Instead I decided to &lt;strong&gt;focus on understanding the underlying patterns&lt;/strong&gt; rather than memorizing the problems. &lt;/p&gt;

&lt;p&gt;Practicing structured retrieval and being aware of how everything connects together is key. &lt;/p&gt;

&lt;p&gt;I'd rather deeply understand 20 patterns than superficially solve 200 problems.&lt;/p&gt;

&lt;p&gt;Many interview questions are simply variations of the same underlying ideas.&lt;/p&gt;

&lt;p&gt;So I built a tool focused on recognizing patterns, recalling templates, and explaining tradeoffs out loud.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F360ri59iouzfjgv2ywn9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F360ri59iouzfjgv2ywn9.png" alt=" " width="799" height="432"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;With this app, you can practice the following:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;DS&amp;amp;A pattern flashcards&lt;/li&gt;
&lt;li&gt;Problem → pattern quizzes&lt;/li&gt;
&lt;li&gt;JavaScript code template fill-ins&lt;/li&gt;
&lt;li&gt;Complexity quizzes&lt;/li&gt;
&lt;li&gt;System design cheatsheets&lt;/li&gt;
&lt;li&gt;System design flashcards&lt;/li&gt;
&lt;li&gt;Tradeoff quizzes&lt;/li&gt;
&lt;li&gt;Explain-back scenarios&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5gnpta08m1up5alk7jf9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5gnpta08m1up5alk7jf9.png" alt=" " width="800" height="447"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5u9onrqaqmc5461pddek.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5u9onrqaqmc5461pddek.png" alt=" " width="800" height="461"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv0mr6vx4tihfmzozltfw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv0mr6vx4tihfmzozltfw.png" alt=" " width="800" height="411"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;I am currently using the tool and am finding it useful in my interview preparation: &lt;strong&gt;once you start recognizing the pattern, the implementation becomes much easier to reason about&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;I wanted to share the tool here in case it helps others preparing for interviews. I deployed it on Vercel to be easily used by everyone. But you can also run it locally.&lt;/p&gt;

&lt;p&gt;Note that I don't collect or persist any data with this project. It uses local storage. &lt;br&gt;
There is no login, you can just start practicing immediately.&lt;br&gt;
The code is open source if you want to fork it and adapt it for your own needs.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://swe-interview-practice-one.vercel.app" rel="noopener noreferrer"&gt;Website&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/JulienAvezou/swe-interview-practice" rel="noopener noreferrer"&gt;Repo&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Tech Stack used for this project:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Next.js&lt;/li&gt;
&lt;li&gt;TypeScript&lt;/li&gt;
&lt;li&gt;React&lt;/li&gt;
&lt;li&gt;Tailwind CSS&lt;/li&gt;
&lt;li&gt;LocalStorage&lt;/li&gt;
&lt;li&gt;Static typed data files&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This project was also a fun experiment in AI-assisted development.&lt;/p&gt;

&lt;p&gt;I feel that building internal tools that help me in my daily life is a great use case for AI.&lt;/p&gt;




&lt;p&gt;Since I am actively preparing for interviews, I would love to gauge the community here and learn from you too:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How do you prepare best for SWE interviews? Any tips to share?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What preparation methods gave you the highest ROI?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I'm also exploring Software Engineer opportunities, so I'd be happy to connect with anyone hiring or going through a similar search.&lt;/p&gt;

</description>
      <category>softwareengineering</category>
      <category>career</category>
      <category>learning</category>
      <category>productivity</category>
    </item>
    <item>
      <title>Why Every Developer Should Attend Tech Week at Least Once</title>
      <dc:creator>Julien Avezou</dc:creator>
      <pubDate>Thu, 04 Jun 2026 12:33:00 +0000</pubDate>
      <link>https://dev.to/javz/why-every-developer-should-attend-tech-week-at-least-once-28ip</link>
      <guid>https://dev.to/javz/why-every-developer-should-attend-tech-week-at-least-once-28ip</guid>
      <description>&lt;p&gt;Last week, Toronto hosted Tech Week. A city-wide celebration filled with events and workshops revolving around the Technology sector.&lt;/p&gt;

&lt;p&gt;I had such a great time and wanted to share with you my experience and reasons to attend Tech Week in your city or nearest city hosting it. &lt;/p&gt;

&lt;p&gt;Additionally I want to share some tips and suggestions to elevate your experience.&lt;/p&gt;




&lt;p&gt;First of all, Tech Week is a great opportunity to learn new things. I listened to talks and participated in workshops where I learned about cutting edge technologies such as the latest quantum computers and agentic protocols. &lt;/p&gt;

&lt;p&gt;It is also an opportunity to broaden your horizons and step out of your comfort zone. For instance I attended one morning of lectures and panels on how the public sector is handling AI adoption and ways to enable efficient collaboration between the public and private sectors. I have never worked in the public sector so it was a good opportunity for me to get a better understanding of the landscape and mechanisms in place in the sector.&lt;/p&gt;

&lt;p&gt;It is an excellent opportunity to expand your network and meet interesting people who share similar interests to you. I pushed myself to make connections at each event I attended and now have multiple coffee chats lined up with people I met throughout the week. As a founder it is a great opportunity to find customers. As a job seeker it is also a chance to identify which companies are actively hiring. As a student it's a nice occasion to find a potential mentor.&lt;/p&gt;

&lt;p&gt;It's also a moment to have fun and share good memories with others who share similar passions and interests as you. I went on a couple of runs with other developers, had a fun night out, participated in a great hackathon and gave a talk at an event about my Thinking Engineer Toolkit. &lt;/p&gt;

&lt;p&gt;And it goes without saying that you will likely end the week with some free merch and a lot of free food and drinks! Your wallet will thank you, your diet not so much... But I counterbalanced this by walking as much as I could between events. This also became a chance for me to explore different parts of the city too.&lt;/p&gt;




&lt;p&gt;A tip I want to share with you is to think about how you can add to your own experience while also providing value to others in the process. I came up with an experiment inspired by the Million Dollar Homepage (look it up if you don't know, it's one of the coolest internet experiments imo). The idea is I would approach other builders and ask if they want to share their project on my Builder's Grid for extra visibility. &lt;br&gt;
This wall will live on the internet and people can check out different projects from builders attending Tech Week. Quite a few builders registered allowing me to create lots of nice connections and break the ice during networking events. &lt;br&gt;
You can check out the Grid here: &lt;br&gt;
&lt;a href="https://ttw-builder-grid.vercel.app" rel="noopener noreferrer"&gt;https://ttw-builder-grid.vercel.app&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Another tip is don't be afraid to approach other people. Push yourself to make at least 2-3 connections per event. It might feel awkward at the start but you will quickly feel more comfortable approaching others and building connections over time. &lt;/p&gt;

&lt;p&gt;I also advise you to find the balance that is right for you and that fits around your own schedule without feeling overwhelming. If you are feeling rushed to get from one event to the next then it takes away the joy and you might miss out on valuable connections. Quality beats quantity. I personally attended 9 events over the week which I found was a good amount alongside my regular schedule.&lt;/p&gt;




&lt;p&gt;Curious to know if you have attended Tech Week in your own city and what your experience was like? &lt;/p&gt;

&lt;p&gt;Here are some pictures from walking between events. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fivfam154ew853etnzgf5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fivfam154ew853etnzgf5.png" alt=" " width="800" height="1000"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl30lu87h211vccvlmbng.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl30lu87h211vccvlmbng.png" alt=" " width="800" height="962"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6pr2qapdyw1clpxai0qi.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6pr2qapdyw1clpxai0qi.png" alt=" " width="800" height="1007"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>networking</category>
      <category>softwareengineering</category>
      <category>learning</category>
      <category>productivity</category>
    </item>
    <item>
      <title>From vibe coding to clear thinking: what non-technical builders need in the age of AI</title>
      <dc:creator>Julien Avezou</dc:creator>
      <pubDate>Mon, 01 Jun 2026 12:43:53 +0000</pubDate>
      <link>https://dev.to/javz/from-vibe-coding-to-clear-thinking-what-non-technical-builders-need-in-the-age-of-ai-4nbd</link>
      <guid>https://dev.to/javz/from-vibe-coding-to-clear-thinking-what-non-technical-builders-need-in-the-age-of-ai-4nbd</guid>
      <description>&lt;p&gt;Over the past few months, I’ve increasingly noticed something through my network:&lt;/p&gt;

&lt;p&gt;more people from non-technical backgrounds are building software as AI tooling improves.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Designers are prototyping product ideas.&lt;/li&gt;
&lt;li&gt;Product managers are testing workflows.&lt;/li&gt;
&lt;li&gt;Founders are building MVPs.&lt;/li&gt;
&lt;li&gt;Operators are creating internal tools.&lt;/li&gt;
&lt;li&gt;People who would not have called themselves “technical” a year ago are now using AI to make ideas tangible.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I think this is genuinely exciting.&lt;/p&gt;

&lt;p&gt;It has never been easier to create.&lt;/p&gt;

&lt;p&gt;I even attended a hackathon where participants only had 20 minutes to build a demoable product! &lt;/p&gt;

&lt;p&gt;This raises the question:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;When AI makes building easier, how do we make sure understanding does not disappear?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I recently published &lt;strong&gt;Thinking in the Age of AI&lt;/strong&gt;, a guide for software engineers (you can check out &lt;a href="https://dev.to/javz/dont-let-ai-do-your-thinking-a-practical-guide-for-engineers-58e0"&gt;my previous post here&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;That guide focused on individual reflection for engineers: how to keep developing technical intuition, reasoning, and judgment while using AI tools.&lt;/p&gt;

&lt;p&gt;But the landscape has changed quickly.&lt;/p&gt;

&lt;p&gt;AI-assisted building is no longer only an engineering workflow.&lt;/p&gt;

&lt;p&gt;It is becoming a builder workflow accessible to all.&lt;/p&gt;

&lt;p&gt;And by builders, I mean anyone using AI to turn ideas into software-like artifacts:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;vibe coders&lt;/li&gt;
&lt;li&gt;designers&lt;/li&gt;
&lt;li&gt;product managers&lt;/li&gt;
&lt;li&gt;founders&lt;/li&gt;
&lt;li&gt;operators&lt;/li&gt;
&lt;li&gt;marketers&lt;/li&gt;
&lt;li&gt;students&lt;/li&gt;
&lt;li&gt;non-engineering team members&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;So I wanted to create a new version of the system for this wider builder audience.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Thinking in the Age of AI: Builder Edition&lt;/strong&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  The opportunity is real
&lt;/h2&gt;

&lt;p&gt;I do not think we should dismiss this shift.&lt;/p&gt;

&lt;p&gt;I have spoken with people from all kinds of backgrounds who are actively building now.&lt;/p&gt;

&lt;p&gt;People who previously had to wait for engineering time can now create something concrete.&lt;/p&gt;

&lt;p&gt;That changes the conversation.&lt;/p&gt;

&lt;p&gt;Instead of describing an abstract idea, you can show a flow.&lt;/p&gt;

&lt;p&gt;Instead of writing a long product spec, you can prototype the interaction.&lt;/p&gt;

&lt;p&gt;Instead of asking “would this work?”, you can test a rough version.&lt;/p&gt;

&lt;p&gt;That is powerful.&lt;/p&gt;

&lt;p&gt;But there is a trap.&lt;/p&gt;

&lt;p&gt;A prototype can look much more complete than it really is.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The interface may look polished.&lt;/li&gt;
&lt;li&gt;The buttons may respond.&lt;/li&gt;
&lt;li&gt;The demo may feel convincing.&lt;/li&gt;
&lt;li&gt;The generated app may run locally.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;But software is not just what appears on the screen.&lt;/p&gt;

&lt;p&gt;Software also includes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;data&lt;/li&gt;
&lt;li&gt;deployment&lt;/li&gt;
&lt;li&gt;behavior&lt;/li&gt;
&lt;li&gt;permissions&lt;/li&gt;
&lt;li&gt;edge cases&lt;/li&gt;
&lt;li&gt;security&lt;/li&gt;
&lt;li&gt;reliability&lt;/li&gt;
&lt;li&gt;failure handling&lt;/li&gt;
&lt;li&gt;maintenance&lt;/li&gt;
&lt;li&gt;ownership&lt;/li&gt;
&lt;li&gt;user trust&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;AI makes the visible layer easier to create.&lt;/p&gt;

&lt;p&gt;But the invisible layer still requires judgment.&lt;/p&gt;

&lt;p&gt;There is an opportunity here for both engineers and non-technical builders to collaborate better.&lt;/p&gt;

&lt;p&gt;As an engineer, I have felt frustrated in the past when product or design decisions seemed misaligned with technical constraints. I am sure I am not the only one.&lt;/p&gt;

&lt;p&gt;And I have also heard the opposite frustration from non-engineers: that engineers can sometimes seem overly cautious, slow, or resistant to ideas that feel obvious from a product or design perspective.&lt;/p&gt;

&lt;p&gt;Often, both sides are reacting to incomplete context.&lt;/p&gt;

&lt;p&gt;The fact that building is becoming accessible to more people may also be an opportunity to reduce these misalignments.&lt;/p&gt;

&lt;p&gt;With the right mindset and shared language, this process can become much more effective.&lt;/p&gt;




&lt;h2&gt;
  
  
  The prototype illusion
&lt;/h2&gt;

&lt;p&gt;One of the ideas I explore in the guide is what I call the prototype illusion.&lt;/p&gt;

&lt;p&gt;This happens when a prototype looks more complete than it really is.&lt;/p&gt;

&lt;p&gt;A prototype is allowed to be incomplete.&lt;/p&gt;

&lt;p&gt;It is allowed to be messy.&lt;/p&gt;

&lt;p&gt;It is allowed to fake things.&lt;/p&gt;

&lt;p&gt;The problem starts when the builder does not know what is real and what is fake.&lt;/p&gt;

&lt;p&gt;That is where collaboration with engineers can break down.&lt;/p&gt;

&lt;p&gt;A designer might show an AI-generated prototype and think:&lt;/p&gt;

&lt;p&gt;“This is almost done.”&lt;/p&gt;

&lt;p&gt;An engineer might look at the same prototype and think:&lt;/p&gt;

&lt;p&gt;“This needs to be rebuilt from scratch.”&lt;/p&gt;

&lt;p&gt;Both people may be right from their own perspective.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The issue is not the prototype.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The issue is the missing shared understanding.&lt;/strong&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  2 practical exercises to grow this shared understanding
&lt;/h2&gt;

&lt;p&gt;Here are two exercises from the Builder Edition guide that you can start using immediately.&lt;/p&gt;

&lt;p&gt;I chose these two because they address the most common source of friction: a prototype that looks clear to one person but means something very different to someone else.&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Real vs Fake Functionality Map
&lt;/h3&gt;

&lt;p&gt;This is one of the most important habits for AI-assisted building to fight the prototype illusion.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Use this worksheet after creating a prototype, demo, or AI-generated app.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Time required: 5-10 minutes.&lt;/em&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Step 1 — List the Main Features

What does this prototype appear to do?

1. ___________________________________________
2. ___________________________________________
3. ___________________________________________

Step 2 — Classify Each Feature

For each feature, mark whether it is real, mocked, partial, or unknown.

Feature 1: ___________________________________________
☐ Real
☐ Mocked
☐ Partial
☐ Unknown

Notes:
_____________________________________________________________________
_____________________________________________________________________

Feature 2: ___________________________________________

☐ Real
☐ Mocked
☐ Partial
☐ Unknown

Notes:
_____________________________________________________________________
_____________________________________________________________________

Feature 3: ___________________________________________

☐ Real
☐ Mocked
☐ Partial
☐ Unknown

Notes:
_____________________________________________________________________
_____________________________________________________________________

Step 3 — Identify the Illusion

Which part looks more complete than it really is?
_____________________________________________________________________
_____________________________________________________________________

What might someone misunderstand if they saw this demo?
_____________________________________________________________________
_____________________________________________________________________

What should I explicitly say before showing it?
_____________________________________________________________________
_____________________________________________________________________

Step 4 — Clarify the Next Step

What needs to happen before this becomes real software?
☐ Product validation
☐ Design refinement
☐ Engineering review
☐ Database design
☐ Authentication
☐ Permission handling
☐ API integration
☐ Testing
☐ Security review
☐ Performance review
☐ Deployment setup
☐ Other:
_______________________________

Most important next step:
_____________________________________________________________________
_____________________________________________________________________
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h3&gt;
  
  
  2. Engineer Handoff Template
&lt;/h3&gt;

&lt;p&gt;This might be the most useful exercise for teams.&lt;/p&gt;

&lt;p&gt;The best handoff is not perfect code.&lt;/p&gt;

&lt;p&gt;The best handoff is clear context.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Use this when asking an engineer to review, rebuild, extend, or estimate work based&lt;br&gt;
on an AI-generated prototype.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Time required: 10-15 minutes.&lt;/em&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Handoff Summary

Feature or prototype name:
_____________________________________________________________________
_____________________________________________________________________

One-sentence summary:
_____________________________________________________________________
_____________________________________________________________________

Who is the target user?
_____________________________________________________________________
_____________________________________________________________________

What problem does this solve?
_____________________________________________________________________
_____________________________________________________________________

Prototype Status

Built with:
_____________________________________________________________________
_____________________________________________________________________

AI tools used:
_____________________________________________________________________
_____________________________________________________________________

What works today?
_____________________________________________________________________
_____________________________________________________________________

What is mocked?
_____________________________________________________________________
_____________________________________________________________________

What is incomplete?
_____________________________________________________________________
_____________________________________________________________________

What is known to be fragile?
_____________________________________________________________________
_____________________________________________________________________

Product Intent

Core user flow:
1. __________________________________________________________________
2. __________________________________________________________________
3. __________________________________________________________________
4. __________________________________________________________________

Must-have behavior:
_____________________________________________________________________
_____________________________________________________________________

Nice-to-have behavior:
_____________________________________________________________________
_____________________________________________________________________

Success criteria:
_____________________________________________________________________
_____________________________________________________________________

Technical Unknowns

I need help understanding:
☐ Database structure
☐ Authentication
☐ Permissions
☐ APIs
☐ Deployment
☐ Security
☐ Performance
☐ Testing
☐ Maintainability
☐ Integration with existing systems
☐ Other: ______________________________

Specific questions:
1. __________________________________________________________________
2. __________________________________________________________________
3. __________________________________________________________________

Review Request

What kind of feedback do I need?
☐ Is this technically feasible?
☐ What would need to be rebuilt?
☐ What risks do you see?
☐ What is the simplest reliable implementation?
☐ What should we not ship as-is?
☐ What assumptions are wrong?
☐ What is the rough complexity?
☐ What should I clarify before this becomes engineering work?

Most important engineering question:
_____________________________________________________________________
_____________________________________________________________________
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  What engineers wish non-technical builders knew
&lt;/h2&gt;

&lt;p&gt;One section of the guide is called What Engineers Wish You Knew.&lt;/p&gt;

&lt;p&gt;Engineers are usually not trying to slow you down.&lt;/p&gt;

&lt;p&gt;When they ask about edge cases, permissions, data, security, or failure states, they are not dismissing the idea.&lt;/p&gt;

&lt;p&gt;They are thinking about what happens when the idea becomes real.&lt;/p&gt;

&lt;p&gt;A working demo is not the same as production-ready software.&lt;/p&gt;

&lt;p&gt;Simple-looking features can hide complex systems.&lt;/p&gt;

&lt;p&gt;AI-generated prototypes can improve collaboration a lot.&lt;/p&gt;

&lt;p&gt;But only if they are presented honestly.&lt;/p&gt;

&lt;p&gt;That honesty builds trust.&lt;/p&gt;




&lt;h2&gt;
  
  
  So what happens to software engineers?
&lt;/h2&gt;

&lt;p&gt;This is the part I’m still thinking through.&lt;/p&gt;

&lt;p&gt;If more people can build software-like prototypes, does the world need fewer software engineers?&lt;/p&gt;

&lt;p&gt;Maybe in some areas.&lt;/p&gt;

&lt;p&gt;But I suspect the role changes more than it disappears.&lt;/p&gt;

&lt;p&gt;The value of software engineers may shift even more toward:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;system design&lt;/li&gt;
&lt;li&gt;technical judgment&lt;/li&gt;
&lt;li&gt;reliability&lt;/li&gt;
&lt;li&gt;security&lt;/li&gt;
&lt;li&gt;integration&lt;/li&gt;
&lt;li&gt;maintainability&lt;/li&gt;
&lt;li&gt;reviewing AI-generated work&lt;/li&gt;
&lt;li&gt;helping teams understand trade-offs&lt;/li&gt;
&lt;li&gt;turning prototypes into durable systems&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In other words, engineers may spend less time being the only people who can create the first version.&lt;/p&gt;

&lt;p&gt;But more time being the people who can make software real, safe, reliable, and maintainable.&lt;/p&gt;

&lt;p&gt;That is a different kind of leverage.&lt;/p&gt;

&lt;p&gt;It also means non-technical builders and engineers will need better collaboration patterns.&lt;/p&gt;

&lt;p&gt;The future may not be “engineers vs vibe coders.”&lt;/p&gt;

&lt;p&gt;It may be:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;builders create more concrete ideas earlier, and engineers help turn the right ones into real systems.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;But for that to work, both sides need shared understanding.&lt;/p&gt;




&lt;p&gt;I am generally optimistic, but not because I think the transition will be easy.&lt;/p&gt;

&lt;p&gt;Work changes when tools change.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://news.mit.edu/2024/most-work-is-new-work-us-census-data-shows-0401" rel="noopener noreferrer"&gt;A 2024 MIT study&lt;/a&gt; estimated that about 6 out of 10 jobs people do today did not exist in 1940. That does not prove AI will automatically create better outcomes, but it is a useful reminder that roles evolve when technology changes.&lt;/p&gt;

&lt;p&gt;My own strategy as an engineer is to become a broader generalist: someone who can understand product, systems, AI workflows, and collaboration across disciplines.&lt;/p&gt;




&lt;h2&gt;
  
  
  Why I wrote this guide
&lt;/h2&gt;

&lt;p&gt;I wrote Thinking in the Age of AI: Builder Edition because I think this shift is too important to ignore.&lt;/p&gt;

&lt;p&gt;AI-assisted building is here.&lt;/p&gt;

&lt;p&gt;Non-technical builders are already creating software.&lt;/p&gt;

&lt;p&gt;That is not going away.&lt;/p&gt;

&lt;p&gt;The question is whether we develop better habits around it.&lt;/p&gt;

&lt;p&gt;It includes worksheets, checklists, prompts, and reflection cards to help builders:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;understand what AI generated&lt;/li&gt;
&lt;li&gt;separate real functionality from mocked behavior&lt;/li&gt;
&lt;li&gt;identify hidden technical risk&lt;/li&gt;
&lt;li&gt;avoid common vibe coding traps&lt;/li&gt;
&lt;li&gt;find edge cases earlier&lt;/li&gt;
&lt;li&gt;prepare better engineer handoffs&lt;/li&gt;
&lt;li&gt;know when something needs review&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The goal is not to make people afraid of building with AI.&lt;/p&gt;

&lt;p&gt;The goal is to help people build with more clarity.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;AI can generate prototypes.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Builders must generate clarity.&lt;/strong&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  Discussion
&lt;/h2&gt;

&lt;p&gt;I’m curious how others are seeing this shift.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;For non-technical builders:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Where do you feel most unsure when building with AI?&lt;/li&gt;
&lt;li&gt;Is it code quality, data, security, deployment, edge cases, or knowing when to ask an engineer?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;For engineers:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;How do you feel about working with AI-generated prototypes from designers, PMs, founders, or other non-technical builders?&lt;/li&gt;
&lt;li&gt;What makes those handoffs useful vs frustrating?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;For everyone:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Do you think the world will need more software engineers, fewer software engineers, or just a different kind of software engineer?&lt;/p&gt;




&lt;p&gt;If you want to explore the full set of exercises, prompts, and worksheets, you can get the guide free &lt;a href="https://javz.gumroad.com/l/thinking-in-the-age-of-ai-builder-edition" rel="noopener noreferrer"&gt;here&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>vibecoding</category>
      <category>softwareengineering</category>
      <category>productivity</category>
    </item>
    <item>
      <title>Don’t let AI break your collective thinking: a practical guide for engineering teams</title>
      <dc:creator>Julien Avezou</dc:creator>
      <pubDate>Mon, 25 May 2026 11:20:07 +0000</pubDate>
      <link>https://dev.to/javz/dont-let-ai-break-your-collective-thinking-a-practical-guide-for-engineering-teams-41c4</link>
      <guid>https://dev.to/javz/dont-let-ai-break-your-collective-thinking-a-practical-guide-for-engineering-teams-41c4</guid>
      <description>&lt;p&gt;Over the past few years, my workflow as an engineer has changed a lot.&lt;/p&gt;

&lt;p&gt;I went from the occasional autocomplete to using AI for ideation, debugging, refactoring, and system design when appropriate.&lt;/p&gt;

&lt;p&gt;At the individual level, the gains were obvious.&lt;/p&gt;

&lt;p&gt;But something more subtle started happening at the team level.&lt;/p&gt;




&lt;h2&gt;
  
  
  The unexpected downside
&lt;/h2&gt;

&lt;p&gt;AI didn’t just make us faster.&lt;/p&gt;

&lt;p&gt;It changed how we think &lt;strong&gt;together&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;I’ve been in teams that adopted strong practices around knowledge sharing and AI usage, and others that didn’t.&lt;/p&gt;

&lt;p&gt;The difference is noticeable.&lt;/p&gt;

&lt;p&gt;Some teams became faster and sharper.&lt;/p&gt;

&lt;p&gt;Others became:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;faster… but misaligned&lt;/li&gt;
&lt;li&gt;productive… but shallow&lt;/li&gt;
&lt;li&gt;shipping more… but understanding less&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;From experience, teams have always struggled with effective knowledge sharing.&lt;/p&gt;

&lt;p&gt;However, AI is accelerating the issue for teams that are not prepared.&lt;/p&gt;




&lt;h2&gt;
  
  
  The core issue
&lt;/h2&gt;

&lt;p&gt;AI can improve individual productivity when used appropriately.&lt;/p&gt;

&lt;p&gt;But engineering is rarely an individual activity.&lt;/p&gt;

&lt;p&gt;It’s a coordination problem.&lt;/p&gt;

&lt;p&gt;It depends on:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;shared mental models&lt;/li&gt;
&lt;li&gt;clear reasoning&lt;/li&gt;
&lt;li&gt;aligned decisions&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Without these, speed creates drift.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;“AI can generate output. Teams must generate shared understanding.”&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;That’s the gap most teams aren’t addressing yet.&lt;/p&gt;




&lt;h2&gt;
  
  
  From individual thinking → team thinking
&lt;/h2&gt;

&lt;p&gt;In my previous guide (&lt;em&gt;Thinking in the Age of AI&lt;/em&gt; introduced via &lt;a href="https://dev.to/javz/dont-let-ai-do-your-thinking-a-practical-guide-for-engineers-58e0"&gt;this post&lt;/a&gt;), I focused on:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;How engineers can maintain strong thinking individually&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;We will now focus on the next layer:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;How teams can &lt;strong&gt;think well together while using AI&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;At the team level, more dynamics come into play than at the individual level.&lt;/p&gt;

&lt;p&gt;This is my attempt to put forward some practical solutions to help engineering teams.&lt;/p&gt;




&lt;h2&gt;
  
  
  What I’ve been experimenting with
&lt;/h2&gt;

&lt;p&gt;I’ve been experimenting with a series of practices that can be used across teams.&lt;/p&gt;

&lt;p&gt;Not big process changes.&lt;/p&gt;

&lt;p&gt;Just lightweight habits that:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;make reasoning visible&lt;/li&gt;
&lt;li&gt;slow thinking down &lt;em&gt;just enough&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;turn daily work into learning&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  4 practical exercises you can try with your team this week
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1. AI usage transparency
&lt;/h3&gt;

&lt;p&gt;After AI-assisted code is merged, add a simple note:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Was AI used?&lt;/li&gt;
&lt;li&gt;Where was it used?&lt;/li&gt;
&lt;li&gt;What was verified manually?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This sounds trivial, but it changes team behavior.&lt;/p&gt;

&lt;p&gt;Without this, AI usage becomes invisible.&lt;/p&gt;

&lt;p&gt;Over time, no one knows:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;where the team relies on AI the most&lt;/li&gt;
&lt;li&gt;what types of problems are being outsourced&lt;/li&gt;
&lt;li&gt;where verification is weak&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;With this, patterns start to emerge.&lt;/p&gt;

&lt;p&gt;This leads to better discussions around:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;when AI is actually helpful&lt;/li&gt;
&lt;li&gt;where we should slow down&lt;/li&gt;
&lt;li&gt;where we were over-relying without realizing it&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;You can use this template:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;AI Usage Declaration

AI used? ☐ Yes ☐ No

If yes:

• Where was AI used?
_____________________________________________________________________
_____________________________________________________________________

• Purpose:

☐ Generate
☐ Refactor
☐ Debug
☐ Explore

• What was verified manually?
_____________________________________________________________________
_____________________________________________________________________
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h3&gt;
  
  
  2. Team AI dependency check
&lt;/h3&gt;

&lt;p&gt;Every couple of weeks, take 5 minutes and ask:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Are we skipping initial reasoning more often?&lt;/li&gt;
&lt;li&gt;Are we accepting AI outputs without challenge?&lt;/li&gt;
&lt;li&gt;Is debugging depth decreasing?&lt;/li&gt;
&lt;li&gt;Are explanations getting weaker?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;You don’t need metrics. Just honest discussion.&lt;/p&gt;

&lt;p&gt;This is less about “reducing AI usage” and more about using it intentionally.&lt;/p&gt;

&lt;p&gt;I’ve seen teams drift without noticing it.&lt;br&gt;
Nothing breaks immediately.&lt;/p&gt;

&lt;p&gt;But over time:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;intuition weakens&lt;/li&gt;
&lt;li&gt;understanding becomes uneven&lt;/li&gt;
&lt;li&gt;fewer people can explain the system clearly&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This exercise helps catch that early—and adjust before it becomes a real problem.&lt;/p&gt;

&lt;p&gt;You can use this template:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Team AI Dependency Signals

☐ Engineers skip initial reasoning
☐ AI outputs accepted without challenge
☐ Debugging depth decreasing
☐ Code explanations unclear
☐ Increased reliance for simple tasks

What pattern do we observe?
_____________________________________________________________________
_____________________________________________________________________

What adjustment will we make?
_____________________________________________________________________
_____________________________________________________________________
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h3&gt;
  
  
  3. No-AI debugging sessions
&lt;/h3&gt;

&lt;p&gt;Pick a real bug.&lt;/p&gt;

&lt;p&gt;One engineer debugs it &lt;strong&gt;without AI&lt;/strong&gt;, while narrating their reasoning.&lt;br&gt;
The team watches and helps out when needed.&lt;/p&gt;

&lt;p&gt;At first it feels slow.&lt;/p&gt;

&lt;p&gt;Then you realize most engineers rarely see &lt;em&gt;how others think anymore&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;This surfaces:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;debugging patterns&lt;/li&gt;
&lt;li&gt;assumptions&lt;/li&gt;
&lt;li&gt;decision-making&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In my experience, debugging sessions under this format are one of the fastest ways to level up a team.&lt;/p&gt;

&lt;p&gt;Ideally, document the session with notes from both the debugger and the observers.&lt;/p&gt;

&lt;p&gt;You can use this template:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Debugger Notes

What do I think is happening?
_____________________________________________________________________
_____________________________________________________________________

What signal am I checking first?
_____________________________________________________________________
_____________________________________________________________________

What assumption am I testing?
_____________________________________________________________________
_____________________________________________________________________

What changed my understanding?
_____________________________________________________________________
_____________________________________________________________________


Team Observation Notes

What reasoning pattern did we notice?
_____________________________________________________________________
_____________________________________________________________________

What step was most valuable to observe?
_____________________________________________________________________
_____________________________________________________________________

What should we reuse next time?
_____________________________________________________________________
_____________________________________________________________________
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h3&gt;
  
  
  4. Shared mental model builder
&lt;/h3&gt;

&lt;p&gt;Teams encounter valuable learning moments every day:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;debugging complex issues&lt;/li&gt;
&lt;li&gt;resolving incidents&lt;/li&gt;
&lt;li&gt;designing systems&lt;/li&gt;
&lt;li&gt;working with AI-generated solutions&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;But without deliberate extraction, these lessons remain isolated.&lt;/p&gt;

&lt;p&gt;This exercise converts a specific team experience into a shared mental model. &lt;/p&gt;

&lt;p&gt;In other words, a reusable principle that applies beyond a single situation.&lt;/p&gt;

&lt;p&gt;Over time, these models become a powerful layer of collective intelligence.&lt;/p&gt;

&lt;p&gt;You can use this template:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Situation:
_____________________________________________________________________
_____________________________________________________________________

Underlying mechanism:
_____________________________________________________________________
_____________________________________________________________________

Complete the sentence:
“In systems like this, ____________________________________________.”

Where else does this apply?
1. _______________________________________________________________
2. _______________________________________________________________
3. _______________________________________________________________
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now you have a reusable insight, not just a fix&lt;/p&gt;

&lt;p&gt;Over time, this builds real team intuition.&lt;/p&gt;




&lt;h2&gt;
  
  
  Open discussion
&lt;/h2&gt;

&lt;p&gt;I’m curious how others are handling this.&lt;/p&gt;

&lt;p&gt;Most teams aren’t thinking about this yet. That’s why I think it’s worth discussing.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Are you seeing similar patterns in your teams?&lt;/li&gt;
&lt;li&gt;Have you introduced any practices around AI usage at a team level?&lt;/li&gt;
&lt;li&gt;Or is it mostly individual-driven right now?&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  If you’re interested
&lt;/h2&gt;

&lt;p&gt;I put together a full system with:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;exercises like the ones above&lt;/li&gt;
&lt;li&gt;workflow templates&lt;/li&gt;
&lt;li&gt;prompt cards for team reflection&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;You can get the guide for free &lt;a href="https://javz.gumroad.com/l/thinking-in-the-age-of-ai-team-edition" rel="noopener noreferrer"&gt;here&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I would love your feedback on this.&lt;/p&gt;




&lt;h2&gt;
  
  
  Final thought
&lt;/h2&gt;

&lt;p&gt;AI is making it easier than ever to move fast.&lt;/p&gt;

&lt;p&gt;But speed is not the same as understanding.&lt;/p&gt;

&lt;p&gt;The teams that stand out won’t just be the ones using AI the most.&lt;/p&gt;

&lt;p&gt;They’ll be the ones that &lt;strong&gt;learn the fastest and think most clearly together&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Curious to hear how others are navigating this.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>softwareengineering</category>
      <category>resources</category>
      <category>productivity</category>
    </item>
    <item>
      <title>My first collaboration post on DEV! Was so much fun! Check it out to see verdicts on Gemma 4 from multiple writers here!</title>
      <dc:creator>Julien Avezou</dc:creator>
      <pubDate>Fri, 22 May 2026 19:17:31 +0000</pubDate>
      <link>https://dev.to/javz/my-first-collaboration-post-on-dev-was-so-much-fun-check-it-out-to-see-verdicts-on-gemma-4-from-5d57</link>
      <guid>https://dev.to/javz/my-first-collaboration-post-on-dev-was-so-much-fun-check-it-out-to-see-verdicts-on-gemma-4-from-5d57</guid>
      <description>&lt;div class="ltag__link--embedded"&gt;
  &lt;div class="crayons-story "&gt;
  &lt;a href="https://dev.to/devengers/should-you-use-gemma-4-for-your-development-a-multiversal-analysis-to-determine-if-gemma-4-is-2iol" class="crayons-story__hidden-navigation-link"&gt;Should you use Gemma 4 for your Development? A Multiversal Analysis to Determine if Gemma 4 is Right for You!&lt;/a&gt;


  &lt;div class="crayons-story__body crayons-story__body-full_post"&gt;
      &lt;a href="https://dev.to/devengers/should-you-use-gemma-4-for-your-development-a-multiversal-analysis-to-determine-if-gemma-4-is-2iol" class="crayons-article__context-note crayons-article__context-note__feed"&gt;&lt;p&gt;Gemma 4 Challenge: Write about Gemma 4 Submission&lt;/p&gt;

&lt;/a&gt;
    &lt;div class="crayons-story__top"&gt;
      &lt;div class="crayons-story__meta"&gt;
        &lt;div class="crayons-story__author-pic"&gt;
          &lt;a class="crayons-logo crayons-logo--l" href="/devengers"&gt;
            &lt;img alt="The DEVengers logo" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Forganization%2Fprofile_image%2F12483%2Fb3a03d2d-fbb6-4355-9593-dff0f92638e9.webp" class="crayons-logo__image" width="800" height="800"&gt;
          &lt;/a&gt;

          &lt;a href="/francistrdev" class="crayons-avatar  crayons-avatar--s absolute -right-2 -bottom-2 border-solid border-2 border-base-inverted  "&gt;
            &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3711376%2F033bd8c0-e583-42ce-9865-056a9e75e3f8.webp" alt="francistrdev profile" class="crayons-avatar__image" width="320" height="320"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
        &lt;div&gt;
          &lt;div&gt;
            &lt;a href="/francistrdev" class="crayons-story__secondary fw-medium m:hidden"&gt;
              FrancisTRᴅᴇᴠ (っ◔◡◔)っ
            &lt;/a&gt;
            &lt;div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"&gt;
              
                FrancisTRᴅᴇᴠ (っ◔◡◔)っ
                &lt;a href="/++"&gt;&lt;img alt="Subscriber" class="subscription-icon" src="https://assets.dev.to/assets/subscription-icon-805dfa7ac7dd660f07ed8d654877270825b07a92a03841aa99a1093bd00431b2.png" width="166" height="102"&gt;&lt;/a&gt;
              
              &lt;div id="story-author-preview-content-3679499" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0"&gt;
                &lt;div class="gap-4 grid"&gt;
                  &lt;div class="-mt-4"&gt;
                    &lt;a href="/francistrdev" class="flex"&gt;
                      &lt;span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"&gt;
                        &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3711376%2F033bd8c0-e583-42ce-9865-056a9e75e3f8.webp" class="crayons-avatar__image" alt="" width="320" height="320"&gt;
                      &lt;/span&gt;
                      &lt;span class="crayons-link crayons-subtitle-2 mt-5"&gt;FrancisTRᴅᴇᴠ (っ◔◡◔)っ&lt;/span&gt;
                    &lt;/a&gt;
                  &lt;/div&gt;
                  &lt;div class="print-hidden"&gt;
                    
                      Follow
                    
                  &lt;/div&gt;
                  &lt;div class="author-preview-metadata-container"&gt;&lt;/div&gt;
                &lt;/div&gt;
              &lt;/div&gt;
            &lt;/div&gt;

            &lt;span&gt;
              &lt;span class="crayons-story__tertiary fw-normal"&gt; for &lt;/span&gt;&lt;a href="/devengers" class="crayons-story__secondary fw-medium"&gt;The DEVengers&lt;/a&gt;
            &lt;/span&gt;
          &lt;/div&gt;
          &lt;a href="https://dev.to/devengers/should-you-use-gemma-4-for-your-development-a-multiversal-analysis-to-determine-if-gemma-4-is-2iol" class="crayons-story__tertiary fs-xs"&gt;&lt;time&gt;May 22&lt;/time&gt;&lt;span class="time-ago-indicator-initial-placeholder"&gt;&lt;/span&gt;&lt;/a&gt;
        &lt;/div&gt;
      &lt;/div&gt;

    &lt;/div&gt;

    &lt;div class="crayons-story__indention"&gt;
      &lt;h2 class="crayons-story__title crayons-story__title-full_post"&gt;
        &lt;a href="https://dev.to/devengers/should-you-use-gemma-4-for-your-development-a-multiversal-analysis-to-determine-if-gemma-4-is-2iol" id="article-link-3679499"&gt;
          Should you use Gemma 4 for your Development? A Multiversal Analysis to Determine if Gemma 4 is Right for You!
        &lt;/a&gt;
      &lt;/h2&gt;
        &lt;div class="crayons-story__tags"&gt;
            &lt;a class="crayons-tag crayons-tag--filled  " href="/t/discuss"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;discuss&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/devchallenge"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;devchallenge&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/gemmachallenge"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;gemmachallenge&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/gemma"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;gemma&lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="crayons-story__bottom"&gt;
        &lt;div class="crayons-story__details"&gt;
          &lt;a href="https://dev.to/devengers/should-you-use-gemma-4-for-your-development-a-multiversal-analysis-to-determine-if-gemma-4-is-2iol" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left"&gt;
            &lt;div class="multiple_reactions_aggregate"&gt;
              &lt;span class="multiple_reactions_icons_container"&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/exploding-head-daceb38d627e6ae9b730f36a1e390fca556a4289d5a41abb2c35068ad3e2c4b5.svg" width="24" height="24"&gt;
                  &lt;/span&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/multi-unicorn-b44d6f8c23cdd00964192bedc38af3e82463978aa611b4365bd33a0f1f4f3e97.svg" width="24" height="24"&gt;
                  &lt;/span&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg" width="24" height="24"&gt;
                  &lt;/span&gt;
              &lt;/span&gt;
              &lt;span class="aggregate_reactions_counter"&gt;20&lt;span class="hidden s:inline"&gt;&amp;nbsp;reactions&lt;/span&gt;&lt;/span&gt;
            &lt;/div&gt;
          &lt;/a&gt;
            &lt;a href="https://dev.to/devengers/should-you-use-gemma-4-for-your-development-a-multiversal-analysis-to-determine-if-gemma-4-is-2iol#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center"&gt;
              

              4&lt;span class="hidden s:inline"&gt;&amp;nbsp;comments&lt;/span&gt;
            &lt;/a&gt;
        &lt;/div&gt;
        &lt;div class="crayons-story__save"&gt;
          &lt;small class="crayons-story__tertiary fs-xs mr-2"&gt;
            19 min read
          &lt;/small&gt;
            
              &lt;span class="bm-initial"&gt;
                

              &lt;/span&gt;
              &lt;span class="bm-success"&gt;
                

              &lt;/span&gt;
            
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;/div&gt;


</description>
      <category>ai</category>
      <category>discuss</category>
      <category>google</category>
      <category>llm</category>
    </item>
    <item>
      <title>Your Codebase Has Technical Debt. But Does Your Team Have Comprehension Debt?</title>
      <dc:creator>Julien Avezou</dc:creator>
      <pubDate>Mon, 18 May 2026 12:08:26 +0000</pubDate>
      <link>https://dev.to/javz/your-codebase-has-technical-debt-but-does-your-team-have-comprehension-debt-385f</link>
      <guid>https://dev.to/javz/your-codebase-has-technical-debt-but-does-your-team-have-comprehension-debt-385f</guid>
      <description>&lt;p&gt;Have you ever been thrown into an unfamiliar codebase while deadlines got tighter, stress levels rose, and incidents became harder to resolve?&lt;/p&gt;

&lt;p&gt;I have, and it's not a pleasant experience. &lt;/p&gt;

&lt;p&gt;This got me thinking about a kind of debt engineering teams rarely measure.&lt;/p&gt;

&lt;p&gt;Not technical debt.&lt;/p&gt;

&lt;p&gt;Something more subtle:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;comprehension debt&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;I think of comprehension debt as the gap between how fast a system changes and how well the team understands it.&lt;/p&gt;

&lt;p&gt;And AI is making this gap more important.&lt;/p&gt;

&lt;p&gt;AI didn't create the problem.&lt;/p&gt;

&lt;p&gt;This problem existed long before AI.&lt;/p&gt;

&lt;p&gt;Teams have always struggled with knowledge silos, undocumented systems, fragile ownership, and “only one person knows how this works” situations.&lt;/p&gt;

&lt;p&gt;But &lt;strong&gt;AI can accelerate the problem&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;When AI helps us write, refactor, and ship code faster, the codebase can evolve faster than the team’s shared understanding.&lt;/p&gt;

&lt;p&gt;That is useful when paired with strong review, explanation, documentation, and ownership.&lt;/p&gt;

&lt;p&gt;But dangerous when it turns into:&lt;/p&gt;

&lt;p&gt;“The code changed, but nobody really understands the system better.”&lt;/p&gt;

&lt;p&gt;That is the kind of risk I wanted to make more visible.&lt;/p&gt;

&lt;p&gt;What if I could quantify comprehension debt somehow? At least to a certain degree of approximation.&lt;/p&gt;

&lt;p&gt;I started exploring the different variables and components that would impact comprehension, for better or worse. &lt;/p&gt;

&lt;p&gt;Based on my experience, conversations with other engineers, and patterns I’ve seen across teams, I started building a scoring methodology to approximate comprehension debt.&lt;/p&gt;

&lt;p&gt;My goal here is to help engineering teams spot where critical or highly connected systems are changing faster than the team understands them.&lt;/p&gt;




&lt;h2&gt;
  
  
  What is comprehension debt?
&lt;/h2&gt;

&lt;p&gt;Let's start with a more formal definition:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Comprehension debt rises when system impact, complexity, dependency surface area, change velocity, and AI-assisted change speed outpace team understanding, coverage, redundancy, documentation, and human ownership.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I am not basing this just on theory.&lt;/p&gt;

&lt;p&gt;I experienced the negative effects of high comprehension debt recently in one of my past teams.&lt;/p&gt;

&lt;p&gt;It was a stressful and demoralizing experience.&lt;/p&gt;

&lt;p&gt;I constantly felt behind and had to keep up.&lt;/p&gt;

&lt;p&gt;Incidents were getting worse and harder to resolve over time because the level of system understanding across the team was too low.&lt;/p&gt;

&lt;p&gt;The code existed.&lt;/p&gt;

&lt;p&gt;The services existed.&lt;/p&gt;

&lt;p&gt;The tickets kept moving.&lt;/p&gt;

&lt;p&gt;But the shared mental model of the system was not keeping up.&lt;/p&gt;

&lt;p&gt;That is a hard place to work from.&lt;/p&gt;

&lt;p&gt;You feel reactive all the time.&lt;/p&gt;

&lt;p&gt;You are not just debugging the incident.&lt;/p&gt;

&lt;p&gt;You are debugging your own lack of context.&lt;/p&gt;




&lt;h2&gt;
  
  
  Why AI makes this worth measuring now
&lt;/h2&gt;

&lt;p&gt;AI-assisted development can be incredibly useful.&lt;/p&gt;

&lt;p&gt;I use AI myself, quite frequently.&lt;/p&gt;

&lt;p&gt;But I keep coming back to this question:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Are we increasing shipping velocity without increasing understanding velocity?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Because those are not the same thing.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;A team can ship more code and still understand less of the system over time.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;AI can help generate implementation options, refactor code, explain files, write tests, and speed up repetitive work.&lt;/p&gt;

&lt;p&gt;But if AI-assisted changes are merged without enough human explanation, review, documentation, or ownership, comprehension debt can accumulate faster.&lt;/p&gt;

&lt;p&gt;The issue is not:&lt;/p&gt;

&lt;p&gt;“Did AI write this?”&lt;/p&gt;

&lt;p&gt;The better question is:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;“Can the team still explain, review, modify, deploy, and recover this system safely?”&lt;/strong&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  How the debt score is calculated
&lt;/h2&gt;

&lt;p&gt;This is not meant to be a perfect mathematical model.&lt;/p&gt;

&lt;p&gt;It is an attempt to make an invisible engineering risk visible enough to discuss, compare, and improve.&lt;/p&gt;

&lt;p&gt;At a high level, the score combines two sides:&lt;/p&gt;

&lt;p&gt;1) &lt;strong&gt;System pressure&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;These factors increase comprehension debt:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;high criticality&lt;/li&gt;
&lt;li&gt;high complexity&lt;/li&gt;
&lt;li&gt;high change velocity&lt;/li&gt;
&lt;li&gt;high incident sensitivity&lt;/li&gt;
&lt;li&gt;high dependency surface area&lt;/li&gt;
&lt;li&gt;high ownership concentration&lt;/li&gt;
&lt;li&gt;high AI acceleration risk when AI is used without strong human guardrails&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;2) &lt;strong&gt;Team comprehension coverage&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;These factors reduce comprehension debt:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;more safe modifiers&lt;/li&gt;
&lt;li&gt;more clear explainers&lt;/li&gt;
&lt;li&gt;stronger reviewer redundancy&lt;/li&gt;
&lt;li&gt;better documentation&lt;/li&gt;
&lt;li&gt;more recent hands-on exposure&lt;/li&gt;
&lt;li&gt;stronger on-call familiarity&lt;/li&gt;
&lt;li&gt;better engineer-system capability scores&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;So the rough model is:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Comprehension Debt =
System pressure
+ dependency pressure
+ ownership concentration
+ optional AI acceleration

minus

human coverage
+ documentation quality
+ reviewer redundancy
+ recent exposure
+ operational familiarity
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;To detect dangerous gaps, a &lt;strong&gt;Minimum Viable Coverage&lt;/strong&gt; check for critical systems is performed.&lt;/p&gt;

&lt;p&gt;For a critical system, the sheet checks whether it has:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;at least 2 safe modifiers&lt;/li&gt;
&lt;li&gt;at least 2 capable reviewers&lt;/li&gt;
&lt;li&gt;documentation quality of 3 or higher&lt;/li&gt;
&lt;li&gt;recent hands-on exposure of 3 or higher&lt;/li&gt;
&lt;li&gt;on-call familiarity of 3 or higher&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If one of these is missing, the system gets an MVC gap.&lt;/p&gt;

&lt;p&gt;A critical system with an MVC gap should be flagged even if the overall debt score looks moderate.&lt;/p&gt;




&lt;h2&gt;
  
  
  Discussion
&lt;/h2&gt;

&lt;p&gt;I am very open to feedback on how the methodology could be improved.&lt;/p&gt;

&lt;p&gt;Also curious:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How does your team maintain understanding of the codebase?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What signals tell you that your team is starting to lose understanding of a system?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;And have you noticed AI changing the speed at which your systems evolve compared to the speed at which your team understands them?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I think this is going to become a much bigger engineering leadership problem as AI generation and automation accelerates.&lt;/p&gt;

&lt;p&gt;We are getting better at generating code.&lt;/p&gt;

&lt;p&gt;But we still need to get better at preserving shared understanding.&lt;/p&gt;

&lt;h2&gt;
  
  
  Get the template
&lt;/h2&gt;

&lt;p&gt;To make this easier to reason about, I turned the methodology into a spreadsheet-first template:&lt;br&gt;
&lt;strong&gt;System Comprehension Heatmap&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;It includes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;System Inventory&lt;/li&gt;
&lt;li&gt;Engineer-System Matrix&lt;/li&gt;
&lt;li&gt;Overview Dashboard&lt;/li&gt;
&lt;li&gt;Risk Recommendations&lt;/li&gt;
&lt;li&gt;optional AI acceleration scoring&lt;/li&gt;
&lt;li&gt;Minimum Viable Coverage checks&lt;/li&gt;
&lt;li&gt;quick-start PDF guide&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://javz.gumroad.com/l/system-comprehension-heatmap" rel="noopener noreferrer"&gt;You can get it for free here&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I would love feedback.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>softwareengineering</category>
      <category>engineeringmanagement</category>
      <category>productivity</category>
    </item>
    <item>
      <title>The missing layer in prompt engineering: thinking quality</title>
      <dc:creator>Julien Avezou</dc:creator>
      <pubDate>Mon, 11 May 2026 12:45:04 +0000</pubDate>
      <link>https://dev.to/javz/the-missing-layer-in-prompt-engineering-thinking-quality-2n3j</link>
      <guid>https://dev.to/javz/the-missing-layer-in-prompt-engineering-thinking-quality-2n3j</guid>
      <description>&lt;p&gt;I've seen countless prompting trends and prompt packs to use but most discussions around prompt engineering focus on one thing:&lt;br&gt;
getting better outputs&lt;/p&gt;

&lt;p&gt;Optimizing for better outputs often translates to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Better prompts&lt;/li&gt;
&lt;li&gt;More context&lt;/li&gt;
&lt;li&gt;More structure&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;But lately, I’ve been wondering:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What if we’re optimizing the wrong layer?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Because the real question isn’t:&lt;/p&gt;

&lt;p&gt;“How do I get better answers from AI?”&lt;/p&gt;

&lt;p&gt;It’s:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;“Is AI actually improving how I think?”&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Because I’ve noticed something subtle:&lt;/p&gt;

&lt;p&gt;My output was improving.&lt;/p&gt;

&lt;p&gt;But my understanding was not always.&lt;/p&gt;

&lt;p&gt;After working in several teams and environments, I have observed that: &lt;/p&gt;

&lt;p&gt;Good engineers ask better questions.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The best engineers question their own thinking.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Most of what I see optimizes for:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;better outputs&lt;/li&gt;
&lt;li&gt;faster generation&lt;/li&gt;
&lt;li&gt;more automation&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;But much less for:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;clearer thinking&lt;/li&gt;
&lt;li&gt;stronger judgment&lt;/li&gt;
&lt;li&gt;deeper understanding&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;AI isn’t just changing how we build.&lt;/p&gt;

&lt;p&gt;It’s quietly reshaping &lt;strong&gt;how we think while building&lt;/strong&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  🧠 What kind of thinking do you actually need?
&lt;/h2&gt;

&lt;p&gt;That’s when I realized I didn’t need more prompts.&lt;/p&gt;

&lt;p&gt;I needed a way to choose the right kind of thinking first.&lt;/p&gt;

&lt;p&gt;Instead of asking:&lt;/p&gt;

&lt;p&gt;“What’s the best prompt for this?”&lt;/p&gt;

&lt;p&gt;I started asking:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;“What kind of thinking do I need right now?”&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;That led me to structure my prompting around &lt;strong&gt;5 simple thinking modes&lt;/strong&gt;:&lt;/p&gt;

&lt;p&gt;1) &lt;strong&gt;Explore&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;When I don’t fully understand the problem yet&lt;/p&gt;

&lt;p&gt;2) &lt;strong&gt;Challenge&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;When I have a plan… but it might be wrong&lt;/p&gt;

&lt;p&gt;3) &lt;strong&gt;Decide&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;When I need to choose between options&lt;/p&gt;

&lt;p&gt;4) &lt;strong&gt;Audit&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;When I need to verify quality or correctness&lt;/p&gt;

&lt;p&gt;5) &lt;strong&gt;Reflect&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;When I want to actually learn from what I did&lt;/p&gt;

&lt;p&gt;This simple shift changed everything.&lt;/p&gt;

&lt;p&gt;Instead of using AI reactively,&lt;br&gt;
I started using it &lt;strong&gt;intentionally based on the thinking task&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  🔁 The simple loop that protects your thinking
&lt;/h2&gt;

&lt;p&gt;This is a simple workflow framework that makes a big difference.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Before AI&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Write what you think first.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;During AI&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Use it to expand or challenge your thinking.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;After AI&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Ask yourself:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Did I verify this?&lt;/li&gt;
&lt;li&gt;Did I just accept it?&lt;/li&gt;
&lt;li&gt;Can I explain it without AI?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It sounds simple, but it’s surprisingly easy to skip.&lt;/p&gt;

&lt;p&gt;And when you skip it, you start noticing something subtle:&lt;/p&gt;

&lt;p&gt;Your output improves.&lt;br&gt;
But your understanding doesn’t always follow.&lt;/p&gt;

&lt;h2&gt;
  
  
  ⚖️ Why one prompt is almost never enough
&lt;/h2&gt;

&lt;p&gt;One thing I’ve been changing in my workflow:&lt;/p&gt;

&lt;p&gt;I rarely rely on a single prompt anymore.&lt;/p&gt;

&lt;p&gt;Instead, I use &lt;strong&gt;prompt pairing&lt;/strong&gt;:&lt;/p&gt;

&lt;p&gt;1) &lt;strong&gt;one prompt to generate&lt;/strong&gt;&lt;br&gt;
2) &lt;strong&gt;one prompt to challenge&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;p&gt;First prompt:&lt;/p&gt;

&lt;p&gt;“Suggest 3 possible architectures for this system.”&lt;/p&gt;

&lt;p&gt;Follow-up:&lt;/p&gt;

&lt;p&gt;“Now challenge each option: what are the hidden risks, failure modes, and long-term maintenance issues?”&lt;/p&gt;

&lt;p&gt;Why this matters:&lt;/p&gt;

&lt;p&gt;AI is very good at giving plausible first answers.&lt;br&gt;
But those answers are often:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;incomplete&lt;/li&gt;
&lt;li&gt;overly confident&lt;/li&gt;
&lt;li&gt;biased toward common patterns&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Prompt pairing helps you avoid:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;first-answer bias&lt;/li&gt;
&lt;li&gt;shallow reasoning&lt;/li&gt;
&lt;li&gt;premature decisions&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It forces a simple but powerful loop:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Generate → Critique → Decide&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;And that loop alone has probably improved my decision quality more than any single “better prompt”.&lt;/p&gt;

&lt;h2&gt;
  
  
  📊 A simple way to check if AI is helping or hurting your thinking
&lt;/h2&gt;

&lt;p&gt;Another thing I started doing:&lt;/p&gt;

&lt;p&gt;After important prompts, I ask myself:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;“Did AI actually improve my thinking here?”&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I use a simple &lt;strong&gt;thinking score&lt;/strong&gt; (0–5):&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Did I write my own initial view before prompting?&lt;/li&gt;
&lt;li&gt;Did I challenge or refine the output?&lt;/li&gt;
&lt;li&gt;Did I verify at least one important claim?&lt;/li&gt;
&lt;li&gt;Did I make the final judgment myself?&lt;/li&gt;
&lt;li&gt;Can I explain the result without AI?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Not as a strict system.&lt;br&gt;
More as a signal.&lt;/p&gt;

&lt;p&gt;Because sometimes the pattern is obvious:&lt;/p&gt;

&lt;p&gt;You get great output.&lt;br&gt;
You move faster.&lt;br&gt;
But you didn’t actually understand what happened.&lt;/p&gt;

&lt;p&gt;And over time, that compounds.&lt;/p&gt;




&lt;h2&gt;
  
  
  🛠️ A few prompts that changed how I work
&lt;/h2&gt;

&lt;p&gt;Here’s one I use a lot (Explore Mode):&lt;/p&gt;

&lt;p&gt;“I am working on a vague engineering problem.&lt;br&gt;
Before suggesting solutions, help me frame the problem.&lt;br&gt;
List the goal, constraints, stakeholders, unknowns, assumptions, edge cases, and the questions I should answer myself first.”&lt;/p&gt;

&lt;p&gt;Then I follow it with:&lt;/p&gt;

&lt;p&gt;“Now turn this into the 5 questions I should answer manually before asking for implementation help.”&lt;/p&gt;

&lt;p&gt;What this does:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;forces clarity before coding&lt;/li&gt;
&lt;li&gt;surfaces unknowns early&lt;/li&gt;
&lt;li&gt;prevents jumping too quickly into solutions&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Another one I’ve been using more (Challenge Mode):&lt;/p&gt;

&lt;p&gt;“Pressure-test this architecture proposal.&lt;br&gt;
Identify assumptions, weak points, hidden dependencies, and failure modes.&lt;br&gt;
For each, explain what evidence would confirm or disprove it.”&lt;/p&gt;

&lt;p&gt;Followed by:&lt;/p&gt;

&lt;p&gt;“Which of these should I verify first, and how?”&lt;/p&gt;

&lt;p&gt;This one has saved me from a few very confident but flawed directions.&lt;/p&gt;




&lt;h2&gt;
  
  
  👥 What’s changing in teams right now
&lt;/h2&gt;

&lt;p&gt;Prompting is evolving quickly.&lt;/p&gt;

&lt;p&gt;It’s becoming:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;more collaborative&lt;/li&gt;
&lt;li&gt;more embedded in workflows&lt;/li&gt;
&lt;li&gt;less about “one perfect prompt”&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;And more about:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;prompt sequences&lt;/li&gt;
&lt;li&gt;prompt-driven workflows&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I’m also seeing patterns like:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Prompt Driven Development (explore before coding)&lt;/li&gt;
&lt;li&gt;Prompt versioning (iterating prompts like code)&lt;/li&gt;
&lt;li&gt;Shared team prompts (internal playbooks)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;But most of these still optimize for output quality.&lt;br&gt;
Not &lt;strong&gt;thinking quality&lt;/strong&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  🧩 The piece I felt was missing
&lt;/h2&gt;

&lt;p&gt;I didn’t need more prompts.&lt;/p&gt;

&lt;p&gt;I needed a way to answer:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;“Is AI making my thinking better or just faster?”&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;So I started using a simple self-check after important prompts:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Did I think before prompting?&lt;/li&gt;
&lt;li&gt;Did I challenge the output?&lt;/li&gt;
&lt;li&gt;Did I verify anything?&lt;/li&gt;
&lt;li&gt;Did I make the final judgment?&lt;/li&gt;
&lt;li&gt;Can I explain it without AI?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Not to optimize productivity.&lt;br&gt;
But to &lt;strong&gt;protect judgment&lt;/strong&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  ⚙️ The system I ended up building for myself
&lt;/h2&gt;

&lt;p&gt;I ended up structuring this into a prompt system I now use daily:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;5 thinking modes&lt;/li&gt;
&lt;li&gt;Before / During / After workflow&lt;/li&gt;
&lt;li&gt;Paired prompts (generate → challenge)&lt;/li&gt;
&lt;li&gt;Simple thinking quality score&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Recommended loop: Before AI - Core Prompt - Paired Follow-up - Manual Reflection - Thinking Score.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;All organized around real engineering use cases.&lt;/p&gt;

&lt;p&gt;If you’re interested, &lt;a href="https://javz.gumroad.com/l/ai-prompt-system-guide" rel="noopener noreferrer"&gt;I shared the full prompt system as a free PDF (100 prompts structured by thinking mode).&lt;/a&gt; (100 prompts structured by thinking mode).&lt;/p&gt;

&lt;p&gt;Would love your feedback on my system.&lt;/p&gt;




&lt;h2&gt;
  
  
  💬 Curious how others are approaching this
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;How do you approach prompting today?&lt;/li&gt;
&lt;li&gt;Do you reflect on your AI usage at all?&lt;/li&gt;
&lt;li&gt;Are teams starting to standardize prompting internally?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I’m especially curious about how this is evolving at the team/org level.&lt;/p&gt;




&lt;p&gt;AI gives answers.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;But engineers who compound over time are the ones who protect how they think.&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>softwareengineering</category>
      <category>productivity</category>
      <category>learning</category>
    </item>
    <item>
      <title>The 4 Cognitive Archetypes of Developers Using AI</title>
      <dc:creator>Julien Avezou</dc:creator>
      <pubDate>Mon, 04 May 2026 14:47:35 +0000</pubDate>
      <link>https://dev.to/javz/the-4-cognitive-archetypes-of-developers-using-ai-382n</link>
      <guid>https://dev.to/javz/the-4-cognitive-archetypes-of-developers-using-ai-382n</guid>
      <description>&lt;p&gt;Lately, I’ve been reflecting on something:&lt;/p&gt;

&lt;p&gt;The question for most developers is no longer "Are you using AI?", but rather "How and why are you using AI?".&lt;/p&gt;

&lt;p&gt;I’ve noticed AI tooling becoming increasingly embedded in my daily workflow. At this time last year, my usage of AI was limited to code autocomplete suggestions in my IDE that I would manually validate. Now I am using coding assistants to help ideate, prototype, and refactor my projects. &lt;br&gt;
In just one year, my workflow has changed dramatically.&lt;/p&gt;

&lt;p&gt;It's hard for me to now imagine coding without AI tooling as it has been making me more productive. It's the same feeling I got when I got my first smartphone. &lt;/p&gt;

&lt;p&gt;AI increasingly feels like my first smartphone: transformative, incredibly useful, and powerful enough that I need intentional habits to avoid overdependence. For example, keeping it outside of my bedroom when I go to sleep and occasionally going on walks without it, just to be alone with my thoughts. &lt;/p&gt;

&lt;p&gt;This is the kind of awareness I’m now trying to build around my AI usage: understanding how it shapes my thinking, where it helps, and where it may quietly erode it.&lt;/p&gt;




&lt;h2&gt;
  
  
  AI isn’t just changing how fast we build. It is also impacting &lt;em&gt;how&lt;/em&gt; we think.
&lt;/h2&gt;

&lt;p&gt;Because not all AI usage is equal. Each usage can be mapped to a certain cognitive cost. &lt;/p&gt;

&lt;p&gt;Sometimes AI helps us think more clearly and move faster.&lt;br&gt;
But sometimes it quietly replaces parts of our reasoning before we even notice. &lt;/p&gt;

&lt;p&gt;I realized that sometimes I wasn’t using AI because I needed leverage, I was using it because I wanted to avoid friction.&lt;/p&gt;

&lt;p&gt;That realization pushed me to start thinking less about &lt;em&gt;AI usage&lt;/em&gt; in general, and more about &lt;strong&gt;AI modes&lt;/strong&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  Each AI mode carries a cognitive cost
&lt;/h2&gt;

&lt;p&gt;I distinguish 3 groups: Supportive, Mixed, Risky.&lt;/p&gt;

&lt;h3&gt;
  
  
  Supportive modes:
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Explaining unfamiliar code or architecture&lt;/li&gt;
&lt;li&gt;Exploring tradeoffs&lt;/li&gt;
&lt;li&gt;Critiquing a plan&lt;/li&gt;
&lt;li&gt;Testing assumptions&lt;/li&gt;
&lt;li&gt;Clarifying concepts&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These modes use AI to expand your thinking and have a low cognitive cost.&lt;/p&gt;

&lt;h3&gt;
  
  
  Mixed modes:
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Boilerplate generation&lt;/li&gt;
&lt;li&gt;Refactoring suggestions&lt;/li&gt;
&lt;li&gt;Drafting documentation&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These modes use AI to save time but can also compress understanding if used carelessly. These modes have a sizeable cognitive cost.&lt;/p&gt;

&lt;h3&gt;
  
  
  Risky modes:
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Blindly accepting generated solutions&lt;/li&gt;
&lt;li&gt;Delegating core architecture too early&lt;/li&gt;
&lt;li&gt;Letting AI define implementation before you’ve thought deeply&lt;/li&gt;
&lt;li&gt;Heavy debugging delegation without understanding the root cause&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These can feel productive on the surface, but these AI modes can weaken long-term comprehension if used frequently and have a high cognitive cost.&lt;/p&gt;




&lt;h2&gt;
  
  
  Hands-on reflective practices also affect your total score
&lt;/h2&gt;

&lt;p&gt;When shipping code I also keep a set of reflective exercises that I can make use of at different stages of my workflow. These can reinforce healthy behavior that alleviate some of the cognitive cost from AI modes.&lt;/p&gt;

&lt;h3&gt;
  
  
  Before:
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Did I attempt this myself first?&lt;/li&gt;
&lt;li&gt;Am I using AI to expand my thinking or bypass it?&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  During:
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Am I reviewing assumptions deeply?&lt;/li&gt;
&lt;li&gt;Could I explain why this output works?&lt;/li&gt;
&lt;li&gt;What risks or edge cases might AI be skipping?&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  After:
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Could I explain this solution tomorrow without rereading it?&lt;/li&gt;
&lt;li&gt;Did I preserve ownership?&lt;/li&gt;
&lt;li&gt;Was this leverage or dependency?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Over time, repeated AI habits don’t just affect productivity. &lt;/p&gt;

&lt;p&gt;They shape how we think.&lt;/p&gt;




&lt;h2&gt;
  
  
  Those patterns shape your cognitive archetype
&lt;/h2&gt;

&lt;p&gt;There are 4 main cognitive archetypes:&lt;/p&gt;

&lt;h3&gt;
  
  
  AI Architect
&lt;/h3&gt;

&lt;p&gt;AI expands thinking without replacing ownership&lt;/p&gt;

&lt;h3&gt;
  
  
  AI Balancer
&lt;/h3&gt;

&lt;p&gt;Mostly healthy, but mixed-mode creep needs monitoring&lt;/p&gt;

&lt;h3&gt;
  
  
  Autopilot Builder
&lt;/h3&gt;

&lt;p&gt;Efficiency may be masking weakened comprehension&lt;/p&gt;

&lt;h3&gt;
  
  
  AI Passenger
&lt;/h3&gt;

&lt;p&gt;AI may be driving too much of the reasoning path&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpbgcktvlvgvwsrctef80.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpbgcktvlvgvwsrctef80.png" alt=" " width="800" height="533"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;These archetypes aren’t an exact science. They’re simply a framework for raising awareness.&lt;/p&gt;




&lt;p&gt;Have you also noticed different "AI modes" in your own daily workflow? If so, what mode are you in the most?&lt;/p&gt;

&lt;p&gt;What would be your cognitive archetype and why?&lt;/p&gt;

&lt;p&gt;I’d be curious to hear how others are thinking about their own AI usage.&lt;/p&gt;

&lt;p&gt;It feels like we’re all trying to figure out and build these habits in real time. &lt;/p&gt;




&lt;p&gt;My take: I don’t think the right path is using AI less. &lt;/p&gt;

&lt;p&gt;AI clearly offers real leverage, but leverage without awareness can come with hidden costs.&lt;/p&gt;

&lt;p&gt;Knowing when to switch modes becomes key.&lt;/p&gt;

&lt;p&gt;When should AI be a teacher, critic, accelerator or collaborator?&lt;/p&gt;

&lt;p&gt;When should AI support the driver without taking the wheel?&lt;/p&gt;

&lt;p&gt;Because faster output is great but only if understanding keeps up.&lt;/p&gt;

&lt;p&gt;I built a personal tracker around this framework to better measure my own habits over time. &lt;/p&gt;

&lt;p&gt;It helps me score AI modes, monitor dependency drift, and spot patterns in how I work so I can adjust more intentionally over time.&lt;/p&gt;

&lt;p&gt;If it sounds useful to you too, I’m sharing it free and would genuinely love feedback: &lt;a href="https://javz.gumroad.com/l/ai-thinking-balance-tracker" rel="noopener noreferrer"&gt;https://javz.gumroad.com/l/ai-thinking-balance-tracker&lt;/a&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>productivity</category>
      <category>learning</category>
      <category>softwareengineering</category>
    </item>
    <item>
      <title>AI through Visuals - Hardware</title>
      <dc:creator>Julien Avezou</dc:creator>
      <pubDate>Tue, 28 Apr 2026 11:17:35 +0000</pubDate>
      <link>https://dev.to/javz/ai-through-visuals-hardware-5ha6</link>
      <guid>https://dev.to/javz/ai-through-visuals-hardware-5ha6</guid>
      <description>&lt;p&gt;Most AI content today feels flat.&lt;/p&gt;

&lt;p&gt;We read threads.&lt;br&gt;
We skim blog posts.&lt;br&gt;
We copy prompts.&lt;/p&gt;

&lt;p&gt;But very rarely do we actually see how AI systems work.&lt;/p&gt;




&lt;h3&gt;
  
  
  Why I’m starting this series
&lt;/h3&gt;

&lt;p&gt;As engineers, our edge is not just using tools.&lt;/p&gt;

&lt;p&gt;It’s understanding systems.&lt;/p&gt;

&lt;p&gt;Lately, I’ve been thinking a lot about this:&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Are we still thinking deeply about what we’re building…&lt;br&gt;
or just orchestrating tools we don’t fully understand?&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;That’s where this idea came from.&lt;/p&gt;




&lt;h3&gt;
  
  
  Introducing: AI Visual Series
&lt;/h3&gt;

&lt;p&gt;I’m starting a series of interactive visual explainers to break down AI concepts:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;infrastructure&lt;/li&gt;
&lt;li&gt;systems&lt;/li&gt;
&lt;li&gt;tradeoffs&lt;/li&gt;
&lt;li&gt;bottlenecks&lt;/li&gt;
&lt;li&gt;real-world constraints&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Not with walls of text…&lt;/p&gt;

&lt;p&gt;But with visuals you can explore and interact with.&lt;/p&gt;

&lt;p&gt;👉 &lt;a href="https://ai-visual-series.vercel.app/" rel="noopener noreferrer"&gt;You can explore the series here&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;The goal isn’t about simplifying AI.&lt;/p&gt;

&lt;p&gt;It’s about making complex systems intuitive through visuals.&lt;/p&gt;

&lt;p&gt;Because once you see something you think differently about it.&lt;/p&gt;

&lt;p&gt;Without further delay, let's explore the first post in this series.&lt;/p&gt;




&lt;h3&gt;
  
  
  AI Hardware, Explained Visually
&lt;/h3&gt;

&lt;p&gt;We talk about AI like it’s software.&lt;/p&gt;

&lt;p&gt;Prompts. Models. APIs.&lt;/p&gt;

&lt;p&gt;But modern AI doesn’t run on “code”.&lt;/p&gt;

&lt;p&gt;It runs on a massive physical stack of hardware.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. The AI hardware stack&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;A modern AI system isn’t just a server.&lt;/p&gt;

&lt;p&gt;It’s a layered system:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;GPU / accelerator&lt;/li&gt;
&lt;li&gt;CPU&lt;/li&gt;
&lt;li&gt;high-bandwidth memory (HBM)&lt;/li&gt;
&lt;li&gt;advanced packaging&lt;/li&gt;
&lt;li&gt;networking&lt;/li&gt;
&lt;li&gt;storage&lt;/li&gt;
&lt;li&gt;power&lt;/li&gt;
&lt;li&gt;cooling&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Each layer matters.&lt;/p&gt;

&lt;p&gt;Each layer can break.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0coccewdl50xx7lr6355.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0coccewdl50xx7lr6355.gif" alt=" " width="720" height="447"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. A global system&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;What surprised me most:&lt;/p&gt;

&lt;p&gt;This stack is not built in one place.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Design → United States&lt;/li&gt;
&lt;li&gt;Fabrication → Taiwan&lt;/li&gt;
&lt;li&gt;Memory → South Korea&lt;/li&gt;
&lt;li&gt;Lithography → Netherlands&lt;/li&gt;
&lt;li&gt;Materials → Japan&lt;/li&gt;
&lt;li&gt;Assembly + deployment → China + Southeast Asia&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;No single country controls the full system.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffk2baew8jr01zpc1cr7q.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffk2baew8jr01zpc1cr7q.gif" alt=" " width="720" height="470"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3. Where things actually break&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;We used to think scaling AI meant just adding more GPUs&lt;/p&gt;

&lt;p&gt;But that’s no longer true.&lt;/p&gt;

&lt;p&gt;The real bottlenecks are now:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;HBM memory&lt;/li&gt;
&lt;li&gt;advanced packaging&lt;/li&gt;
&lt;li&gt;networking&lt;/li&gt;
&lt;li&gt;power availability&lt;/li&gt;
&lt;li&gt;cooling&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;And here’s the counterintuitive part:&lt;/p&gt;

&lt;p&gt;Compute itself is no longer the main constraint.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fh91rpbxdzlak8esx76rc.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fh91rpbxdzlak8esx76rc.gif" alt=" " width="760" height="412"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The key takeaway&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The more I dig into AI…&lt;/p&gt;

&lt;p&gt;The less it feels like software engineering.&lt;/p&gt;

&lt;p&gt;And the more it feels like:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;distributed systems&lt;/li&gt;
&lt;li&gt;hardware engineering&lt;/li&gt;
&lt;li&gt;energy infrastructure&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;All at once.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why this matters for us&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;If you’re building with AI today:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;you’re sitting on top of this entire stack&lt;/li&gt;
&lt;li&gt;you’re affected by its constraints&lt;/li&gt;
&lt;li&gt;you’re making decisions that depend on it&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Understanding it, even at a high level, changes how you think.&lt;/p&gt;

&lt;p&gt;You can play around with the interactive visuals &lt;a href="https://ai-visual-series.vercel.app/posts/ai-hardware-explained-visually" rel="noopener noreferrer"&gt;here&lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  What’s next in the series
&lt;/h3&gt;

&lt;p&gt;I’ll keep building these visual explainers around:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;evolution of AI chips&lt;/li&gt;
&lt;li&gt;cost of a prompt&lt;/li&gt;
&lt;li&gt;model capability vs compute&lt;/li&gt;
&lt;li&gt;open vs closed AI ecosystems&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Curious to hear:&lt;/p&gt;

&lt;p&gt;👉 &lt;strong&gt;what AI concepts would you like to see visualized next?&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>webdev</category>
      <category>programming</category>
      <category>learning</category>
    </item>
    <item>
      <title>Building a coding course generator in public #2: what I learned</title>
      <dc:creator>Julien Avezou</dc:creator>
      <pubDate>Wed, 22 Apr 2026 12:49:24 +0000</pubDate>
      <link>https://dev.to/javz/building-a-coding-course-generator-in-public-2-what-i-learned-49o6</link>
      <guid>https://dev.to/javz/building-a-coding-course-generator-in-public-2-what-i-learned-49o6</guid>
      <description>&lt;p&gt;Building fast with AI is easy but building something you can actually run, inspect, and trust is harder. This project is my attempt to teach builders core engineering intuitions when building projects.&lt;/p&gt;

&lt;p&gt;This is the second and closing post in my mini build-in-public series around a coding course generator. The goal was not to polish a hosted SaaS. It was to validate the concept quickly, release the code, and see whether a local-first learning product built with AI assistance could help others.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjujhdcm92flzrq206ipr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjujhdcm92flzrq206ipr.png" alt=" " width="800" height="435"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  Coding setup
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;VS Code&lt;/li&gt;
&lt;li&gt;ChatGPT 5.4 for ideation and planning&lt;/li&gt;
&lt;li&gt;Codex 5.3 for scaffolding and broader architectural changes&lt;/li&gt;
&lt;li&gt;Codex 5.3 Spark for faster live coding and pair-programming-style iteration&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Because this was a side experiment and I wanted fast feedback, I used ChatGPT and Codex heavily throughout the build. That definitely helped me move faster. It also made one thing very clear: AI can accelerate implementation, but it does not remove the need for architectural steering, debugging discipline, and careful review.&lt;/p&gt;

&lt;p&gt;I stopped thinking about this as "AI writes the code" fairly quickly. The better framing for me was: I am still the engineer, but I now have a very fast collaborator that needs clear direction.&lt;/p&gt;




&lt;h3&gt;
  
  
  What I learned building with my AI assistant
&lt;/h3&gt;

&lt;p&gt;A few practices made the biggest difference for me:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Spend time in planning mode before implementation. Longer planning conversations up front saved me from a lot of drift later.&lt;/li&gt;
&lt;li&gt;Be explicit about architecture. If I did not define boundaries early, the assistant would fill in the blanks in ways I did not actually want.&lt;/li&gt;
&lt;li&gt;State the expected end result clearly. Prompts worked much better when I described success criteria, constraints, and what “done” should look like.&lt;/li&gt;
&lt;li&gt;Add observability early. Admin pages, job logs, and debug surfaces helped a lot once the system had multiple moving parts.&lt;/li&gt;
&lt;li&gt;Debug collaboratively, not passively. The best prompts were the ones where I pasted the full error, the relevant code path, and the current hypothesis.&lt;/li&gt;
&lt;li&gt;Work in smaller slices. Smaller prompts with checkpoints were much easier to validate than one large mega-prompt.&lt;/li&gt;
&lt;li&gt;Test between slices. Typechecks, linting, and automated tests were essential to keep momentum without accumulating silent breakage.&lt;/li&gt;
&lt;li&gt;Ask for pre-mortems and final audits. Some of the most useful prompts were “what am I missing?” and “review this repo for architectural risk.”&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For Codex specifically, a few habits helped a lot: use plan mode for architecture, keep a reusable prompt contract, isolate bigger changes in branches or worktrees when useful, and run a final repo-wide audit once the main implementation is in place.&lt;/p&gt;

&lt;p&gt;One other thing I noticed: model choice matters less than matching the model and reasoning depth to the task. When I wanted speed, I went lighter. When I was stuck on architecture or a harder bug, I switched to a deeper pass instead of trying to force a fast model to solve everything.&lt;br&gt;
For example, this is high-level comparison between Codex 5.3 and Codex 5.3 spark that I would switch between:&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fn5fhfaa9de6qnkmcptke.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fn5fhfaa9de6qnkmcptke.png" alt=" " width="800" height="301"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This is the sequence of prompts I ran with Codex, notice how they are split into smaller building blocks to maintain frequent control and checkpoints when building the project:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ff6ywqf9d12hlnp2aop22.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ff6ywqf9d12hlnp2aop22.png" alt=" " width="800" height="567"&gt;&lt;/a&gt;&lt;/p&gt;


&lt;h3&gt;
  
  
  Thoughts on the project itself
&lt;/h3&gt;

&lt;p&gt;The hardest part of this project was not generating code. It was deciding how to structure the learning experience for a beginner.&lt;/p&gt;

&lt;p&gt;I wanted AI to be optional, not the foundation of the product. That mattered a lot to me. The default experience should still work without any AI setup, and the product should still teach healthy habits rather than turn into a black box.&lt;/p&gt;

&lt;p&gt;That pushed me toward a local-first design. The app is meant to run on your machine. It lists guided project-based courses, scaffolds a starter project into your own GitHub repository, and tracks progression through pull requests and validation checks. If you configure an OpenAI or Anthropic key, it can also post optional advisory AI reviews on PRs.&lt;/p&gt;

&lt;p&gt;I also experimented with skill-focused course generation around intents like debugging and error_handling. That idea is still promising to me, but I want to be honest about its current state: the custom course pipeline is still experimental, and the UI is currently marked as temporarily disabled while I harden it.&lt;/p&gt;

&lt;p&gt;The deeper challenge here is educational design. How do you teach fundamentals in a way that is practical, motivating, and not overly abstract? The repo reflects that tension quite a bit. The course structure includes step-zero onboarding, glossary terms, review checklists, concept primers, reflection prompts, and milestone validation. The goal is not just “finish tasks,” but build better engineering intuition along the way.&lt;/p&gt;


&lt;h3&gt;
  
  
  Tech stack
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;TypeScript&lt;/li&gt;
&lt;li&gt;Next.js 15&lt;/li&gt;
&lt;li&gt;React 19&lt;/li&gt;
&lt;li&gt;Node.js 22&lt;/li&gt;
&lt;li&gt;pnpm monorepo&lt;/li&gt;
&lt;li&gt;Prisma&lt;/li&gt;
&lt;li&gt;PostgreSQL&lt;/li&gt;
&lt;li&gt;a local background worker using tsx&lt;/li&gt;
&lt;li&gt;GitHub API integration with outbound sync and optional webhook ingestion&lt;/li&gt;
&lt;li&gt;OpenAI / Anthropic integrations for optional AI features&lt;/li&gt;
&lt;li&gt;Vitest, ESLint, and Prettier&lt;/li&gt;
&lt;/ul&gt;


&lt;h3&gt;
  
  
  Architecture decisions I made early
&lt;/h3&gt;

&lt;p&gt;A few design decisions shaped the project quite a bit.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Implemented today:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Local-first web app plus background worker&lt;/li&gt;
&lt;li&gt;Queue-based job processing with retries&lt;/li&gt;
&lt;li&gt;Optional AI layer on top of deterministic milestone validation and progression&lt;/li&gt;
&lt;li&gt;Structured logging for jobs, events, and LLM activity&lt;/li&gt;
&lt;li&gt;Admin pages for monitoring job and LLM behavior&lt;/li&gt;
&lt;li&gt;An LLM gateway with token limits, request hashing, cache support, and secret scanning on diff input&lt;/li&gt;
&lt;li&gt;AI PR review based on trimmed diff context rather than dumping the full repo into the model&lt;/li&gt;
&lt;li&gt;Template and course versioning&lt;/li&gt;
&lt;li&gt;Course-plan validation against a concept dependency graph, so the learning progression stays more coherent&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;One detail I particularly like is that milestone progression is deterministic. AI can help as an advisory layer, but it does not decide the underlying progression state. That felt like the right tradeoff for a learning product.&lt;/p&gt;

&lt;p&gt;Another useful decision was adding structured logs and worker heartbeats early. Once you have a web app, a worker, GitHub sync, and optional AI behavior, silent failure becomes expensive. I wanted the system to be inspectable.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Still future work:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;A few ideas are still more directional than finished:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;better cost controls as usage scales&lt;/li&gt;
&lt;li&gt;a stronger and more reliable custom-course generation pipeline&lt;/li&gt;
&lt;li&gt;better reuse and sharing of generated courses&lt;/li&gt;
&lt;li&gt;richer reflection and learning artifacts around the core course flow&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;So while I am happy with the foundation, I do not want to oversell the current state. The core local-first flow is the real shipped value today.&lt;/p&gt;


&lt;h3&gt;
  
  
  Open-source release
&lt;/h3&gt;

&lt;p&gt;The repo is now public and MIT-licensed:&lt;br&gt;
&lt;/p&gt;
&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://assets.dev.to/assets/github-logo-5a155e1f9a670af7944dd5e12375bc76ed542ea80224905ecaf878b9157cdefc.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/JulienAvezou" rel="noopener noreferrer"&gt;
        JulienAvezou
      &lt;/a&gt; / &lt;a href="https://github.com/JulienAvezou/ai-course-generator" rel="noopener noreferrer"&gt;
        ai-course-generator
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      Build custom code fundamentals courses with github and AI integrated workflows
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;&lt;div class="markdown-heading"&gt;
&lt;h1 class="heading-element"&gt;Coding Course Generator&lt;/h1&gt;
&lt;/div&gt;
&lt;p&gt;Local-first, open-source software for learning healthy coding fundamentals in the age of AI.&lt;/p&gt;
&lt;p&gt;This project is a build-in-public social experiment. The goal is not to ship a hosted product. The goal is to help learners run the app locally, scaffold a real project into their own GitHub repository, and learn fundamentals, debugging habits, and engineering discipline through guided milestones.&lt;/p&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Open Source Status&lt;/h2&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;The source code in this repository is licensed under &lt;a href="https://github.com/JulienAvezou/ai-course-generator/./LICENSE" rel="noopener noreferrer"&gt;MIT&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;The repo is intentionally &lt;code&gt;private&lt;/code&gt; at the package-manager level in &lt;a href="https://github.com/JulienAvezou/ai-course-generator/./package.json" rel="noopener noreferrer"&gt;package.json&lt;/a&gt; to prevent accidental npm publishing.&lt;/li&gt;
&lt;li&gt;This repository is publicly visible on GitHub and is intended to be cloned and run locally.&lt;/li&gt;
&lt;li&gt;Treat the codebase, docs, screenshots, and git history as public-facing project material.&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Mission&lt;/h2&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Teach programming fundamentals through real projects&lt;/li&gt;
&lt;li&gt;Teach professional engineering habits, not just syntax&lt;/li&gt;
&lt;li&gt;Help AI-assisted builders develop better judgment, debugging ability, and maintainable code instincts&lt;/li&gt;
&lt;li&gt;Keep the whole system…&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/JulienAvezou/ai-course-generator" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;The intended usage is simple: clone it, run it locally, inspect everything, and fork it if you want to push the idea further. That is also why I kept AI optional. You do not need AI features to use the core product.&lt;/p&gt;

&lt;p&gt;What I am releasing today is not a polished production platform. It is a local-first open-source project with a real architecture, a clear learning idea, and a working core flow. The custom course pipeline generation is still too experimental, I will try to implement a working version when I have some extra time to dedicate to this project.&lt;/p&gt;

&lt;h4&gt;
  
  
  Screenshots
&lt;/h4&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fw1pnmjlk7eaxi1jphzvk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fw1pnmjlk7eaxi1jphzvk.png" alt=" " width="800" height="455"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fret5nindtt1cgcykt47t.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fret5nindtt1cgcykt47t.png" alt=" " width="800" height="373"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnet95amh6f1cmx1i05yc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnet95amh6f1cmx1i05yc.png" alt=" " width="800" height="462"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffumm5zb2jyi0f8lhghx1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffumm5zb2jyi0f8lhghx1.png" alt=" " width="800" height="428"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbxv6jxxbibnvqgsge883.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbxv6jxxbibnvqgsge883.png" alt=" " width="800" height="402"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  Closing thoughts
&lt;/h3&gt;

&lt;p&gt;This project was a useful reminder that AI can accelerate building, but it does not replace product judgment or engineering clarity. If anything, it makes those qualities more important.&lt;/p&gt;

&lt;p&gt;If you want to try it, fork it, or build on top of it, I would love to see what you do with it. I am especially interested in hearing what you would change in the learning flow, the validation model, or the AI workflow.&lt;/p&gt;

&lt;p&gt;How would you design a beginner coding product today: should AI be a guide, a reviewer, or mostly stay out of the way until the learner gets stuck?&lt;/p&gt;

&lt;p&gt;As a beginner, what resources are you using today to learn how to code?&lt;/p&gt;

&lt;p&gt;For experienced coders, what resources would you recommend to beginners learning to code today?&lt;/p&gt;

</description>
      <category>buildinpublic</category>
      <category>opensource</category>
      <category>ai</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Don’t let AI do your thinking: a practical guide for engineers</title>
      <dc:creator>Julien Avezou</dc:creator>
      <pubDate>Thu, 16 Apr 2026 10:59:58 +0000</pubDate>
      <link>https://dev.to/javz/dont-let-ai-do-your-thinking-a-practical-guide-for-engineers-58e0</link>
      <guid>https://dev.to/javz/dont-let-ai-do-your-thinking-a-practical-guide-for-engineers-58e0</guid>
      <description>&lt;p&gt;&lt;strong&gt;I designed a "Thinking Guide" for engineers building with AI. And looking for your feedback.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;We’re entering a new era of software engineering.&lt;/p&gt;

&lt;p&gt;Code can now be generated instantly. Entire functions, components, even systems can be scaffolded in seconds.&lt;/p&gt;

&lt;p&gt;This is a massive opportunity.&lt;/p&gt;

&lt;p&gt;But there’s a subtle tradeoff I’ve been thinking a lot about lately:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;When execution becomes easier, thinking can quietly decrease.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Not because we’re less capable, but because many of the moments that used to force us to think - debugging, struggling, reasoning - are now compressed or skipped.&lt;/p&gt;

&lt;p&gt;You can ship faster than ever.&lt;br&gt;&lt;br&gt;
But speed alone does not build understanding.&lt;/p&gt;



&lt;p&gt;Several studies suggest that heavy reliance on AI tools can reduce cognitive effort, weaken critical thinking, and impair long‑term learning, which are all forms of cognitive offloading.&lt;/p&gt;

&lt;p&gt;A recent experimental learning study reported in Psychology Today (“Cognitive Offloading: Using AI Reduces New Skill Formation”) showed that learners who relied heavily on AI while acquiring a complex skill (e.g., coding assistance) formed substantially fewer new skills than those who completed the same tasks without AI. The authors conclude that when tasks are done with the goal of learning, offloading key steps to AI “considerably reduces” skill formation and recommend delaying AI support until a solid base of independent proficiency is built.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ft9aw001l9lmgkgpp0m46.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ft9aw001l9lmgkgpp0m46.png" alt=" " width="800" height="544"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The takeaway isn’t to avoid AI. It’s to use it in a way that keeps you thinking, rather than replace your thinking.&lt;/strong&gt;&lt;/p&gt;


&lt;h2&gt;
  
  
  Why I wrote this guide
&lt;/h2&gt;

&lt;p&gt;Over the past few years, I went from a graduate with no experience to a senior software engineer in 5 years, while also building and launching my own projects.&lt;/p&gt;

&lt;p&gt;One thing I realized along the way:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Growth didn’t come from writing more code.&lt;br&gt;&lt;br&gt;
It came from reflecting on the code I wrote.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;After debugging an issue, what signal led me to the root cause?&lt;br&gt;&lt;br&gt;
After designing a system, what trade-offs did I make?&lt;br&gt;&lt;br&gt;
After using AI, did I actually understand what was generated?&lt;/p&gt;

&lt;p&gt;So I started building small reflection habits around my work.&lt;/p&gt;

&lt;p&gt;Over time, this turned into a structured system.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;I recently turned that system into a guide:&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;"Thinking in the Age of AI"&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The goal is simple:&lt;br&gt;
&lt;strong&gt;Help engineers keep developing their judgment and intuition while using AI tools.&lt;/strong&gt;&lt;/p&gt;


&lt;h2&gt;
  
  
  How to use the guide
&lt;/h2&gt;

&lt;p&gt;This isn’t meant to be read once and forgotten.&lt;/p&gt;

&lt;p&gt;It’s designed to be used in small moments during your workflow.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Most exercises take 2–5 minutes&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;15 exercises in total.&lt;/p&gt;

&lt;p&gt;You don’t need to use everything. Just start by picking one tool and applying it consistently.&lt;/p&gt;

&lt;p&gt;The idea is not to reflect more.&lt;br&gt;
But to reflect deliberately.&lt;/p&gt;


&lt;h2&gt;
  
  
  Example 1 — AI Dependency Detector
&lt;/h2&gt;

&lt;p&gt;One of the tools in the guide is a quick and effective assessment on whether AI strengthening your thinking, or replacing it.&lt;/p&gt;

&lt;p&gt;Here is the full exercise extracted from the guide:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Part 1 — Quick Self-Assessment

For each statement, check the box if it applies to you frequently.
☐ I use AI before attempting to think through the problem myself.
☐ I paste AI-generated code without fully reading it.
☐ I struggle to explain AI-generated solutions afterward.
☐ I rely on AI for problems I previously could solve independently.
☐ I rarely rewrite AI-generated code in my own style.
☐ I feel uncomfortable solving similar problems without AI.
☐ I accept AI solutions even when I do not fully understand them.
☐ I use AI to avoid difficult cognitive effort.

Interpreting Your Results

0–2 boxes checked → AI is likely accelerating your thinking. 
3–5 boxes checked → Monitor usage and reintroduce friction. 
6+ boxes checked → Consider temporarily increasing independent problem-solving time.

Part 2 — Dependency Signals

Reflect on the following questions:

When AI is unavailable, how confident would I feel solving similar problems?

1 — Not confident 2 — Somewhat unsure 3 — Neutral 4 — Confident 5 — Fully confident

Circle one: 1 2 3 4 5

Have my independent debugging skills improved, stayed the same, or declined over the past months?

☐ Improved ☐ Stayed the same ☐ Declined

If I removed AI from my workflow tomorrow, what would weaken first?

_____________________________________________________________________

Part 3 — Cognitive Strength Check

Complete this short test after using AI:

Without looking at the code:

• Can I describe the logic step by step? 
• Can I identify edge cases? 
• Can I reason about time/space complexity? 
• Can I modify the solution confidently?

If you answered “no” to multiple items, this is not failure, it is a signal.

Part 4 — Adjustment Plan

If you notice rising dependency, choose one corrective action:

☐ Attempt solutions yourself for 5–10 minutes before using AI 
☐ Rewrite AI-generated code in my own words 
☐ Explain the solution aloud after generating it 
☐ Use AI only after defining constraints clearly 
☐ Limit AI use for certain categories (e.g., debugging)

Write one commitment for your next session:
_____________________________________________________________________
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  Example 2 — Reflection Prompt Cards
&lt;/h2&gt;

&lt;p&gt;I also created a set of &lt;strong&gt;prompt cards&lt;/strong&gt; organized by engineering themes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;system design
&lt;/li&gt;
&lt;li&gt;debugging / incidents
&lt;/li&gt;
&lt;li&gt;learning
&lt;/li&gt;
&lt;li&gt;promotion / impact
&lt;/li&gt;
&lt;li&gt;AI usage
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I printed them out and keep them on my desk when building products so that I can ask myself the right questions along the way.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fw1owasxaklw3n5le1jmp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fw1owasxaklw3n5le1jmp.png" alt=" " width="800" height="1042"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Whenever I’m working, I can pull a relevant card and quickly reflect.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwhd4nuize8kyy5c9d5bf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwhd4nuize8kyy5c9d5bf.png" alt=" " width="800" height="1099"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;"What trade-offs did I consciously make here?"
&lt;/li&gt;
&lt;li&gt;"What signal led me to the root cause?"
&lt;/li&gt;
&lt;li&gt;"What would I do differently if I had to rebuild this from scratch?"&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These small questions compound over time and build intuitions.&lt;/p&gt;




&lt;h2&gt;
  
  
  I’m now sharing this guide for feedback
&lt;/h2&gt;

&lt;p&gt;If you’re curious, I’ve put the guide here:&lt;/p&gt;

&lt;p&gt;👉 &lt;a href="https://javz.gumroad.com/l/thinking-in-the-age-of-ai" rel="noopener noreferrer"&gt;https://javz.gumroad.com/l/thinking-in-the-age-of-ai&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You can grab it for free (just set the price to 0).&lt;br&gt;
If it ends up being useful, feel free to support so I can keep investing my time in creating resources to help engineers, totally optional of course. &lt;/p&gt;

&lt;p&gt;Mainly looking to get feedback from other engineers.&lt;/p&gt;

&lt;p&gt;Would especially appreciate feedback on:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;which exercises feel useful vs unnecessary
&lt;/li&gt;
&lt;li&gt;what feels missing
&lt;/li&gt;
&lt;li&gt;how this fits into your actual workflow
&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Curious how others approach this
&lt;/h2&gt;

&lt;p&gt;I’d also love to hear from other devs here:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How do you make sure your thinking keeps up with AI tools?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Do you have any habits or systems in place?&lt;/strong&gt;&lt;/p&gt;




&lt;p&gt;AI can generate code.&lt;/p&gt;

&lt;p&gt;But the engineers who will stand out are the ones who continue to think deeply while using it.&lt;/p&gt;

&lt;p&gt;That’s what I’m trying to build here. This guide is helping me, I hope it can help you too along your journey as a dev.&lt;/p&gt;

&lt;p&gt;Curious to hear your thoughts!&lt;/p&gt;

</description>
      <category>ai</category>
      <category>softwareengineering</category>
      <category>productivity</category>
      <category>career</category>
    </item>
  </channel>
</rss>
