Asking for Help

Asking for help is a fundamental part of how you will learn in CSCI 0145. Do it often. Here is some wisdom on this topic from the Best Cat On the Internet:

In Class

In lecture, please ask questions freely. Just raise your hand and I’ll find a good place to pause for you.

On activity days, start by asking your group members. If you’re all stuck, then go ahead and raise your hand for a tutor or me. We’ll be right with you!

Outside Class

For questions on Campuswire, in tutoring, and in Student Hours, our expectations are that you will prepare to ask for help. This has two purposes:

  1. The very process of preparation will help you learn. You might even find that in the course of the preparation process you were actually able to resolve your question.
  2. When you’re prepared, our conversations can be efficient and productive.

When asking questions to me or the tutors, you should usually expect us to start with a question of our own:

What have you tried so far?

This question has two functions. First, it helps me understand where you are and how I can most effectively help you. Second, it reminds you to take steps to support your own independent learning prior to approaching me. Here are the steps that I expect you to follow in some of the most common cases:

For conceptual questions:

  • Make a reasonable effort to review relevant readings ahead of time.
  • Formulate your question in as precise and specific a way as you are able.
  • If applicable, find an example that illustrates your question.

For programming questions:

  • Formulate the task you are attempting to accomplish as precisely and specifically as possible.
  • Write down a few concepts, functions, data structures, or other ideas that seem like they might be relevant in this problem.
  • Get as far as you can on the problem using the tools available to you. Make sure you can carefully describe what you did and why it seems like progress toward the goal.
  • Be prepared to explain approaches what you have already tried when speaking with me or a tutor.

A meme showing Gru smiling evilly while revealing a plan, in four panels. In the first panel, he shows a card reading “We identify the bug in our code.” Second panel, the card reads “We change our code to fix the bug.” Third panel: “Now we have two bugs.” Final panel: “Now we have two bugs,” as Gru looks at the card in dismay.

If you are debugging and encountering an error message:

  • Read your error message and do your best to understand what it means.
  • If you’re not sure how to interpret your error message in the context of your task, try Googling the message and reading some of the resulting answers.
  • If you’re still stuck, try to construct a minimal reproducible example or reprex. Sometimes, just the activity of creating a reprex will help you solve your problem. However, if you’ve created your reprex and you’re still stuck…
  • Bring your error message and reprex to tutoring or to Student Hours, or post it on Campuswire.

If you are debugging and not encountering an error message:

  • Make use of Thonny’s debugger to step through your program.
  • Identify the first point at which something is clearly wrong.
  • Develop at least one hypothesis about the source of the error, and test that hypothesis.
  • If you’re still stuck, try to construct a minimal reproducible example or reprex. Sometimes, just the activity of creating a reprex will help you solve your problem. However, if you’ve created your reprex and you’re still stuck…
  • Bring your reprex to tutoring or Student Hours, or post it on Campuswire. Make sure to clearly state both the expected behavior and the actual behavior of your program.

If You’re Really Stuck

Maybe you’re working on an assignment, you’re stuck, and you don’t have time to get help before you turn it in. This isn’t a great scenario, but it happens to all of us every now and then. If you find yourself in this situation, please include some comments in your assignment describing where you got stuck, what you tried, and what you would have done if you had more time. We’ll take your comments into consideration when assessing your work.



© Philip Claude Caplan, Andrea Vaccari, and Phil Chodrow, 2022