Cyber-dojo is an interactive environment for practicing coding through test-driven katas. It allows both individual practice sessions with time limits and team-based learning sessions without time pressure. Users can practice in various programming languages. The system distributes katas to distributed computing instances which run the code and tests through Docker containers in a limited amount of time, returning the results. Over 30,000 practice sessions have been completed on the platform since its launch in late 2009.