🏷️ backlog

Module-JS1 πŸ”—

[TECH ED] Watch the VSCode Debugger Video πŸ”— Clone

https://code.visualstudio.com/docs/introvideos/debugging

Why are we doing this?

🧰 We are building a toolkit to help us write great software. In our toolkit we are collecting skills with:

πŸ“ Specifications, like user stories, acceptance criteria, and Given/When/Then
Help us understand what to write and check we’ve written the right thing.

πŸ§ͺ Tests, like unit tests and assertions
Help us break down our problems and check our solutions work even when we change things.

πŸ’¬ Asking questions
Helps us formally reason through our problems and identify gaps in our mental models.

πŸ€–Playing computer
Helps us reason about code with a mental model.

🦺 Audits, like Lighthouse
Help us identify performance and quality improvements we can make to our code.

And now we can add debuggers to our toolkit.

πŸ› Debuggers are tools that help us find and fix problems, or “bugs”, in our JavaScript code. They let us step through our code line-by-line while it runs to see what is happening. This helps us find the place where our mental model of the code is different from our implementation. Your browser has a debugger and so does VSCode.

Key reasons we use debuggers:

  • See what’s happening inside functions
  • Check if variables have expected values
  • Pause execution and step through slowly
  • Find exactly where mistakes happen

JavaScript debuggers give control over execution flow to methodically test and fix bugs. Watch the first four minutes of the video and then explore the VSCode Debugger on your machine.

Maximum time in hours

.5

How to get help

AI can help you here. Code along with AI so it has the context and ask it when you get stuck. Use this starting prompt:

Act as a friendly, supportive, knowledgeable programming mentor. I am learning the debugger in VSCode.Talk me through the interface step by step. Provide a simple example of a Node script with a bug in it and walk me through finding the bug by setting breakpoints with the debugger. Don’t tell me what the bug is. When I get stuck, answer my questions in CEFR B2 English meant for an adult professional speaking in a second language. When I ask for hints, give me useful pointers. Say okee dokee if you understand and begin your walkthrough.

Remember to use careful prompting when you don’t understand, so you get real learning out of the exchange. Say things like:

The execution is paused and it shows me that i is undefined and this is undefined, but I don’t understand why it says that. Can you explain this to me?

And remember you should always ask your friendly humans in Slack when you get really stuck. This coursework will be set again in later modules, so if it’s beyond you right now, you’ll pick it up later.

  • 🎯 Topic Communication
  • 🎯 Topic Requirements
  • 🎯 Topic Testing
  • 🏝️ Priority Stretch
  • πŸ¦” Size Tiny
  • πŸ“… JS1
  • πŸ“… Week 4
[TECH ED] Check module success criteria πŸ”— Clone

https://curriculum.codeyourfuture.io/js1/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
[TECH ED] Complete week 4 exercises πŸ”— Clone

The exercises and challenges for this week are located in the module repo: https://github.com/CodeYourFuture/Module-JS1 inside the week-4 directory. Ensure you read the readme.md first to figure out what to do.

Why are we doing this?

These challenges are designed to develop your problem-solving skills.

Maximum time in hours

6

How to get help

Share your blockers in your class channel
https://curriculum.codeyourfuture.io/guides/asking-questions/

How to submit

  1. Fork to your Github account.
  2. Make a branch for this project.
  3. Make regular small commits in this branch with clear messages.
  4. When you are ready, open a PR to the CYF repo, following the instructions in the PR template.
gitGraph
    commit id: "start"
    branch feature/week-4-exercises
    commit id: "skeleton page code"
    commit id: "Fonts and colours"
    commit id: "mobile layout"
    commit id: "lighthouse audit revisions mobile"
    commit id: "desktop layout"
    commit id: "lighthouse audit revisions desktop"
    checkout main
    merge feature/week-4-exercises

There are several projects in this repo. Make a new branch for each project.

  • πŸ• Priority Mandatory
  • πŸ‚ Size Medium
  • πŸ“… JS1
  • Week 4
[TECH ED] Prepare for live session πŸ”— Clone

https://curriculum.codeyourfuture.io/js1/sprints/4/prep/

Why are we doing this?

It is essential to start learning new concepts and ideas before Saturday’s session. During the week, we expect you to get stuck and form questions about the new content so you can address misconceptions during Saturday’s session. The prep work here will introduce you to the new concepts for the week.

Maximum time in hours

3

How to get help

Share your blockers in your class channel
https://curriculum.codeyourfuture.io/guides/asking-questions/

  • :brain: Prep work
  • πŸ• Priority Mandatory
  • πŸ‚ Size Medium
  • πŸ“… JS1
  • Week 4
