Roche’s Maxim of Community

Roche’s Maxim of Community states:

A community is defined by the behaviors it tolerates.

I played the “maxim” card already a few months ago, I think it’s time to play it one more time, because this is another succinct formulation of a fundamental principle, general truth, or rule of conduct that I need to share[1].

An AI-generated image of a diverse group of people attending a conference

As you read this you might be thinking about the recent change in leadership at Twitter, and how the new leadership is inviting in and promoting prominent neo-Nazis, insurrectionist leaders, and other extremist, anti-democracy, and authoritarian figures, and how more and more members of the technical community are turning their backs on this now-sullied social network. I’m thinking about this too, but I’m also thinking more broadly because any maxim needs to be broadly and generally applicable.

So let’s start with a few examples. If you’ve made it this far I hope you stick with me for the rest.[3]

I’m part of of the global Historical European Martial Arts (HEMA) community. I love training and fighting with swords, and I love the camaraderie that can be found through martial arts and combat sports. When your community activities bring with them a direct risk of serious injury, it’s important to be able to trust your training partner, your sparring partner, and your tournament opponent to keep your safety in mind.

Back in 2017 I competed in a tournament organized and by a HEMA club with an established “Cobra Kai” reputation. I attended with a clubmate who is a fantastic swordsman and all-around martial artist. I was competing in open tournaments. He was competing in the advanced invitational tournament that included the head coach of the organizing club. The invitational tournament was also refereed and directed by members of that club. Yeah.

During the match between my clubmate and the coach of the club running the tournament, that coach exhibited the unsafe and unsportsmanlike behavior that earned him and his club their reputation.

I was in my clubmate’s corner both coaching and taking video. At the end of the day I shared the video[4], and it started making the rounds on HEMA groups on Facebook. Even though “sharing tournament footage so fighters and clubmates watch and learn” is pretty standard behavior, this one caused some waves and started some difficult conversations. I don’t believe that the video showed anything surprising – this was the behavior everyone knew about already, and which they talked about behind closed doors. The video simply shone light on it, and made it harder to ignore, or to pretend you didn’t know.

I started avoiding events where this club was involved. I didn’t make a big deal about it, but when people asked me why I wasn’t going back to a tournament where I’d competed the previous year, I was honest in sharing my reasons. Fast forward to the HEMA event circuit starting back up in 2021, this club is no longer involved in multiple tournaments that they previously ran. Several of their most senior and prominent members have left the club, and started their own.

I’m a pretty small part of the HEMA community, so I doubt my personal actions had that big of an impact – but I know they were part of this positive change. I saw behavior I would not tolerate and I voted with my feet. Others did the same, and the community evolved and grew.

Progressive and inclusive HEMA clubs like Valkyrie Western Martial Arts in Vancouver, BC and London Longsword Academy in London, UK demonstrate this maxim in a positive and proactive way. I’ve already written previously about the aggressive inclusivity that pervades Valkyrie’s culture, so here I’ll focus on a few aspects of London Longsword Academy[5] and their Fighters Against Racism (FAR) initiative.

As the FAR page says, Fighters Against Racism is a reaction to the “unpleasant element” in the HEMA community. If a club displays a FAR poster or banner, people who are offended by anti-racist statements will feel unwelcome – which they are. If a fighter wears a FAR t-shirt or patch to a tournament, they’re sending a clear message to everyone there what they believe, and that they are confident that this belief will be accepted and welcome at the event. My FAR t-shirt[6] is pretty successful at attracting YouTube comments, but so far I’ve never been confronted in person.

A community is defined by the behaviors it tolerates.

If you’re reading this blog (and I have every reason to believe that you are) you’re probably more interested in data and technology than in swords. My next example is more recent, where in August of last year[7] there was an online discussion about the need for codes of conduct at conferences and community events. My tweets have since been deleted, so I’ll reproduce the thread here, starting with the same warning: foul language later on.

The phrase “doesn’t need saying” is a red flag for me when it comes to conversations about communities, events, and codes of conduct.

