Skip to main content

CodeRefinery

CodeRefinery , launched in the autumn of 2016, is a project which aims to establish a scientific software development e-infrastructure coupled with necessary technical expertise and extensive training activities in order to address the growing needs of computational communities. It is a project within the Nordic e-Infrastructure Collaboration (NeIC), which in turn is an organisational unit under NordForsk.

The training aspect of CodeRefinery focuses on teaching how to efficiently use state-of-the-art tools and practices for modern collaborative scientific software development. Standard CodeRefinery training events are in the form of three-day workshops involving interactive demonstrations, live coding exercises and type-along types of presentations. A diverse range of topics are covered, including collaborative distributed version control, automated testing, documentation, Jupyter Notebooks, tools for reproducible research and how to manage code complexity. All course materials covered in the workshops are open source and available on the project´s lesson page . Most participants are Ph.D. students or postdoctoral researchers from various scientific disciplines, ranging from mathematics and computer science to the physical and biological sciences, engineering and psychology. The ultimate goal of these workshops is to help researchers write modular, reusable, maintainable, sustainable, reproducible and robust software, regardless of their academic discipline, programming experience or preferred programming language.

As a further step towards assisting research groups to migrate from ad hoc in-house software development solutions to state of the art collaborative infrastructures, CodeRefinery has deployed a web-based source code repository platform for Nordic research projects which offers free unlimited hosting of private and public repositories. The platform features components for issue tracking, integrated code review, wiki pages and GitLab Pages. For further information about this service, see coderefinery.org/repository , and visit source.coderefinery.org  to sign up.

The CodeRefinery project will continue to deliver three-day workshops during the coming years. Information about upcoming workshops can be found at coderefinery.org/workshops . In tandem with delivering these workshops, CodeRefinery organizes half-day or one-day events focusing on either training in one particular topic or on general seminars and discussions, bringing together researchers, software developers, CodeRefinery members and application experts. In this way, CodeRefinery aims to contribute to building a Nordic community of users and developers of research software, as well as providing an environment for those people to communicate and exchange their expertise.

Anyone interested in attending any of the CodeRefinery events can get the latest news on the project’s website  or follow @coderefine  on Twitter. Furthermore, CodeRefinery members discuss in the open and you can join us on coderefinery.zulipchat.com : you can listen in, follow certain threads, participate, and influence. Other ways to get in touch or to contribute are listed at coderefinery.org/get-involved .

For further information about and PDC’s activities in relation to CodeRefinery, contact:

Johan Hellsvik
Johan Hellsvik researcher