Goal: Your team will become comfortable collaborating with git by making changes to this code base and delivering them on master
, eventually culminating in an app like the one on the sample-solution
branch.
Objective: Using git, you and your team will collaborate to deliver changes that improve a code base.
Two tracks are offered, according to your team's preference (the Curriculum Introduction will go into more detail):
MILD: Your team will make changes to static HTML files. The only "webserver" is your filesystem.
SPICY: The Django "tags" webapp will list tags and store more tags, using a SQLite database. It will also display an image, woohoo. However, right now this app doesn't even say "Hello, World!". It needs you.
As your team begins to deliver completed tasks, you will run into challenges (merge conflicts!) associated with working in parallel on a code base, and you will practice using git to solve them.
The master
branch starts at a working version of static webpage (MILD) or an empty app (SPICY). To provide some ideas for changes, branches are provided as references to possible tasks your team could undertake. For instance, each commit on the sample-solution
branch is also a working version. The goal here is not so much to learn new programming language concepts, but to learn new git-based code collaboration skills .
Keep the page (or app) working as you deliver each change to master
. Don't "break the build"!
The Curriculum Introduction describes the content of the course, and references the Prework, the Syllabus, the Homework, and other teaching material.
Setup is covered in the Prework for Session One.