Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Intro to Debugging Roundtable Activity

Activity Workflow

Work together with your group in breakout rooms to identify and fix the bugs in this codebase.

One-Time Activity Setup

Choose one teammate to execute the following steps just once at the beginning of the activity:

  1. Navigate to the folder where you wish to save activities. This could be your projects folder, or you may want to create a new folder for all of your activities.

    If you followed Ada's recommended file system structure from the Intro to Dev Environment lesson in Learn, you can navigate to your projects folder with the following command:

    $ cd ~/Developer/projects

    Or, if you want to create a new folder for all of your activities:

    $ cd ~/Developer
    $ mkdir activities
    $ cd activities

    If you've already created an activities directory, you can navigate to it with the following command:

    $ cd ~/Developer/activities
  2. In Github click on the "Fork" button to fork the repository to your Github account. This will make a copy of the activity in your Github account.

  3. "Clone" the activity into your working folder. This command makes a new folder named for the activity repository, and then puts the activity into this new folder.

    $ git clone <clone_url_for_the_activity>

    The <> syntax indicates a placeholder. You should replace <clone_url_for_the_activity> with the actual URL you'd use to clone this repository. If you click the green "Code" button on the GitHub page for this repository, you'll see a URL that you can copy to your clipboard.

    Use ls to confirm there's a new activity folder

  4. Move your location into this activity folder

    $ cd errors-and-debugging
  5. Create a virtual environment named venv for this activity:

    $ python3 -m venv venv
  6. Activate this environment:

    $ source venv/bin/activate

    Verify that you're in a python3 virtual environment by running:

    • $ python --version should output a Python 3 version
    • $ pip --version should output that it is working with Python 3
  7. Install dependencies once at the beginning of this activity with

    # Must be in activated virtual environment
    $ pip install -r requirements.txt

    Not all activities will have dependencies, but there will still be an included requirements.txt file.

Summary of one-time activity setup:

  • Fork the activity repository
  • cd into your working folder, such as your projects or activities folder
  • Clone the activity onto your machine
  • cd into the folder for the activity
  • Create the virtual environment venv
  • Activate the virtual environment venv
  • Install the dependencies with pip

Activity Development Workflow

  1. When working on this activity, ensure that your virtual environment is activated:

    $ source venv/bin/activate
  2. If you want to work on another project from the same terminal window, you should deactivate the virtual environment when you are done working on this activity:

    $ deactivate

After the project has been set up, work together to identify and fix the bugs.

The code in main.py invokes functions written in logical.py, runtime.py, and syntax.py. We'll run into bugs when we execute the code in main.py is executed.

  1. Check that you are in the root of the project directory. If you are unsure if you are in the root of the directory, execute the command pwd in the terminal. If you followed our suggested directory structure and are in the root of the project directory, the command should print out something like:

    ~/Developer/activities/errors-and-debugging
  2. To execute the code in this repo, from the root of the project directory, execute this command in the terminal python main.py

  3. Observe how Python reports the error in the stack trace. Make sure to work through the issues together using VS Code’s LiveShare or Zoom screen sharing!

  4. Pay attention to

    • File names
    • Line numbers
    • Error type
  5. Before fixing each error:

    • State what the error is
    • Hypothesize the cause of the error
    • Propose a fix

NOTE: DO NOT edit any of the functions that start with test_ in their names.

If you finish early, use this time to discuss your strategies for debugging together!

  • Potential discussion questions:
    • What have you tried in the past?
    • What worked well for you?
    • What strategies do you want more practice in?
    • How do you plan to incorporate them?

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages