Exercises and Grading
Exercises are the core of this course. Every section ends with at least three exercises. You do not wait until the end of a part — you practice each concept as soon as it is introduced.
How Exercises Are Structured
Each exercise lives in its own folder inside the exercises/ directory of the course repository. The folder contains:
Program.cs— where you write your solutionexercise-XX-YY.csproj— the project file, pre-configured for .NET 10
You do not need to create any files or modify the project file. Open Program.cs, delete the placeholder comment, and write your solution.
Running Your Solution
To run your solution locally, open a terminal in the exercise folder and run:
dotnet run
Test it manually against the example inputs shown in the exercise. When it produces the right output, you are ready to submit.
Submitting Your Work
Submit from the exercise folder:
dotnet submit
Before submitting, the tool runs dotnet build to make sure your code compiles. If it does not compile, the submission stops and shows you the error. Fix the error and try again.
Once your code builds, it is sent to the grading system.
How Grading Works
Your submission is evaluated by AI across four categories:
| Category | What it measures | Max score |
|---|---|---|
| Correctness | Does the program produce the right output? | 25 |
| Code Quality | Is the code readable, well-named, and well-structured? | 25 |
| Idiomatic Style | Does the code use modern C# conventions? | 25 |
| Concept Appropriateness | Did you use the concepts taught so far, not workarounds? | 25 |
Total: 100 points. Pass threshold: 70.
A score below 70 is not a failure — it is feedback. The grader tells you specifically what was right, what could be improved, and what to focus on next. You can revise and resubmit.
Your Dashboard
Every submission updates your dashboard. The dashboard shows:
- Your score and feedback for each exercise
- Your overall progress through each part
- Patterns the grader noticed across multiple submissions — recurring weaknesses surface as recommendations
A Note on NUnit Tests
Some exercise folders include NUnit tests (.Tests.cs files). These are local sanity checks — run them with dotnet test if you want a quick signal before submitting. They are not your grade. The AI grading system is.
Getting Help
If the material is unclear, re-read the section, run the examples yourself, and try to articulate exactly what you do not understand. The act of trying to explain it often resolves it.
If you find an error in the material, open an issue on the GitHub repository. Every correction makes the course better for everyone who comes after you.