Research Software Engineering - Einzelansicht

  • Funktionen:
  • Zur Zeit keine Belegung möglich
Veranstaltungsart Vorlesung/Übung Veranstaltungsnummer
SWS 4 Semester SoSe 2025
Einrichtung Institut für Informatik und Computational Science   Sprache englisch
Belegungsfristen 01.04.2025 - 10.05.2025   
01.04.2025 - 10.05.2025   
Gruppe 1:
     Zur Zeit keine Belegung möglich
    Tag Zeit Rhythmus Dauer Raum Lehrperson Ausfall-/Ausweichtermine Max. Teilnehmer/-innen
Einzeltermine anzeigen
Übung Mo 10:00 bis 12:00 wöchentlich 07.04.2025 bis 14.07.2025  2.70.0.11 Prof. Dr. Lamprecht ,
Müller
09.06.2025: Pfingstmontag
Einzeltermine anzeigen
Vorlesung Do 16:00 bis 18:00 wöchentlich 10.04.2025 bis 17.07.2025  2.25.F0.01 Prof. Dr. Lamprecht 12.06.2025: 
Gruppe 2:
     Zur Zeit keine Belegung möglich
    Tag Zeit Rhythmus Dauer Raum Lehrperson Ausfall-/Ausweichtermine Max. Teilnehmer/-innen
Einzeltermine anzeigen
Übung Di 12:00 bis 14:00 wöchentlich 08.04.2025 bis 15.07.2025  2.70.0.10 Prof. Dr. Lamprecht ,
Müller
10.06.2025: 
Einzeltermine anzeigen
Vorlesung Do 16:00 bis 18:00 wöchentlich 10.04.2025 bis 17.07.2025  2.25.F0.01 Prof. Dr. Lamprecht 12.06.2025: 
Gruppe 3:
     Zur Zeit keine Belegung möglich
    Tag Zeit Rhythmus Dauer Raum Lehrperson Ausfall-/Ausweichtermine Max. Teilnehmer/-innen
Einzeltermine anzeigen
Übung Di 16:00 bis 18:00 wöchentlich 08.04.2025 bis 15.07.2025  2.70.0.09 Prof. Dr. Lamprecht ,
Müller
10.06.2025: 
Einzeltermine anzeigen
Vorlesung Do 16:00 bis 18:00 wöchentlich 10.04.2025 bis 17.07.2025  2.25.F0.01 Prof. Dr. Lamprecht 12.06.2025: 
Kurzkommentar

Bitte beachten: Die Belegung dieses Kurses als Modul INF-1060 ist nur für die BSc-Studiengänge Computerlinguistik und Kognitionswissenschaften vorgesehen.

Teilnehmende aus anderen Studiengängen belegen den Kurs bitte unter einem der Module INF-2090 - Aufbaumodul Informatik I, BVMINF100 - Vertiefung Informatik I, BVMINF200 - Vertiefung Informatik II, INF-7040 - Effiziente Datenverarbeitung für die Naturwissenschaften, INF-DSAM4A - Advanced Infrastructures and Software Engineering A, INF-DSAM4B - Advanced Infrastructures and Software Engineering B, INF-DS-C2 - Data Infrastructures and Software Engineering, GEE-SS06 - Current Topics in ClEWS oder PHY-SS05 - Recent Advances in ClEWS.

Kommentar

Software is vital for contemporary research: The most precious data is worthless without suitable software to process and analyze it. Over the past decade, Research Software Engineering (RSE) has formed as a new discipline to professionalize the development of software for scientific applications.

This course is an introduction to Research Software Engineering. It is intended for students who are already using Python (or a similar programming language) for data analysis, and who want to take their coding and software development skills to the next level. The course covers topics like version control with Git/GitLab, coding standards, development processes, requirements analysis, software architectures and design, testing and error handling, software licensing, software publication and citation, building command-line tools, configurable programs, creating packages, and workflow automation.

The weekly lectures are accompanied by exercise sessions to practice the concepts and techniques discussed. Students will furthermore work on two research software projects during the course, the first individually and the second in an interdisciplinary team. For both, students are invited to bring their own research ideas and problems.

Please join the course on Moodle: https://moodle2.uni-potsdam.de/course/view.php?id=42737

 

The first lecture of the course is on Thursday, 10th April. However, we ask you to go through a number of things before that, and visit the labs on 7th or 8th April if necessary:

  1. Software to install: We will need a number of software tools in the course, so you should make sure to have them installed and running before the first lecture. Please follow the instructions at https://se-up.github.io/RSE-UP/chapters/install.html to get set up. If you encounter any problems, visit the labs in the first week to get help.
  2. Python refresher: https://se-up.github.io/RSE-UP/exercises/python_refresher.html contains a number of Python exercises that you can use as a refresher, and to check if your level of Python matches the expectations of the course. We highly recommend to do them before the first lecture. If you encounter any problems, please visit the labs in the first week, where sample solutions to these exercises will be discussed.
Literatur

The course uses the textbook "Research Software Engineering with Python" (D. Irving et al., 2021, https://third-bit.com/py-rse/) and selected additional material (provided in the course).

Bemerkung

The course "Forschungsdatenmanagement/Research Data Management" (taught by Prof. Dr. Lucke) complements this course with a focus on how to manage research data professionally.

Voraussetzungen

The course assumes basic programming skills in Python (e.g. as acquired in "Grundlagen der Programmierung") and builds on that. You should be comfortable doing things like reading data from files and writing loops, conditionals, and functions. If you know another imperative programming language well, you can probably manage to pick up enough Python during the course.

Leistungsnachweis

Projects and (written or oral) exam.

Lerninhalte

Learning outcomes of this course include:
- Organize small and medium-sized data science projects.
- Use the Unix shell to efficiently manage your data and code.
- Write Python programs that can be used on the command line.
- Use Git to track and share your work.
- Work productively in a small team where everyone is welcome.
- Enable users to configure your software without modifying it directly.
- Analyse requirements and develop suitable software architectures.
- Organise code in a modular and sustainable way.
- Test your software and know which parts have not yet been tested.
- Find, handle, and fix errors in your code.
- Publish your code and research in open and reproducible ways.
- Create Python packages that can be installed in standard ways.
- Use Make, SnakeMake and other workflow managers to automate complex workflows.

Zielgruppe

Students from all disciplines who have at least basic programming skills (preferably in Python) and want to learn more about conducting research software projects professionally.


Strukturbaum
Die Veranstaltung wurde 20 mal im Vorlesungsverzeichnis SoSe 2025 gefunden:
Vorlesungsverzeichnis
Mathematisch-Naturwissenschaftliche Fakultät
Institut für Physik und Astronomie
Master of Science
Physik (Prüfungsversion ab WiSe 2019/20)
Wahlpflichtmodule
Außerfachliche Ergänzung
INF-DS-C2 - Data Infrastructures and Software Engineering  - - - 1 offens Buch
Institut für Informatik und Computational Science
Master of Science
Data Science (Prüfungsversion ab WiSe 2018/19)
Elective Modules - Advanced Module
INF-DSAM4A - Advanced Infrastructures and Software Engineering A  - - - 2 offens Buch
INF-DSAM4B - Advanced Infrastructures and Software Engineering B  - - - 3 offens Buch
Compulsory Modules
INF-DS-C2 - Data Infrastructures and Software Engineering  - - - 4 offens Buch
Computational Science (Prüfungsversion ab WiSe 2019/20)
I. Kernmodule Computational Science
INF-7040 - Effiziente Datenverarbeitung für die Naturwissenschaften  - - - 5 offens Buch
Bachelor of Education
Informatik (Prüfungsversion ab WiSe 2020/21)
Pflichtmodule
INF-1060 - Software Engineering I  - - - 6 offens Buch
Bachelor of Science
Computational Science (Prüfungsversion ab WiSe 2013/14)
I. Grundlagenmodule Informatik
Software Engineering I  - - - 7 offens Buch
II. Aufbaumodule Informatik
Aufbaumodul Informatik I  - - - 8 offens Buch
Computational Science (Prüfungsversion ab WiSe 2019/20)
I. Grundlagenmodule Informatik/Computational Science
INF-1060 - Software Engineering I  - - - 9 offens Buch
II. Aufbaumodule Informatik
INF-2090 - Aufbaumodul Informatik I  - - - 10 offens Buch
Institut für Umweltwissenschaften und Geographie
Master of Science
Geoökologie (Prüfungsversion ab WiSe 2021/22)
Vertiefungsmodule
Geoökologische Ergänzung
INF-7040 - Effiziente Datenverarbeitung für die Naturwissenschaften  - - - 11 offens Buch
Institutsübergreifende Studiengänge
Master of Science
Climate, Earth, Water, Sustainability (Prüfungsversion ab WiSe 2021/22)
Elective Modules
PHY-SS05 - Recent Advances in ClEWS  - - - 12 offens Buch
GEE-SS06 - Current Topics in ClEWS  - - - 13 offens Buch
Institut für Chemie
Master of Science
Chemistry of Functional Molecules and Materials (Prüfungsversion SoSe 2025)
Wahlpflichtmodule
PHY-SS05 - Recent Advances in ClEWS  - - - 14 offens Buch
Wirtschafts- und Sozialwissenschaftliche Fakultät
Wirtschaftswissenschaften
Bachelor of Science
Wirtschaftsinformatik (Prüfungsversion ab WiSe 2015/16)
Informatik
BVMINF100 - Vertiefung Informatik I  - - - 15 offens Buch
INF-1060 - Software Engineering I  - - - 16 offens Buch
Spezialisierung
BVMINF200 - Vertiefung Informatik II  - - - 17 offens Buch
Humanwissenschaftliche Fakultät
Department Linguistik
Bachelor of Science
Kognitionswissenschaft (Prüfungsversion ab WiSe 2021/22)
Wahlpflichtmodule
INF-2090 - Aufbaumodul Informatik I  - - - 18 offens Buch
Pflichtmodule
INF-1060 - Software Engineering I  - - - 19 offens Buch
Computerlinguistik (Prüfungsversion ab WiSe 2017/18)
Wahlpflichtmodule Informatik
INF 1060 - Software Engineering I  - - - 20 offens Buch