Learn by Directing AI
Unit 1

Marco's Brief

Step 1: Read Marco's email

Open materials/first-contact.md.

Marco Aju runs Cacao Ixchel, a small bean-to-bar chocolate maker in Coban, Guatemala. He sent an email describing what he needs. Read the whole thing before you do anything else.

Five requirements, numbered, no extra words. This is a different communication style from what you saw with Yasmine. She described visual experiences -- what it would feel like to click on a bag and see the stitching. Marco describes operational outcomes -- what the system needs to do for his business. Short sentences, no small talk. When you respond to Marco, match his register. He respects directness.

Step 2: Understand the scope

This project is different from the last one in a structural way. Yasmine's showcase was frontend-only -- React components rendering data that lived in the code. Marco's system has three layers.

A database stores the data -- farms, batches, products, orders. An API serves that data to the frontend and handles operations like creating orders and allocating inventory. A frontend displays the data and lets Marco's staff interact with it. All three layers must agree on the shape of the data. When the API returns something the frontend doesn't expect, or the database schema doesn't support a query the API needs, the system breaks -- often silently.

This is what full-stack means. You're not building a page. You're building a system where a decision in the database schema determines what the API can return, which determines what the frontend can display. That chain of consequences is new.

Step 3: Identify the gaps

Read the email again. Marco listed five requirements, but he described his business from an operator's perspective, not a developer's. There are things a developer needs to know that Marco didn't think to specify.

How does cacao move between stages? He mentions fermenting, drying, roasting, and finished -- but does a batch move through those stages in order? Can it skip stages? Can it go backward? When he says "track each bar back to the farm and batch," does that mean one product type per batch or multiple? His five customers in Japan have different needs than his twenty-five in the US -- does that affect the order model?

These gaps aren't mistakes in his email. Marco described exactly what he needed as a business owner. The distance between that description and what you need to build the system is where your planning work lives. In the next unit, you translate his email into formal planning artifacts, and those gaps are what the translation has to address.

✓ Check

Check: Can you list Marco's five requirements? Can you name one operational detail he didn't specify that affects the data model?