<?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: Ahmed Zrouqui</title>
    <description>The latest articles on DEV Community by Ahmed Zrouqui (@ahmed_zrouqui).</description>
    <link>https://dev.to/ahmed_zrouqui</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.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3860175%2F31189d92-547f-4407-b9ff-9747887293bf.png</url>
      <title>DEV Community: Ahmed Zrouqui</title>
      <link>https://dev.to/ahmed_zrouqui</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/ahmed_zrouqui"/>
    <language>en</language>
    <item>
      <title>I Used to Write PRDs in Notion. Then I Clocked How Long It Was Taking.</title>
      <dc:creator>Ahmed Zrouqui</dc:creator>
      <pubDate>Sat, 04 Apr 2026 11:51:23 +0000</pubDate>
      <link>https://dev.to/ahmed_zrouqui/i-used-to-write-prds-in-notion-then-i-clocked-how-long-it-was-taking-47ln</link>
      <guid>https://dev.to/ahmed_zrouqui/i-used-to-write-prds-in-notion-then-i-clocked-how-long-it-was-taking-47ln</guid>
      <description>&lt;p&gt;About eight months ago I started timing how long it took me to go from "I have an idea" to "I'm ready to write code." I expected it to be maybe 10-15 minutes of planning. It was closer to 90.&lt;/p&gt;

&lt;p&gt;Here's what those 90 minutes looked like:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Open Notion, find the PRD template I made six months ago: 5 min&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Write the problem statement, second-guess it, rewrite: 15 min&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;List features, realize the list has 11 items, argue with myself about which 5 matter: 20 min&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Add tech stack notes: 10 min&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Write acceptance criteria, look up what acceptance criteria should actually contain: 15 min&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Read the doc back, feel like something's missing, add more stuff: 15 min&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Consider deleting the whole thing and just starting coding: 10 min&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;At the end of 90 minutes I had a three-page document that nobody would ever read again, covering a project I was no longer sure I wanted to build.&lt;/p&gt;

&lt;h2&gt;
  
  
  The cost you don't see
&lt;/h2&gt;

&lt;p&gt;The obvious cost is time. But the hidden cost is decision fatigue. By the time I finished my DIY PRD I'd made 40 small decisions and was mentally exhausted before writing a single line of code. The planning process that was supposed to give me clarity was draining exactly the energy I needed for building.&lt;/p&gt;

&lt;p&gt;This isn't a Notion problem. It's a blank-canvas problem. When you have infinite flexibility, you fill it. Every field is a question. Every question is a decision. Every decision costs something.&lt;/p&gt;

&lt;h2&gt;
  
  
  What constraints actually do
&lt;/h2&gt;

&lt;p&gt;The best productivity insight I ever internalized: constraints don't limit creativity, they direct it.&lt;/p&gt;

&lt;p&gt;A PRD with a hard five-feature limit is better than one with fifteen features, not because five is the magic number but because the constraint forces a decision you'd otherwise defer. You can't list eleven features and tell yourself you'll "figure out priority later." You have to choose now. That decision is the whole point.&lt;/p&gt;

&lt;p&gt;Good tools build the constraint in. Pomodoro timers don't give you free time to work, they give you 25 minutes. Twitter didn't become Twitter despite the character limit — it became Twitter because of it.&lt;/p&gt;

&lt;h2&gt;
  
  
  AI-generated PRDs done right
&lt;/h2&gt;

&lt;p&gt;The obvious answer is "just use ChatGPT to write the PRD." I tried this. It doesn't work.&lt;/p&gt;

&lt;p&gt;Ask ChatGPT to write a PRD for your habit tracker app and it will produce 12 features, a detailed database schema, a go-to-market section, and a competitive analysis. Technically impressive. Completely useless for a solo dev who needs to open Cursor in 20 minutes.&lt;/p&gt;

&lt;p&gt;The problem isn't AI — it's that generic AI tools are trained to be helpful, and "helpful" usually means comprehensive. You need the opposite. You need something that says no.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://specd.app" rel="noopener noreferrer"&gt;Specd's&lt;/a&gt; system prompt is engineered to push back on scope. It caps features at five structurally — not as a soft guideline but as a hard output constraint. When I paste a 10-feature idea, &lt;a href="https://specd.app" rel="noopener noreferrer"&gt;Specd&lt;/a&gt; forces me to see which five actually matter. That forced triage is the product.&lt;/p&gt;

&lt;h2&gt;
  
  
  What the workflow looks like now
&lt;/h2&gt;

&lt;p&gt;New idea → open specd.app → paste idea + pick stack → 15 seconds → done.&lt;/p&gt;

&lt;p&gt;The PRD I get has: problem statement, five prioritized features with acceptance criteria, tech constraints matched to my stack, success metrics, build order, and a starter file structure. I copy it into Cursor as a project brief and I'm writing code inside five minutes of having the idea.&lt;/p&gt;

&lt;p&gt;Total planning time: under two minutes. Total decision fatigue: minimal, because the constraints did the work.&lt;/p&gt;

&lt;h2&gt;
  
  
  The uncomfortable truth
