🏷️ backlog

Module-Onboarding πŸ”—  

01 You must always start with the prep πŸ”— Clone

01 You must always start with the prep πŸ”—

https://migracode-itp.netlify.app/onboarding/sprints/2/prep

Why are we doing this?

You might be used to school environments where you attend a lecture or class and then are given homework or tests to show you heard or understood the lecture. We don’t do that at MigraCode as we have found it doesn’t prepare people well for a good job in tech.

As a tech professional, you won’t be told a series of answers and then asked just to demonstrate your understanding/recollection of them! That will never happen! There’s no business value there at all. As a tech professional, your job will be to ask good questions, research new ideas, and figure out solutions to unsolved problems. So let’s start this now.

The prep work here will introduce you to new concepts for the week. If you already have all these concepts, you need to identify something else in your coursework to bring because everyone is expected to come to class with questions.

Find this week’s blockers thread in your class channel and add your question to it.

Maximum time in hours

3

How to get help

Share your blockers in your class channel. Use the opportunity to refine your skill in the how to ask good questions as a developer workshop (hosted at Code Your Future)(https://curriculum.codeyourfuture.io/guides/asking-questions/)

Anything else?

You will do the prep first every week, but we will gradually stop reminding you to do it. Consider scheduling it in to your Google calendar.

  • :brain: Prep work
  • 🎯 Topic Programming Fundamentals
  • 🎯 Topic Requirements
  • πŸ• Priority Mandatory
  • πŸ‚ Size Medium
  • πŸ“… Sprint 3
  • πŸ“… Sprint 3
  • πŸ‚ Size Medium
  • πŸ• Priority Mandatory
  • 🎯 Topic Requirements
  • 🎯 Topic Programming Fundamentals
  • :brain: Prep work
02 Query Data in Google Sheets with SQL πŸ”— Clone

02 Query Data in Google Sheets with SQL πŸ”—

https://www.youtube.com/watch?v=dTNamL30sDg

Why are we doing this?

To learn how to use Google Sheets to store and query data is very useful. SQL is a powerful tool you will regularly come across when working with databases, either as a programmer or in many other data roles.

Watch the video SQL in Google Sheets. Copy the dataset provided in the video and code along with the queries as you go.

Do up to the step GROUP BY clause and aggregation.

We can skip PIVOT, LIMIT and OFFSET for now. You won’t need these for the next piece of coursework, but look at them if you’re not short on time.

Acceptance criteria

  • I have watched the SQL in Google Sheets video and followed along with the instructions in my own Google Sheet.

Maximum time in hours

2

How to get help

Share your blockers in your class Slack.

How to submit

  1. Combine both of these sheets into one. You can create a new sheet for each piece of work.
  2. Share a link to your Google Sheet on your own copy of this ticket. Make sure to give read access to your sheet, you can do this by clicking the “Share” button, then change “Restricted” to “Anyone with the link”.
  • πŸ• Priority Mandatory
  • πŸ‚ Size Medium
  • πŸ“… Sprint 3
  • πŸ“ SQL
  • πŸ“ SQL
  • πŸ“… Sprint 3
  • πŸ‚ Size Medium
  • πŸ• Priority Mandatory
03 Reflect on your plan to live as a tech professional πŸ”— Clone

03 Reflect on your plan to live as a tech professional πŸ”—

Coursework content

Depends on this backlog

Now that you have your spreadsheet, you reviewed it, and you are confident it is a good picture of your availability and commitments on a typical week, we can reflect on it.

An important goal of this exercise is to observe your life from an external perspective.

  • Write a statement about your reflection. It should be at least 50 words long.
  • Don’t forget to check your text with a grammar tool, such as Grammarly

Read it a few times aloud and ensure you haven’t missed anything. Ask yourself if this is what you had planned or a realistic description of what happens. Make any changes and iterations to it.

Now look at the number of hours you dedicate to each activity per week.

Ensure you include your energy and concentration levels when studying or MCB training.

Read the updated sample and iterate again on it, ensuring it has the expected level of detail.

Share your reflection with your CodeBuddy. Ask them to ask you questions about the accuracy of it. Get them to help you to refine it.

Estimated time in hours

1

What is the purpose of this assignment?

Observing your week and reflecting on your real availability will be key to ensure you have a clear plan to achieve your ultimate goal, which is a job in tech.

Be transparent in all what you are writing and thinking about, to ensure you have a reliable plan. Remember: the plan doesn’t end when the MCB course ends.

How to submit

Add the following as a comment on this issue:

  • If you feel comfortable doing so, link to the updated Google Docs with your statement. You are not required to publish anything private on the internet.
  • 🎯 Topic Problem-Solving
  • πŸ• Priority Mandatory
  • πŸ‡ Size Small
  • πŸ“… Sprint 3
  • πŸ“… Sprint 3
  • πŸ‡ Size Small
  • πŸ• Priority Mandatory
  • 🎯 Topic Problem-Solving
05 Evaluate, and interpret data with Google Sheets πŸ”— Clone

05 Evaluate, and interpret data with Google Sheets πŸ”—

Note: The links to the Starter Projects mentioned in the videos are only available in the video descriptions on YouTube.

Why are we doing this?

Being confident and fluent with spreadsheets is necessary knowledge for all workers. Work through these 2 courses, which follow on from the prep work you’ve already done.

Maximum time in hours

3

How to get help

Share your blockers in Slack. We are here to help each other.

How to submit

  1. Make your spreadsheet public
  2. Attach a link to your copy of this ticket on your own board
  • 🎯 Topic Structuring Data
  • πŸ• Priority Mandatory
  • πŸ‚ Size Medium
  • πŸ“… Sprint 3
  • πŸ“… Sprint 3
  • πŸ‚ Size Medium
  • πŸ• Priority Mandatory
  • 🎯 Topic Structuring Data
05 Prepare for the Devtools workshop πŸ”— Clone

05 Prepare for the Devtools workshop πŸ”—

Disclaimer

This exercise is hosted on the GitHub repository of our partner NGO, Code Your Future (UK), and not on a MigraCode-owned repository. We are part of a European network where we share resources and support each other as we share the same mission - to provide free, high-quality tech education to our communities. The exercise works as intended β€” you are free to fork and clone the repository as usual, if required by the exercise.

https://github.com/CodeYourFuture/CYF-Workshops/tree/main/devtools

Why are we doing this?

Before you come to class, you need to make sure you are ready to participate in the workshop.

For this workshop you will need:

Make sure you come to class with Chrome installed, a ChatGPT account, and having looked over what you will be doing.

Maximum time in hours

0.15

How to get help

Share your blockers in your class channel. Practice asking good questions, with links and context.

  • :brain: Prep work
  • 🎯 Topic Requirements
  • πŸ• Priority Mandatory
  • πŸ‡ Size Small
  • πŸ“… Sprint 3
  • πŸ“… Sprint 3
  • πŸ‡ Size Small
  • πŸ• Priority Mandatory
  • 🎯 Topic Requirements
  • :brain: Prep work
06 Developing a growth mindset πŸ”— Clone

06 Developing a growth mindset πŸ”—

Coursework content

Watch The power of believing that you can improve | Carol Dweck | TED and Neuroplasticity.

Write your reflections on why it is important to have a growth mindset as a developer and how a growth mindset will positively impact you in your career in the long term. Try to answer the following questions:

  • When did I have a closed mindset this week, and why?
  • When did I have an open mindset this week, and why?
  • What have I learnt about myself, as a result?
  • What will I do differently next time?

Estimated time in hours

1

What is the purpose of this assignment?

This assignment supports developing a growth mindset while learning new skills and facing barriers.

How to submit

Write in your cohort’s Slack channel what actions you will take in order to overcome your barriers to participating in coding and write a supportive message to one of your peers who has shared their barriers in the channel. Add the link to your Slack post as a comment on this ticket.

  • 🎯 Topic Delivery
  • 🎯 Topic Iteration
  • 🎯 Topic Teamwork
  • 🏝️ Priority Stretch
  • πŸ‡ Size Small
  • πŸ“… Sprint 3
  • πŸ“… Sprint 3
  • πŸ‡ Size Small
  • 🏝️ Priority Stretch
  • 🎯 Topic Teamwork
  • 🎯 Topic Iteration
  • 🎯 Topic Delivery
06 Record a Goose πŸ”— Clone

06 Record a Goose πŸ”—

Disclaimer

This exercise is hosted on the GitHub repository of our partner NGO, Code Your Future (UK), and not on a MigraCode-owned repository. We are part of a European network where we share resources and support each other as we share the same mission - to provide free, high-quality tech education to our communities. The exercise works as intended β€” you are free to fork and clone the repository as usual, if required by the exercise.

https://github.com/CodeYourFuture/Project-Record-A-Goose

Why are we doing this?

A mission of discovery for you.

  1. Go to https://github.com/CodeYourFuture/CYF-Record-A-Goose-Project
  2. Using Devtools, Lighthouse, and the WAVE accessibility plugin, find all the ways this app is broken
  3. How would you fix the problems? Discuss in a thread in your channel.

This is also a fun in-person workshop, so you could choose to do it in a class or coworking space together.

https://record-a-goose.onrender.com/

Maximum time in hours

2

How to get help

You could choose to do this in class together during independent study time.

How to submit

Write up your findings in a thread in your class channel.

Don’t make a new post each. Discuss in a thread.

How to review

It is a review! ;)

