SyedArslanHaider / Coursework-Planner

Your coursework planner
0 stars 0 forks source link

[TECH ED] Watch the VSCode Debugger Video #140

Closed SyedArslanHaider closed 2 days ago

SyedArslanHaider commented 4 days ago

@SallyMcGrath cloned issue Migracode-Barcelona/Module-JS2#2 on 2024-07-05:

From Module-JS3 created by SallyMcGrath: CodeYourFuture/Module-JS3#249

Link to the coursework

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

Why are we doing this?

For months now we have been building a toolkit to help us write great software. In our toolkit we have:

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

Help 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. You have used a similar program to "step through" code in your prep work.

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

.25

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.