πŸ§‘πŸΎβ€πŸ€β€πŸ§‘πŸΎ day-plan

✍🏽 Register

Introduce Yourself!

Learning Objectives

Activity

In your professional life, you will often be asked to introduce yourself. It is a good idea to have an elevator pitch ready, a brief (30 seconds) way of introducing yourself, getting across a key point or two, and making a connection with someone.

Today we will be going around the room and introducing ourselves! `

Facilitator(s) start by sharing your elevator pitch and then popcorn around the room.

Some tips:

  • Your response should be around 30 seconds.
  • Have a list of items ready but tailor what you say to your audience. For example, at a technical conference focus on your technical interests rather than your love of making cupcakes, but on the first day of a new job introducing yourself to your new team feel free to add 1-2 personal details.
  • Try to structure your response,
    • Who are you? Where are you from? Where have you worked? Have you studied somewhere and what subjects?
    • What do you do? What are your skills, passions, or hobbies? What motivates you?
  • Try to be enthusiastic, let your personality and confidence shine
  • Allow space for follow-up questions
  • It will feel awkward and nerve-wracking the first couple of times, practice-practice-practice to feel confident

Facilitator Check-in questions

  • How did you feel about public speaking?
  • What are some strategies to feel more confident when public speaking?
  • What activities could you share to create a connection? Ex. Sports, Hobbies

🎑 Morning orientation

Learning Objectives

info

🧭 During the week, create a post on Slack and get some people to take on the roles of facilitator and timekeeper. Nominate new people each time.

πŸ‘£ Steps

If you haven’t done so already, choose someone (volunteer or trainee) to be the facilitator for this morning orientation block. Choose another to be the timekeeper.

πŸŽ™οΈ The Facilitator will:

  1. Assemble the entire group (all volunteers & all trainees) in a circle
  2. Briefly welcome everyone with an announcement, like this:

    πŸ’¬ “Morning everyone, Welcome to CYF {REGION}, this week we are working on {MODULE} {SPRINT} and we’re currently working on {SUMMARISE THE TOPICS OF THE WEEK}”

  3. Ask any newcomers to introduce themselves to the group, and welcome them.
  4. Now check: is it the start of a new module? Is it sprint 1? If so, read out the success criteria for the new module.
  5. Next go through the morning day plan only (typically on the curriculum website) - and check the following things:

Facilitator Checklist

  • Check the number of volunteers you have for the morning
  • Check someone is leading each session
  • Describe how any new activities works for the group
  • Decide how best to allocate trainees and volunteers for a given block - most blocks will make this clear

⏰ The Timekeeper will:

  • Announce the start of an activity and how long it will take (check everyone is listening)
  • Manage any whole class timers that are used in an activity
  • Give people a 10-minute wrap-up warning before the end of an activity
  • Announce the end of an activity and what happens next

🧰 Workshop Activity

Learning Objectives

This space is for a workshop activity of your choosing. In order for this to actually happen, you must organise it ahead of time.

What is a CYF workshop?

πŸ‘·πŸΏβ€β™€οΈ No lectures

Code Your Future workshops are designed to be interactive. Developed by volunteers and trainees, they are not about listening to a lecture. They are about doing, discussing, and learning together.

πŸ’ͺ🏾 No spoonfeeding

Workshops are also not tutorials, where you follow along step-by-step. CYF workshops are meant to expose gaps and mistakes in your understanding, so mentors can help you fix them. This means you should expect to be challenged and to make mistakes. This is the main value of mentor-led workshops.

πŸ‘‚πŸΏ Responding to needs

You can run a workshop in person on class days, or online in the week. Mentors volunteer to run workshops on Slack, and learners propose topics they need help with. There are a huge number of workshops available at workshops.codeyourfuture.io/.

Organise a workshop on Slack

./organise-workshops.png

πŸ—‚οΈ Options

Stand-up [PD] (30 Mins)

Stand-up [PD] (30 Mins) πŸ”—

Stand-up [PD 30 minutes]πŸ§β€β™‚οΈ

Most software development teams have a “stand-up” every day. Even if a team does not follow the agile methodology, stand-ups are used to discuss progress and identify blockers.

Learning Objectives πŸ™†

What is a stand-up meeting?

  1. Daily
  2. Short
  3. Focused

Traditional stand-up meetings require everyone to stand up so that the meeting is short.

πŸ’‘ Tip

Standup: a focused meeting where all team members disseminate their progress, plans, and problems in a short amount of time.

πŸ“ Note

Activity: Prepare your Stand-up (5m)

  1. Set a timer for 5 minutes
  2. Write down three bullet points:
    1. What you worked on yesterday
    1. What issues are blocking you / What problems you encountered
    1. What you will work on today

Set up 🌼

  • Split up into breakout rooms of 5 - 10 people
  • Set a timer for 10 minutes

🧩 Time to Have a First Stand-up

  1. Take turns to describe
    • what you worked on this week,
    • something that is blocking you or that you struggled with (do not discuss solutions yet)
    • and what you plan to work on today. If you need help or want to pair with someone to work on something specific this is a time to communicate that!
  2. After everyone has given an update, reflect on next steps together. Is there something that multiple people said they struggled with that you could team up with? Is someone working on something interesting that you want to know more about?
  3. Where else can you ask a question and in which slack channels when you have a problem?

πŸ’‘ Tip

No problem solving in the stand-up!

When someone mentions a problem, it’s not the time to discuss solutions. The goal is to identify blockers and plan the day.

Acceptance Criteria 🧾

After this workshop, every participant:

  • Has participated in a stand-up meeting and can explain what the structure is
  • Has formulated their update in the typical “stand-up” structure
  • Has described at least one technical blocker
Git Day 1 [Tech] (60 Mins)

Git Day 1 [Tech] (60 Mins) πŸ”—

Git Day 1

Git is a tool for software development that you will likely come to rely on in your software development journey. It might seem complex at first but with continuous practice, you will begin to disentangle the complexity.

πŸ’‘ Objective

This workshop will deepen your understanding of Git. By the end of this workshop, participants will:

  • Navigate a GitHub repository using the VSCode interface
  • Fork and clone a repository, create branches, and commit changes using the VSCode interface
  • Articulate the difference between a fork and clone
  • Explain their mental model of the working tree and the staging area

Setup

  • Break out into groups of 5/6 ( depending on volunteer and trainee numbers )
  • Use these instructions as a guide to check your understanding, resolve misconceptions and develop your understanding

This workshop starts with a recap based on this week’s prep material…

Exploring GitHub repositories

Recap activity πŸ•ΉοΈ

  • Trainees do this section in pairs
  • ⏲️ 10 mins

Let’s recap some of the things from earlier in the week.

Visit the following repository on GitHub: https://github.com/CodeYourFuture/cyf-demo-repo

Answer the following questions:

a) How many commits are there in the cyf-demo-repo project?

b) Who committed on Oct 31, 2020?

c) What changes did illictonion make in the commit titled “Revert changes accidentally pushed in the past”?

d) How many files were added in the first commit? What were the names of the files?

e) What is the hash for the first commit in the history?

f) What is Claire Bickley’s favourite food?

πŸ§΅πŸ—£οΈ group discussion

  • Group discussion
  • ⏲️ 10 mins
  • A volunteer will need to facilitate this section

A volunteer can facilitate this group discussion by going through the questions above and asking pairs for their feedback. If pairs are unsure / not quite accurate then spend a small amount of time addressing misconceptions. Remember to ask around for feedback.

Creating a fork 🍴

πŸ•ΉοΈ Recap activity

  • Trainees do this section in pairs
  • ⏲️ 5 mins

Use the guidelines from the prep section of this week to create a fork.

  1. On one person’s computer, fork this repo: https://github.com/CodeYourFuture/cyf-demo-repo
  2. πŸ“ Double-check the URL of your forked repo. How can you tell the fork was successfully created?

Group discussion/demo 🧡 πŸ—£οΈ

  • Groups discussion
  • ⏲️ 5 mins
  • A volunteer will need to facilitate this section

A volunteer will need to navigate and let the group guide them in creating a fork.

πŸŒ€ Cloning a repository

πŸ•ΉοΈ Recap activity

  • Trainees do this section in pairs
  • ⏲️ 5 mins

πŸ“‹ Check your understanding

Before continuing, try answering the following:

❓ what is the difference between a fork and a clone.

Remember to check your answer before continuing.

  1. Clone your fork of cyf-demo-repo to your local machine.
  2. Open this local repository using VSCode.
  3. Use pwd in your terminal to check you’re in the right place.

Group discussion/demo 🧡 πŸ—£οΈ

  • Group discussion/demo
  • ⏲️ 5 mins
  • A volunteer will need to facilitate this section

A volunteer will need to navigate and let the group guide them in following through the steps in the previous recap activity.

🌳 Creating a branch

πŸ•ΉοΈ Recap activity

  • Trainees do this section in pairs
  • ⏲️ 10 mins

Next, create a local branch called week-1-workshop

Group discussion/demo 🧡 πŸ—£οΈ

  • Group discussion/demo
  • ⏲️ 10 mins
  • A volunteer will need to facilitate this section

Take a break for 10 mins… 🍫

Part 2 - New skills 🧰 - Committing and pushing πŸ“Έ

Learning objectives

πŸ“‹ Double-check you’ve been committing to your branch week-1-workshop branch and not your main branch.

However, our remote fork only has a main branch:

--- title: cyf-demo-repo --- gitGraph commit commit

In other words, we have not added our local branch onto the remote fork on GitHub.

To do this, we must push our branch onto GitHub.

push means adding local work to a remote GitHub repository.

πŸ” Figure out how to push your local branch to the GitHub repository using the Source Control interface in VSCode. πŸ” Figure out how to check the week-1-workshop branch is on the remote fork.

Group discussion

  • Group discussion/demo
  • ⏲️ 5 mins
  • A volunteer will need to facilitate this section

A volunteer will need to navigate and let the group guide them in following through the steps in the previous recap activity.

🧡 Tying things up

Now is some time to wrap up and discuss some of the key concepts from this week.

πŸ—£οΈ Discussion in pairs

  • Trainees discuss in pairs
  • ⏲️ 10 mins

In your pair, discuss the following questions/tasks:

  1. What is a commit? Explain why we need to make commits when we’re developing a project.
  2. Explain why we store repositories on GitHub.
  3. Describe the purpose of VSCode.
  4. Explain the difference between Git and GitHub.
  5. Explain why developers use branches.
  6. Explain the difference between a fork and a clone.
  7. What does the branch name origin/main mean instead of just main ?
  8. Check out the following git repository diagram below:

How many commits are in common between week-1-feature and main?

--- title: cyf-demo-repo --- gitGraph commit commit commit branch "week-1-feature" commit commit

πŸ—£οΈ Group discussion

  • Discuss the questions together as a group. Go round and get feedback from each person in the group.
LLM Writing 1 [Tech] (60 Mins)

LLM Writing 1 [Tech] (60 Mins) πŸ”—

LLM Writing 1

πŸ€–πŸ«  Overview

A workshop to help you write meaningful texts with AI and stop dismaying us all with gibberish.

Learning Objectives

Requirements

  1. Open accounts with Claude, ChatGPT, and Gemini (or similar)
  2. Open each account in a separate tab

I have provided a series of queries for you to run in a sequenced dialogue. Just as in coding, you will use the predict explain loop to first make a prediction yourself and then compare against the computer output.

graph LR A[Predict the answer] B[Explain why you think that] C[Run the prompt] D[Compare the replies] E[Update your mental model] A --> B B --> C C --> D D --> E E --> A

🧰 Workshop

activity

πŸ–¨οΈ Generate

Copy and paste the following prompt into each πŸ€– LLM dialog:

Write a 250 word essay reflecting on your strengths and development areas as a result of feedback and what is one action for each you will take.

activity

πŸͺž Compare

Now copy and paste each πŸ€– LLM response into one google doc, so all three replies are in one doc. Read the replies. All three are easily identifiable as πŸ€– LLM generated texts. Can you tell why this is? ✍🏽 Write down your ideas.

Next, add the following prompt to the first line of your google doc:

All three are easily identifiable as LLM generated texts. Can you tell why this is?

Now paste the entire text of the doc you just made into each LLM dialog and read the replies. How do your ideas compare to the LLM responses to the same question?

activity

πŸ•΅πŸΏ Revise

How would you fix this? ✍🏽 Write down your ideas.

Next, ask each πŸ€– LLM in turn, by pasting the prompt:

How would you fix this?

activity

πŸ’­ Reflect

You are using πŸ€– LLM to write your essays and reflections but your reviewers often say your writing is generic and pointless. How can you improve? ✍🏽 Write down your ideas.

Finally, ask each πŸ€– LLM in turn, by pasting the prompt:

I use you to write my essays and reflections but my teacher says my writing is generic and pointless. How can I improve?

activity

🧠 Create

✍🏽 Write a 250 word essay reflecting on your strengths and development areas as a result of feedback and one action you will take for each area.

βœ… Acceptance Criteria

  • I have generated multiple texts with different LLMs
  • I have written down my own ideas first and then compared them to the LLM
  • I have clearly identified the problems with the generated texts
  • I can explain the difference between superficial fluency and meaningful information

Community Lunch

Every Saturday 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.

Study Group

Learning Objectives

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.

Use this time wisely

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

πŸ›ŽοΈ Code waiting for review πŸ”—

Below are trainee coursework Pull Requests that need to be reviewed by volunteers.

CYF-ITP-South Africa | Natalie Patel | Module-User-Focused-Data | Week2 Wireframe - Resubmission πŸ”—

Self checklist

  • I have committed my files one by one, on purpose, and for a reason
  • I have titled my PR with COHORT_NAME | FIRST_NAME LAST_NAME | REPO_NAME | WEEK
  • I have tested my changes
  • My changes follow the style guide
  • My changes meet the requirements of this task

Changelist

Due to having committed my previous Wireframe project to the main branch and being unable to rectify it, I had to refork the repository and am resubmitting the PR to the correct branch. This PR will contain my styled wireframe Git page.

Questions

Ask any questions you have for your reviewer.

Start a review
CYF London | Rihanna Poursoltani | Module User Focused Data | Form controls | Week 2 πŸ”—

Learners, PR Template

Self checklist

  • I have committed my files one by one, on purpose, and for a reason
  • I have titled my PR with COHORT_NAME | FIRST_NAME LAST_NAME | REPO_NAME | WEEK
  • I have tested my changes
  • My changes follow the style guide
  • My changes meet the requirements of this task

Changelist

  • Added valid inputs with associated labels for name, email, radio, date and select.All of inputs are required.
  • My Lighthouse Accessibility score (for Desktop and Mobile) is 100.
  • Added 6 options for size with select and 3 options for colours with using fieldset and radio inputs.
  • Adde two buttons for submit and reset.
  • Added style, hover and focus for labels, inputs and buttons.

Questions

  • I had problem for setting size for select option. As you can see width is not the same as others in the page.How can I fix that?

Ask any questions you have for your reviewer.

Start a review
LONDON | DANIEL ALEXANDER | FORM CONTROLS | WEEK 2 πŸ”—

Learners, PR Template

Self checklist

  • I have committed my files one by one, on purpose, and for a reason
  • I have titled my PR with COHORT_NAME | FIRST_NAME LAST_NAME | REPO_NAME | WEEK
  • I have tested my changes
  • My changes follow the style guide
  • My changes meet the requirements of this task

Changelist

Written up HTML and CSS for basic form.

Questions

Would like to have a rolling date feature where the min date in calendar is always day of accessing website but it seems this is a JS feature?

Start a review
CYF-ITP - South Africa |Azharuddin Meyer | Module-User-Focused-Data Form Controls | Week2 πŸ”—

Self checklist

  • [yes ] I have committed my files one by one, on purpose, and for a reason
  • [yes ] I have titled my PR with COHORT_NAME | FIRST_NAME LAST_NAME | REPO_NAME | WEEK
  • [ yes] I have tested my changes
  • [yes ] My changes follow the style guide
  • [ yes] My changes meet the requirements of this task

Changelist

Briefly explain your PR.

I have created a a product form using HTML and CSS.

Start a review
WEST MIDLANDS COMMUNITY/MILLENA MESFIN/Module-User-Focused-Data/week#2 πŸ”—

Learners, PR Template

Self checklist

  • I have committed my files one by one, on purpose, and for a reason
  • I have titled my PR with COHORT_NAME | FIRST_NAME LAST_NAME | REPO_NAME | WEEK
  • I have tested my changes
  • My changes follow the style guide
  • My changes meet the requirements of this task

Changelist

Briefly explain your PR.

Questions

Ask any questions you have for your reviewer.

Start a review
See more pull requests

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.

Study Group

Learning Objectives

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.

Use this time wisely

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

Retro: Start / Stop / Continue

  activity</span>

A retro is a chance to reflect. You can do this on a FigJam (make sure someone makes a copy of the template before you start) or on sticky notes on a wall.

  1. Set a timer for 5 minutes. There’s one on the FigJam too.
  2. Write down as many things as you can think of that you’d like to start, stop, and continue doing next sprint.
  3. Write one point per note and keep it short.
  4. When the timer goes off, one person should set a timer for 1 minute and group the notes into themes.
  5. 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.
  6. Finally, set a timer for 8 minutes and all discuss the top three themes.