If it “doesn’t need saying” that certain behaviors are not acceptable, there is no need to not say it, because no one will be offended or feel targeted, right?

For example (here comes that foul language) it probably doesn’t feel necessary to have a “no shitting on the carpet” rule, because who would ever do such a thing? This just “doesn’t need saying,” does it?

But if there was ever one time when someone did shit on the carpet and no one did anything about it, you might start to reconsider. Maybe we do need to be explicit in saying “no shitting on the carpet” for the next event.

What if it wasn’t just one time? What if after your event people were talking about how someone shit on the carpet… they just weren’t talking about it in front of you because your inaction signaled that you were ok with that sort of thing? Might a code of conduct be in order?

Or would it be better to say “I didn’t see the shit on my carpet” or “I couldn’t smell it from where I was” or maybe even “it was just that one time, and the person who did shit on the carpet is an important member of the community”?

What if the idea of a code of conduct feels like a slippery slope? If we tell people they can’t shit on the carpet, what is next? Telling them they can’t shit on the hardwood floors? On the tiles? Telling them they can’t piss on the carpet? Where does it all end???

A community is defined by the behaviors it tolerates. If a community organizer says “this problem isn’t important” that sends a very strong signal – and not a virtuous one. It says “this behavior is ok and I will permit it to continue.”

A community is defined by the behaviors it tolerates. If a community organizer says “this problem doesn’t affect me, so it isn’t a real problem” that sends a strong signal too.

A community is defined by the behaviors it tolerates. If a community organizer says no, this is not ok, this is our code of conduct, and these are things that we simply will not accept, that sends a signal. A virtuous one.

This “virtue signaling” will be heard by the people who have a history of (literally or figuratively) shitting the the carpet, and they’re not going to like it. They might stop participating, and they might make trouble and noise on the way out.

Because the reality is that far too many events in far too many communities have allowed shit on the carpet for far too many years. We’ve just pretended that it’s not a problem, because the people doing the shitting are well-known for other things, and because the people who stepped in the shit generally left in disgust without saying anything. Does it really need saying that you’re not allowed to shit on the carpet? Yes. It does. Your code of conduct is an explicit statement about the behaviors you will tolerate.

You don’t need to be perfect, but being willing to change is a prerequisite to positive change. Admitting that there is a problem is the first step to solving the problem. FFS. /thread

When I wrote that thread in 2021 I was thinking about that HEMA tournament from 2017, where the community event organizers were complicit. Thankfully, the thread was in response to an announcement by the organizers of Data Grillen, DataMinutes, and New Stars of Data posting about their code of conduct. These folks (in this case it was the always incredible William Durkin) know what type of community they want to build, and they were unwilling to back down when a few dudes[8] took umbrage with the news.

Earlier this year, renowned C++ developer, consultant, and speaker Patricia Aas stood up and spoke out when her community continued to welcome an organizer and speaker who was convicted of serious sexual crimes. She made it clear that her community’s milquetoast response was intolerable to her, and she made her voice heard, even though it was likely that this would impact her ability to participate in a community she had helped grow.

Warning: There’s some additional profanity ahead.

I mention this example not because I was personally involved, but because it feels like a concrete canonical example of so many similar stories. There’s some guy. He’s been around forever, and has made serious positive contributions to the community. He’s use these contributions to build a clique, a power base, a center of social gravity and influence that’s about him, not about the community.

When it comes to light that he’s using his power and influence for ends that run contrary to the community’s stated goals and culture his clique stands up for him, often supported by the actions or inactions of those not directly harmed by the guy’s actions.

“Think about all that he’s done for the community,” comes the familiar refrain. “Think about how much good he’s done, and how much we’d lose if not for his contributions.”

Fuck that. Fuck that, fuck him, and fuck his supporters.[9]

Instead, think about how much the community has already lost and will continue to lose because of him. Everyone he has harmed, everyone he has driven away from the community, everyone who has considered joining the community but was repulsed by his behavior and the community’s acceptance of his actions. Think about what each of these people could have contributed.

A community is defined by the behaviors it tolerates. This is why codes of conduct are important.

