Need help? Resources and more

Are you stuck?

We all get stuck sometimes. Here is the sequence of steps you might follow, although the exact things you do obviously will depend on the task:

  1. Help functions and documentation.

  2. Search Google/Stack Overflow. Stack Overflow in particular is where the programming community asks and answers questions.

  3. Ask your peers by posting an issue in the classmates team

  4. Post your problem as a question on Stack Overflow.

  5. The TA’s email and/or office hours.

  6. My office hours or email. I’ve listed myself last because, although I’m happy to help (I am!), I can’t actually debug for 60+ students.

Asking questions (steps 3-5 above) is an important part of this class! So I’m borrowing the 15 minute rule:

Warning

Once you’ve spent 15 minutes attempting to troubleshoot a problem, you must ask for help!

Which naturally prompts the question of…

How to ask for help (in a way that gets the best answers)

This section applies (especially) to Stack Overflow, our discussion repo, and if you follow this, office hours will be more efficient too. Coders expect other programmers will try the obvious (documentation, and previous Stack Overflow threads) and then follow these tips so the community can answer effectively and efficiently.

Making your question effective is something of an art. To make your question effective, the idea is to make things as easy as possible for someone to answer.

Oh, goodie! 1

The act of writing an effective question and/or minimum working example (MWE) will often cause you to answer your own question!

So, here are the elements of a good question:

A few more tricks to deal with getting stuck

  1. Stop coding! Take a quick break and clear your head.

  2. Get out a piece of paper and map out/outline how to solve the problem using plain words (pseudocode).

  3. Add print statements everywhere (old school).

  4. Use debugging tools.

  5. Clear your head more substantively - go for a run, take a nap, get groceries. Returning to the code with a fresh eye will solve problems more often than you would believe.

  6. Sleep! Coding tired is a sure way to make mistakes.


Resources - tutorials and data

Note

Anything that is bolded/underlined below is also considered essential.

If you have any favorite resources you like, or found helpful, please let me know ()


1

I hope you’re ready for a lot of cheesy writing and bad meme humor this semester.