Programming practice that's flexible, fun, and inclusive
How It Works
What We Offer
![](/static/codespec/images/illustrations/guided-practice.png)
Guided practice
Instructor-designed workbooks introduce you to concepts in the recommended order
![](/static/codespec/images/illustrations/self-directed-learning.png)
Self-directed learning
Customizable practice sessions allow you to focus on your desired language(s) and concept(s)
![](/static/codespec/images/illustrations/adaptable-interface.png)
Adaptable interface
Choose from five different ways to solve each problem, so you’ll be challenged but not discouraged
![](/static/codespec/images/illustrations/adaptive-functionality.png)
Adaptive Functionality
Receive more advanced problems as you build your skills and confidence
![](/static/codespec/images/illustrations/progressive-help.png)
Progressive help
Get unstuck using Codespec’s useful error messages and hints
![](/static/codespec/images/illustrations/sense-of-belonging.png)
Sense of belonging
Our interface and practice problems are designed with learners of all skills and abilities in mind
Testimonials
“I like how many options you have to solve each problem. If I get stuck, I can always try a different way.”
- Learner
“The analytics are super helpful for tracking how my students are doing, and telling me where they’re struggling.”
- Instructor
Instructor and Researcher Features
![](/static/codespec/images/illustrations/authoring-interface.png)
Authoring interface
Prepare and manage practice problems and workbooks all in one place
![](/static/codespec/images/illustrations/learning-analytics.png)
Learning analytics
View student progress on problems and workbooks to identify trends
![](/static/codespec/images/illustrations/customizable-help.png)
Customizable help
Take control over when and how learners receive help