A community is defined by the behaviors it tolerates. This is why it is important to speak up when you see someone behaving in ways that violate the community’s written or unwritten rules.

A community is defined by the behaviors it tolerates. This is why it’s important to hold the powerful to account, and to hold them to a standard that is at least as high as the one by which the powerless are judged.

A community is defined by the behaviors it tolerates. Your participation in a community is a statement of your acceptance of the behaviors taking place in that community. It doesn’t matter if you weren’t the abuser, if you weren’t directly causing harm, if you weren’t actively shitting on the carpet yourself.

A community is defined by the behaviors it tolerates. Your participation in a community is a statement of your acceptance of the behaviors taking place in that community. If you’re at a party and someone walks in wearing blackface, wearing a white hood, wearing a swastika armband, you get to choose if you leave or if you stay. But if someone wearing a swastika armband joins the party[10] and you do decide to stay because they’re not personally bothering you – congratulations, you chose to attend a Nazi party.

A community is defined by the behaviors it tolerates. What behaviors do you choose to tolerate in your community? Does your community reflect your values or is it time to leave and join/start something better before you get shit on your shoes?

Wow. This ended up much longer than expected. Thank you for staying with me until the end. As is the case with Roche’s Maxim of Data Transformation there’s not really anything new or unique here. I’m saying something you probably already knew, and which was completely obvious once written down – and I took 100 pages to say it. Despite this, I believe it’s important to put in writing, and important to think and talk about, especially these days.

A community is defined by the behaviors it tolerates. Why not find me on Mastodon?


[1] I also haven’t published a blog post since July. The more technical topics I’ve been fermenting aren’t quite ready to be served, and I don’t want the whole month to pass[2] without finishing something.

[2] LOL @ Past Matthew who wrote footnote 1 in August 2021 (and who wrote footnote 2 in December 2021).

[3] Each example is based largely on my personal real-world experience, but deliberately avoids any names or details that would be obvious to people who weren’t already involved. I believe there is a time and a place to “name and shame” but I don’t believe this post is the right place, and I don’t want to encourage any sort of pile-on.

[4] I’m not going to link to the video here, but if you’re motivated you can find it on my personal YouTube channel. It’s the one with the very high view count and with comments disabled.

[5] London Longsword Academy is run by my dear friend David Rawlings, who often reminds us that he is “not straight, but still a great ruler.”

[6] Yes, you can buy one too.

[7] Yes, way back when I started writing this post.

[8]  It’s always dudes, isn’t it? Do better, my dudes

[9] That was the profanity I warned you about. I’m done now. Ok, almost done.

[10] Particularly if they’re personally invited and welcomed by the host of that party.

The Unplanned Career

If you’ve worked in tech for 25 years, you’ve seen some stuff, and you’ve learned a lesson or two. On October 1st, I presented a new session at Data Saturday Atlanta, sharing the story of my unplanned career, and some of the lessons I’ve learned along the way. This was the first time I presented this very personal session; and I’m incredibly grateful for the full crowd that attended, and for their feedback after the session.

My primary goal for the session is to show that you don’t need a computer science degree to build a successful career in tech – and that our industry needs more people from more non-traditional backgrounds.

My secondary goal for the session is to share some of the sharp edges that are typically hidden when people talk about their careers. Everyone wants to share their highlights, but sharing your own pain and failures is harder. This is important, because too often we’re each comparing our own blooper reel against everyone else’s highlights… and nothing good comes from that.

The Data Saturday event was in-person only[1], but I’d had a bunch of people mention they wanted to attend, but couldn’t make it to Atlanta. So…I packed a camera and microphone and recorded the video on my own.

If you weren’t able to attend, please check out the recording, and please let me know what you think!


[1] Please understand that there is no criticism implied here. Organizing a hybrid event is significantly more difficult than organizing an in-person or online-only event, and focusing on in-person community produced wonderful results.

Join me in London for SQLBits – March 8 through March 12

In less than two months I’ll be making my first work trip in over two years, flying to London to present, meet with customers, and learn exciting things at the 2022 SQLBits conference. If you can, you should register today and join me.

