Tools for Scientific Software Development and Data Science

Description

The development of eScience and Data Science across research fields means many researchers have to spend a significant amount of time at their computers. As a consequence, we need to ensure that our skill set and toolbox is up to date and that we can accurately, effectively and in a research-wise justifiable manner conduct our research with a computer.

Who is this course for?

If you in your daily work do any of these:

  1. Process data on a computer
  2. Adapt code and scripts from colleagues
  3. Write code/scripts used by you or your colleagues

then this course is for you.

Objectives

In this course you will learn the practical skills and craftsmanship to increase your day-to-day research productivity and be able to produce scientific software with a high degree of compliance to modern research standards.

Format

Hands-on interactive three-day event with participatory live-coding, demos and presentations. The participants are encouraged to follow and run the same examples as shown during the course. The workshop will contain several smaller practical 5-10 minutes exercises and breaks.

Course structure
  1. Wednesday:
    • Introduction: why are we here?
    • Get efficient with the command line interface (shells: MacOS(zsh), Linux(bash), Windows(Power Shell))
    • Show off your examples with Jupyter notebook
  2. Thursday:
    • Version Control with Git
    • What you need for your everyday work.
    • Be smart: using automatic testing (with examples in Matlab, R og Python)
    • Advanced topics (continuous integration, pull request)
  3. Friday:
    • Get more out of your code: Computational Reproducibility
    • Get more out of your data: FAIR (findability, accessibility, interoperability, and reusability).
    • Work in practice: AAU CPU cloud
    • Work in practice: AAU GPU cloud

We will not teach a specific programming language and will try to keep the
presented material as language-independent as possible.

Prerequisites
  • You will need to bring a laptop with Windows / OS X / Linux.
  • You know the basics of a least one programming language.
  • You can navigate your computer, locate files etc.
  • Read Wilson et. al. “Good enough practices in scientific computing” and start thinking about the presented ideas and to what extend it can be adapted in your work.
We expect that:
  • You actively participate and work on the examples and exercises.
  • You talk to your neighbors and help each other.
  • Ask for help if both you and your neighbors are stuck.
Course project

The course project will contain several elements from the course. Participants are presented with a default project, or can take on a project based on their existing work if they find this option suitable.

ECTS: 2

Participants attending at least 80% of the course and submitting an acceptable course project receives credits.

Lecturers

Special consultant Thomas Arildsen, special consultant Vang Le-Quy, special consultant Tobias Lindstrøm Jensen, and a data management specialist.

Organizers: Tobias Lindstrøm Jensen and Thomas Arildsen

Time: September 9-11, 2020

Place: TBA

Zip code: 

City: 

Deadline: August 19, 2020

Important information concerning PhD courses: We have over some time experienced problems with no-show for both project and general courses. It has now reached a point where we are forced to take action. Therefore, the Doctoral School has decided to introduce a no-show fee of DKK 3.000 for each course where the student does not show up. Cancellations are accepted no later than 2 weeks before start of the course. Registered illness is of course an acceptable reason for not showing up on those days. Furthermore, all courses open for registration approximately four months before start. This can hopefully also provide new students a chance to register for courses during the year. We look forward to your registrations.