What is a Code Dojo?
People who train in martial arts attend dojos, where they practice and try to expand their skills and achieve self-improvement. The idea is that in order to become an expert in anything you need to repeatedly perform *deliberate practice*. Dojos are also places where people of variable experience levels can engage with each other, share knowledge and give support.
A Code Dojo tries to take those ideas and apply them in the process of mastering programming languages. Our version of the Dojo was inspired by the London Python Dojo (http://ldnpydojo.org.uk/).
This is what a typical session might look like:
- Arrive, meet and greet with refreshments
- Decide on a topic/"exercise" to work on:
-- Suggest ideas (anyone can suggest a topic, it could be a game like tic-tac-toe, connect5 etc or an algorithm, or a tweet generator...)
-- Vote to decide on 1 exercise to work on
- Randomly split into teams of roughly 2-4 people
- Each team works together (using Python) to solve the exercise at hand
- Each team presents their (complete or incomplete!) solution, talking through their creative process.
The spirit of the Dojo will be:
- A non-competitive, collaborative, constructive and fun environment
*** WELCOMING ALL SKILL LEVELS ***
- We will be using Python as our programming language.
Even if you don't have much experience and only know some basics you can still participate and improve!
- To participate in the Dojo you will need to come to the venue.
This is because we will need to run things at specific times and do some presentations at the end, which may make it tricky to incorporate remote attendees.
- Please aim to arrive on time.
We spend roughly the first 30 minutes making introductions and voting on ideas, so we will form teams and get started on the exercise by 7.00 at the latest.
- Having a laptop with you is useful, but not essential!
Most attendees will likely bring a laptop to carry out the exercises. However, please don't worry if you can't. We will make sure that at least one member of each team does - it is supposed to be a collaborative exercise after all!