Here’s what I expect my week to look like:

  • Wednesday March 9, 09:00 to 17:00: I’ll be back on stage for The Day After Dashboard in a Day pre-conference learning day, co-presenting with Patrick LeBlanc, Alex Powers, and Lars Andersen.
  • Thursday March 10, 14:10 to 15:00: I’ll be joining SQLBits organizer and MVP Simon Sabin for the Maximising everyone’s super powers panel discussion on mental health.
  • Thursday March 10, 18:15 to 19:05: Prathy K from the London Power BI User Group has organized an evening “ask me anything” open Q&A session with a bunch of folks from the Power BI CAT team, which sounds like a perfect way to end the day. You can register for this evening meetup here.
  • Friday March 11, 13:40 to 14:00: I finally get to present on Roche’s Maxim of Data Transformation for a live, in-person audience, and I get 20 minutes to do it!
  • Friday March 11, 14:10 to 15:00: The BI Power Hour returns after a two-year pandemic hiatus, guaranteeing laughs and excitement[1] in a demo- and joke-filled exploration of how not to use Microsoft data technologies in the workplace. I’ll be joined by an international star-studded cast from the Power BI CAT team and the Microsoft data community, and I expect this session to be the can’t miss event of the decade.[2]
  • Saturday March 12, 08:00 to 08:50: I kick off the final day of the conference with Unleashing your personal superpower, an honest and sometimes-painful look at how to succeed in tech, despite your brain’s best efforts to stop you. I’m very excited to have this important session scheduled on the free-to-the-public day of the conference.

When I’m not on stage, I’m hoping to spend as much time as possible at the Microsoft product booth and the community zone. Conferences like SQLBits are an opportunity to have interesting conversations that can be an awkward fit for virtual channels, and I plan to get the most from my week as possible.

Update February 10: I’m planning to be in the community zone on Thursday afternoon immediately following the mental health panel discussion so we can keep that conversation going. I’m also planning to be back on Friday morning at 10:10 to talk about non-traditional career paths. If either of these conversations sounds interesting to you, you should plan on joining me.

Update February 12: My Saturday session has been moved from the end of the day to the beginning of the day. With this change, I can now have more time to hang out in the community zone on Saturday to continue the discussion.

If you’re in the London area – or if you can get there – and if attending an in-person event matches your personal risk profile, I hope you’ll register today and come say hi during the event. I’ll be the purple-haired guy with the mask on.

If you can’t come to London, I hope you’ll still register and attend. Most sessions are hybrid with virtual attendees welcome and included.


[1] Not guaranteeing that you will laugh or be excited. I’m just thinking about me here.

[2] Thinking back on the decade in question, this isn’t as high a bar as it might otherwise seem.

Simplifying the solution domain

My recent posts have focused on the importance of understanding both the problem domain and solution domain in which you’re working, the value of operating in both the problem domain and the solution domain, and some specific resources and techniques for solution-oriented practitioners to increase their fluency in understanding the problem domain. A lot of the message I’ve been trying to get across in these posts can be summarized as “the problem domain is really important, and we need to get better at appreciating and understanding the problems we work to solve.”

This message is predicated on two basic assumptions:

  1. You, the reader, are a technical professional of some sort[1], and you need to deliver technical solutions to people with problems
  2. The people who have problems can’t solve those problems on their own

Let’s look more closely at that second assumption, because it’s becoming increasingly less valid, and less true. And let’s look at it through the lens of… furniture.

Close your eyes and imagine for a moment that you need a table. Let’s say you need a bedside table. What do you do?

As you read through this list you were probably evaluating each option against your own requirements and preferences. Odds are you’ve chosen one or more options at some point in your life. Odds are the criteria you used to decide which options are viable or preferable have changed as your circumstances, skills, and budget have changed.

I couldn’t find Ikea instructions for a bedside table, but honestly I didn’t try very hard

Of course, the decision doesn’t need to be about a bedside table. It could be about a dining room table, or a bed, or a full set of kitchen cabinets. Each option will have different but similar choices, and you’ll likely use different criteria to evaluate and select the choice that’s right for you.

