Flagship course: Product Engineering & Applied AI. Every lesson is a pickable chunk in the backlog below - we pull one at a time and ship it end-to-end.
Introduce the role, the AI-collapsed team, and the Maya-at-Stackforge story arc.
Tools, habits, and "working with the garage door up" as a discipline.
Problem-hunting, taste, small-surface products that finish in a weekend.
The first shippable artifact. From idea to public URL by Sunday.
Prompts as specifications. Determinism, decomposition, testing.
Persona, constraints, refusal behaviour. The invisible layer.
JSON mode, schemas, and building products on top of AI output you can trust.
Writing tests for prompts. Regression suites for your AI.
Words are the fastest way to make a product feel considered.
Grids, spacing scales, hierarchy - taste as a system.
Design tokens, primitives, and shipping a coherent surface fast.
Hero → proof → CTA. A landing page is a shipped product.
Schema design as product design. One table per noun.
Sessions, tokens, magic links - the parts that actually matter.
REST, keys, rate limits, and treating third-parties as unreliable.
Async work, retries, and the queue you didn't know you needed.
From localhost to a URL a stranger can open.
Instrument only what changes decisions. Everything else is noise.
First dollar. Stripe basics, packaging, and pricing psychology.
Onboarding, invoicing, and being reachable without burning out.
What actually changes when a model can *do* things, not just answer.
Function calling, schemas, and designing the agent's toolbox.
Plans, memory, retries, and knowing when the agent is stuck.
Approval gates, confidence thresholds, and the escape hatch to a human.
Chunking, embedding, retrieval - the shape of every AI-over-your-docs product.
Turning fuzzy input into typed data you can build a product on.
Streaming, threads, message shapes, and when *not* to build chat.
When the input isn't text - cameras, mics, screenshots, PDFs.
Test suites for AI features. Golden sets and rubrics.
Prompt injection, jailbreaks, and the minimum viable safety layer.
Model routing, caching, and knowing what a request actually costs.
Traces, logs, and being able to answer "what did the model do at 3am?".
Product Hunt, HN, X launches - the mechanics of a good day-one.
Programmatic pages, real content, and the compounding traffic curve.
Working with the garage door up as a distribution channel.
Habit, hooks, and the difference between a tool and a product.
Pick one shippable product. Cut scope until it fits one week.
Daily rhythm, unblockers, and shipping under a deadline.
Go live. Get five real users. Get the first testimonial.
From launched project to sustainable product. What to do next.
One flagship course. All 10 chapters live inside it. Slug is now product-engineering-applied-ai. Ch.1 · L1 rebuilt from 6 → 20 story-led screens (Maya at Stackforge). Full backlog of 40 lessons seeded to the roadmap so we can pull them one at a time.
New role owning course voice: applied AI product engineering, inspired by Peter Steinberger + Pieter Levels. Rewriting Ch.1 · L1 today.
Kept the interactive/task format as inspiration only, dropped Quantic-borrowed lesson content. New north star: turn learners into self-sufficient shipping builders.
Dark Linear-style board. Scrum master owns it; each role updates its own tasks as they ship. Board polls every 60s.
New gated interaction type - learner must open an external resource before options unlock. Seeded 'Superior Difference' example in Ch.1 L1.
Collapsed 20 placeholder modules into 10 cohesive chapters with multi-lesson depth. Roadmap visible on course index.
6 emoji chips (fun, fast, too fast, challenging, too hard, boring) saved to localStorage.
Teal MascotHint success variant fires on each correct tap with per-option explanation.
Seeded PRNG reshuffles every mount; multi-select auto-advances on N correct; every mistap is logged and shown on completion.
lesson_screens, lesson_attempts, screen_responses tables with RLS + GRANTs.
Wiped legacy long-form lessons, seeded 'Build with AI' as flagship course.
No theory bloat, no vibe-coding. Every lesson ends with a shipped artifact - a live URL, a repo, a running script. Learner leaves the course as a self-sufficient builder, not a course-completer.
We keep the task-style UX (research & answer, card carousel, etc.) because it drives completion. We do NOT copy anyone else's lesson content. All lessons are originals, written by our instructor around real builder problems.
Autonomous roles ship faster when the board is real-time and each role updates its own lane. Also doubles as a build-in-public artifact - the tools we use to build the product ARE part of the product.
Answers stay disabled until the resource is opened. Forces real engagement and gives us a clean signal for research-style lessons.
20 screens PER LESSON not per course. Fewer chapters, deeper lessons, higher completion. Matches how Quantic/Brilliant retain.
Removes a click, keeps flow state, and makes wrong taps instantly informative. Submit buttons feel like tests; auto-advance feels like a game.
Reproducible per-attempt shuffle means we can debug user reports exactly and A/B different orderings without losing traceability.
createServerFn is typed RPC co-located with the app. Reserved edge functions / server routes for webhooks and public APIs only.
Lowers activation cost, uses Foundations as the funnel, keeps the bundle small enough to be an impulse buy for indie hackers.
Founder-voice drafts of recent shipped work. Copy, tweak the last line, post.
shipped a lot on @openbuildlab this week 🧵
1/ new interaction type: research & answer. we give you a real resource + a term to find. you can't answer until you actually open the page. no more skim-and-guess.
2/ every quiz now auto-advances the moment you're correct. wrong taps flash red and don't stick. it turned a "test" into a "game" - completion went up in testing immediately.
3/ each correct tap shows *why* it's correct in a little teal bubble. positive reinforcement is criminally underused in edtech.
4/ shuffled every MCQ across the course so the correct answer isn't always option A. sounds obvious. wasn't.
5/ dark mode + per-lesson generative SVG illustrations. no stock images anywhere on the site.
next up: AI tutor on every screen ("explain this to me"), and finishing Chapter 2 - Prompting Like an Engineer.
if you're learning to build with AI, this is the course i wish existed. → openbuildlab.programmify.orghot take: most "learn by doing" courses don't actually make you do anything. so on openbuildlab i built an interaction type that literally locks the answer choices until you open the external resource and find the term. can't fake it. can't skim. small friction, huge signal.
removed the "Submit" button from every quiz on openbuildlab. correct tap → instant advance. wrong tap → red flash, doesn't stick, counted in your score. flow state > form submission. lessons feel 2x faster with zero content cut.
just added a public-ish roadmap page to openbuildlab so i (and anyone who cares) can see what shipped, what's queued, and why we made the calls we made. the tools i use to build the product are becoming part of the product. that's the fun part of building in 2026.