A course is a product with a brutal metric: does the next example compile in someone's head. Scale just makes the vagueness louder.
Name the intent
Learners copy structure. If the demo is data2 and handleClick3, they will ship that into production with pride.
type LessonTitleProps = {
title: string;
};
export function LessonTitle({ title }: LessonTitleProps) {
return <h1>{title}</h1>;
}The component is trivial on purpose. The lesson is the name: one job, one prop, no hidden context.
Retention is a render budget
You cannot keep 400 people in a 90-minute session if every slide is a new abstraction. One pattern per block. Repeat it in a slightly harder file. Then stop.
Write code that narrates
Comments that say what the next line does are noise. Names that say why this object exists are the curriculum.
The same rule applies on a product team. Teaching at community scale is just code review with a larger audience and less shared context.
Takeaway
Clarity scales. Cleverness does not. Ship examples you would be willing to maintain, and the course will still make sense a year later.