This is also true if the choice is about business intelligence solutions, which may not technically be considered furniture[2]. Close your eyes once more and imagine for a moment that you need a report, which may or may not include a table.  What do you do?

  • You could use an existing report
  • You could start with an existing report and customize it
  • You could start with an existing dataset use it to build a new report
  • You could start with an existing dataset, customize it using a composite model, and use it to build a new report
  • You could work with a center of excellence or BI team to create a dataset, customize a dataset, create a report, or customize a report to meet your needs
  • You could locate or create data sources and build a custom BI solution end-to-end, maybe getting some help along the way if you don’t already have the tools and expertise required for the project

The parallels are easy to see, and they hold up surprisingly well to closer inspection. Just as ready-to-build options make it possible for someone with no woodworking or cabinetry skills[3] to self-serve their own furniture, DIY BI tools[4] like Power BI make it increasingly easy for someone with no data preparation or data modeling skills to build their own BI solutions.

To step away from the furniture analogy, tools like Power BI simplify the solution domain and make it easy for problem domain experts to solve their own problems without needing to become true experts in the solution domain.

Any finance or supply chain professional can use Power BI Desktop to build reports that do what they need, without needing to ask for help. Their reports may not be the most beautiful or best optimized[5],  but maybe they don’t need to be. Maybe “good enough” is actually good enough. Just as it might make more sense to buy a $40 Ikea bedside table instead of spending hundreds or thousands of dollars on something fancier, it might make sense to stack a few milk cartons on top of each other and call it good, at least until you can save up for something better[6]. There is no one size that fits all.

If you are a Power BI professional, it may be difficult to think of the “boards and cinderblocks bookshelf” approach as acceptable, but in most circumstances it’s not up to you to decide. The tools for DIY BI are widely and freely available, and people will use them if they present the most attractive and accessible option to solve their problems. You can’t stop them from building DIY solutions, but you can help them build better ones.

This is where having an effective and engaged center of excellence comes in. Whether you think in terms of problem and solution domains, or in terms of enabling DIY through readily available tools and guidance[7], you can help make “good enough” better by meeting your problem domain experts where they are. They have the tools they need to get started building their own solutions, but they probably need your expertise and assistance to achieve their full potential.

You should help them.


[1] Probably a Power BI practitioner, but who knows?

[2] I have repeatedly seen Power BI referred to as a “platform” which is basically the same thing as a table, so I’m going to withhold judgment on this one.

[3] Someone like me! I married a carpenter and have never found the motivation to develop these skills myself.

[4] DIY BI has a ring to it that SSBI doesn’t have. Why don’t we start using DIY BI instead. DBIY? D(B)IY? D(BI)Y? Hmmm…

[5] They may indeed be the Power BI versions of my DIY home improvement projects.

[6] Please raise your hand if you too had bookshelves made of random boards and cinderblocks when you were in college, and were also happy with the results.

[7] This is the second place in this post where I’ve shared a link to this Marketplace story. If you run a Power BI COE for your organization, do yourself a favor and listen to the story – it will inspire you to think about your COE in different ways.

Please help make Microsoft Teams more accessible

If you’re in a rush, please skip reading the post and instead vote on these two Microsoft Teams feedback items:

  1. “Please stop blinking” – requesting an option to disable the near-constant blinking of the taskbar button for the Windows app for Teams
  2. “Request User-Level Option to Disable GIF Autoplay” – this one is pretty self-explanatory

Thank you for your votes and comments!

Now on with the post…

I’ve blogged previously about the importance of diversity, including the importance of having a diverse team when building software. I’ve even posted about  specific accessibility challenges with the collaboration tool many of use every day – Microsoft Teams.

And in this context, I am requesting your help.

Last week I shared this quick Twitter poll, and over the course of a day I learned that my challenges with Teams’ default behavior – turning the taskbar button orange and blinking every time there’s activity in the app – are not just mine. Nearly 100 people responded to the poll, and over two thirds of them identified this behavior as a challenge for them as well[1].

