Skip to content

Latest commit

 

History

History
341 lines (209 loc) · 8.45 KB

2022-snic.md

File metadata and controls

341 lines (209 loc) · 8.45 KB

class: center, middle

CodeRefinery and SNIC, November, 2022

CodeRefinery and the Nordic perspective

Diana Iuşan

Nordic e-Infrastructure Collaboration/ Uppsala University


Plan for today (10-15 minutes)

- About the CodeRefinery project

- Lessons learned from online teaching

- A look at our survey data

- Nordic research software engineers

- Future plans and challenges


CodeRefinery

.left-column60[ We teach tools and practices for the development of reproducible and reusable research software.

We teach together!

Workshops

  • Since 2016:
    • 31 full workshops
    • 25 other workshops/events
    • 3 instructor training events
    • over 1600 persons trained
  • last 4 workshops: 8 volunteer instructors, over 80 volunteer helpers ] .right-column40[

]

Typical curriculum

.left-column60[

  • Basic and collaborative Git
  • Code review
  • Social coding and open software
  • Reproducible research
  • Jupyter notebooks
  • Code documentation
  • Automated testing
  • Modular code development

All our material is open and CC-BY

We are now in the process of making the lessons citable. ] .right-column40[

3 days on-site in person

Now: 6 half-days online

]


.left-column70[

Staff, hubs, and funding partners

  • 12 persons are on contract (~ 3 FTE/year), funding .emph[until Oct 2021]
  • https://coderefinery.org/about/who-we-are/
  • Major training hubs: Aalto, Stockholm, Oslo, Trondheim
  • .emph[Significant support from volunteer instructors and exercise leads]

We are in a transition period: more about that later

] .right-column30[

]

CodeRefinery: bridging the gap


A vision of reaching many people at once

The first idea... accept everyone, stream for everyone else

A bit later... crazy but genius

.cite[Twitch: live streaming service popular in the gaming community]


Scaling up during 2020: effective team work

  • Before 2020: ~25 participants, ~2 helpers
  • Now: routinely 100+ participants, 20+ helpers
  • Lectures & code-along exercises in the main room: .emph[stream and also record]
  • Get help and group exercises in a breakout room
  • Participants can register as teams (.emph["bring your own breakout room"])
  • Installation sessions and helper preparation sessions
  • Asynchronous Q&A via HackMD -> we publish these (example)

More details


Recent feedback

"I take this chance to congratulate once more for the very appreciated workshop. I really enjoyed all the sessions, this is something I have been looking for for a couple of years now and that I will strongly advertise between my colleagues. In particular, I would like to congratulate you for your professionalism and for having made the most of all the potential of distance learning, without ever complaining about its obvious and unnecessary limitations. The team effort during the classes was impressive. Also, the material available to support the classes is excellent and I am sure I will exploit it in the future."


FAIR software

FAIR principles have many aspects

  • Principles
  • Best practices
  • Policies
  • Standards
  • Governance model
  • Development of tools
  • .emph[Training] (version control, notebooks, documentation, code review, version control for dependencies, licenses, testing)
  • .emph[Mentorship]

Pre-workshop survey: Who comes to our workshops?



Pre-workshop survey: Programming languages


Pre-workshop survey: Version control


Pre-workshop survey: Tests


Pre-workshop survey: Automated testing


Pre-workshop survey: Documentation


Pre-workshop survey: Web tools


Pre-workshop survey: Code review


Post-workshop survey: impact on usage of tools


Post-workshop survey: impact on code quality and collaboration

  • 284 answers


class: center, middle, inverse

What is CodeRefinery?

CodeRefinery's biggest development may not be teaching...

... is it teaching together?


Value of the network and teamwork: success stories

Python course

Research Software Hour

Instructor training

  • 3 instructor training events in one year, co-organized across borders

GitLab hosting for Nordic research software


Nordic research software engineers

  • RSE: "combines professional software engineering expertise with an intimate understanding of research"
  • https://nordic-rse.org/

History

  • 2018: Nordic-RSE network started
  • May 2019: Meetup at NeIC conference
  • Dec 2020: Online conference
  • Jun 2021: Unconference
  • Sep 2021: First annual meeting
  • Autumn 2021: Registering association

Activities


CodeRefinery 2022: .emph[Community project]

Primary tasks

  • Classic "CodeRefinery workshops" with focus on best software practices, organized by partners
  • Own training: both open tracks and sponsored personalized courses
  • Coordinate other shared collaborative training events
  • Train the trainer

Additional goals

  • Continue coordinating Carpentries events in Nordics/Baltic countries
  • Driving/supporting Nordic research software engineers (RSE) network
  • Support professional development of RSEs
  • Improve towards a more inclusive community and better gender balance

Future/challenges

  • Towards a non-profit organization
  • Make it easier for organizations and individuals to join
  • Give .emph[better credit] for volunteer contributions
  • Offer not only training but also mentorship network
  • FAIR software practices survey
  • How to better advertise and reach and connect the community?