The same problem can produce four different lessons.
I have trained students in a Columbia classroom, through a distributed North American camp, during an intensive program at KAUST, and across ten days at Training Camp México. I have also worked with a student preparing for the International Olympiad in Informatics.
The algorithms cross these settings easily. The training design does not.
Time, language, selection pressure, prior curriculum, group size, and access to later feedback change what a useful session can ask of a student. Reusing the same slides is possible. Reusing the same operating assumptions is not.
Find the local finish
Before selecting material, I ask what this group must be able to do next.
A university course may have a semester to build a repeatable problem-solving process. An intensive Olympiad program may need to identify and repair narrow weaknesses before a selection event. A ten-day camp needs a daily rhythm that combines instruction, independent solving, review, and recovery. An online camp must work even when students join from different universities with uneven schedules.
The finish determines the unit of progress.
At Columbia, I can return to an idea after a week and test whether it transferred. In a short camp, tomorrow’s problem set may be the only delayed check. For an individual Olympiad student, the relevant unit may be one recurring decision that fails across several hard problems.
Establish the starting distribution
An average prerequisite level is not enough.
One student may know advanced graph algorithms but write fragile implementations. Another may have fewer named techniques and much stronger proof habits. A third may solve familiar patterns quickly and stall when the representation is hidden.
I use an early problem set to observe decisions alongside scores. I look for how students use constraints, when they test examples, what they do after a wrong answer, and whether they can explain the claim their code depends on.
The distribution controls grouping and review. A single lecture can serve a mixed room if the practice branches afterward. A single problem set cannot serve everyone merely because every problem belongs to the announced topic.
Choose the feedback clock
Training quality depends on how long a mistake remains uninterpreted.
In a classroom, office hours and written feedback may close the loop. In an intensive camp, leaving a misconception until the next week wastes a large fraction of the program. In an online session, a student may disappear before asking the question that would have reopened the problem.
I make the feedback clock explicit. During a daily camp, review should happen while students still remember the decision that failed. In remote training, the submission system and discussion channel must make stuck states visible. For individual coaching, I want the student’s first false claim, not a polished account written after reading the solution.
Faster feedback is not automatically better. A hint given before the student has a model removes the chance to test it. The target is feedback soon after the attempt has produced evidence.
Adapt examples before principles
Technical principles often survive translation. Examples carry local assumptions.
A story about baseball standings, U.S. addresses, or a familiar interview process may add reading difficulty without adding algorithmic value. Variable names, diagrams, and pacing can also assume conventions the room has not shared.
I keep the mathematical condition and replace the surface when the surface is doing accidental work. I also ask local trainers which examples students already know. This is not cosmetic. A student should spend effort on the intended decision.
The reverse matters too. Local contest formats and selection systems may create habits that the training needs to confront. If students expect every lesson to announce the technique, mixed practice must arrive early.
Build review into the schedule
An intensive schedule can produce many accepted solutions and little retained method.
I reserve time for students to revisit one problem they solved and one they did not. For the solved problem, they identify the decisive observation and one implementation risk. For the unsolved problem, they record the first point where their model stopped producing useful tests.
The next set should reuse one idea under a different surface. Otherwise the camp measures exposure while calling it learning.
At the end of a program, I want each student to know what to practice next. A rank list identifies relative performance in one set. It does not identify the next training decision.
Transfer ownership to local trainers
A visiting trainer can create energy and still leave no durable change.
The training belongs to the host when local coaches can see why problems were chosen, how groups were formed, what feedback was collected, and which students need which next step. I share the selection logic, review notes, and reusable sets. I also want to learn which parts did not fit the room.
The handoff should include the decisions behind the materials.
My review after any training program asks:
- What finish did this group need?
- Which early task revealed the starting distribution?
- How quickly did a failed decision receive useful feedback?
- Which examples carried unnecessary local assumptions?
- Where did students demonstrate transfer?
- What can the local program operate after the visiting trainer leaves?
A good camp changes what students can do. A durable one also changes what the next trainer can see.