Before, this kind of “build a new metric” / exploratory work would look like the following:
Write some queries on top of raw data in the Snowflake console, heavily leveraging CTEs to make the code more modular
Then, If the results of my queries need further investigation / discussion
Copy the output into a Google Sheet
Make some charts
Do a small writeup in a Google Doc to talk through open questions, like “this number feels too high to me, does it feel high to you?” or “why is this delta negative in some cases?”
Iterate (View Highlight)
Note: Before Hex workflow for defining metrics
Or, if the results of my queries felt “on track”, I might instead:
Move the queries into my dbt project as models
Build a mock visualization in our BI tool
Open a PR and put the writeup in there for further discussion before merging
The former workflow is janky, and the latter can lead to over engineering before aligning on the thing you’re building. (View Highlight)
Note: Before Hex - over-engineering
One thing I hate about using the Snowflake console for exploratory data analysis is that as soon as you write one query, you lose the results of the previous query. Sometimes you want to see the two sets of results at the same time! Because Hex uses a notebook structure, it lets you do that pretty easily. (View Highlight)