Learner Profiles
Who Should Take This Workshop?
This workshop is designed for researchers new to the Unix/Linux command line. Below are three representative learner profiles. Do you see yourself in one of these?
Profile 1: Sofia - Biology Student, GUI-Only Background
Background
Sofia is a sophomore biology major at Pomona College working in the ecology lab. She’s spent her entire academic career using point-and-click software on Windows and Mac—mostly for spreadsheets, data entry, and image analysis. She’s starting a summer research project analyzing soil microbiome data from the college’s conservation area.
What She Knows
- Comfortable with graphical interfaces (Windows Explorer, Finder)
- Has used Excel and basic image analysis software
- Never opened a terminal or command line
- Basic understanding of folders and file organization
- Knows “command line exists” but thinks it’s for IT people
Why She Needs This
- Her raw sequencing data is 50+ files that need batch processing
- Lab computing resources require shell access
- Analyzing files one-by-one in a GUI is impractical
- Her lab mentor recommends she learn the shell
- Needs to work on shared server where GUI tools aren’t available
Her Goals
- Navigate a file system without clicking
- Run automated analysis on multiple files
- Understand what her lab mentor is explaining
- Gain independence in her research workflow
- Prepare for future HPC work on Sagehen HPC
Challenges She’ll Face
- Terminal looks intimidating and unfamiliar
- Might fear “breaking something” by typing wrong commands
- No visual feedback can feel confusing at first
- Muscle memory from GUI workflows conflicts with keyboard commands
- May get error messages that don’t make intuitive sense
Success Indicator
After this workshop, Sofia can: - Open a terminal and navigate to any folder - List file contents and understand file permissions - Create, copy, move, and delete files from command line - Run a simple analysis on multiple files using a loop - Know which commands to Google when she encounters new tasks
Profile 2: James - Physics Researcher, Switching from Windows
Background
James is a third-year physics major who has done research at a Windows-based lab for two years. His department is transitioning their computational work to Linux systems and Sagehen HPC. He’s comfortable with scientific software but has only minimal command line experience—mostly typing file paths in Windows.
What He Knows
- Familiar with command prompt on Windows
- Understands basic concepts like directories and file paths
- Knows several scientific computing programs (Matlab, some Python)
- Has never used pipes, redirects, or shell scripting
- Minimal experience with Unix conventions
Why He Needs This
- Lab’s new simulation workflow requires Linux shell commands
- Must submit jobs to Sagehen (which requires shell fluency)
- Cannot rely on graphical interfaces on HPC systems
- Needs to work with collaborators who use Linux
- Department shifting focus to open-source Unix tools
His Goals
- Become fluent with Unix command line conventions
- Learn pipes and redirection for data processing
- Write simple shell scripts for repetitive tasks
- Transition his analysis workflows from Windows to Unix
- Be self-sufficient on Sagehen and other Linux systems
Profile 3: Dr. Patel - Digital Humanities Scholar, New to Computing
Background
Dr. Patel is a visiting lecturer in the classics department at Pomona. She’s launching a digital humanities project analyzing historical texts—thousands of ancient inscriptions and manuscripts that need to be cataloged, parsed, and searched. She has strong humanistic training but minimal technical background, though she’s motivated and willing to learn.
What She Knows
- Comfortable with basic computer use and file organization
- Never used terminal or command line
- Understands her research domain deeply
- Some exposure to data formatting concepts (CSV files)
- Knows computational approaches exist but feels they’re “not for me”
Why She Needs This
- Text processing requires batch operations on hundreds of files
- Text-parsing tools are primarily command-line based
- Collaborators are technical and use shell scripts
- GUI tools don’t exist for her specialized text analysis needs
- Needs to set up reproducible, documented workflows
Her Goals
- Understand what researchers mean by “shell commands”
- Learn enough to use and modify existing scripts
- Automate her text processing pipeline
- Collaborate effectively with technical team members
- Gain confidence that she can learn computational methods
Challenges She’ll Face
- Impostor syndrome: “I’m not a computer person”
- Abstract nature of command line (no visual representation)
- Frustration that there’s no “obvious” way to do things
- Terminology: “What’s the difference between a command and a script?”
- Fear of making mistakes in important data files
Success Indicator
After this workshop, Dr. Patel can: - Execute shell commands to process text files - Understand basic shell scripts others have written - Use wildcards and loops to process batches of files - Modify and run scripts for her specific needs - Feel confident enough to ask good questions in technical meetings
Using These Profiles
During teaching: - Reference Sofia when explaining new concepts: “This is the first time you’re using the command line, just like Sofia…” - Use James for comparative examples: “In Windows, you’d do this; in Unix, we do that…” - Draw on Dr. Patel’s experience to show real humanistic use cases
When explaining concepts: - Connect abstract shell concepts to concrete research tasks - Use file names and directories from actual Pomona research - Explain the “why” behind Unix conventions
For pacing: - Sofia needs extra reassurance and practice time - James might want to know how Unix differs from Windows - Dr. Patel benefits from explicit permission to learn slowly and ask questions
Common Threads
Despite different backgrounds, all three learners share:
- No shell experience: This is everyone’s first time
- Motivation from real research: Each has a concrete need
- Some computer comfort: None are complete novices
- Anxiety about “breaking things”: All worried about mistakes
- Desire for independence: Each wants to work without asking for help
Teaching to Diverse Learner Types
What Works Well
- Concrete tasks: “We’re going to organize and process files Sofia collected”
- Side-by-side comparison: Show Windows vs. Unix for learners like James
- Safety building: Emphasize that shell commands are actually pretty safe
- Patience with typing: Some learners type slowly at first
- Real workflows: Use actual Pomona research examples, not toy problems
- Encouragement: “Everyone feels this way at first”
Pacing Tips
- For skeptical learners like Dr. Patel: Emphasize how much faster this is than GUIs
- For comparative learners like James: Show the Unix way alongside what they know
- For anxious learners like Sofia: More practice, more confidence-building, reassurance
- For all: Celebrate small wins (“You just wrote your first loop!”)
After the Workshop
These learners won’t be shell experts after a few hours. They will:
- Feel comfortable opening a terminal
- Navigate file systems confidently
- Run commands without panic
- Know where to look for help
- Be ready for the next workshop (Git, Python, or HPC)
Many will return for: - Workshop 2: Version Control with Git (uses shell commands) - Workshop 4: Programming with Python (often uses shell) - Workshop 0: Introduction to HPC (requires shell fluency)
Your role is to build their confidence and show them that the shell is a tool, not a threat.