π·οΈ backlog
Module-JS1 π
[TECH ED] Watch the VSCode Debugger Video π Clone
Link to the coursework
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 andthis
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
Link to the coursework
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
Link to the coursework
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
- Fork to your Github account.
- Make a branch for this project.
- Make regular small commits in this branch with clear messages.
- 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
Link to the prep material
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!).
- Ask for a code review from a colleague on your Module-JS1 coursework
- 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
Link to the coursework
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
- Join the #cyf-codewars Slack channel
- Read the CYF Codewars docs
- Read Codewars advice from CYFers
- Read Codewars advice from mentors
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