Skip to content

Commit

Permalink
Merge branch 'current' into sortable-table
Browse files Browse the repository at this point in the history
  • Loading branch information
mirnawong1 authored Nov 4, 2024
2 parents 04902ba + a7f90df commit fdca973
Show file tree
Hide file tree
Showing 138 changed files with 1,060 additions and 942 deletions.
2 changes: 1 addition & 1 deletion contributing/single-sourcing-content.md
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@ This component can be added directly to a markdown file in a similar way as othe
Both properties can be used together to set a range where the content should show. In the example below, this content will only show if the selected version is between **0.21** and **1.0**:

```markdown
<VersionBlock lastVersion="1.6">
<VersionBlock lastVersion="1.9">

Versioned content here

Expand Down
26 changes: 14 additions & 12 deletions styles/custom/UIElements.yml
Original file line number Diff line number Diff line change
@@ -1,17 +1,19 @@
# styles/custom/BoldUIElements.yml
extends: existence
message: "UI elements like '%s' should be bold."
level: warning
tokens:
# Match UI elements that are not bolded (i.e., not within **), but exclude those starting a sentence or following a list number
- '(?<!^)(?<![.!?]\s)(?<!\d\.\s)\bSave\b'
- '(?<!^)(?<![.!?]\s)(?<!\d\.\s)\bSave as\b'
- '(?<!^)(?<![.!?]\s)(?<!\d\.\s)\bCancel\b'
- '(?<!^)(?<![.!?]\s)(?<!\d\.\s)\bSubmit\b'
- '(?<!^)(?<![.!?]\s)(?<!\d\.\s)\bEdit\b'
- '(?<!^)(?<![.!?]\s)(?<!\d\.\s)\bAccount settings\b'
- '(?<!^)(?<![.!?]\s)(?<!\d\.\s)\bProject details\b'
- '(?<!^)(?<![.!?]\s)(?<!\d\.\s)\bProfile settings\b'
- '(?<!^)(?<![.!?]\s)(?<!\d\.\s)\bPersonal profile\b'
# Match UI elements that are not bolded (i.e., not within **)
- '(?<!\*\*)\bSave\b(?!\*\*)'
- '(?<!\*\*)\bSave as\b(?!\*\*)'
- '(?<!\*\*)\bCancel\b(?!\*\*)'
- '(?<!\*\*)\bSubmit\b(?!\*\*)'
- '(?<!\*\*)\bEdit\b(?!\*\*)'
- '(?<!\*\*)\bAccount settings\b(?!\*\*)'
- '(?<!\*\*)\bProject details\b(?!\*\*)'
- '(?<!\*\*)\bProfile settings\b(?!\*\*)'
- '(?<!\*\*)\bPersonal profile\b(?!\*\*)'
- '(?<!\*\*)\bIntegrations\b(?!\*\*)'
- '(?<!\*\*)\bNotification settings\b(?!\*\*)'

scope: raw # Ensure the rule is applied before formatting
scope:
- raw
2 changes: 1 addition & 1 deletion website/blog/2022-07-13-star-sql-love-letter.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ So what does this mean for the example from above? Instead of writing out all 55

```sql
select
{{ dbt_utils.star(from=ref('table_a'), except=['column_56'] }}
{{ dbt_utils.star(from=ref('table_a'), except=['column_56']) }}
from {{ ref('table_a') }}
```

Expand Down
134 changes: 1 addition & 133 deletions website/dbt-versions.js
Original file line number Diff line number Diff line change
Expand Up @@ -28,11 +28,7 @@ exports.versions = [
},
{
version: "1.7",
EOLDate: "2024-10-30",
},
{
version: "1.6",
EOLDate: "2024-07-31",
EOLDate: "2024-11-01",
},
];

Expand Down Expand Up @@ -66,134 +62,6 @@ exports.versionedPages = [
page: "reference/global-configs/indirect-selection",
firstVersion: "1.8",
},
{
page: "reference/resource-configs/store_failures_as",
firstVersion: "1.7",
},
{
page: "docs/build/build-metrics-intro",
firstVersion: "1.6",
},
{
page: "docs/build/sl-getting-started",
firstVersion: "1.6",
},
{
page: "docs/build/about-metricflow",
firstVersion: "1.6",
},
{
page: "docs/build/join-logic",
firstVersion: "1.6",
},
{
page: "docs/build/validation",
firstVersion: "1.6",
},
{
page: "docs/build/semantic-models",
firstVersion: "1.6",
},
{
page: "docs/build/group-by",
firstVersion: "1.6",
},
{
page: "docs/build/entities",
firstVersion: "1.6",
},
{
page: "docs/build/metrics-overview",
firstVersion: "1.6",
},
{
page: "docs/build/cumulative",
firstVersion: "1.6",
},
{
page: "docs/build/derived",
firstVersion: "1.6",
},
{
page: "docs/build/measure-proxy",
firstVersion: "1.6",
},
{
page: "docs/build/ratio",
firstVersion: "1.6",
},
{
page: "reference/commands/clone",
firstVersion: "1.6",
},
{
page: "docs/collaborate/govern/project-dependencies",
firstVersion: "1.6",
},
{
page: "reference/dbt-jinja-functions/thread_id",
firstVersion: "1.6",
},
{
page: "reference/resource-properties/deprecation_date",
firstVersion: "1.6",
},
{
page: "reference/commands/retry",
firstVersion: "1.6",
},
{
page: "docs/build/groups",
firstVersion: "1.5",
},
{
page: "docs/collaborate/govern/model-contracts",
firstVersion: "1.5",
},
{
page: "reference/commands/show",
firstVersion: "1.5",
},
{
page: "docs/collaborate/govern/model-access",
firstVersion: "1.5",
},
{
page: "docs/collaborate/govern/model-versions",
firstVersion: "1.5",
},
{
page: "reference/programmatic-invocations",
firstVersion: "1.5",
},
{
page: "reference/resource-configs/contract",
firstVersion: "1.5",
},
{
page: "reference/resource-configs/group",
firstVersion: "1.5",
},
{
page: "reference/resource-properties/access",
firstVersion: "1.5",
},
{
page: "reference/resource-properties/constraints",
firstVersion: "1.5",
},
{
page: "reference/resource-properties/latest_version",
firstVersion: "1.5",
},
{
page: "reference/resource-properties/versions",
firstVersion: "1.5",
},
{
page: "reference/resource-configs/on_configuration_change",
firstVersion: "1.6",
},
];

/**
Expand Down
3 changes: 2 additions & 1 deletion website/docs/best-practices/how-we-structure/4-marts.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,8 @@ models/marts

✅ **Group by department or area of concern.** If you have fewer than 10 or so marts you may not have much need for subfolders, so as with the intermediate layer, don’t over-optimize too early. If you do find yourself needing to insert more structure and grouping though, use useful business concepts here. In our marts layer, we’re no longer worried about source-conformed data, so grouping by departments (marketing, finance, etc.) is the most common structure at this stage.

✅ **Name by entity.** Use plain English to name the file based on the concept that forms the grain of the mart `customers`, `orders`. Note that for pure marts, there should not be a time dimension (`orders_per_day`) here, that is typically best captured via metrics.
✅ **Name by entity.** Use plain English to name the file based on the concept that forms the grain of the mart’s `customers`, `orders`. Marts that don't include any time-based rollups (pure marts) should not have a time dimension (`orders_per_day`) here, typically best captured via metrics.


❌ **Build the same concept differently for different teams.** `finance_orders` and `marketing_orders` is typically considered an anti-pattern. There are, as always, exceptions — a common pattern we see is that, finance may have specific needs, for example reporting revenue to the government in a way that diverges from how the company as a whole measures revenue day-to-day. Just make sure that these are clearly designed and understandable as _separate_ concepts, not departmental views on the same concept: `tax_revenue` and `revenue` not `finance_revenue` and `marketing_revenue`.

Expand Down
25 changes: 11 additions & 14 deletions website/docs/community/spotlight/bruno-de-lima.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,42 +2,39 @@
id: bruno-de-lima
title: Bruno de Lima
description: |
Hi all! I'm a Data Engineer, deeply fascinated by the awesomeness dbt. I love talking about dbt, creating content from daily tips to blogposts and engaging with this vibrant community!
Started my career at the beginning of 2022 at Indicium as an Analytics Engineer, working with dbt from day 1. By 2023, my path took a global trajectory as I joined phData as a Data Engineer, expanding my experiences and forging connections beyond Brazil. While dbt is at the heart of my expertise, I've also delved into data warehouses such as Snowflake, Databricks, and BigQuery; visualization tools like Power BI and Tableau; and several minor modern data stack tools.
I actively participate in the dbt community, having attended two <a href="https://www.meetup.com/en-AU/florianopolis-dbt-meetup" rel="noopener noreferrer" target="_blank">dbt Meetups in Brazil</a> organized by Indicium; writing about dbt-related topics in my Medium and LinkedIn profiles; contributing to the code; and frequently checking <a href="https://www.getdbt.com/community/join-the-community/" rel="noopener noreferrer" target="_blank">dbt Slack</a> and <a href="https://discourse.getdbt.com/" rel="noopener noreferrer" target="_blank">Discourse</a>, helping (and being helped by) other dbt practitioners. If you are a community member, you may have seen me around!
image: /img/community/spotlight/bruno-de-lima.jpg
Hey all! I was born and raised in Florianopolis, Brazil, and I'm a Senior Data Engineer at phData. I live with my fiancée and I enjoy music, photography, and powerlifting.
I started my career in early 2022 at Indicium as an Analytics Engineer, working with dbt from day 1. By 2023, my path took a global trajectory as I joined phData as a Data Engineer, expanding my experiences and creating connections beyond Brazil. While dbt is my main expertise, because of my work in consultancy I have experience with a large range of tools, specially the ones related to Snowflake, Databricks, AWS and GCP; but I have already tried several other modern data stack tools too.
I actively participate in the dbt community, having organized dbt Meetups in Brazil (in <a href="https://www.meetup.com/en-AU/florianopolis-dbt-meetup" rel="noopener noreferrer" target="_blank">Floripa</a> and <a href="https://www.meetup.com/sao-paulo-dbt-meetup-group/" target="_blank">São Paulo</a>); writing about dbt-related topics in my Medium and LinkedIn profiles; contributing to the dbt Core code and to the docs; and frequently checking <a href="https://www.getdbt.com/community/join-the-community/" rel="noopener noreferrer" target="_blank">dbt Slack</a> and <a href="https://discourse.getdbt.com/" rel="noopener noreferrer" target="_blank">Discourse</a>, helping (and being helped by) other dbt practitioners. If you are a community member, you may have seen me around!
image: /img/community/spotlight/bruno-souza-de-lima-newimage.jpg
pronouns: he/him
location: Florianópolis, Brazil
jobTitle: Data Engineer
jobTitle: Senior Data Engineer
companyName: phData
organization: ""
socialLinks:
- name: LinkedIn
link: https://www.linkedin.com/in/brunoszdl/
- name: Medium
link: https://medium.com/@bruno.szdl
dateCreated: 2023-11-05
dateCreated: 2024-11-03
hide_table_of_contents: true
communityAward: true
communityAwardYear: 2023
communityAwardYear: 2024
---

## When did you join the dbt community and in what way has it impacted your career?

I was not truly happy with my academic life. My career took a new turn when I enrolled in the Analytics Engineer course by Indicium. That was my first contact with dbt, and I didn't realize how much it would transform my career. After that, I was hired at the company as an Analytics Engineer and worked extensively with dbt from day one.
I was not truly happy with my academic life. My career took a new turn when I enrolled in the Analytics Engineer course by Indicium. That was my first contact with dbt, and I didn't realize how much it would transform my career. After that, I was hired at the company as an Analytics Engineer and worked extensively with dbt from day one.

It took me some time to become an active member of the dbt community. I started working with dbt at the beginning of 2022 and became more involved towards the end of that year, encouraged by Daniel Avancini. I regret not doing this earlier, because being an active community member has been a game-changer for me, as my knowledge of dbt has grown exponentially just by participating in daily discussions on Slack. I have found #advice-dbt-help and #advice-dbt-for-power-users channels particularly useful, as well as the various database-specific channels. Additionally, the #i-made-this and #i-read-this channels have allowed me to learn about the innovative things that community members are doing.

Inspired by other members, especially Josh Devlin and Owen Prough, I began answering questions on Slack and Discourse. For questions I couldn't answer, I would try engaging in discussions about possible solutions or provide useful links. I also started posting dbt tips on LinkedIn to help practitioners learn about new features or to refresh their memories about existing ones.

By being more involved in the community, I felt more connected and supported. I received help from other members, and now, I could help others, too. I was happy with this arrangement, but more unexpected surprises came my way. My active participation in Slack, Discourse, and LinkedIn opened doors to new connections and career opportunities. I had the pleasure of meeting a lot of incredible people and receiving exciting job offers, including the one for working at phData.
By being more involved in the community, I felt more connected and supported. I received help from other members, and now, I could help others, too. I was happy with this arrangement, but more unexpected surprises came my way. My active participation in Slack, Discourse, and LinkedIn opened doors to new connections and career opportunities. I had the pleasure of meeting a lot of incredible people and receiving exciting job offers, including the ones for working at phData and teaching at Zach Wilson's data engineering bootcamp.

Thanks to the dbt community, I went from feeling uncertain about my career prospects to having a solid career and being surrounded by incredible people.

I would like to thank the Indicium folks for opening the first door for me for this career in data, and not just for me but for lots of people in Brazil trying to migrate from different fields who would not have this opportunity otherwise.

## What dbt community leader do you identify with? How are you looking to grow your leadership in the dbt community?

I identify with Gwen Windflower and Joel Labes, or at least they are the kind of leader I admire. Their strong presence and continuous interaction with all types of dbt enthusiasts make everyone feel welcomed in the community. They uplift those who contribute to the community, whether it's through a LinkedIn post or answering a question, and provide constructive feedback to help them improve. And of course they show a very strong knowledge about dbt and data in general, which is reflected in their contributions.
Expand Down
35 changes: 35 additions & 0 deletions website/docs/community/spotlight/christophe-oudar.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
---
id: christophe-oudar
title: Christophe Oudar
description: |
I joined the dbt Community in November 2021 after exchanging some issues in Github. I currently work as a staff engineer at a scaleup in the ad tech industry called Teads, which I joined 11 years ago as a new grad. I've been using dbt Core on BigQuery since then. I write about data engineering both on <a target="_blank" rel="noopener noreferrer" href="https://medium.com/@kayrnt">Medium</a> and <a target="_blank" rel="noopener noreferrer" href="https://smallbigdata.substack.com/">Substack</a>. I contribute on <a target="_blank" rel="noopener noreferrer" href="https://github.com/dbt-labs/dbt-bigquery/">dbt-bigquery</a>. I wrote an article that was then featured on the Developer Blog called <a target="_blank" rel="noopener noreferrer" href="https://docs.getdbt.com/blog/bigquery-ingestion-time-partitioning-and-partition-copy-with-dbt.">BigQuery ingestion-time partitioning and partition copy with dbt</a>.
image: /img/community/spotlight/christophe-oudar.jpg
pronouns: he/him
location: Montpellier, France
jobTitle: Staff Engineer
companyName: Teads
socialLinks:
- name: X
link: https://x.com/Kayrnt
- name: LinkedIn
link: https://www.linkedin.com/in/christopheoudar/
- name: Substack
link: https://smallbigdata.substack.com/
dateCreated: 2024-11-08
hide_table_of_contents: true
communityAward: true
communityAwardYear: 2024
---

## When did you join the dbt community and in what way has it impacted your career?

I joined the community in November 2021 as a way to explore how to move our in-house data modeling layer to dbt. The transition took over a year while we ensured we could cover all our bases and add missing features to dbt-bigquery. That project was one of stepping stones that helped me to move from senior to staff level at my current job.

## What dbt community leader do you identify with? How are you looking to grow your leadership in the dbt community?

I identify with leaders that have strong convictions about how data engineering should move forward but remain open to innovation and ideas from everyone to bring the best to the field and make it as inclusive as possible to all cultures and profiles. I think that could mean people like Jordan Tigani or Mark Raasveldt. In the dbt community, my leadership has looked like helping people struggling and offering better ways to simplify one's day to day work when possible.

## What have you learned from community members? What do you hope others can learn from you?

I read a lot of articles about dbt, especially when I got started with it. It helped me a lot to build a proper Slim CI that could fit my company's ways of working. I also got to see how data pipelines were done in other companies and the pros and cons of my approaches. I hope I can share more of that knowledge for people to pick what's best for their needs.
6 changes: 3 additions & 3 deletions website/docs/community/spotlight/fabiyi-opeyemi.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,18 +8,18 @@ description: |
image: /img/community/spotlight/fabiyi-opeyemi.jpg
pronouns: he/him
location: Lagos, Nigeria
jobTitle: Senior Analytics Engineer
jobTitle: Analytics Manager
companyName: Data Culture
organization: Young Data Professionals (YDP)
socialLinks:
- name: Twitter
link: https://twitter.com/Opiano_1
- name: LinkedIn
link: https://www.linkedin.com/in/opeyemifabiyi/
dateCreated: 2023-11-06
dateCreated: 2024-11-02
hide_table_of_contents: true
communityAward: true
communityAwardYear: 2023
communityAwardYear: 2024
---

## When did you join the dbt community and in what way has it impacted your career?
Expand Down
Loading

0 comments on commit fdca973

Please sign in to comment.