Skip to main content
Creating Assignments

Picking a generation mode

Your first decision when creating an assignment. Four modes, picked by what you have on hand — existing code, prose, or both. The right mode keeps generation fast and predictable; the wrong one wastes credits.

Written By Alan Gandy

Last updated About 2 hours ago

CodeTeach.app New Assignment screen showing the four generation approaches: Forward, Backward, Both Provided, and From Document.

Choose a generation approach based on the material you already have. All four approaches produce the same assignment package: starter code, a working solution, tests, student instructions, and GitHub Actions grading files.

Choose your starting point

  • Forward: You provide starter code, usually with TODO markers. CodeTeach generates the solution, tests, and instructions while preserving your starter structure.

  • Backward: You provide a working solution. CodeTeach creates a student starter with TODOs, plus tests and instructions.

  • Both Provided: You provide both starter and solution. CodeTeach generates tests and instructions. Use this when you want the most control over instructor-owned code.

  • From Document: You provide a lab handout or description. CodeTeach drafts the full package. Give clear inputs, outputs, examples, and constraints.

If you have only an idea, choose From Document and describe it precisely. If you already have code, choose the matching code-based approach so CodeTeach can work from what you approved.

What the form asks for

  • Language: Python, Java, JavaScript, TypeScript, C++, C, Ruby, Go, Rust, Jupyter Notebook (Python), or SQL.

  • Assignment Title: The name shown in your CodeTeach dashboard. You choose the GitHub repository name later on the Deploy step.

  • Source material: Paste code, upload files, import from a repository, or supply a document according to the selected approach.

  • Dependencies: CodeTeach detects libraries in supplied code; you can add a library proactively.

  • Difficulty: Beginner, Intermediate, or Advanced controls starter scaffolding, instructions, and test depth.

  • Learning Objectives and Description: State what students should learn and any constraints the generated package must follow.

Before you generate

Check that the selected approach matches your source material and that you have permission to use any uploaded content. Review the generated starter, solution, tests, and instructions before approving validation. CodeTeach derives test expectations from observed solution behavior; instructor review is still required.

Where to go next

Read the guide for your selected approach: Forward, Backward, Both Provided, or From Document. Then create the assignment and continue to Review & Edit.