Welcome to the URSSI Summer School on Research Software and Open Science¶
Overview¶
- Revisit logistics + tools
- Provide motivation for this school
- Introductions + Icebreaker
Summer School Details¶
Useful Links¶
- Zulip (chatting, planning): https://urssi-softwareschool.zulipchat.com
- HackMD (collaborative notes): https://hackmd.io/@M0eajM-mS9CDKKt8Rq--0g/B1cjGQVFC
- Wifi:
eduroam
orIllinoisNet_Guest
Code of Conduct¶
The Code of Conduct for URSSI summer schools can be found here: https://github.com/si2-urssi/summerschool-July2024
Code of Conduct¶
Reporting: please email mmunk2[at]illinois.edu
for CoC reporting.
Instructors and Organizers¶
TAs¶
Schedule and plan for the next few days
https://github.com/si2-urssi/summerschool-July2024?tab=readme-ov-file#tentative-schedule
About this School¶
URSSI mission¶
To improve the quality, usefulness, and sustainability of research software by improving practices, and increasing diversity of practitioners.
Motivation¶
- Nearly all research relies on software
- Even experimental research
- But researchers don't get trained in best practices in the same way as experimental methods
What are we going to learn about: Research Software?¶
- Software design
- Structuring (Python) programs
- Collaborative software development
- Software testing, continuous integration
- Packaging and documentation
- Peer code review
- Sharing software openly, copyright, software citation
What are we going to learn about: Open Science?¶
- Ethos of open science
- Open tools and resources
- Open Data
- Open Results
Open Science 101: Five Modules Organized as a Workflow¶
Structure¶
- Four full days, one half day of research software + open science content
- Three-hour sessions in the morning, four hours in the afternoon.
- Morning: research software
- Early Afternoon: work time
- Late Afternoon: open science
Requirements / setup¶
A laptop with a Mac, Linux, or Windows operating system, and some packages installed:
- the Bash shell
- Git
- Python 3.x; we recommend installing Anaconda
- a text editor, preferably one designed for writing code (VS Code, Atom, or Sublime Text)
- Specific Python packages: pytest, sphinx
... and some additional resources
- GitHub account
- an ORCID account
- for the badging: sign up for the OS 101 MOOC and link your ORCID
Introductions and Icebreaker¶
Introductions¶
- Who are you?
- What do you do, and where do you do it?
- What do you hope to get out of this?
- Fun fact: What is your favorite colormap?
Attribution: TOPS Community¶
This week's modules on Open Science are made possible thanks to the work of the entire TOPS community (3100+)!
We also thank everyone around the globe who has worked to promote and implement open science over the years - they have paved the way for where we are today!
Today¶
- Software design and modularity
- Structuring (Python) programs
- Ethos of Open Science