Week 1 — Dev Environment & Version Control
Welcome to Week 1! This week is all about building a solid foundation. Before you can build data science applications, you need a reliable development environment and a firm grasp of version control. These tools are not glamorous, but they are the bedrock upon which everything else stands.
Overview
In this week, you will configure your coding environment, learn a modern Python package manager, write shell scripts, master Git workflows, query databases with SQL, and deploy a static website. By the end of the week, you will have a professional-grade setup that mirrors what data science teams use in production.
Pages
| # | Page | Topic |
|---|---|---|
| 1 | VS Code Setup | Extensions, settings sync, keybindings, devcontainers |
| 2 | uv & Python | Project management, lockfiles, scripts vs packages |
| 3 | Bash Scripting | Variables, loops, pipes, cron, jq, awk, sed |
| 4 | Git & GitHub | Branching, PRs, merge conflicts, .gitignore, git bisect |
| 5 | SQLite | Schema design, queries, indexes, sqlite-utils |
| 6 | GitHub Pages | Static site deployment, custom domains, GitHub Actions |
Learning Outcomes
By the end of this week, you will be able to:
- Configure VS Code with essential extensions and synced settings for a consistent development experience
- Create and manage Python projects using
uvwith reproducible lockfiles - Write Bash scripts that automate repetitive tasks using variables, loops, pipes, and common CLI tools
- Use Git for version control with proper branching strategies, pull requests, and conflict resolution
- Design SQLite schemas and write efficient queries with appropriate indexes
- Deploy a static website to GitHub Pages with a custom domain and automated deployments
Expect to spend 6-8 hours on this week's material: ~2 hours reading, ~3 hours on walkthroughs, and ~2 hours on the lab.