Codelab - Index
“Where the magic happens…”
Welcome to Codelab, a course and textbook on the foundations of coding and digital humanities technics written by Shane Lin and the Scholars’ Lab at the University of Virginia Library for the Praxis Program Fellowship. With dogs.
Codelab is broadly divided into two sections: Codelab Fundamentals, which introduces basic computing, data, and algorithmic concepts without coding directly, and Codelab Code Lab, which uses Python to teach practical DH programming skills.
Codelab Fundamentals
- Chapter 01: Introduction to CodeLab
- Environment setup
- What is code?
- Algorithmic thinking
- Why is code?
- Chapter 02: Introduction to Data
- What is data?
- How do we represent data?
- Digital vs analog
- Text encoding
- Colors and images
- Chapter 03: Structured Data
- Limitations of simple data
- Lists (simple and complicated)
- Tabular data and CSV
- XML
- JSON
- Chapter 04: Version Control
- How do we collaborate on digital project?
- Version control systems
- Git and Github
Codelab Code Lab
- Chapter 05: Introduction to Python
- Python interactive interpreter
- Saving and running Python files
- Hello World
- Variables
- Classes, Objects, and Instances
- Simple types
- Documentation
input()
- Lists
- Chapter 06: Functions and Methods
- Types and
type()
- Type conversion
- Function calls, arguments, return values.
- Built-in functions
- Methods
- Defining Functions
- Types and
- Chapter 07: Control Flow
- Conditionals
if
,elif
, andelse
- Booleans in conditions
- Loops
while
vsfor
- Exit conditions
- Chapter 08: Control Flow (ctd)
continue
andbreak
- Nested loops
- Chapter 09: Algorithms and File Operations
- Algorithms (ctd)
- Sorting
- File input/output
- Chapter 10: Dictionaries, CSV, JSON
- Basic and Complex Data Types
- Dictionaries
- Structured data review
- CSV and JSON in Python
- Chapter 11: Show and Tell!
- Chapter 12: Web scraping
- Chapter 13: APIs