Running a Course

Common tasks that need to happen to make a CodeYourFuture course work

1) Module Preparation

1.1) Finding Teachers

CodeYourFuture teaches seven technical modules (consisting of three weeks each) and eight personal development days. You can find an overview of these sessions here.

Each of these sessions require volunteers to be

A large portion of coordinating classes is finding people who are skilled in the topic that be able to teach.

Ideally, we should be looking for at least two lead teachers per module as well as a number of teaching assistants to help them.

1.2) Preparing Teachers

Before the class, teachers should meet to discuss how they want to prepare for the class. This could include

  • Parts that they want to use Live Coding for

  • Parts that they want to use presentations for

  • How they want to split the content between them

They will also want to review all of the content in the lesson to understand how they will deliver it.

Additionally, they should understand what coursework is going to be assigned for that lesson so they understand what the trainees need to understand.

2) Volunteers

2.1) Onboarding

As new volunteers join the team, they will need to be onboarded both to CodeYourFuture and to the local city volunteers. This might include

  1. A short call with them to get them up-to-date with what is happening

  2. A message on Slack to introduce them to the community

  3. Giving them a co-volunteer who they can ask questions to if they have them

  4. Informing them of next step about how to get move involved.

This is an important step to retaining volunteers over the longer term.

3) Trainee Tracking and Issues

3.1) Buddy Check-ins

Our Buddy's are one of the key ways that we get oversight of the development of our students through the course.

In order to stay in-sync and to share knowledge semi-regular Buddy check-ins should take place so that we can

  • Work out how each individual student is doing

  • Work out if the class as a whole is struggling

  • Work on plans to help students (or the whole class) do better

  • Collaborate and hang out

These meetings are were we can plan for additional sessions, study groups or exchange ideas on how to get the class where they need to be.

3.2) Assessments

At the end of the module there are assessments that can be run to get a better view of how the students are doing.

You can find an example of these assessments here.

These assessments are completed one-to-one with buddies or other volunteer but they need somebody to coordinate them and collate the results.

4) Class Planning and Communication

4.1) Opportunities

Fairly regularly, we get offers from corporate sponsors or other supporters who want to offer services to our students. This could include

  • Study Groups

  • Immersion Days

  • Hackathons

Having somebody to coordinate these efforts is really helpful and provides a huge amount of value to our students.

4.2) Module Coordination

At the start of every module there are often a set of tasks that need to take place over the module.

For example, here are the notes for JavaScript Core 3.

Having somebody take ownership of these tasks makes them much more likely to happen.