For me, this constant flashing is like having someone scream at me all day along. If I’m having a challenging anxiety day, it’s even worse. Judging from the replies on Twitter, I’m not alone in this regard either. And because more and more functionality is being delivered via Teams, it’s not like we can simply close the app to make the blinking stop.

I’ve discovered an undocumented and unsupported hack that appears to solve this problem for some users, but it doesn’t appear to work for everyone. Also, it’s an awful hack that’s about as user-friendly as watching YouTube on your Peloton bike…

If this behavior is a problem for you, please take a few moments to vote up on this feedback item, and to add a personal comment as well. The Teams product team needs to hear from their users to understand what’s important, and this is apparently were they’re listening.

Thank you!


[1] This is a pretty vague interpretation of the poll results, so I’ve included the Twitter poll so you can keep me honest.

 

Thoughts on community

This post is mainly a story about how community has affected my career, and how it might affect yours as well. The post has been sitting in my drafts for a few months waiting for inspiration to strike. That inspiration came in this recent[0] data culture video where I talked about communities of practice inside enterprise organizations, and the ways that positive behaviors can be promoted and encouraged for these internal communities of practice – because the same patterns often apply to public communities as well.

So let’s talk about community.

No, not that Community. Technical community. Community like this:

hand-1917895_640

I started off my tech career as a Microsoft Certified Trainer (MCT) in 1996. I spent much of the next decade as a trainer, mentor, and consultant, but even though I was learning and growing year after year, the pace of that growth felt slow. I quickly became a medium-size fish in a tiny pond[1] and that was pretty much that. My career growth was limited in part by the company I chose to keep.

To be fair, there was an online[3] MCT community where I would often lurk and occasionally post, but I never took real advantage of it. I didn’t feel confident enough to post often, and for some reason traveling to a conference or other in-person MCT event just didn’t feel like something that was available to me – this was something that other people did, not something I could do.[4]

In late 2004 I started thinking about getting back to more training after a few years focusing on software development and consulting. I decided that the upcoming SQL Server 2005 release would be a great opportunity for making this change. Microsoft had made available to MCTs the preview versions of two “What’s new in SQL Server 2005” courses – one for developers and one for admins – and I was going to get certified to teach these courses as soon as they were available to offer. I’d been working with SQL Server since version 6.5, and much of my consulting work included developing solutions on SQL Server 2000, so this was a logical direction that matched my experience, skills, and interest.

To make a long story slightly less long – and because I’ve shared some of the details while this post was sitting in my drafts – that focus on SQL Server 2005 was my jumping off point to become an active member of the MCT and SQL Server communities. I was still doing many of the same things I’d been doing all along, but now I was doing them where more people could benefit, and where more people could see me doing what I did. And people noticed.

People noticed that I knew what I was talking about on technical topics, but mainly people noticed that I engaged in a constructive and helpful manner. That I gave more than I took.[5]

And this brings us to the concept of visibility from that earlier blog post, and the opportunity that comes from being seen kicking ass – being seen doing the great work you do every day. For me, being actively engaged in the MCT community led to my first job at Microsoft. People who knew me because of my community involvement let me know that there was a job I should apply for, and they put a referral into the internal HR systems to make it more likely I would get called for an interview[6], and the rest is history.

For you, being actively engaged in your community – whether it’s the Power BI community or something else – will likely mean something very similar. The details will be different because the context is different, but adding your voice to the communities you frequent is how you let the community know who you are and what you do.

When you answer questions – and when you ask them too – other members of the community will begin to understand what you do, and how you work. When you write a blog post or record a video, more people will begin to understand how you think, and how you communicate. They’ll learn from you, and they’ll learn about you.

This is good.

As more people learn about who you are and what you do, and as more people begin to see and value your contributions, they’ll start thinking about how awesome it would be if you could contribute more directly to their projects and products. For me this meant being asked more frequently to teach SQL Server and SSIS classes, and an increased volume of inquiries about consulting availability.[7] I had more opportunities for more interesting and better paying work because of my engagement with the community, and it changed my life for the better in many ways.

