Getting help

Getting help#

Seeking information online is necessary and helpful for programmers of any level. You could even argue that the best programmers are the ones who know how to efficiently find information online.

When encountering an issue, the first question you should ask yourself is: “am I the only person likely to be affected by this problem?”. The answer will be no in 99% of the cases. For these cases, here is a list of recommendations:

  • Stack Overflow is THE place for programming questions. Thanks to community based moderation rules, good questions are more visible than bad ones, and good answers are rewarded. Take a tour of the site’s principles, and look for similar questions before asking your own one.

  • Learn to put the right question into your search engine. Using correct naming (semantics) is one of the objectives of this lecture, and in the end you will hopefully not only write better code, but will also speak the programming language a little better.

  • Use ChatGPT to ask specific questions instead of a web search. As we will see later in the semester, having ChatGPT write (parts of) your code, may not always yield the desired results, but asking specific questions can help you to find solutions to your coding problems.

If every other thing fails (i.e the remaining 1% of the cases), then:

  • Ask a friend

  • Ask your professor

  • Ask a question on Stack Overflow. Before doing so, read what a Minimal, Complete, and Verifiable Example is and try to stick to these recommendations.

  • If you think you discovered a bug, than report it to the library directly. Almost all the scientific python packages are hosted on GitHub: the “issues” tab is where to report bugs. Read the excellent Craft Minimal Bug Reports article from Matt Rocklin before doing so.