2023-04-18 –, A05-A06
Write code as an ensemble to solve a data validation problem with 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 Pydantic."
See data and starting code in the repo
This is part 1 out of 2 of our data validation tutorial. Part 2 is doing the same task using a different Python framework - Pandera instead of 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
Write code as an ensemble to solve a data validation problem using P. 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.
Expected audience expertise: Domain –Novice
Expected audience expertise: Python –Novice
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.
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.