[PD] Giving feedback on the e-mails πŸ”— Clone

Coursework content

In pairs, within your groups review 1 of the 3 written emails. Provide objective feedback and actionable improvement points for either person’s English or content itself. You can do this in person or via a call. Later send it in writing to your peer.

Estimated time in hours

1

What is the purpose of this assignment?

To learn how to give feedback in person and writing.

How to submit

  • Share the link to your written feedback as a comment on this issue
  • Share a screenshot of it, too, on this ticket.

Anything else?

  • 🏝️ Priority Stretch
  • πŸ‡ Size Small
  • πŸ“… JS1
  • Week 4
[PD] Ask a good question for real πŸ”— Clone

Coursework content

You need to practice any skills to get good at them. Your homework is to ask your cohort a β€œGood Question” on the Slack channel when you next have a genuine issue you need help with.

Remember:

  • Identify one problem at a time to ask about
  • Say what research you’ve already done to try and resolve the problem yourself
  • Be specific about the problem
  • Be polite and respectful of the person you are asking.
  • Be concise (minimal reproducible example) - only give the relevant code snippets or errors messages
  • Choose who to ask based on their general expertise, availability, distance from you in the team or who you haven’t asked before.
  • Refer to documentation, other code, and discussions with specific links.
  • Show what happens when you try your solution.
  • Explain what you expected or wanted from your solution.

When others post their good questions, give them feedback on how good they are, along with any constructive feedback on how they might improve. And if you can, answer their question!

Estimated time in hours

1

What is the purpose of this assignment?

Consolidates learning via a plan to practice asking a good question the next time you are stuck.
Trainees can evaluate the questions others ask and give answers if they know.

How to submit

  • Add the screenshot of the good question you posted on the Slack channel to this issue
  • Respond to others’ questions with a thumbs up for β€œWell written question” and add comments on what you liked about the question and any suggestions for how the question can be further improved. Share the screenshot of your reaction or comment on this ticket.
  • You can also answer other people’s questions if you know the answer!

Anything else?

How to ask good technical questions
How to ask good questions - Julia Evans
Don’t ask to ask

  • πŸ‡ Size Small
  • πŸ”‘ Priority Key
  • πŸ“… JS1
  • Week 4
[PD] Writing a meeting request email πŸ”— Clone

Coursework content

Write 3 meeting request emails for 3 different scenarios:

  • Booking a meeting and giving it context/agenda
  • Disagreeing with a team member’s idea
  • Come up with a scenario that is relevant to you and you’d like to practice for it

Keep in mind: max 3 grammatical errors for all 3 emails.

Estimated time in hours

1

What is the purpose of this assignment?

To learn how to write a professional email.
To learn how to effectively communicate via email.

How to submit

Share the link to the Google doc with your email scenarios as a comment on this issue. Make sure the doc can be commented on by anyone.

  • 🎯 Topic Communication
  • πŸ• Priority Mandatory
  • πŸ‡ Size Small
  • πŸ“… JS1
  • Week 4
[TECH ED] Code review πŸ”— Clone

Why are we doing this?

Learning to read and review other people’s code is a key skill for a developer. When you join a new team, you will usually also join an existing codebase, and you will need to be able to read it. If you’ve never looked at code written by other people, you will find this really challenging (it’s already hard!).

  1. Ask for a code review from a colleague on your Module-JS1 coursework
  2. Complete a code review for a colleague on their Module-JS1 coursework.

Maximum time in hours

1

How to submit

Link the PR you reviewed on your copy of this ticket. Paste the url in comment on your ticket.

  • πŸ• Priority Mandatory
  • πŸ‚ Size Medium
  • πŸ“… JS1
  • Week 4
[TECH ED] Codewars πŸ”— Clone

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

Why are we doing this?

Every week you need to complete at least three kata. Spend at least 20 minutes, three times a week, on your kata workout.

Find the Collection for this week on the CodeYourFuture account.

Take some time to check your levels. Before you are accepted on to a Final Project on the developer track, you need to complete the Final Projects collection and reach a Level 5 kyu in Codewars. Are you on track to reach this standard? Have you run a study group to work on kata? Have you reached out on the #cyf-codewars channel? What is your plan to meet this goal?

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

1

How to get help

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 Code Review
  • 🎯 Topic Problem-Solving
  • 🎯 Topic Programming Fundamentals
  • 🎯 Topic Requirements
  • 🎯 Topic Time Management
  • πŸ• Priority Mandatory
  • πŸ“… JS1
  • Week 4