Week 11 - Dashboarding
The HackYourFuture curriculum is licensed under CC BY-NC-SA 4.0
*https://hackyourfuture.net/*

Built with ❤️ by the HackYourFuture community · Thank you, contributors
Found a mistake or have a suggestion? Let us know in the feedback form.
Introduction to Dashboarding
Metabase Setup
Dashboards in Metabase
Streamlit Fundamentals
Building a Metrics Dashboard
Presenting Metrics
Practice
Gotchas & Pitfalls
Assignment: Build Two Dashboards
Slides (PDF)
Career relevance: Week 11
Glossary: Week 11
Going Further
History of Dashboarding
hyf_week11_edited-subtitled.mp4
Week 11 - Dashboarding
Welcome to Week 11! You have ingested raw data and transformed it with dbt. Now you make it visible. This week covers dashboarding: connecting tools to your data, building clear visualizations, and presenting what the numbers mean to a non-technical audience.
By the end of this week, you will have two live dashboards on the same dbt marts: one built in Metabase with point-and-click Questions, and one built in Python (Streamlit) where you control every panel in code.
What NL data teams expect
NL data roles expect you to close the loop between data and decisions. Teams expect you to:
- build and maintain analytical dashboards that non-technical stakeholders can read
- build code-first dashboards when a metric needs custom logic or when the audience is technical
- define metrics clearly enough that a colleague can reproduce your numbers six months later
- present data findings confidently in five minutes or less
For the NL-specific picture (which BI tools appear in postings, how to talk about Week 11 work in interviews), see Career relevance.
Learning goals
- Distinguish between a no-code BI tool (Metabase) and a code-first app (Streamlit), and know when to reach for each
- Connect Metabase to Azure PostgreSQL and build Questions and Dashboards from your dbt mart tables
- Connect Streamlit to Azure PostgreSQL to build a metrics dashboard: KPIs, a trend chart, and a data-freshness panel
- Design clear, actionable dashboard panels with proper titles, units, and thresholds
- Define metrics precisely: name, description, calculation method, data source, refresh frequency
- Present metrics clearly to a non-technical audience in a 5-minute presentation
- Explain the data flow from ingestion through modeling to visualization
After this week, you should be able to explain
- why you would choose Metabase (no-code) for one dashboard and Streamlit (code) for another
- what each metric on your dashboards means and how it is calculated
- how to debug a Metabase question that returns no rows, or a Streamlit app that fails to connect
The assignment has two tiers: Required ships one Metabase dashboard with 3 questions, one Streamlit page showing KPIs from fct_trips, a freshness panel, and a 5-minute recorded presentation; Extra (a Metabase date filter, PDF export, auto-refresh) is bonus. Both tiers read only the Week 10 dbt marts.
<aside>
📘 Core program connection: In the Core program you queried databases with SQL and rendered results in a web page. Week 11 is the same loop in Python: a SQL query against your fct_trips mart, then Streamlit turns the returned rows into metric cards and charts, no HTML or JavaScript required.
</aside>
Prerequisites
All tiers:
- Completed dbt project from Week 10 (
fct_trips and fct_daily_borough_stats present in your dev_<name> schema on the shared Azure Postgres)
- Python 3.10+ with
streamlit, psycopg2-binary, sqlalchemy, and pandas installed locally
- Access to the HYF-managed Metabase instance (URL and login credentials provided by your teacher before class)
If a prerequisite is missing, continue with local exercises first and ask your teacher for a fallback plan.
Before submitting the assignment, scan Gotchas & Pitfalls. It lists the eight traps students hit most often, each with the fix.
Chapters
- Introduction to Dashboarding
- Metabase Setup
- Dashboards in Metabase
- Streamlit Fundamentals
- Building a Metrics Dashboard
- Presenting Metrics
- Practice
- Gotchas & Pitfalls
- Assignment: Build Two Dashboards
Slides (PDF)
Career relevance: Week 11
Glossary: Week 11
Going Further
History of Dashboarding