Introduction III

Within the third session we’ll continue with the sections from last week, that is exploring this thing called “the computer” a bit more, specifically one aspect that might seem adjacent to utilizing python within research workflows but is actually a crucial component: computing environments. Don’t worry: this will also entail hands-on programming, just not directly in python. The things covered in this session will introduce central concepts for our subsequent endeavors. For example, also the ones we will cover in the next session, that is jupyter notebooks as a prerequisite for our python endeavors.

Topics 💡👨🏻‍🏫

In the following you’ll find the objectives and materials for each of the topics we’ll discuss during this session.

Computing environments

You might think: “why do we have to talk about computing environments & reproducibility? I just to code.”. Fair enough but as hinted at during the introduction, knowing a bit more about this thing called the “computer” and how your code is run will be tremendously helpful and important going further. The sooner you can utilize the respective tools/resources the better as quite a bit, actually all, of your coding will depend on it. We usually trust our machines to do what we ask them to do and while quite often we get the desired output, there’s a fair chance that the same task will lead to a different outcome on a different OS, using a different version, etc. . However, what outcomes do we “trust” and why does it converge? All of this relates to “reproducibility” and within this section we’ll briefly explore underlying problems and potential (partial) solutions via python.

Objectives 📍

  • get to know problems wrt computational analysis & reproducibility

  • learn about virtualization and its different options

  • experiment with python virtualization options

  • Ask and answer questions

  • Have a great time

Materials 📓

Please download the example script fancy_analyzes.py.

Warning: there will be sounds in the presentation, so might you want to lower the volume on your machine.

tasks for subsequent meeting 🖥️✍🏽📖

None, as we didn’t finish the lecture and didn’t cover the content necessary to conduct the task.