Skip to content

Organization and version control

Slides

  • Learn the basics of version control and how to use git to track changes to your code and collaborate with others.

    M5: Git

  • Learn how to organize Python code into a library, package it and use templates to create new projects.

    M6: Code Structure

  • Learn different coding practices and how to use them to improve the quality of your code.

    M7: Good Coding Practice

  • Learn how to version control data using dvc.

    M8: Data Version Control

  • Learn the different ways to setup command line interfaces for your applications.

    M9: Command Line Interfaces

Today we take our first steps into the world of MLOps. The set of modules in this session focuses on getting organized and making sure that you are familiar with good development practices. While many of the practices you will learn about these modules do not seem that important when you are a single person working on a project, it is crucial when working in large groups that the difference in how different people organize and write their code is minimized. The topics in this session will focus on:

  • Version control to help track and manage changes to your code and data
  • Coding practices for staying organized in large projects

Image

Image credit

Some exercises in this course are very loosely stated (including the exercises today). You are expected to seek out information before you ask for help (Google is your friend!) as you will both learn more for trying to solve the problems yourself, and it is more realistic of how the "real world" works.

Learning objectives

The learning objectives of this session are:

  • Understand the basics of version control and can use git to track changes to your code
  • Knowledge of how to package Python code into a library and how to organize your code for reuse
  • Understand different coding practices and how to use them to improve the quality of your code
  • Can use dvc to version control data