--- title: CodeRefinery kick-off 2022 tags: Events --- # CodeRefinery kick-off 2022 - This is an information and collaboration page for CodeRefinery kick-off 2022. We compile this to a blog post or something later. - This page: https://hackmd.io/@coderefinery/kickoff2022 ## Registration Please add yourself here if you plan to attend in-person: - Radovan - Richard - Matias - Stephan Smuts - Thor - Johan Hellsvik (PDC, KTH) - Diana - Pauliina - Mikko - Jarno (May need to leave by 15) - Thomas (will be a bit late on Friday) - Bjørn - Dhanya - Samantha - Tomasz - Enrico (May need to leave by 15:30) - Juho - Teemu - Vilma (only on Thursday) - Sabry Razick - join over video Joining steering-group meeting over video: - Vigdis - Lars ## Meeting room - https://usefulaaltomap.fi/#!/select/dipoli-1.078 - Aalto University campus, Dipoli building, Address="Otakaari 24, 01250 Espoo, FINLAND". Room "Takka". - Room reservation is from Sep 1 (10:00 EEST) to Sep 2 (18:00 EEST) ## Remote participation - Zoom connection for remote participants: https://uit.zoom.us/j/68970361730 - Add comments to HackMD and we will see - Turn on video and we will see you and acknowledge for talking ## Travel Helsinki airport. Assume 1.5 hours from plane arrival to being at the room by public transit (worst case, in practice 1h is possible). Ferries from Stockholm arriving that morning will get you there on time. The [HSL app](https://www.hsl.fi/en/tickets-and-fares/hsl-app) will route you and sell you a ticket an the same time. It knows the destination "Dipoli" since it is OpenStreetMap based. Generic instructions: "Aalto-yliopisto / Aalto University" metro station. ABC ticket from the airport, AB ticket from city center, ticket machines on platform, same ticket for metro, tram, train, bus, etc. ## Travel reimbursement Project staff members reimburse travel with their home institutions who then send an invoice to NeIC. In doubt please ask RB. ## Accommodation - There are two nearby hotels: "Radison Blu Otaniemi" (full hotel) and "Aalto Inn" (right next to it, apartment-style). Both are a few minutes walking from the venue. **Radison Blue is the default choice for visitors.** - Any hotel in downtown Helsinki is a 11 minute metro ride away. ## Focus - Sustainability - Cooperations, dedicated workshops, etc. - Onboarding and welcoming new and prospective partners ## Agenda (please suggest agenda points) All times are in EEST. ### Dinner, day 0 (31.august) - 18:30 in Nuuksio - See https://hackmd.io/@coderefinery/2022-kick-off-grilling ### Thursday, Sep 1 - 10:30 - 11:30 : Steering group meeting (only steering group members) - 11:30 - 11:45: Meet outside the room (Takka). - 11:45 - 12:45 : Lunch - Primary spot: restaurant upstairs - Backup spot (if very long queues): Mau-kas @ 60.1828, 24.8278 (5 min walk) - 13:00 - 13:10 : Opening words (Tomasz) - collaboration with other NeIC projects, expanding range of workshops. GPUs in particular. - RD: workshop as a service, for other experts with certain knowedge? - 13:10 : Intro round - Dinner plans - how many and time? - schedule adjustments, if any? - 13:10 - 13:30 : [Thoughts, reflections, plans, dreams](https://cicero.xyz/v2/remark/github/coderefinery/presentations/main/kick-off-phase-3.md/) (Radovan) - What kind of credits could be given to retain helpers and other? - formal entry into a CV? - monetary credit? e.g. gift card - I actually don't think that this would be a big motivation. - Potentially simple certificate by Coderefinery? - RD: when we are so informal and don't even define what it means to be a helper, it's hard to give credit. :+1: - I personally don't like it but I have seen publications with all helpers+instructors listed as coauthors (https://pubmed.ncbi.nlm.nih.gov/33932337/) - Actually we could do publications on our course approach, setup etc pp... But that's again something where stuff needs to be written. People could become co-authors if they want and do contribute a small paragraph about their experience? - EG: Have a CR experience as part of formal pedagogial training in co-operation with learning services at uni (e.g. 1 credit of pedagogical studies, in Finland one needs 60 credits to complete pedag studies) - CR swag: tote bag, pins, patches - RD: I guess it's especially hard to take ownership of something when it's brand new and no one even knows how it should be done - project plan phase 3: https://coderefinery.org/about/reports/phase-3-project-plan.pdf - we need to decide what our focused, measurable goals are and *communicate* it - do we even know now? - Important points/ideas in a meeting could be used to start discussions on Zulip. Keep them active, and if implentable assign responsible person, and potentially helpers? - EG: would different "customers/users/audience" require different goals? Who are our target users? Strategy for approaching a new researcher is different than giving a dedicated on-demand training to a PI+their team. - Credit for exercise leaders plan?: - If you are on website, you can put "CodeRefinery Exercise Leader" on your CV - To be on website, you should: attend onboarding and install time, be there 5/6 days - new coderefinery.org page for exercise leaders - ~~13:30 - 14:00 : Workshop planning (core workshops and dedicated workshops)~~ - moved tomorrow - 14:15 - 14:35 : AI in the humanities - developing practical courses (Stephan) - EG: could these "case studies" be part of a collection of coderefinery blog posts? or in general "recipes for cooking", e.g. in this case they might have made a nice conda environment and that could be shared, and there are many tools/recipies (git pr, singularity conda, git calendar, etc) that could be indexed and listed...? - EG: although git-pr is under NordicHPC, but still it could get an entry in a blog post for increased visibility + findability - EG: collection of blog posts can become a book (which can incentivize post writers as they can have a book in their CV) - RD: Somehow makes me think of "describe what you are doing without using any words invented in the last 20 years". This concept helps to explain to other audiences? - Academic discipline of workshop participants: https://github.com/coderefinery/pre-workshop-survey#academic-discipline - What can CodeRefinery refine from this? - RD: what is the role of RSEs here? ML experts <-> RSEs <-> other domains? Learn by co-working. Can anyone even learn everything they need? - Are the current courses suitable for humanities researchers right now? Do we think that is even possible? - Would some "Is this course for you"-pages with examples from different disciplines help to encourage diversity? - What could be an idea: Essentially have a template course with generic information, and individualise for different disciplines? PRoviding "MAchine learning for the humanities", "Machine learning for sciences"... - JL: Maybe related to the discussion: https://www2.helsinki.fi/en/helsinki-centre-for-digital-humanities/helsinki-digital-humanities-hackathon-2022-dhh22 - Usefulness of micro-content for showing the use - RD: "CodeRefinery official course" or "Official course maintained by partner but shared using CodeRefinery tools"? - RD: also part of importance of RSEs: go from "research code" to "reusable case study which can be explored on mybinder". - EG: yes the reusability of a case study (e.g. with a small example from the case study) would give a starting point for other interested teams - 14:35 - 15:00 : ? (also decide about dinner place/time) - 15:20 - 16:00 : Community, outreach and advertizing events - [Outreach plan and and discussion of the book The New Rules of Marketing and PR](https://coderefinery.github.io/manuals/outreach/) (Richard) - participants and volunteers pay with their time - reaching "clients" via recommendations - Mini Video How-Tos (Load/write certain data. Modify a Pandas df etc?) - What is our goal, exactly? Getting people on the courses or enabling learning in any way we can? I mean, we may not want someone who reads the course pages to come to the course :smile: That could be taken as a failure. - How do we measure enabling learning? Page-Views? - Some sites have a "did you find what you were looking for" question at the bottom of the page. I wonder if those provide useful data. - I somewhat doubt it, since most people will close the page before. But some kind of "timing" analytics might help.... - should we focus our efforts on marketing to future learners or universities/institutes? - maybe universities/institutes - or even Group leaders? They would probably work best for "word of mouth" advertisement. +1 - EG: could we decide one outreach goal tomorrow? Something measurable (X more views, N more retweets, N more participants coming via twitter) and something that can be started fast (maybe making a short video takes time, so tweeting about past videos is faster) - 16:15 - 17:00 : ["NeIC primer": what are the benefits of being part of a NeIC project](https://docs.google.com/presentation/d/1N45wxhWGGUdxwK5UAnUh-ywKeZu0RlUQ/) (Vilma) - How do you actually "become a NeiC Project team member? How would funding work? Would the project need to pay those 25-60% or how does this work?" - NeIC pays your organization + organization funds part. In our case, most paid only by organization. - So are we NeiC team members? - Yes, formally I think we are. though e.g. at Aalto, just who and what does it mean? - Well, e.g. possitbility to attend the All-Hands Meeting, get funding for NeIC conference attendance etc. That's somewhat why I was asking. - NeIC has a brand, can we use it more? Especially to higher levels. - We should make sure we have presentations/etc at all of these NeIC events - NeIC should be mentioned in the new "lesson credits" pages. - Do you have NeIC stickers? - Unfortunately no! After COVID, we're basically out of all marketing material - The link that was in the QR: https://neic.us2.list-manage.com/subscribe?u=8ed6dd23b9e3ff6ee0e135d72&id=a76029aec3 - Twitter: https://twitter.com/NeICnordic - ... - 17:15: walk around the area for those who want? - Dinner at **18:30**: https://www.milannepal.fi/ - meet at 18:00 at Dipoli lobby, and we walk to the restaurant. - ### Friday, Sep 2 #### 09:00 - 12:00 : Discussion topics (add more topics that you would like to discuss or have discussed) - Calendars https://coderefinery.org/calendars/ - You can subscribe and have an updated feed in your own calendar. You need to copy events to your own calendar for your time to appear busy, if you do that. - We don't send calendar invites via email, so you *need* to subscribe to this - How to prevent overlapping events from different partners - to make it easier to share work - One feed that subscribes to the calendars from all other partners. - TODO: Add this to a "joining coderefinery" page somewhere. - Manuals - TODO: Make it findable via website, make a page for "staff" - Sep 5 community call - Discuss - kick-off outcomes - upcoming workshop - onboarding - Might need editing the meeting hackmd: coderefinery.org → Get Involved → Meetings - Workshop planning 2023 - March 21 - March 30 - September 19 - September 28 - set days, 6 day format still good? - EG: maybe git and github related stuff on a single workshop, and then reproducibility+reusability(social coding) on another one which should be expanded with more hands-on (e.g. containers, fixing broken environments, etc)? - But that essentially leaves one course which only shows theory (reproduciility/reusability) or makes the one require the other. - consider offering bonus/satellite days/events where we go a bit deeper in git - but they could become Research Software Hour sessions - twitter poll (both to know and the engagement) - Registration: "can we contact you about future events?" - Podcasts? Looks like that the format is "interview/dialogue/Q&A" - Example from the Alan Turing institute: https://podcasts.apple.com/fi/podcast/the-turing-podcast/id1504860303?l=fi - RSE stories: https://podcasts.apple.com/us/podcast/rse-stories/id1481504497 - RD: "workshop team" and "content team" - Research Software Hour - podcast format? - invite expert - explain some topic - code or code review commentary - lesson commentary - start with in-person hackathon - Certificates - Do we offer Credits/certificates for the Courses? If not, we could potentialy do some exercise offer in the afternoons which we will have a "result" from, that can be used as a basis for handing out certificates? "More in depth exercises" - Do we keep or change the approach we used for March workshop? +1 - The approach was "local contact points who would give out certificates" - Learning diary for each day, git log/results from the day. - should we make instructons for other universities on how to check the diaries? - TODO: new page in manuals under "Workshop roles" that explains evaluation process - add info on certificates to the CR workshop page - Maybe also anonymous examples from the last year about the diary content - Other workshops/events 2022 or 2023 - Python for SciComp re-run Tue-Fri 8-11/November/2022 - mark your name here: - Enrico (communication + coordination) - xxx (streaming + directing) - xxx (teaching topic a, b, c) - xxx (teaching topic a, b, d) - NRIS HPC On-boarding Tue-Thur 18-20/October/2022 - NRIS Best Practices Tue-Thur 1-3/November/2022 - tentative: on-site CR workshop in Uppsala in December - Workflows course (aalto), 1-3/Feb/2023 https://aaltoscicomp.github.io/data-analysis-workflows-course/ - on-demand workshops based on existing materials (Aalto) - The idea is "people sign up and say what they want. When there is a critical mass then we host a workshop on the topic." - remedy for many no-shows - also solves the advertizing part to some extent - and gives us a "pre-workshop survey" of interests - internal calendar at aalto: https://hackmd.io/@AaltoSciComp/Teaching2223 - TODO: ICS aggregator for calendars - Find or make script that gets different ICS feeds from web and makes one ics feed (ics-py)? - GitHub pages schedule for nighly updates - Optional, find a viewer for ICS. Could be javascript something, or could be importing it to Google Calendar and using that to view it. - https://pypi.org/project/merge_ics/ - Should probably label events with source and about hosting organization - Lesson distribution Sep workshop: any adjustments? - Changes to registration process - ... - TP: Registration for Teams and Individuals. People registered via teams should not be registering individually. - TP: Distribute Exercise lead at the end of EL onboarding, calrifying in the onboarding who doesn't have a group, so that they can be registered. - TP: Have a tickable field in the Individual Registration indicating whether one wants to be EL, those will get an onboarding mail. - Indico does not allow same person to submit two "registrations" - We can send onboarding info to everyone anyway - That removes the need for onboarding registration - Some learners might get interested in being an EL - Suggestion: Create a website (more restricted) that has also the zoom-links and HackMD-links and that can be emailed to registrants (or just automatic email after registration) - Then all emails can just be linking to that and notifications about updates - How to keep the website from not being shared to non-registrants? Or is that really a problem anyway? - Install requirements: https://coderefinery.github.io/installation/ - If you can go through the page and make sure it still works, that is good - Any lesson changes have to be reflected here in the next days, before we send it out. #### Break until xx:20 - Lesson development days/hackathon? - Any interest in collaboration on new "meta-GPU" lesson? https://enccs.github.io/GPU-programming/ - MJ: Just asking if this could be a pilot in coordinated joint effort between NCCs - this will be a collaboration with NCC-Lithuania at least. Next week at EuroCC meeting other NCCs might get involved - MJ: can I share this in CSC? - absolutely, but Cristian-Vasile is already informed and interested - DP: [NRIS GPU Tutorial](https://documentation.sigma2.no/getting_started/tutorials/gpu.html) - Run it soon after the event - RB and co: interested in developing workflows/"parallelizing without MPI/OMP" lesson for learners who cannot modify their code +DP, +DI - TP: Is this about array jobs and result collection? Or about single CPU parallelization in different languages? - DI: I was also wondering if gnu parallel or snakemake-like should go in. Job arrays fits great, in my opinion. I'm wondering if there are some other Slurm options that would be helpful. - Provide better "roadmap" on website where we mention/recommend available material and workshops - Community teaching training events and joint listing of courses - Market via local courses - outreach - Twitter - Newsletter - linkedin? : DP - Sustainability and financing models - We need legal advice/consulting - Also how to run organisation - how to get sponsors, apply funding etc. - It is not only about the legal side but also how to onboard and offer leadership opportunities to community members - At the end of the day it will probably be 2-3 core people doing the heavy lifting and we need to provide organizational/financial backing for them - Defining roles, e.g. what is "staff"/"member": is this a good idea? Consider onboarding paths. :+1: - Organisational chart etc. what we saw about NeIC - "Community teaching workshop" - Arrange a event November/December, all the tech-specialists/teachers can come, bring their lessons they want to teach or do teach, and learn about CodeRefinery - Networking between people, find co-teaching - Small group lesson review and design - Learn CR open-source lesson tech, set it up yourself - Learn about livestreaming tech, try it out yourself - Who want to be the chairs (doesn't have to make content themselves): Thor, - advertise this to: NCCs, Nordic HPC centers/application experts, - Basically this: https://coderefinery.github.io/community-teaching/ #### Lunch and afternoon (optional) - 12:00 - 13:00 : Lunch (but no pressure to attend if you need to catch transport) - 13:00 : Official part ends - 13:00 - 18:00 : Room is available for collaboration and blogging Discussion continues... - Outreach to humanities - What is the root problem? CR staff or CR material or CR registrations - What parts of our material are exclusive? - Humanities researchers don't even know of the course, in general - More targeted advertisement - Seminar of case studies, which then motivates the next steps to work with data science people, final message "consider CodeRefinery workshop" - Mini-videos with tools/case studies on website. Can be very specific, even to certain departments - Core question: does material need to be different for different domains, or introduced differently? - We don't necessarily need different material, we could mostly use the same lesson. But it needs to be advertised right, so that the other communities know it's even relevant to them! - Training portfolios targeted to different domains: you know these courses are relevant to you. - https://hackmd.io/@coderefinery/collaborative_course_portfolio - case studies + tools - mini-videos tailored for different communities (humanities, bio, ...) - to create a logical connection between field of research and the CR course material - this may then be [part of] advertisement via the CR webpage, Twitter, YouTube, newsletters - "How to work with someone who is a tool expert, even when you aren't doing most of the work yourself." - "computational thinking" course (link?) - Workshop for new teachers/organizers - https://coderefinery.github.io/community-teaching/ - Should be linked on lessons - Online is better - Don't make it too much about livestreaming - Key take-home message: *You can teach open-source style*, and it works. - Focus areas - Technical introduction to sphinx - Benefits and Models of collaboration - Teaching tools - co-teaching - best-practices - interactive teaching - Some of the pedagogy stuff from [carpentries instructor training](https://carpentries.github.io/instructor-training/) - Lesson design and development (backwards design, version control, etc.) - CodeRefinery summer or winter school - 1 or 2 weeks in a nice location - current material could be supplemented with mini-hackathons / bring your own problem - cover travel/accomodation expenses for participants that need it