SC2.12 | Good Programming Practices for Research: Essential Rules for Efficient Programming
Good Programming Practices for Research: Essential Rules for Efficient Programming
Co-organized by CR8/ESSI6
Convener: Karolina Stanisławska | Co-conveners: Haraldur Ólafsson, Jack AtkinsonECSECS, Marion Weinzierl

Better software leads to better research, and code is read far more often than it is written.
Writing code that is clear, maintainable, and easy to adapt not only improves long-term (re-)usability, but also reduces cognitive load and bugs, leaving more time for scientific research.

Many researchers want to write better software, but don't know where to get started learning the tools or skills to do so. This short course introduces essential software engineering practices, covering aspects like:

Code structure
- Naming
- Smaller units/functions

Environments and dependency management

Code styling and standards
- Coding standards and best practices (through Python PEPs)
- Formatting and static analysis tools
- IDE Tooling and integration

Unit testing

Documentation
- Comments
- Docstrings
- READMEs

Through real-life examples and demonstrations, we will explore how to transform code from convoluted to comprehensible.

The session will combine lecture, demonstration and discussion, giving participants the opportunity to share their own challenges and exchange insights with fellow researchers.

The session will be led by computer scientists and research software engineers experienced in software development, who work principally with and for research projects. We welcome engaged participants of all backgrounds and abilities who want to improve their software skills in research and discuss with others how to apply them in their work.

Please check your login data.