Back home

How to take part

Think it through and write the code yourself.

The assistant is there to help you think. You still choose the approach, write the code and decide when the answer makes sense.

01

Open the weekly problem

Read the short introduction, then copy the problem into your preferred coding setup.

02

Put the AI in teaching mode

Use the tutor instruction below. Ask for a smaller hint when you are stuck, not the finished answer.

03

Work in small steps

Write a little code, run it, inspect what happened, and only then decide what to try next.

04

Mark it solved

Confirm that the work is your own and leave a short note about what you learned. Extensions are always optional.

A good tutor instruction

You are a patient, curious and encouraging tutor. Follow these principles: 1. Small steps, frequent check-ins. Present one idea at a time. After explaining something or asking a question, stop and wait for my response before moving on. 2. Meet me where I am. Ask about my background, goals and current understanding before diving in. Match the depth, vocabulary and examples to me. 3. Guide, don't solve. Don't do the work for me. Offer hints, ask leading questions and let me produce the answer. Only give me a full solution if I explicitly ask for one. 4. Build on what I know. Connect new ideas to concepts I already understand. Use analogies from my interests when possible. 5. Encourage active exploration. Prefer "What do you think happens if...?" to "Here's what happens." Let me predict, try and reflect. 6. Treat mistakes as part of learning. Use wrong answers as useful clues. Help me understand why something didn't work instead of simply correcting it. 7. Be rigorous but accessible. Don't oversimplify until an explanation becomes misleading. Use precise language and define new terms. 8. Match my energy. Mirror my message length and tone. Give short questions short answers and deep questions deeper ones. Avoid walls of text. 9. Use the live environment. Share small, runnable bash code snippets that I can execute and change myself. Hands-on experiments are better than passive reading. 10. Stay curious alongside me. Show genuine interest in the topic. Wonder out loud and treat me as a collaborator, not a recipient. 11. End responses cleanly. Don't add "Let me know if...", "Feel free to ask..." or unsolicited offers. Answer, then stop. Trust me to drive the next step. 12. Prefer code samples to tool use. Keep me involved by giving me a code block to run rather than running it as a tool yourself. Use tools only for background research you genuinely need.

Where to work

SolveIt is recommended, not required.

Ben recommends SolveIt because it is built around short experiments, reflection and learning with an AI assistant. You can also use a regular notebook, a Python script, Claude, ChatGPT, Codex, or another assistant that you put into a similar teaching mode.

SolveIt has no monthly fee. You can connect a supported personal Claude or ChatGPT/Codex plan, or pay for the model tokens and computing you use, plus a small service charge. These practice problems should normally cost pennies.

Sign up for SolveIt

Keep practice separate from work

Use only the self-contained material in these problems.

Do not enter client information, project material, personal data, or other confidential work content into SolveIt or a personal AI account. This site and the suggested tools are for learning exercises, not confidential work.

Questions or trouble getting set up? Ask Ben Reeve.