For you it will look different because the context is different, but you can follow the same pattern. Your contributions to the community organically become your resume[8], your marketing web site, your demo reel. Potential employers and potential clients[9] will have a more complete picture of how you work than a job interview can provide, and that can make all the difference.

Implied in this pattern is the positive nature of your community contributions. If you’re a bully or a gatekeeper or engage in other types of abusive behavior… people notice that too. This can become its own opportunity for improvement, because if you’re more mindful about presenting the side of you that you want people to see, the more likely you are to become that better version of yourself.[10]

Engaging with the community changed my life. It can change yours too.


Interesting side note on timing: I joined Twitter ten years ago this month.

At that time I had just accepted a position on the SQL Server Integration Services  (SSIS) product team, and had asked one of my new colleagues where the SSIS community was centered, and he pointed me there. The rest sort of took care of itself…


[0] Referring to this data culture video as “recent” gives you some insight into how long this post languished in draft form after the introduction was written.

[1] This is kind of like saying “big fish in a small pond” but self-aware enough to realize I’ve never been a large fish on any scale.[2]

[2] I am so sorry, and yet not sorry at all.

[3] Two words: Usenet newsgroups.

[4] I’ve thought about this a lot in the intervening years, and believe that the root cause was probably a combination of my rural, poor, opportunity-sparse upbringing, and my mental health challenges, but I doubt I’ll ever know for sure.

[5] I’m generalizing here, and making some big assumptions based on the available evidence. This is what I think people noticed based on the way that they reacted, but only a handful said so. Of course, they typically said so when offering me work…

[6] This is something I have done a few times over the years myself, and there’s no better feeling than knowing I played some small part in helping Microsoft attract new talent, and in helping a member of the community achieve their career goals.

[7] For me it also meant that I roughly doubled my billing rate over the course of 18 months. I had so many inquiries that I was turning down almost all of them because I didn’t have the bandwidth to say yes, and decided to take advantage of the laws of supply and demand.

[8] This 2016-era post from MVP Brent Ozar presents a much more prescriptive approach to this theme.

[9] And potential employees as well, in the fullness of time.

[10] And let’s be honest – if you’re an insufferable asshole who refuses to change, participating in a community is a great way to let people know, so they can know that you’re someone they should avoid hiring, interviewing, or contracting. This is also good.

A hat full of of dataflows knowledge

Life and work have been getting the best of me this month, and I haven’t found the time[1] to keep up on blogging and video now that my series on building a data culture has wrapped up. I’ve been watching the dataflows and Power Query teams releasing all sorts of exciting new capabilities, and realizing that I’m not going to be writing about them in a timely manner.

Thankfully Laura Graham-Brown is picking up the slack – and then some.

Laura is a Microsoft MVP whose “Hat Full of Data” blog has become one of my favorite morning reads, and whose YouTube channel seems to include all of the videos I’ve been thinking about making, but not actually finding the time to make them.

Like this one on the new Power Query Online diagram view that is now available in public preview for dataflows in Power BI:

If you’ve been waiting for new dataflows content, you should definitely head over to Laura’s blog today to check out the awesome work she’s been doing.

I hope to be writing more regularly in December after my work-related “crunch mode” has passed, but if 2020 has taught me anything[2] it’s that I have no idea what’s waiting around the corner. In the meantime, you should follow Laura, because she’s doing awesome work.


[1] Or the spare creative mental energies, which seem to be in sparser supply than spare minutes and hours.

[2] If 2020 has taught me anything, it’s that 2020 has taught me nothing.

Data Culture: Community champions

What would an epic battle be without champions?

Lost. The epic battle would be lost without champions.

Don’t let this happen to you battle to build a data culture. Instead, find your champions, recognize and thank them, and give them the tools they need to rally their forces and lead them to victory.

Let’s do this!!

Despite what the nice short video[1] may lead you to believe, it’s not absolutely necessary to provide your data culture champions with literal swords[2]. But it is vital that you arm[3] them with the resources and connections they need to be successful.

