Data Kata: Ensemble programming with Pydantic #2
2023-04-18 , A05-A06

Write code as an ensemble to solve a data validation problem using Pydantic. Working together is not just about code - learn how to listen to colleagues, make typos in front of everyone, become a supportive team member, defend your ideas and maybe even accept criticism.


The How

We will play a "collaborative game" - write code together to solve a problem. Each small group of 5, an "ensemble", will be guided by a facilitator. An ensemble has only one screen and one keyboard, so participants rotate the roles of typing and talking.

The goals are to have fun, learn how to use Pydantic, write better code with Test Driven Development, listen to colleagues, make typos in front of everyone, become a supportive team, defend our ideas and sometimes even accept criticism.

Exercise:
"Read data from a CSV and check data types, range of values, consistency between columns using Pandera."
See data and starting code in the repo

This is part 2 of our data validation tutorial. Part 1 is doing the same task using a different Python framework - Pydantic. You can attend both or just one part of this tutorial.

Format:
- Ensemble programming with a facilitator. We will all collaborate as one team, switching the person on the keyboard every 5 mins.
- You don't need to have any previous experience with ensemble programming to join.
- You don't need to have any previous experience with data validation to join.

Schedule:
- Intros - 10 mins
- Ensemble programming - 30 mins
- Interim Retrospective - 10 mins
- Ensemble programming - 30 mins
- Final Retrospective - 10 mins
- Closing

Things to note:
- We will use gitpod.io as a shared VS Code IDE work environment


Expected audience expertise: Domain:

Novice

Expected audience expertise: Python:

Novice

Abstract as a tweet:

Write code as an ensemble to solve a data validation problem with Py. Working together is not just about code - we will see what it is like to listen to colleagues, make typos in front of everyone, become a supportive team member, defend our ideas and maybe even accept criticism.

Public link to supporting material:

https://github.com/tmylk/data-kata/tree/main/validation/pydantic

Lev Konstantinovskiy is an experienced data science and software engineering team lead. Long time ago he used to maintain a python Natural Language Processing library gensim.

This speaker also appears in:

I’m a Software Development Coach and Crafter on a lifelong journey to learn better ways to develop quality software. I like to practice with friends and teach and share what I learned. My goal is to help people find joy in their work and become better at developing software.

This speaker also appears in: