Course materials and documentation for DS2002
Everyone will need a GitHub account. If you already have a GitHub account, you can skip step 1.
msmith/ds2002-course as the name for the forked repo (should be set as default).Note: This step is required if you plan to use git on your own computer/laptop.
Personal Access Tokens (PATs) are an established best practice for securing access to your repositories. Unlike SSH keys, which grant broad access, PATs provide more granular control over what actions are allowed. You can create tokens with specific scopes (like read-only access, or access only to certain repositories), making them more secure and easier to manage. PATs are also easier to revoke if compromised, as you can delete individual tokens without affecting your entire account.
Sign up for GitHub Education. It is free and will augment your abilities to use GitHub and Codespaces.
The easiest way to get started is to use GitHub Codespaces. You can launch Codespaces directly through your repo in GitHub; all the software tools you will need are already configured and will be at your disposal with a single click of a button. It couldn’t be easier.
You should see a screen like this:

Once your codespace is ready, you’ll have a fully configured development environment in your browser!
Throughout this course students will have access to UVA’s HPC systems (Afton & Rivanna). In addition to HPC specific activities in Module 3, you may also use the system as an alternative to Codespaces for other course activities.
You don’t have to install software on your own computer to access the systems.
The login process is described in the HPC Access instructions.
If you prefer to set up the development environment on your own computer instead of using GitHub Codespaces, follow the platform-specific instructions:
Note: If you are new to programming and are not familiar with installing programming tools on your computer, we highly recommend using GitHub Codespaces instead. This will allow you to get started immediately without the hassle of troubleshooting any setup issues.