Anything else?

  • 🎯 Topic Code Review
  • 🎯 Topic Testing
  • πŸ• Priority Mandatory
  • πŸ‚ Size Medium
  • πŸ“… Sprint 3
  • πŸ“… Sprint 3
  • πŸ‚ Size Medium
  • πŸ• Priority Mandatory
  • 🎯 Topic Testing
  • 🎯 Topic Code Review
07 SQL Problems using Google Sheets πŸ”— Clone

07 SQL Problems using Google Sheets πŸ”—

https://docs.google.com/spreadsheets/d/1zPeHxhKkYmdiqXNhMwhfC1A0o1wI0zNiD5Gsks2SYoc/template/preview

Why are we doing this?

To practice how to use Google Sheets to store and query data. This should make sure we understand the basics of SQL and how to use it to query data.

We’re going to practice extracting data from a database, using SQL. We will use the same data set we used in the Learn about Google Sheets coursework.

Please complete the following tasks:

  1. Emily Smith would like to be able to quickly see how many deals she’s made. She only cares about Deal Value and Expected Close date to see when she’ll be paid. Create a query that will give only this information.
  2. As the accountant for this business, I need to find out how much we’ve sold in each country to pay our taxes. Deals are only complete when they have the status "Closed Won", so we should only include those deals. To make the data easier to work with, we can sort them by country. Can you write a query to get this information?

Acceptance criteria

  • I have completed both tasks.
  • I have added them to a new sheet in my Google sheet I created in the “Learn about Google Sheets” coursework.

Maximum time in hours

1

How to get help

Share your blockers in the ITP Slack.

How to submit

  1. The work should be in the same Google Sheet as the “Learn about Google Sheets” coursework.
  2. Share a link to your Google Sheet. Make sure to give read access to your sheet, you can do this by clicking the “Share” button, then change “Restricted” to “Anyone with the link”.
  • 🎯 Topic Requirements
  • 🎯 Topic Structuring Data
  • πŸ“… Sprint 3
  • πŸ“ SQL
  • πŸ“ SQL
  • πŸ“… Sprint 3
  • 🎯 Topic Structuring Data
  • 🎯 Topic Requirements
09 Join Codewars πŸ”— Clone

09 Join Codewars πŸ”—

What is Codewars?

Codewars is an online platform where developers solve coding challenges (called katas) to practice and improve their programming skills. Each kata is designed to test problem-solving, algorithmic thinking, and mastery of core programming concepts.

At MigraCode, we make you practice katas regularly because:

  • It helps reinforce the concepts taught in class through consistent practice.

  • It builds problem-solving skills that are essential for technical interviews and real-world coding tasks.

  • It encourages learning by doing, exposing students to different approaches and best practices from the global coding community.

  • It fosters discipline and a growth mindset by pushing students to tackle progressively harder challenges.

https://www.codewars.com/users/CodeYourFuture/authored_collections

What is a kata collection ?

In order to make sure that you do not have to randomly select katas out of a big ocean of exercises we use the curated collection created by our partner organiseation CodeYourFuture

Find the Collection for this module on the CodeYourFuture account.

Maximum time in hours (Tech has max 16 per week total)

1

How to get help

  • Pair program with a peer or mentor
  • ask for help in your class channel

Remember, after 20 minutes, take a break.

How to submit

Your codewars progress is tracked automatically and is available on the public API. You don’t need to submit it.

How to review

Once you have completed your kata, look at the other solutions in the solutions view. Consider how many different approaches there are.

  • 🎯 Topic Problem-Solving
  • 🎯 Topic Programming Fundamentals
  • πŸ• Priority Mandatory
  • πŸ‡ Size Small
  • πŸ“… Sprint 3
  • πŸ“… Sprint 3
  • πŸ‡ Size Small
  • πŸ• Priority Mandatory
  • 🎯 Topic Programming Fundamentals
  • 🎯 Topic Problem-Solving
