Introduction to dbt Core
dbt Setup for Azure PostgreSQL
SQL and Jinja Templating
dbt Tests
Incremental Models, Docs, and Snapshots
Building Your First Mart
Practice
Assignment
Gotchas & Pitfalls
Week 10 Lesson Plan (Teachers)
Gotchas & Pitfalls
Content coming soon...
Suggested Topics
- profiles.yml location: dbt looks in ~/.dbt/ by default, not in your project folder
- Forgetting ref(): hardcoding table names instead of using ref() breaks the DAG
- Jinja whitespace: unexpected blank lines in compiled SQL from Jinja control flow
- Incremental model pitfalls: forgetting unique_key leads to duplicate rows
- Test false confidence: only testing not_null on columns that are already NOT NULL in the database
- Running dbt run without dbt test: deploying untested models to production
- Adapter quirks: PostgreSQL-specific dbt behaviors (e.g., case sensitivity, schema handling)
- Circular dependencies: two models referencing each other causes dbt to fail
The HackYourFuture curriculum is licensed under CC BY-NC-SA 4.0

*https://hackyourfuture.net/*
Found a mistake or have a suggestion? Let us know in the feedback form.