Programming Formalisms

This course aims to give life scientists, bioinformaticians, and other scientists with some experience in programming and scripting an understanding of the underlying principles of software development, design, and programming. The course aims to strengthen the understanding of more advanced programming concepts, ability to produce more reusable scripts through modular programming and to enable a better understanding of how to evaluate a script or programs performance.

We will cover an introduction to Algorithms and Data structures, Programming Paradigms especially structured and object oriented programming and to give a overview of other paradigms like functional programming. Modular development and (code) reusability, testing and optimisation.

We will cover theory with bridging practical examples and applications to enhance the theoretical understanding of the principles.

Recommended knowledge of Git and programming in Python, or equivalent, of either NBIS/ELIXIR-SE Tools for Reproducible research or
https://coderefinery.github.io/2023-09-19-workshop/ (material still available).
We assume familiarity with python at least equivalent of the python part of the UPPMAX introductory course or Python programming with applications to bioinformatics https://uppsala.instructure.com/courses/85913.

Please view this page about recommended setups.

When: April 22-26, 9:00-16:00
Where: Online (Zoom). The link will be sent to registered participants prior to the course.
Online on-boarding: April 18, 11:00-12:00. View the recommended setups before!

Registration form

The course material may be found here.

Last modified: 2024-03-19