10 Sign up for Code in Place πŸ”— Clone

10 Sign up for Code in Place πŸ”—

https://codeinplace.stanford.edu/

Why are we doing this?

Code in Place is a free introductory programming course using the Python language, based on material from the first half of Stanford University’s established intro course, CS106A. It assumes no prior programming experience.

Stanford offers a free, good quality programme to learn the basics of coding. It has a scheduled course, which you should sign up for if it’s open. If the scheduled course is not running, work through the course materials in your CYF study group. The videos and problems are the same either way.

You will learn Python, which we will use later for handling data.

Maximum time in hours

.10

  • 🎯 Topic Programming Fundamentals
  • πŸ• Priority Mandatory
  • πŸ“… Sprint 3
  • πŸ¦” Size Tiny
  • πŸ¦” Size Tiny
  • πŸ“… Sprint 3
  • πŸ• Priority Mandatory
  • 🎯 Topic Programming Fundamentals
Step1: Onboarding πŸ”— Clone

Step1: Onboarding πŸ”—

How to complete module Onboarding?

To complete module Onboarding, you must:

  1. Make a new issue on your own Coursework Planner.
  2. Link to your β€œWireframe to Web Code” and β€œForm Controls” pull requests on your issue.
    • You should include two links, one for each pull request.
    • Your PRs must have been reviewed, and a volunteer must have added the β€œComplete” tag
  3. Submit the issue link to step 1 of ITP on CYF Course Portal.
  4. Apply to enroll as a Trainee.

1. How to Create a New Issue on Your Coursework Planner

πŸ–ΌοΈ

  1. Go to your forked My-Coursework-Planner repository.
  2. Click the Issues tab.
  3. Click the green New issue button.
  4. Select Blank issue from the list
    • If you do not see Blank issue in the list, use Sync fork to update your My-Coursework-Planner repository and try again.
  1. Set the issue title to “Step 1 Submission”
  2. Include the links to your PRs in the issue description. For example:
1. Wireframe PR
https://github.com/CodeYourFuture/Module-Onboarding/pull/PR_NUMBER

2. Form-Controls PR
https://github.com/CodeYourFuture/Module-Onboarding/pull/PR_NUMBER

You can copy the link to your issue from the browser’s address bar. The link will look like this: https://github.com/USER_NAME/REPO_NAME/issues/ISSUE_NUMBER.

Submit the issue link to step 1 on CYF Course Portal.

4. Apply to enroll as a Trainee

Complete the Trainee Application Form.

Notes: - You need to score 100 or higher on a real Duolingo English Test to enroll as a trainee. - If you haven’t received a Duolingo voucher by email from CodeYourFuture, please post a message in the #general channel on the ITP Slack.

Maximum time in hours

0.1 hours

  • πŸ• Priority Mandatory
  • πŸ“… Sprint 3
  • πŸ”‘ Priority Key
  • πŸ¦” Size Tiny
  • πŸ¦” Size Tiny
  • πŸ”‘ Priority Key
  • πŸ“… Sprint 3
  • πŸ• Priority Mandatory
Stretch: collect your self study courses πŸ”— Clone

Stretch: collect your self study courses πŸ”—

Learning Objectives

https://developer.mozilla.org/en-US/curriculum/

Learning Objectives

Why are we doing this?

As you learn with us, you will often use other curricula as well. We encourage you to explore and use quality free resources that are available online. Mentors will most often refer you to MDN and this site also has a free curriculum you can use: MDN Curriculum to work on anything you want to explore more or feel you need more work on. MDN is a high quality resource.

We also make a lot of use of:

Bookmark all these resources now. However, the best way to quickly find help with your programming topic is to search with a specific language and resource as keywords: topic language resource. For example

for loop js mdn

This will quickly take you to a well targeted resource.

You will use many other resources as you progress. Not all resources are equal. Spend fifteen to thirty minutes googling other programming resources now. Pick one you think is valuable and one you think is probably not very useful. Share the links in Slack, explaining how you made your decision. Look at what other people are posting. Do you agree with their evaluations? Why or why not? Comment with your thoughts.

Maximum time in hours

1

  • 🎯 Topic Communication
  • 🎯 Topic Requirements
  • 🏝️ Priority Stretch
  • πŸ‡ Size Small
  • πŸ“… Sprint 3
  • πŸ“… Sprint 3
  • πŸ‡ Size Small
  • 🏝️ Priority Stretch
  • 🎯 Topic Requirements
  • 🎯 Topic Communication