# CodeRefinery project meeting at NeIC AHM 2025 :::info - September 22.+23.2025 - Tallinn, Estonia - Full days - Monday starting with lunch (see timetable on registration page (link in e-mail)) - Tuesday is time for project meetings. - Location: Hilton Tallinn Park, Fr. R. Kreutzwaldi 23, Tallinn, 10147, Estonia - Dinner: Platz, Address Roseni 7, Tallinn ,Webpage https://www.platz.ee/en/ - Tuesday zoom room: https://cscfi.zoom.us/my/samwi ::: :::warning - travel costs covered for CodeRefinery team - CodeRefinery steering group can join on own costs ::: Timetable: https://docs.google.com/spreadsheets/d/15s1jJ4Rlgw4pIjGkc4A3adoNQeN_ipInB8EPIZsYS8Q/edit?usp=sharing ## Welcome and practicalities (15min) - Agenda - Notes - Summary :::danger Reminder to answer the NeIC survey: https://forms.gle/as9GNUVYjv1SDvaz5 ::: ## Agenda 9.00 - 9.15 Welcome and practicalities 9.15 - 9.45 Introductions 9.45 - 10.00 Install instructions intro (RD) 10.00 - 10.20 Coffeebreak 10.20 - 11.00 Carpentries and CodeRefinery (with Toby) 11.00 - 11.30 CodeRefinery in the RSE ecosystem 11.30 - 12.00 IPR for projects (main room with Roni) 12.00 -13.00 Lunchbreak 13.00 -14.00 Install instructions hackathon 14.00 - 14.45 KPIs and Impact (with Tomasz) 14.45 - 15.00 Connection to AI Factories 15.00 - 15.20 Coffeebreak 15.20 - 15.55 CodeRefinery MOOC (AM) 15.50 -16.00 Summary ## Introductions (30min) Name, organization, how long in CodeRefinery, daily work besides CodeRefinery - My best meetup/conference experience was...because... - A "value" you think the CodeRefinery community has that speaks to / is important for you (or also one that you think we should have) > **Core Values:** values we are not willing to compromise; **Aspirational values:** Values we don't have yet, but strive for them; **Behavioral values:** minimum expected behaviour; **Accidental values:** common interest/culture (see for example values by other communities: https://www.cscce.org/our-values/ , https://www.hpc-carpentry.org/values/) - NeIC to me is... (and I wish it could be...) - Participants: - Thomas Pfau (online), Aalto University, 3-4 years, Research Software engineer and web dev - Diana Iusan, Uppsala University, 5 years, application expert / RSE, TtT in Stockholm, 2017, gathering people with the same goal and just focus on outcome - Sabry Razick, University of Oslo. First CR workshop was Stockholm Feb, 2017 - Jon Nilsen University of Oslo, 6 years (in CR steering group), section manager for HPC @ UiO and head of operations in NRIS - Andrew Mashchak, Universitet i Tromsø, <1yr, Research Software Engineer / HPC support - Oskar Taubert, CSC, <1year, ML specialist (science support, teaching/workshops) - Yonglei Wang, Linkoping University, 2 years, RSE/Application expert, HPC support, training - Aurélie Vancraeyenest, CSC, RSE - Ashwin Mohanan, RISE, 6 years (on-and-off), Researcher/HPC specialist for the ENCCS project - Bjørn Lindi, NTNU, 9 years, Senioringenør HPC, training and support in NRIS, - Elisa Pierfederici, University of Oslo, Library, potential new collaborator. - Richard Darst, Aalto University, 6-7 years - Jarno Rantaharju (online), Aalto University - Enrico Glerean (online), Aalto University - DeiC: new person appointed by DeiC to work on CodeRefinery4 not yet cleared to participate - Johan Hellsvik (online), PDC - Björn Lindi, NTNU - Ebba Þóra Hvannberg, University of Iceland - Samantha Wittke, CSC - Michaela Barth, NeIC ## Installation instructions update The install instructions are one of the first points of contact with CodeRefinery work. They can make or break someone's participation (and the breaking point can even happen weeks after the install!). They are also useful for people in general setting up for scientific computing. Installation is also very important for general computing work. Everyone has to install some stuff when they start work, and different fields have adopted best practices (= what is most usable for them, and lets their people get started as soon as possible). We should follow those best practices, not invent new things ourselves. Yet, they haven't been re-thought for a while. There are uncoordinated changes to fix problems and update for workshop formats. We can do better, so we will: we'll take some time now to do a complete re-thinking and revision (this is like we did for git-intro at at a Tromso meetup in 2024). The rethinking at is the important part to do at the AHM. The details can be written later. The goals: - For every operating system, think about how beginners, in 2025, are likely to get set up for git and conda. Practical, not pedantic. - Also think of which ways are least likely to go wrong (there's probably overlap with the above, but still, it needs considering). Also, if things do go wrong, how to do it - This may mean less command line than we would do. That's OK: practical, not pedantic. - We should carefully study best practices for every operating system, university-managed computers, etc. How uniform can we make things? How user-friendly? How user-friendly without reading docs about command line stuff? Etc. - For example, in the git-intro revision, we realized that almost everyone uses VScode, and that is a much more usable interface. So we went with that as the default local starting point. It's not perfect, but it's what people would probably learn anyway. Notes: https://hackmd.io/@coderefinery/2025installation-rethink ## KPIs and impact CR now in execution phase: realizing benefits phase Benefits from benefit realization plan: Improved software quality Increased competences Training portfolio Instructor development Introducing RSE to Nordics Community engagement Shared knowledge (Adapted from Elixir impact pathway) - Input - Funding - Personell - Materials - Knowledge base - Activities - Workshops - etc (see project plan) - Output - Numbers - Feedback - Acknowledgements, citations - Materials - Outcome - Skills - Sharing skills - Community building - New projects - Collaboration on training, skillsharing - **Impact** - reuse enabled -> "standing on shoulders of giants" - - ... ## AI factories - Topics/keywords to make CodeRefinery visibly relevant to AI researchers? - Topics for infoboxes in current materials? - Who is interested in working on these? ## CodeRefinery in / Connecting to the RSE ecosystem - As NeIC staff you can do Carpentries training (contact Samantha if interested) funded by NeIC RSE training ecosystem: https://hackmd.io/@coderefinery/RSE_train For researchers: ![image](https://hackmd.io/_uploads/rJC2QqNsex.png) ## Coderefinery MOOC ### What it is and how it looks like? :::info **Demo**: https://sunet.instructure.com/courses/389 (requires sign-in) ::: at least for now. - Possible to be exported and republish in the future. - We can request adding other members to play around ### Who? Who wish to join the "council of the willing"? ![](https://external-content.duckduckgo.com/iu/?u=http%3A%2F%2Fmondocine.net%2Fwp-content%2Fuploads%2F2015%2F11%2Fgalloping_knights1.jpg&f=1&nofb=1&ipt=33dfaa823328bdc1008c63a74aef467081ff3bb0a439a427558e621a7bad3fb6 =500x) Please enter your names: - Diana - ... - ... ### How? ![](https://external-content.duckduckgo.com/iu/?u=https%3A%2F%2Fstatic.wikia.nocookie.net%2Fpenguinsofmadagascar%2Fimages%2Ff%2Ffc%2FPlane_in_All_Hail_King_Julien.png%2Frevision%2Flatest%2Fscale-to-width-down%2F1200%3Fcb%3D20210625132834&f=1&nofb=1&ipt=1f1f604630ea7119237ad54838e59482cfd9c9c165d2643751707c7f675f160d =500x) Break down tasks: - Issues & GitHub (kanban) project How to build a MOOC (and feel free to suggest other ideas): - Find breakpoints to "re-chunk" the courses. For example, see https://github.com/coderefinery/git-intro/compare/main...ENCCS:git-intro-mooc:mooc - Port exercises and quizes into MOOC so that it fits with the unsupervised, self-learning approach. - ... - ... ### When? ![](https://external-content.duckduckgo.com/iu/?u=https%3A%2F%2Ftse3.mm.bing.net%2Fth%2Fid%2FOIP.jtP43e4RHLvVRUa9In7mfQHaEw%3Fpid%3DApi&f=1&ipt=4da29b1281766b76fbf4311a8c1e7acb53f0f1676b8cd64f85224c6748abf1b7&ipo=images =500x) Preferably **before the end of the year 2025**. Either, - Sync via a development sprint 1-2 days, or - Async and self-assign tasks https://github.com/ENCCS/git-intro-mooc ## Summary - Collected some values which will serve as a basis for the CodeRefinery core value statement. Draft will be prepared for discussion. They will in the end be placed on the website. It's a process. - NeIC: Together with Michaela, our new project owner, we will try to bring together NeIC and CodeRefinery more; Nordic-RSE, "staff benefits", communication channels - Connection to Carpentries - CodeRefinery team members can do the Carpentries instructor or lesson dev training via NeIC, contact Samantha if interested - Nordic Carpentries membership in discussion with NeIC for larger access to above training - Metadata needed, standardizing discussion to be started in STarS forum but needs separate funding: Keep your eyes open for opportunities! - For now: When updating lessons: - Check that every lesson has the prerequisites and learning outcomes clearly visible - Check that they are up-to-date with current lesson material and with keypoints - Working group can continue based on "citable lesson work": What would be suitable metadata for us to add in addition to citation.cff, how can we connect our lessons with each other? Interested in this topic -> let Samantha know. - Connection to the rest of the RSE training ecosystem: Make related efforts more findable on the website, discoverable for learners interested in what's next or what's first. Wanna help? - Let Samantha know - Installation instructions: - We generally want to improve them: we'll form a task force - We need to make sure we understand the users needs: check pre-workshp serveys. Do more icebreakers asking about how people work. Add something in the post-workshop survey - We'll try to separete the guide (on course page) from the install instructions (on the current place). Links will be to the `?plain` URL to hide the sidebar. - Comman line - It was pointed out that even though cmd line isn't as user friendly, it is much more stable: less mainenance burden. - We should make it clear to learners that cmdline isn't required (so they won't be afraid to register). While actually secretly using the workshop to introduce it to people. - Instructions should include "blank list" to give to IT department to let them figure it out for you - Installation can become a week 0 lesson where we do it. - The install notes hackmd has info on the various softwares. -> Working group, task force - KPIs and impact: - Nordic infrastructure providers (members of the NeIC strategic committee) are particularly interested in numbers and impact towards their own national userbase - Let's make sure our employers get this info via you, your bosses and your steering group member - One sentence description/name of CodeRefinery workshop for funders: "Good scientific coding", "Intro to reproducible research", please suggest better :) - For sustainability we need to relate impact to benefits, in addition we need to show what is needed to fund our work, "cash the (great) numbers" -> Samantha and Michaela will work on this and present soon - Connection to AI factories: - It seems there is a gap "AI from the perspective of a user" -> Could be something for CodeRefinery to fill, unclear if as part of the main workshop or separate, further discussion will follow - AI Factories can advertise CodeRefinery, but we need to provide the angle as to why it makes sense for the AI factory audience to join - Some of CodeRefinery topics naturally have a space for AI related info boxes (eg sharing/reusing models/weights etc) -> to be identified and filled by our AI professionals in the project (please identify yourself :) ) - MOOC - Why MOOC over workshop? (some comments from meeting) - Less time dependent - Platform for discussion - Immediate feedback on exercises/quizzes - Progress tracking - Further discussion and research into platform needed - ENCCS: Test Canvas instance from Sunet (not free!), trial content is portable! - Materials can stay connected to general CodeRefinery lesson pages via embedding (and fancy HTML comments to exclude "live course features") - Exercises need adaptation to MOOC style - Videos with not directly lesson related content (but topics that help understanding, like interviews, motivation) - Join the working group by informing Ashwin/Samantha - IPR presentation and discussion: - We need to adjust Copyright for our materials: Currently "CodeRefinery contributors" with contributors mentioned in CITATION.cff -> "CodeRefinery contributors and funding organisations" (or something along those lines) - Some of our social coding materials needs small updates wrt legal world -> We will organize a session with Roni to go through social coding lesson as well as any other legal questions we may have. Informed separately -> Tue 30.9