Home
Digital Lab
Summer School

Collaborative Software Development School

Are you an early career researcher who want to use digital methods but not sure how to get started? This summer school is a great opportunity to learn about approaches and best practices in research software development in an interdisciplinary setting with many hands-on exercises.

Deltakere som jobber under sommerskolen
Photo:
UB/Svein Arne Selvik

Main content

Description

What comes next once you're comfortable with the syntax of a programming language or two, and have written some small programs for yourself? Once a project grows to a certain size, factors beyond the immediate programming task take more and more time, and the social aspects of software development become more important.  

The aim of the Collaborative Software Development School is to give an introduction to topics that go beyond the initial knowledge of reading and writing code. How do you design programs that are modular and reusable by others? How can libraries in different languages be used together? What are tools that can help in documenting and testing code? How can development and releases be managed in group projects with multiple authors and multiple users?  

In a mixture of talks and many hands-on sessions we'll try to address this next step. In the second week of the summer school, you will work in small groups on designing and writing a new project from scratch, giving you direct experience of having to rely on other people’s code.

Topics

  • Effective collaborative development 

  • Version control tools; Release cycles 

  • Useful documentation for different audiences; User interactions 

  • Testing and debugging; Continuous integration 

  • Profiling and optimization 

  • Mixing programming languages 

  • Copyright and licensing   

Prerequisites

The programming language for the examples will be Python. When registering, participants with little previous experience with programming are asked to register their interest in a voluntary digital introductory course in Python (via Zoom) in advance of the summer school (more information about the introductory course to come). Participants connected to the University of Bergen can alternatively take the subject DIGI111 Algorithms and programming or participate in the Software Carpentry course in April for an introduction to Python. Participants with other programming language backgrounds are also welcome to participate, and will be able to benefit just as much from the summer school.

Learning outcomes

After this workshop the participants will be able to identify challenges related to developing software in a group. They will be able to use tools and techniques to make this process easier. The transdisciplinary setting will also train presentation and communication skills and promote cross-domain collaborations.

Practical information

The summer school is a collaboration between the Digital Lab at the University if Bergen Library, the Institute for informatics and the discipline of Digital Culture at the University of Bergen. The summer school is conducted with external funding from Digital Life Norway Research School. Members of Digital Life Norway have the opportunity to apply for a travel grant for participation in the summer school (contact the coordinator for the Digital Lab if this applies to you).

Participants are expected to attend all 10 days. Teaching takes place between 9-16 every day except the first and last day. In the second half of the workshop, you will work in small groups on a project that you will present on the last day.  

Participation at the summer school is free, but in case of a late non-medical cancellation we reserve the right to bill you 2500 NOK for lunch and related costs which we need to pre-book. The concept of the school and especially the group work aspects rely on all participants being able to take part for the full length of the school.

Notice that the summer school is limited to approximately 25 participants. Registered participants who have been admitted will be notified of this latest at the beginning of May 2024. Follow this link to registrate for the summer school.

Contact

If you have any questions about the summer school, please contact us.