Where to go from here
Objectives
Understand when tools discussed in this episode can be useful
Instructor note
10 min teaching/discussion
This episode presents a lot of different tools and opportunities for your research software project. However, you will not always need all of them. As with so many things, it again depends on your project.
Important for every project
Clear file structure for your project
At least consider the possibility that someone, maybe you may want to reproduce your work
Can you do something (small) to make it easier?
If you have ideas, but no time: add an issue to your repository; maybe someone else wants to help.
Workflow tools will maybe make sense in the future
In many cases, it is probably not needed
You will want to consider workflow tools:
When processing many files with many steps
Steps or files may change
Your main script, connecting your steps gets very long
…
When should I worry about dependencies?
Your code depends on multiple other packages
You want to avoid questions like: “What do I need to install to run your code”
You want help yourself running your code
After a few years
On a different computer
…
Containers seem amazing, but do I have use for them?
Maybe not yet, but knowing that you can …
Run Linux tools on your Windows computer
Run different versions of same software on your computer
Follow the “easy installation instructions” for an operating system that is not your own
Get a fully configured environment instead of only installing a tool
Share your setup and configurations with others … can be very beneficial :)