We code by typing — so let's learn by typing. With CodeCode Ninja, you can set specific areas of a snippet of code you'd like to type in when you drill this card in the future. When the time comes, CodeCode Ninja will ask you to type in the answer and then rate yourself. You can use typing cards to master shell commands, Vim commands, and any other bit of code.
"it's the most helpful learning technique I've found in 14 years of computer programming."— Derek Sivers
It's easy to use CodeCode Ninja to master multi-line code structures. Coding isn't all about one-liners: Context matters, so CodeCode Ninja lets you create a card with the complete structure, and mark out various areas of it for practice.
With CodeCode Ninja, you start building out your own knowledge base. You decide which facts to put in — and for each fact, you decide how important it is. By explicitly setting a fact's importance, you give it context. Only you can do this — it's your own knowledge.