Learner Profiles
Who Should Take This Workshop?
This workshop is designed for researchers learning version control with Git for the first time. Below are three representative learner profiles. Do you see yourself in one of these?
Profile 1: Marcus - Chemistry Student Losing Track of Versions
Background
Marcus is a senior chemistry major at Pomona working on his honors
thesis. He’s been writing analysis code and data processing scripts for
two years, but his file system looks like:
analysis_final.py, analysis_final_v2.py,
analysis_final_REAL.py,
analysis_final_actually_works.py. He keeps losing track of
which version is current, and accidentally uses old code. His advisor
mentioned he should “use Git” but he has no idea what that means.
What He Knows
- Comfortable writing and editing Python code
- Uses Unix shell (from previous workshop)
- Familiar with basic file organization
- No experience with version control
- Vaguely knows Git exists but thinks it’s only for software developers
Why He Needs This
- Multiple versions of code create confusion and errors
- Thesis deadline is approaching; can’t afford to lose work
- Collaborators want to contribute code; can’t easily share versions
- Wants to track why he made changes to analysis
- Lab is adopting Git for reproducible research
His Goals
- Stop the
analysis_final_v5_actually_final.pymadness - Track changes and know why he made them
- Work safely knowing previous versions are saved
- Eventually collaborate with lab members
- Have a clean, professional code repository
Profile 2: Yuki - Computer Science Student, Currently Using Dropbox
Background
Yuki is a junior double major in computer science and environmental science at Pomona. She’s used cloud storage (Dropbox, Google Drive) to manage her project files and share code with classmates. This works okay for small projects, but she’s starting a senior capstone on environmental data analysis and the team is struggling: multiple people editing the same files, unclear who changed what, and broken code when someone uploads a conflicting version.
What She Knows
- Proficient programmer (several CS courses)
- Understands basic coding practices and style
- Uses cloud storage extensively
- Has never used version control
- Knows version control is “important” but hasn’t felt the need
- High technical aptitude
Why She Needs This
- Team capstone needs proper collaboration
- Cloud storage is not adequate for code collaboration
- CS internship expectations likely include Git knowledge
- Capstone repo could be portfolio piece for graduate school
- Wants to learn “how professionals do it”
Her Goals
- Understand why Git is better than Dropbox for code
- Manage team contributions without conflicts
- Create a portfolio-ready GitHub repository
- Learn industry-standard workflows
- Be prepared for technical internships/grad school
Profile 3: Dr. Susan - Faculty Member Wanting Reproducible Research
Background
Dr. Susan is an associate professor of neuroscience at Pomona. She runs a research lab with undergraduates and has published several papers, but she’s concerned about reproducibility. Her papers describe analysis code verbally, and various versions of scripts exist across lab members’ computers. When she wants to revisit an analysis, it’s hard to find the exact version used. She’s read about open science and wants her lab to adopt better practices.
What She Knows
- Experienced scientist with strong research background
- Has written or edited code (R scripts, Python notebooks)
- Limited command line experience
- Never used formal version control
- Understands research reproducibility is important
- Aware that Git is an “industry standard”
Why She Needs This
- Grant agencies increasingly require open, reproducible research
- Wants to publish analysis code alongside papers
- Lab collaboration is haphazard; Git would impose structure
- Needs to track which code produced which published results
- Setting example for lab members and students
Her Goals
- Establish reproducible research practices for the lab
- Understand what version control is and why it matters
- Know how to advise students/postdocs on Git use
- Be able to discuss open science with peers
- Create clean, documented code archives with publications
Using These Profiles
During teaching: - Reference Marcus when discussing why version control is needed: “Like Marcus with his analysis scripts…” - Use Yuki’s experience for collaboration examples: “When your capstone team wants to…” - Draw on Dr. Susan’s perspective for reproducibility: “For published research, we need…”
When explaining concepts: - Connect staging/commits to research workflows - Use real Pomona research examples for repositories - Show how Git enables collaborative science
For pacing: - Marcus needs reassurance about safety and clarity - Yuki might want advanced topics but shouldn’t skip foundations - Dr. Susan appreciates “why” explanations over command syntax
Common Threads
Despite different backgrounds, all three learners share:
- File chaos: All struggling with multiple versions
- Collaboration concerns: Need to work with others safely
- New to Git: No prior version control experience
- Real motivation: Each has concrete projects to organize
- Skepticism to overcome: “Do I really need this?”
Teaching to Diverse Learner Types
What Works Well
- Concrete scenarios: Show how Git prevents the problems they’re facing
- Dropbox comparison: Yuki and Marcus understand this; Dr. Susan appreciates the context
- Live demonstration: Show a messy repository, then show how Git solves it
- Team simulation: Have them practice collaboration in class
- Reproducibility focus: Connect to research integrity (resonates with Dr. Susan)
- Real Pomona examples: Show published research with clean Git repos
Pacing Tips
- For practical learners like Marcus: Show immediate benefits (“Now you can find your old code”)
- For ambitious learners like Yuki: Provide branch exercises, merge practice
- For leadership-minded learners like Dr. Susan: Discuss team practices and mentoring
- For all: Celebrate milestones (“Your first commit!”, “Resolved a conflict!”)
After the Workshop
These learners won’t be Git experts, but they will:
- Understand why version control matters
- Create and maintain a basic repository
- Make meaningful commits
- Navigate a remote repository (GitHub)
- Know where to learn more
Many will return for: - Intermediate Git (branches, workflows, collaboration) - GitHub for Open Science (publishing and archiving) - Workshop 0: Introduction to HPC (Git is used in job submission)
Your role is to convince them that the initial effort pays off in peace of mind and professional practice.
Real-World Connection
After this workshop, learners can:
- Start their own projects on GitHub
- Contribute to open-source software
- Archive and publish their own research
- Collaborate without fear of losing work
- Follow best practices expected in industry and academia