&lt;/h2&gt;

&lt;p&gt;Most of our side projects don't fail because we're bad developers. They fail because we start building before we finish thinking. The 15 seconds of constraint &lt;a href="https://specd.app" rel="noopener noreferrer"&gt;Specd&lt;/a&gt; imposes is more valuable than 90 minutes of freeform planning, because it produces a decision rather than a document.&lt;/p&gt;

&lt;p&gt;Try it at specd.app. Free tier gives you 3 PRDs a month — more than enough to know if it changes how you work.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>webdev</category>
      <category>buildinpublic</category>
      <category>indiehackers</category>
    </item>
    <item>
      <title>Why Your Side Project Failed Before You Wrote a Single Line of Code</title>
      <dc:creator>Ahmed Zrouqui</dc:creator>
      <pubDate>Fri, 03 Apr 2026 23:04:28 +0000</pubDate>
      <link>https://dev.to/ahmed_zrouqui/why-your-side-project-failed-before-you-wrote-a-single-line-of-code-222d</link>
      <guid>https://dev.to/ahmed_zrouqui/why-your-side-project-failed-before-you-wrote-a-single-line-of-code-222d</guid>
      <description>&lt;p&gt;You've been there. Saturday morning, coffee ready, VS Code open. You have an idea — a good one. You start scaffolding. By Tuesday you've built an auth system, a dashboard, a notification system, three settings pages, and a feature nobody will use. By Thursday you've lost the thread entirely.&lt;/p&gt;

&lt;p&gt;The project didn't fail when you ran out of motivation. It failed on Saturday morning, before the first &lt;code&gt;npm create&lt;/code&gt; command.&lt;/p&gt;

&lt;h2&gt;
  
  
  The real problem is the blank canvas
&lt;/h2&gt;

&lt;p&gt;Developers are problem solvers by nature. Given a problem and a text editor, we immediately start solving sub-problems. "I need auth, so I need a user model, so I need a database, so I need to pick between Supabase and PlanetScale…" Twenty minutes of decision-making before you've validated whether anyone wants the thing you're building.&lt;/p&gt;

&lt;p&gt;The blank canvas is dangerous because it hides scope creep until it's too late. You don't feel it happening. Each individual decision feels reasonable. Collectively they turn a weekend project into a two-month monster.&lt;/p&gt;

&lt;h2&gt;
  
  
  What a scoped PRD does
&lt;/h2&gt;

&lt;p&gt;A Product Requirements Document is not corporate bureaucracy. At its simplest, it's a one-page answer to: what am I actually building, for whom, and how will I know it's done?&lt;/p&gt;

&lt;p&gt;The power isn't in the document — it's in the constraint. When you write down five features and only five features, you've made a decision. You've said "no" to everything else. That "no" is the most valuable output of the whole exercise.&lt;/p&gt;

&lt;p&gt;The best PRDs for solo devs are short, opinionated, and slightly uncomfortable. If you feel like you're leaving out important things, you're doing it right. Those "important things" are what kill projects.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why most developers skip it
&lt;/h2&gt;

&lt;p&gt;Writing a PRD manually takes time. Opening Notion, creating a template, writing sections, second-guessing your feature list — it's 45 minutes of work before you even know if the idea is worth pursuing.&lt;/p&gt;

&lt;p&gt;So most developers skip it and go straight to the keyboard. Reasonable tradeoff, bad outcome.&lt;/p&gt;

&lt;h2&gt;
  
  
  The 15-second alternative
&lt;/h2&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%2F2ufq4fhjygoha9xt9ogl.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%2F2ufq4fhjygoha9xt9ogl.png" alt=" " width="800" height="434"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This is exactly the problem &lt;a href="https://specd.app" rel="noopener noreferrer"&gt;Specd&lt;/a&gt; was built to solve. You paste your idea. You pick your stack. In 15 seconds you have a complete, structured PRD with a hard five-feature limit enforced at the AI level.&lt;/p&gt;

&lt;p&gt;Not five features as a suggestion. Five features as a rule the AI refuses to break, no matter how much detail you throw at it.&lt;/p&gt;

&lt;p&gt;The output gives you: a clear problem statement, prioritized feature list, tech constraints, acceptance criteria, a build order, and a file structure. Everything you need to open Cursor and start building the right thing.&lt;/p&gt;

&lt;p&gt;The spec takes 15 seconds. The clarity it buys you is worth hours.&lt;/p&gt;

&lt;h2&gt;
  
  
  Start before you're ready
&lt;/h2&gt;

&lt;p&gt;The irony of planning is that it feels like procrastination but it's the opposite. The 15 seconds you spend scoping your idea is the difference between a side project that ships and one that dies in a ~/dev/old-projects folder.&lt;/p&gt;

&lt;p&gt;Paste your idea at &lt;a href="https://specd.app" rel="noopener noreferrer"&gt;specd.app&lt;/a&gt;. It's free to start.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>sideprojects</category>
      <category>vibecoding</category>
      <category>webdev</category>
    </item>
  </channel>
</rss>
