- what is a dojo?
- what is cyber-dojo?
- why cyber-dojo?
- try cyber-dojo now
- run your own cyber-dojo server
- open sourced
- less is more
- thank you
- screen shot
what is a dojo?a dojo is a place where martial artists meet to practice their martial art!
what is cyber-dojo?cyber-dojo is an online browser-based coding dojo. Each group...
- writes their code and tests inside a web browser
- presses their run-tests button to submit their code and tests to the cyber-dojo server
- the server saves the submission, runs the tests, and returns the test-outcome to the browser as a traffic light:
- red if one or more tests failed
- amber if the tests could not be run (eg syntax error)
- green if all the tests passed
- a dashboard shows the traffic light history of all groups. Click on any traffic light to open a diff-view of that submission.
- start a new practice session from any diff-view
why cyber-dojo?I built cyber-dojo to promote deliberate practice of
- test driven software development, and
- team dynamics and collaboration
Practising in a cyber-dojo helps to combat this tendency since a cyber-dojo is so obviously not your normal development environment!
Practising in a cyber-dojo helps you to concentrate on the practice. Practising in a cyber-dojo helps you concentrate on improvement.
try cyber-dojo nowThe online server is at http://cyber-dojo.com and supports numerous exercises and the following languages
- I've recorded a video of me doing the Roman Numerals exercise in Ruby using cyber-dojo (an early version) so you can see how it works.
run your own cyber-dojo server
- I have created a VirtualBox TurnKey Linux cyber-dojo rails 3 server image which you can grab at http://dl.dropbox.com/u/11033193/CyberDojo/Turnkey-CyberDojo-20120515.ova (817 MB)
- Mike Long has written some TurnKey Linux installation instructions to go with the previous image.
- The cyber-dojo server source code (Ruby on Rails) lives on GitHub.
- The infrastructure is rudimentary, but it's a start. Something to learn from and build on. Any feedback or help would be very welcome.
less is more
- I put a lot of effort into removing features from cyber-dojo. For example, the editor does not have colour syntax highlighting and that is deliberate.
- The simpler the environment the slower and more deliberate the practice and the greater the need for collaboration and communication.
- My Kanban 1's Game is also all about encouraging collaboration amongst developers.
- Olve Maudal, Mike Long, and Johannes Brodwall - thanks guys - I really appreciate all your help and encouragement.