Build Without AI

A project, your understanding, your decomposition, your pseudocode, your attempt — then the hint ladder one rung at a time, then a review, then the reference. The order is the exercise.

ProblemUnderstandRequirementsConstraintsUnknownsDecompositionSmallest StepModelExperimentObserveDebugLearnIterate
The rules
  1. Write your understanding first: what it is, who uses it, the core workflow, the data, the first slice, your unknowns as questions.
  2. Make an attempt — pseudocode counts — before any hint. A blank attempt and a hint is reading, not building.
  3. Hints come one rung at a time: conceptual direction, then the relevant abstraction, then pseudocode, then a partial implementation. Take the smallest one that unsticks you.
  4. The reference is shown last, and only after an attempt exists. Compare, do not copy.
  5. Count the rungs you used. Next time, aim for one fewer.
The brief
Given a long URL, return a short code. Given a short code, redirect to the long URL. Codes must not collide, and the service must keep working after a restart.

1 · Your understanding

Before any hint. Short answers are fine; blank answers are the tell.

2 · Your attempt

Pseudocode, a sketch, a partial implementation — whatever you can produce without help.

3 · Hints, one rung at a time

Rungs used: 0 of 4. Each one is smaller help than the next.

4 · Review

What a reviewer would ask of your attempt. Tick the ones you can answer from what you wrote — not from what you would say if asked.

  • Where does uniqueness come from in your design — the database, a random generator with a retry, or hope?
  • What happens when two creations arrive at the same moment? Walk through it.
  • Is your code guessable? Did you decide that, or inherit it?
  • What do you do with a code that contains a character outside your alphabet?
  • Why 302 and not 301 — or the reverse? What does each mean for a browser that has seen the link before?
  • What survives a restart, and how do you know?
  • Which URLs do you refuse to shorten, and why?

0 of 7 answerable.

5 · The reference

Shown last. Compare it with your attempt; the differences are the lesson.