Summary and Setup

This workshop will focus on tools and concepts that are a step beyond an introductory python workshop. The learner will be assumed to have a basic understanding of the following python / programming concepts:

  • Basic python syntax
  • Writing Conditionals and “For” loops
  • Installing and running third party libraries
  • Basic Version control with git

We will cover the following topics in the course of this workshop:

  • Virtual Environments
  • Classes and Object Oriented Programming
  • Inheritance and Composition
  • Creating a Python Module
  • Static Code Analysis
  • Unit Testing
  • Publishing a python package

Prior to the workshop, please ensure that you have a working python installation (3.9 or higher) and the uv package manager installed. Setup instructions for both can be found below.

Prerequisite

This workshop content assumes that you have the following prerequisites:

  • A laptop or desktop computer running Windows, MacOS, or Linux
  • An installation of Python 3.9 or later
  • An installation of the UV package management tool
  • (Optional) A GitHub account
  • (Optional) A TestPyPi account
  • (Optional) Git Version Control, authenticated to your GitHub account

Software Setup - Python


This workshop relies on an installation of python on your device. You will need to have at least python version 3.9 or later for the project that we will create here.

If you do not already have python installed on the device you are bringing to the workshop, you can go to the python.org downloads page and download the most recent version.

Software Setup - UV


We will also be working with the UV package management tool. You can follow the install instructions found on the project website.

Software Setup - git and GitHub (Optional)


Callout

We will be demonstrating the use of GitHub during the workshop, however if you would prefer not to use the service it is not required to have an account in order to participate in the workshop.

We will be using git and GitHub to manage our code during the workshop. If you do not already have a GitHub account, you can create one for free at github.com.

Once you have an account, you will need to authorize git on your device to push code to your GitHub account. There are two ways to do this: using an SSH Keypair or a Personal Access Token (PAT). You can find directions for both methods below, but you only need to set up one of them.

Account Setup - TestPyPi (Optional)


We will be using TestPyPi to publish our package during the workshop. If you would like to follow along and publish your package to the test instance, you will need to create an account on TestPyPi if you do not already have one. You can do that at test.pypi.org.