cyber-dojo feedback coding-dojo docker team pair duplication testing systems thinking deliberate practice c++ programming ide=interactive-dojo-environment practice google-compute-engine scotsman-pub listening communication learning observing culture courage success software provocation repetition abstraction diagnostics tdd refactoring understandability examples law-of-unintended-consequences slack co-evolution change scrum xp cause and effect pulling pull kanban test driven development test != debug singleton inheritance undefined behaviour virtual destructors sequence points c unit testing cause effect fallacy jerry weinberg gregory bateson john gall law of unintended consequences bradford keeney
See more