In any community there will be people who step up to go the extra mile, to learn more than they need to know, and to do more than they are asked. These people are your champions, but they can’t do it all on their own. In the long term champions will succeed or fail based on the support they get from the center of excellence.

With support from the BI COE, champions can help a small central team scale their reach and impact. Champions typically become the primary point of contact for their teams and business groups, sharing information and answering questions. They demonstrate the art of the possible, and put technical concepts into the context and language that their business peers understand.

This is just what they do – this is what makes them champions.

An organization that’s actively working to build a data culture will recognize and support these activities. And if an organization does not…


[1] This video is about 1/3 as long as the last video in the series. You’re very welcome.

[2] But why take chances, am I right?

[3] See what I did there? I shouldn’t be allowed to write blog posts this close to bedtime.

Data Culture: Showcasing the Art of the Possible

The last post and video in this series looked at the broad topic of training. This post looks at as specific aspect of this topic: letting people know what is possible, and sparking their imagination to do amazing things.

A lot of content and training materials will focus on capabilities: here is a feature, this is what it does, and this is how you use it. Although this type of content is important, it isn’t enough on its own to accelerate the growth of a data culture.

The most successful organizations I’ve worked with have included in their community of practice content specifically targeting the art of the possible. This might be a monthly presentation by community champions across the business. It might be someone from the center of excellence highlighting new features, or the integration between features and tools. The most important thing is planting the seed of an idea in the minds of people who will say “I had no idea you could do that!”

My colleagues Miguel and Chris are some of my greatest personal sources of inspiration for building reports[1] because each of them does amazing things with Power BI that make it powerful, usable, and beautiful – but they’re just two of the many people out there showing me new techniques and possibilities.

Who will you inspire today?


[1] And by now you probably realize that I need all the inspiration I can get for anything related to data visualization.

Data Culture: Training for the Community of Practice

The last few posts and videos in this series have introduced the importance of a community where your data culture can grow, and ways to help motivate members of the community, so your data culture can thrive.

But what about training? How do we give people the skills, knowledge, and guidance that they need before they are able do work with data and participate in the data culture you need them to help build?

Training is a key aspect of any successful data culture, but it isn’t always recognized as a priority. In fact the opposite is often true.

I’ve worked in tech long enough, and have spent enough of that time close to training to know that training budgets are often among the first things cut during an economic downturn. These short-term savings often produce long-term costs that could be avoided, and more mature organizations are beginning to realize this.

In my conversations with enterprise Power BI customers this year, I’ve noticed a trend emerging. When I ask how the COVID-19 pandemic is affecting how they work with data, I hear “we’re accelerating our efforts around self-service BI and building a data culture because we know this is now more important than ever” a lot more than I hear “we’re cutting back on training to save money.” There’s also a clear correlation between the maturity of the organizations I’m talking with and the response I get. Successful data cultures understand the value of training.

I’ll let the video speak for itself, but I do want to call out a few key points:

  1. Training on tools is necessary, but it isn’t enough. Your users need to know how to use Power BI[1], but they also need to know how to follow organizational processes and work with organizational data sources.
  2. Training material should be located as close as possible to where learners are already working – the people who need it the most will not go out of their way to look for it or to change their daily habits.
  3. There is a wealth of free Power BI training available from Microsoft (link | link | link) as well as a broad ecosystem of free and paid training from partners.

The most successful customers I work with use all of the resources that are available. Typically they will develop internal online training courses that include links to Microsoft-developed training material, Microsoft product documentation, and community-developed content, in a format and structure[2] that they develop and maintain themselves, based on their understanding of the specific needs of their data culture.

Start as small as necessary, listen and grow, and iterate as necessary. There’s no time like the present.


[1] Or whatever your self-service BI tool of choice may be – if you’re reading this blog, odds are it’s Power BI.

[2] I’m tempted to use the term “curriculum” here, but this carries extra baggage that I don’t want to include. Your training solution can be simple or complex and still be successful – a lot of this will depend on your company culture, and the needs of the learners you’re targeting.