π§πΎβπ»
prep
How do we build a community of self educators?
π¬ Active learning
Learning Objectives
Active learning is at the heart of our educational philosophy. It is about encouraging learners to build, explore and discuss new concepts instead of being passive recipients of knowledge.
π¬ Flipped classroom
Learning Objectives
We use a flipped classroom model. In this model, we expect trainees to start building their understanding independently as soon as possible. From the beginning of the course, trainees are expected to prepare and take ownership of their learning before they attend in-person sessions.
No lectures
Learning Objectives
We donβt lecture trainees during live sessions. We are not against lectures; if you want to deliver a lecture, thatβs great! Put it on YouTube and send us the link. Trainees can then watch lectures at their own pace, with captions, pause, and rewind enabled. Trainees also have free accounts kindly donated by Udemy and you can assign any Udemy for Business course.
At CYF we have to maximise the time we have together, by working in person on projects, hitting blockers, and learning together. We are not a school. We are a community of professionals coming together to share skills and build real things to help people get real jobs inside one year.
Time is very important at CYF. We try our best to use everyone’s time as well as we can. We want to use our time together to help learners with the things they can’t do at home: debugging, pair programming, code review, and building projects.
β Dialogue
Learning Objectives
We learn best when we ask questions and explore possible answers. Dialogue is a conversation that facilitates this playful exploration: participants listen to each other, share ideas, build on each other’s ideas, and respectfully challenge and evaluate these ideas.
In practice
Code review
- π§πΏβπ€βπ§π½ Reviewers on a PR are expected to ask questions and explore the reasoning behind submitted code.
- π§πΏβπ€βπ§π½ PR owners are expected to answer the questions and make revisions to their submitted code.
Pair programming
- π§πΏβπ€βπ§π½ Drivers are expected to listen to their navigator and implement their directions
- π§πΏβπ€βπ§π½ Navigators are expected to talk to their drivers and articulate their strategy
π§πΎβπ» Importance of prep
Learning Objectives
In a flipped learning model, learners are expected to prepare before they meet up as a community. Therefore, regular preparation is essential for our community to self-educate together. In each sprint week, we expect trainees to work on the prep section beforehand to start building their mental model of the week’s concepts.
Trainees should show up to class with questions and problems they didn’t understand from the prep they already did. This means that we can use our in-person time to work together to fix real problems people have!
π¬ Think again: Trainees can read material themselves at their own pace at home.
π¬ Right! Working together on real problems is a great use of in-person time.
π¬ Not quite: Just watching people do their own work is quite boring and doesn't add much value.
Workshops
Learning Objectives
We do at least one active learning Workshop every class day. Workshops are group activities where the community discusses, solves and reflects on problems related to their current sprint. They are an opportunity for practice, critical thinking and dialogue.
We collectively develop workshops in this repo: https://github.com/CodeYourFuture/CYF-Workshops/. Check out some examples and raise a PR if you’ve got an idea for a new workshop.
Next steps: Backlog and Success
Learning Objectives
Now that you’ve finished the prep for this sprint, find the backlog for the Sprint and work through the items. When you’ve done this, find the Success page for the module, and make sure you’ve completed all of the learning objectives.
There should be a link to the next page (Backlog) at the bottom of this one. You can also get to the Sprint overview page (which links to Prep, Backlog, Success, and anything else relevant) by clicking the name of the Sprint at the top of the page.
Every sprint you do follows this pattern which you should follow. Look at the overview for the sprint, and work through the pages in order.