How to start a coding club
Summary: start small, be hands-on, use existing tutorials, have fun.
Here is my advice for starting a coding club.
An example is Eco-Data-Science at UCSB. We are currently a community of >100 people; we meet 2x/month at the UCSB Library’s Collaboratory and skill share peer-to-peer, with all resources organized and archived on the website. But we started off small, with co-founder Jamie giving tutorials to friends one-on-one.
Start small
Start off with a few interested people so that you can start now with less scheduling involved. Find a space to meet in your lab, or department.
Be hands-on
Plan for most sessions to be hand-on: have everyone bring their laptops and have a screen available that everyone can watch as they follow along and take notes on their own computer.
Start with existing tutorials
The internet is full of great tutorials made by really kind and smart people. Use them. They might not be within your scientific context, and that is OK, maybe better, even. In your first sessions, watch a video together of someone teaching a topic of interest. Then have someone teach live from an existing written tutorial. When you get to a point where there is a topic you want to learn or teach and you can’t find a tutorial that suits your purpose, make your own!
Where to start? Here are some R/RStudio and GitHub recommendations that helped us learn. They are tutorials and also academic papers for journal clubs. (Note: some are more hands-on than others).
For a little more direction within that list:
- watch RStudio webinars. Look at the Learning Roadmap:
- “RStudio Essentials”
- “Data Science Essentials”
- “Advanced Data Science: Collaboration and time travel — version control with git, github, and RStudio”
- practice RStudio with GitHub: create free websites with RMarkdown
Also, Google “[topic] [language] tutorial” and see what you find.
Have fun
Coding is powerful and empowering, it is also social. Have fun, and be respectful and inclusive.
As you grow
Talk about your group with others, and your numbers will grow. Ask others to present, particularly if you know someone knows something that you’d like to learn. Build allies and ask for support, from your department, from your library.
Eco-Data-Science has a nice website, right? That came after we had been meeting as a small group informally for awhile, but we were growing and wanted to be more organized and inclusive. So when the time came, we joined as a Mozilla Study Group and used their website template so that we didn’t get slowed down by operational stuff and could continue to focus on skill-sharing with each other. This also put us on the Mozilla’s map of study groups so that people can find us more easily. Now, when I travel to other universities, I see if they have a study group in the network.
Learn more about Mozilla Study Groups:
Join other groups
The advice above assumes that you’ve looked to see if there are already coding clubs that exist that you could join. In addition to seeing if there is a Mozilla Study Group near you, see if there is an R Users Group Meetup, RLadies, or other non-R focused groups near you!
How to champion (what to do as a lab lead)
If you are in a leadership position and students want to start a coding club, here is what you can do to help enable it:
- help get rooms
- subsize snack & beers
- connect potentially interested people
- help it be visible: talk about it on campus and beyond
Photo by Elliot Lowndes