Learning ObjectivesΒΆ
- Demonstrate computing skills in Python and Jupyter notebooks
- Create a documented GitHub repository
- Demonstrate skills in cloning, adding, pushing, pulling, using branches, pull requests, and contributing with GitHub issues
- Recognize the differences between a local environment, a remote JupyterHub, the architecture of an HPC system, and a cloud system
- Practice installing Python open source software in any Linux environment
- Set up an agentic AI coding assistant in your editor or terminal, and use it with judgment: you direct it, you verify its output, and you disclose its role
- State the course AI-use policy and what it requires of you (see 1.8 AI in your workflow)
The chapter ends with 1.9 Workbench setup (HW1), a numbered walkthrough that takes you from a bare machine to a verified working environment and your own course repository. It is the first graded assignment; every step states what success looks like, and Windows users get a sanctioned path through WSL2 or GitHub Codespaces.
Starting from ZeroΒΆ
It is possible! The resources below are helpful to get started. It is expected in MLGeo at UW that students can demonstrate their abilities on most of the course content in the Software Carpentries:
Please review the Software Carpentries in:
- All lessons on Unix
- Lessons on Git, though this will be extensively reviewed in class
- Python: manipulate variable types including arrays and lists, for loops, if statements, create functions
- Plotting with Matplotlib: ability to make simple plots, including subplots and labeled axes
Final projectΒΆ
The course is project-based from week one. Read the final project description and rubric early, so you know where the quarter is heading.