PyCon US 2021
Here is the recording of the workshop.
Here is the link to the repo with the set up instructions for the workshop.
Here is the proposal I submitted for this workshop.
Title
“Dashboards 4 All”
Description
Dashboards are useful tools for data professionals from all levels and within different industries. From analysts who want to showcase the insights they have uncovered, to researchers wanting to explain the results of their experiments, or developers wanting to explain the most important metrics stakeholders should pay attention to in their applications, dashboard can help tell a story or, with a bit of interactivity, let the audience pick the story they’d like to see. With this in mind, the goal of this tutorial is to help data professionals from diverse fields and at diverse levels tell stories through dashboards using data and Python.
The tutorial will emphasize both methodology and frameworks, through a top-down approach. Several of the open source libraries included are bokeh, holoviews, and panel. In addition, the tutorial covers important concepts regarding data types, data structures, and data visualization and analysis. Participants will learn concepts from the fields where the datasets came from as well, and build a foundation on how to reverse engineer data visualizations they find in the wild.
This tutorial follows a top-down approach in all three of its part, meaning, each time-block starts with the punchline (i.e. the results) and we then we would work our way backwards with clear explanations on how and why each question was asked, each function was created, and each choice was made. One of the added benefits of this approach is that participants will be able to (hopefully) take what they learn throughout the session and use it to analyze and reverse engineer, dataset and results, respectively, that they might encounter in the wild.
Audience
The target audience for this session includes analysts of all level, developers, data scientists and engineers wanting to learn how to present their data-related work in a well-thought out dashboard.
Format
The tutorial has a setup section, three major lessons of 50 minutes each, and 2 breaks of 10 and 15 minutes after each lesson block. In addition, each of the major three sections contains a clearly defined challenge/exercise designed to help solidify the content taught to participants.
Prerequisites (P) and Good To Have’s (GTH)
- (P) Attendees for this tutorial are expected to be familiar with Python (1 year of coding).
- (P) Participants should be comfortable with loops, functions, lists comprehensions, and if-else statements.
- (GTH) While it is not necessary to have knowledge of dask, pandas, NumPy, bokeh, and Holoviews, a bit of experience with these libraries would be very beneficial throughout this tutorial.
- (P) Participants should have at least 6 GB of free memory in their computers.
- (GTH) While it is not required to have experience with an integrated development environment like Jupyter Lab, this would be very beneficial for the session
Outline
Total time budgeted including breaks - 3.5 hours
- Introduction and Setup (~20 minutes)
- Getting the environment set up. We will be using Jupyter Lab throughout but participants experiencing difficulties throughout the session will also have the option to walk through the tutorial using Binder
- Quick breakdown of the session
- Flash instructor intro
- Static Dashbords - The Analyst tells a story (~50 minutes)
- Intro to the dataset
- Static dashboard creation and customisation
- Dashboard and visualisations breakdown
- Exercise (7-min). For this exercise, participants will be given a dashboard with 3-5 visualisations as well as the dataset, and their task is to reverse engineer any of the visualisations in the dashboard
- 10-minute break
- Interactive Dashboards - Data Scientists let the audience pick their story (~50 minutes)
- Intro to the dataset
- Interactive dashboard creation and customisation
- Dashboard and main functions breakdown
- Exercise (7-min). For this exercise, participants will be given a dashboard with 3-5 visualisations as well as the dataset, and their task is to reverse engineer any of the visualisations in the dashboard
- 15-minute break
- Deploying a Dashboard as an App - Developers Gift a Dashboard to the Audience (~50 minutes)
- Intro to the dataset
- Mixed dashboard creation and deployment
- Flash dashboard elements breakdown
- Deployment breakdown
- Exercise (7-min). For this exercise, participants will be given a dashboard and their task is to deploy it on the internet as an App
Additional Notes
I work as an educator, researcher, and data scientist, and have taught Python to hundreds of students with backgrounds ranging from complete beginner to advanced. My lessons are full of metaphors, quotes, funny pictures and exercises to make sure students leave my sessions at least with a laugh, a new concept learned, a new Python trick, or all of the above.
I have done several short tutorials at meetups on a variety of topics within data analytics and Python programming. Most recently, I taught one of the 3-hour tutorials at SciPy Japan 2020 using a bottom up approach and I am excited about the opportunity to do another session with a reverse approach.