Skip to content

likeajumprope/RSE_Juelich

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

142 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Research Software Engineering for PhD Students

This is the training respository for the JuDocs course for Research Software Engineering (May 6-9, 2025), online & at the Forschungszentrum Juelich, provided by the Digiatl Research Academy, developed and taught by Johanna Bayer.

This repository is versioned: DOI

Outline (approximate)

Day 1

🗓️ Day 1

Topic Time Duration
Welcome + Introduction: Why are we here? 09:00 – 09:15 0:15
What is a research software engineer?
Setting up a research code project: repository structure, naming, README
Activity 1 (20 min)
09:15 – 10:05 0:50
Break 10:05 – 10:20 0:15
Activities with Git: Theoretical background (30 min)
Activity 2 (15 min)
10:20 – 10:55 0:35
Break 10:55 – 11:10 0:15
Activity 3 (15 min)
Theory and activities: collaborating effectively using issues, branches, forks, pull requests, merges and code reviews
11:10 – 11:45 0:35
Wrap-up 11:45 – 12:00 0:15
Day 2

🗓️ Day 2

Topic Time Duration
Welcome + Introduction 09:00 – 09:15 0:15
Git continued: cloning repositories, command line git
Activity 1 (15 min)
09:15 – 09:45 0:30
Break 09:45 – 10:00 0:15
Introduction to reproducible code, good coding practices and stabilizing your computing environment 10:00 – 10:30 0:30
Activity 2 (40 min): Reproducible code, good practices and stabilizing environment 10:30 – 11:10 0:40
Break 11:10 – 11:20 0:10
Thinking about the user: documentation, packaging, error messages, and more 11:20 – 11:45 0:25
Wrap-up 11:45 – 12:00 0:15
Day 3

🗓️ Day 3

Topic Time Duration
Welcome + Introduction 09:00 – 09:15 0:15
Introduction to testing 09:15 – 09:45 0:30
Break 09:45 – 10:00 0:15
Testing exercise
Activity 1: Testing (40min)
10:00 – 10:45 0:45
Break 10:45 – 11:00 0:15
A very quick introduction to Cx
Activity 2: CI/CD (15min)
11:00 – 11:35 0:35
Wrap-up 11:35 – 12:00 0:25
Day 4

🗓️ Day 4

Topic Time Duration
Introduction 09:00 – 09:15 0:15
Software publication and licenses
Activity 1: Create a license
09:15 – 09:45 0:30
Activity 2: Zenodo 09:45 – 10:00 0:15
Break 10:00 – 10:15 0:15
Brainstorming: What makes a good code project? 10:15 – 10:30 0:15
Group work: pitch prep on “What makes a good code project” topics 10:30 – 11:05 0:35
Break 11:05 – 11:20 0:15
Pitches 11:20 – 11:45 0:25
Feedback, Wrap-up, Farewell 11:45 – 12:00 0:15

All slides can be found here.

Day specific activities and exercises can be found here:

Running examples

Provided examples can be run in Python (Jupyter Notebook + Colab) or Matlab Live scripts (Matlab online). If you'd prefer to practice in your own language of choice, you can install a corresponding kernel in Google Colab.

Introduction to Google Colab

Please find here an introduction to Google Colab (not part of this course)

(C) Johanna Bayer, 2025

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors