A hands-on comparison of R's {targets} package and dbt (data build tool) for building a personal finance data pipeline. The author builds a 'slowbooks' workflow that ingests bank CSV exports, stages and cleans transactions, joins with merchant categories, produces monthly aggregations, and runs data validation tests. Both tools are implemented side-by-side across staging, intermediate, and mart layers, with dbt using SQL/Jinja models backed by DuckDB and {targets} using R/dplyr/fuzzyjoin. Key differences highlighted include dbt's SQL-centric approach with built-in test framework versus {targets}' R-native flexibility with third-party validation packages like {data.validator}. The author notes dbt suits SQL-first data teams while {targets} better serves R users who prefer programmatic abstractions.
Sort: