Chapter 5 Coding

In case you analyze empirical data, you are free to choose between programming in either Python or R. Please note that your supervisor is not responsible for debugging code with you, neither for teaching you about coding concepts.

5.1 Learning & Debugging

There is an abundance of online resources for learning how to code efficiently. Errors can (mostly) be debugged by consulting Stackoverflow. Please debug errors by searching for the error first. Keep in mind that coding is a learning process. It is therefore natural to encounter errors and spend time debugging your code. Only contact us if you are entirely stuck and have unsuccessfully exhausted all possible solutions that the search engine of your choice presents.

5.2 Standards

Make sure that your code is executable and follows the Python Coding Standards. Writing clean code in compliance with the standards will positively affect your grade. Depending on the editor that you are using additional extensions might be available that automatically check for deviations from the coding standards. This is especially relevant if you plan on coding a (future) project with multiple people. Sticking to the coding standards will therefore allow others to understand and follow your code easily.

5.3 Version Control

If you are working empirically, it does make sense to employ a Github repository to track changes and recover preceding versions of your code. You can also share the repository with your supervisor.

5.4 Submitting Code

We will also require you to submit your code if existent. Therefore ensure you comment your code properly and aggregate it to be comprised within a small number of relevant files (please do not submit 10 separate coding files!).