Energiser
Every CYF session begins with an energiser. Usually there’s a rota showing who will lead the energiser. We have some CYF favourite games you can play if you are stuck.
- Traffic Jam: re-order the cars to unblock yourself
- Telephone: draw the words and write the pictures
- Popcorn show and tell: popcorn around the room and show one nearby object or something in your pocket or bag and explain what it means to you.
Ball Point Game 🔗
Learning Objectives
Preparation
Form into approximately equal-sized teams of between five and ten people each.
Choose ONE of the TWO exercises.
Exercise 1a - Ball Point game with balls (recommended)
- Each team needs a bag with at least 20 balls and another empty bag
- One person is nominated as The Timekeeper with a flipchart and pens
Exercise 1b - Online Ball Point game (same learning objectives, and requires no balls)
- Everyone needs a laptop
- One person from each team is nominated as The Timekeeper
- The website https://remoteballpointgame.openforce.com/ is up and available
Introduction
Exercise 1a - Ball Point game
🎯 Goal: The aim of this game is to invent a process by which balls are passed between players as quickly as possible in order to score points. (40 minutes)
The Rules:
- A point is scored when every player in a team touches a ball
- If a ball falls on the ground, it counts as a defect and cannot be used in the current round
- You cannot pass a ball directly to your immediate neighbour
- Balls must have “air-time” (a ball may only be touched by one person at a time)
The Flow:
- Preparation (planning and retrospective): all team members invent or improve the process together (2 minutes)
- Estimation: the team estimates how many points they will score in the next round (a few seconds)
- Play (sprint): the team uses its process to score points (2 minutes)
The Timekeeper will create a table for each team as below. The Timekeeper will also announce when to move between the different phases and record each team’s estimates, actuals and defects.
Sprint | Estimate | Actual | Defects |
---|---|---|---|
1 | 20 | 15 | 3 |
2 | 30 | 20 | 0 |
3 | … | … | … |
4 | … | … | … |
5 | … | … | … |
In your teams, you will perform FIVE sprints, and since each sprint will take less than 5 minutes, the whole game will take under 30 minutes.
Exercise 1b - Online Ball Point game
🎯 Goal: The aim of the game is to invent a process by which balls are passed between players of an online Ball Point game as quickly as possible in order to score points. (40 minutes)
Each team decides on a case-sensitive team name and everyone on the team uses this to open the online game. E.g. if the team name is “WM6-MangoTeam”, the game URL will be https://remoteballpointgame.openforce.com/WM6-MangoTeam
Each team member needs to:
- Set their name
- Choose which controls to use: mouse & keyboard, or keyboard only
- Pick an avatar
- Press F at any time to see the flip chart which explains the controls for mouse or keyboard, the warm-up rules, the Ball Point rules and the scoreboard for each sprint (use the arrow buttons to move between these)
- The Timekeeper can press T to start or reset the two-minute timer
Tip: you can change your controls, name or avatar at any time by refreshing the URL.
Warm-up game
Get familiar with the controls by picking up a ball (left/right mouse click or spacebar/shift key) and passing it to someone else in the same room.
When everyone on the team is used to the controls, you are ready to move on to the actual game.
Ball Point game
The Rules:
- A point is scored when every player in a team touches a ball
- If a ball falls on the ground, it counts as a defect and cannot be used in the current round
The Flow:
- Preparation (retrospective and planning): all team members invent or improve the process together (2 minutes).
- Estimation: the team estimates how many points they will score in the next round and the Timekeeper records this (a few seconds)
- Play (sprint): the team uses its process to score points (2 minutes)
The Timekeeper can press T to start/reset the two minute timer for the preparation and play phases. The Timekeeper should also record estimates, actuals and defects for each round by pressing F and the left/right arrows to get to the scorecard.
Sprint | Estimate | Actual | Defects |
---|---|---|---|
1 | 20 | 15 | 3 |
2 | 30 | 20 | 0 |
3 | … | … | … |
4 | … | … | … |
5 | … | … | … |
In your teams, you will perform FIVE sprints, and since each sprint will take less than 5 minutes, the whole game will take under 30 minutes.
Ball Point Game Debrief
🎯 Goal: To reflect on your experience of working in teams with short sprints and rapid feedback and to consider how this relates to working in a real software development team. (20 minutes)
As a whole group, reflect on the following questions:
- What did you experience during the Ball Point Game?
- What do you notice about your scores? Your defects? Your estimate accuracy?
- How much did you “fail”?
- How did you go about deciding improvements from round to round?
- Would you have scored more points if you had initially planned longer?
- Would you have scored more points if you had made one plan and then played one long round? (Why not?)
- Would you have scored more points if one individual had decided the process? (Why not?)
- How is this related to your daily work?
Public Speaking / Circles of Influence 🔗
Learning Objectives
Preparation
Introduction
Everyone will be expected in their careers to present topics to different-sized groups and different types of audiences. The only way to become more confident and effective at doing these presentations is to practice. In this session, you will experiment with Power Poses, which some people find gives them a boost of confidence. Let’s give it a try and you might feel it helps you.
Following this, you will practice giving a short talk about the topic you prepared to a friendly group of your peers.
In addition, you will develop the Circles of Influence you created in the prep to improve your ability to affect aspects of your life and worry less about things you cannot control.
Power Poses
🎯 Goal: Use Power Poses to give yourself a confidence boost (7 minutes)
Some psychologists have suggested that doing “Power Poses” for two minutes before a stressful event - like a presentation or a job interview - can help you boost your confidence and, therefore, help you perform better. (Don’t do power poses during an interview! You’ll appear arrogant.)
This isn’t 100% scientifically proven, but many people to feel this exercise helps them, so let’s see if you can benefit from it.
Possible Power Poses are:
- “Victory” - Arms up in a V shape
- “Wonder Woman” - legs apart, hands on hips, head high
- “Obama” - sitting down with feet up on the table and hands behind head
- “Salutation” - feel firmly planted, chest out, arms stretched wide
- “Superman” - one arm ahead, fist clenched, ‘flying’ through the air
In contrast, low-power poses are those where you make yourself small, protecting yourself with your hands and arms. Avoid these.
Steps:
- Choose someone to be the timekeeper (preferably a volunteer)
- Spread out in the room, giving yourself plenty of space
- Everyone chooses one of the Power Pose and holds it for 30 seconds. Be BIG.
- Repeat THREE times with a different pose each time
How do you feel compared with how you felt at the beginning of this exercise?
Public Speaking
🎯 Goal: Practice your public speaking in your groups (30 minutes)
Split into roughly equal groups of about 8 to 10 people. Take turns to be the speaker and give the three-minute talk you prepared to the other group members.
Listeners, practice your active listening skills (give full attention to the speaker, reflect in your body language, nod, smile, and look puzzled as appropriate). At the end of each talk, each give the speaker ONE positive feedback about their talk.
Circles of Influence Discussion
🎯 Goal: Discuss the Circles of Influence you created as prep, focus on changes you can make to waste less energy/worry on things you cannot affect and more on things you can control or influence. (15 minutes)
Find a partner, and in your pairs, take turns to answer the following questions about your Circles of Influence (5 minutes each)
Looking at some of the items in your outer Circle of Concern,
- What could you do to move them into your circle of influence?
- What could you do about them that is within your control?
- Which ones can you do nothing about? Practice accepting that you can’t do anything about them and shift your focus and energy to the things you can influence and control.
Looking at some of the items in your Circle of Influence,
- Can you break any of these down into smaller things you can control?
As a whole group, spend 5 minutes sharing your learnings from this exercise. Were there any interesting ideas that you had to worry less about some concerns or changes you might make to gain greater control or influence?
The more you focus on and operate within your circles of influence and control, the bigger these circles will become. You are becoming more proactive and developing a growth mindset.
Create groups for JS3
🎯 Goal: Create groups for the next module’s group work (5 minutes)
Interacting with diverse groups fosters empathy, enhancing interpersonal skills for handling others effectively. So, focus on grouping with people you might not have interacted with so much.
At least two people must define the groups together. You must consider trainees’ availability. You must also consider how many hours of coursework or prep work must be done in groups.
Define the groups for the next module. Look for diversity, so people that haven’t worked together should give it a go, ensure you don’t have gendered groups, etc… Don’t forget to check availability again.
Tip: You can use this link to help you allocate people randomly
Open the existing spreadsheet for pairs/groups, create a new tab called “JS3 Groups”, and add the groups to the “JS3 Groups” tab
Share the spreadsheet on Slack, so it is visible to everyone
Morning Break
A quick break of fifteen minutes so we can all concentrate on the next piece of work.
Progress check-in 🔗
Link to the coursework
https://curriculum.codeyourfuture.io/js2/success/
Why are we doing this?
🔑 The most important thing is that you are secure in your understanding.
At the end of the course, we will expect you to build novel applications using your understanding. If you cannot build things, we cannot put you forward for jobs. It is in your personal interest to make sure you have properly understood this module.
To progress to the next module you need to meet the success criteria for this module. How will you as a cohort meet the module success criteria? Discuss it in your class channel and make a plan together.
🧑🏿🎤 good strategies
- asking volunteers to review your code
- helping each other with coursework blockers
- arranging midweek study sessions
- using Saturday time to review code and cohort tracker
🙅🏿 bad strategies
- opening empty PRs
- copying and pasting
- breaking the Trainee Agreement
- mistaking the measure for the target
Maximum time in hours
.5
How to get help
Discuss with your cohort. Support each other.
How to submit
In week 4 of your module you will need a representative to report to the organisation. Here’s your template, fill in your details and delete as appropriate:
📈 Cohort Progress Report from @cohort-name to @programme-team
- criterion
- criterion
- criterion
- criterion
✅ We are progressing to the next module.
⛔ We are taking a consolidation week to meet our targets.
- 🎯 Topic Code Review
- 🎯 Topic Communication
- 🎯 Topic Delivery
- 🎯 Topic Requirements
- 🎯 Topic Teamwork
- 🎯 Topic Testing
- 🎯 Topic Time Management
- 🏕 Priority Mandatory
- 🦔 Size Tiny
- 📅 Week 1
- 📅 Week 4
Create groups for JS3 🔗
Learning Objectives
Introduction
Create groups for the next module's group work.
🎯 Goal: Create groups for the next module’s group work. (10 minutes)
At least two people must define the groups together. You must consider trainees’ availability. You must also consider how many hours of coursework or prep work has to be done in groups.
- Define the groups for the next module. Look for diversity, so people that haven’t worked together should give it a go, ensure you don’t have gendered groups, etc… Tip: You can use this link to help you allocate people randomly
- Open the existing spreadsheet for pairs/groups and create a new tab called “JS3 Groups”, and add the groups to the “JS3 Groups” tab
- Share the spreadsheet on Slack so it is visible to everyone
Community Lunch
Every Saturday at CYF we cook and eat together. We share our food and our stories. We learn about each other and the world. We build community.
This is everyone’s responsibility, so help with what is needed to make this happen, for example, organising the food, setting up the table, washing up, tidying up, etc. You can do something different every week. You don’t need to be constantly responsible for the same task.
✏️ Check your progress
Learning Objectives
This week you should have been building an app in pairs.
Use this time to check your progress and identify areas/tasks you need to complete.
🔑 Key questions
You can use the questions below to reflect on your progress this week.
- Which acceptance criteria have you completed for your app?
- Have you deployed your app? Do you have a link to the deployed version that you can share with others?
- Is your code formatted properly?
- Is your code readable? E.g. do you have clear function names, variable names etc.
📝 User feedback
If you have time, get some user feedback on your deployed application. Share your deploy link with volunteers or trainees.
Independent Study
What are we doing now?
You’re going to use this time to work through coursework. Your cohort will collectively self-organise to work through the coursework together in your own way. Sort yourselves into groups that work for you; you might do this by:
- logging topics on Slack
- setting up a Jamboard and adding blockers throughout the week
- randomly assigning teams
- and so on
During study time you can ask questions of your peers and your mentors, and you can work together to solve problems.
Use this time well
You will have study time in almost every class day. Don’t waste it. Use it to:
- work through the coursework
- ask questions and get unblocked
- give and receive code review
- work on your portfolio
- develop your own projects
Afternoon Break
Please feel comfortable and welcome to pray at this time if this is part of your religion.
If you are breastfeeding and would like a private space, please let us know.
▶️ Demo
Learning Objectives
Take this time to demo the application you’ve been building this week to the rest of the group (your application doesn’t need to be finished!)
You can talk about the following:
- Demo the app and talk through its functionality
- Your problem solving strategy
- Any challenges you faced in developing the app
Tips
- Keep your demonstration brief - under 10 mins!
- Have both people in the pair talk about the work
Retro: Start / Stop / Continue
Retro (20 minutes)
A retro is a chance to reflect on this past sprint. You can do this on a Jamboard (make sure someone clicks “Make a copy” before you start, and you work on that together) or on sticky notes on a wall.
- Set a timer for 5 minutes.
- Write down as many things as you can think of that you’d like to start, stop, and continue doing next sprint.
- Write one point per note and keep it short.
- When the timer goes off, one person should set a timer for 1 minute and group the notes into themes.
- Next, set a timer for 2 minutes and all vote on the most important themes by adding a dot or a +1 to the note.
- Finally, set a timer for 8 minutes and all discuss the top three themes.