Introduction and Guest Overview
00:00:11
Speaker
Welcome back to the Policy Vis podcast. I'm your host, John Schwabisch. And on this week's episode, we are going to turn to issues around accessibility. We've already had a few discussions on the show about accessibility when it comes to data visualization. But on this week's episode, I'm really excited to have Elper Sarakaya on the show from the Microsoft Power BI team.
00:00:30
Speaker
I met Alper back in Vancouver last fall at the IEEE conference and we got to talking about all the types of different accessibility considerations Alper and his team have been working on when it comes to using the interactive dashboarding tool in Power BI. So I invited him on the show to talk more about his background, more about his work and the various types of ways that they think and try to implement accessibility considerations in the Microsoft tool.
00:00:56
Speaker
So I hope you'll enjoy that discussion. Before we get to that, just a couple of quick announcements.
Support and Engagement
00:01:01
Speaker
First, if you haven't heard, I've been hosting nearly daily short video chats with folks in the data visualization and presentation fields. I talk to them for about 10-15 minutes and then open it up for questions from you and other audience members. So it's a pretty casual discussion.
00:01:21
Speaker
It's an opportunity to talk and converse about issues that listeners of this podcast are probably all interested in. So if you are interested in talking with folks and understanding more about their work and just sort of connecting with other people in the field, come join us. I will link to the registration page on the show notes for this podcast.
00:01:45
Speaker
So the other last announcement is to, if you can, please support the show. Please let others know about it.
Accessibility in Power BI
00:01:52
Speaker
Please rate and review it on your favorite podcast provider, iTunes, Stitcher, Spotify, wherever you listen to your podcast. And if you would like to support the show financially, please head over to my Patreon page where you can get a little bit of swag and help defray some of the costs of transcription, web fees,
00:02:14
Speaker
recording services, all the stuff that I need to make this show each and every other week to bring to you. So I hope you'll enjoy this week's discussion with Alper and I hope you'll be able to use the outcome of our discussion in your own work when it comes to considering the accessibility needs of others. So here is our conversation. Hey Alper, how are you friend?
00:02:43
Speaker
I'm doing fantastic. How are you doing? I'm doing well. I'm doing well, hanging in there. Thanks for coming on the show. Happy to be here. Yeah, we've chatted about this in the past, but I wanted to share the conversation with others. This issue of accessibility is really important. We chatted, I think, at IEEE last fall. And I was impressed by the work you guys are doing there. So I wanted to chat and give you a chance to tell us about the work that you're doing and how you approach it and all of that.
00:03:11
Speaker
maybe we could just start. You can tell people a little bit about yourself and your background and what it is you do on the Power BI team over there at Microsoft. Sure. Yeah. My name is Alper Serakai. I work on the Power BI Creators team. We're basically responsible for the creator and consumer experience for reports built in Power BI.
00:03:38
Speaker
And the cool thing is that my role as a research and development engineer, I'm more or less the development owner of visuals. So how visuals talk to data backends, how they can be customized by users, how they can be modified or themed by the consumer or by the report author. And I came to Microsoft just about three years ago after earning a PhD in computer sciences from the University of Wisconsin, Madison.
00:04:07
Speaker
Um, and that's why we already, that's why we're already such good friends because of that. For sure. And so like, I, I love going to like the, the, the research conferences, even after, even though it's academically focused, like that's how I can like kind of maintain my connection to the data visualization research community. Uh, and so by concentration is more or less like, uh, summary visualizations and methods to summarize data.
00:04:34
Speaker
to emphasize the trends, the distributions and anomalies. Cause I think like visualization is a fantastic kind of data democratization tool. And if you can highlight the trends, the distributions of anomalies in the data, that can enable people to get more out of data. Even people that, you know, do not have the SQL or data munging skills. They can look at a visualization and they can see, hmm, what's that? And they can start querying the data themselves visually.
00:05:02
Speaker
Right. Most people I would think have Microsoft already, you know, they're already familiar with it. They're already working with it. So they have this sort of natural pipeline to be doing the sort of stuff that you can do in Power BI. Yeah, for sure. And so like Power BI, just like almost any other data munging tools such as Tableau or Quick or anything like that.
Data Integration and Single Source of Truth
00:05:21
Speaker
They have a bunch of connectors, so you can connect it to wherever your data is stored. For example, if you have your data in the Microsoft ecosystem already, of course, we make it super easy, even if you have lists and SharePoint.
00:05:35
Speaker
SharePoint access or examples of Microsoft tools that you don't have to be an expert to use. And it's pretty easy to just throw your data in there. So if you're like a small business and you're just trying to collect, oh, I know these things about these customers, I can just throw my data in an access or in a SharePoint list and Power BI can just happily connect to it. And the wonderful thing about
00:05:56
Speaker
Power BI is we have this power query tool that's built in so that'll actually do data joins for you so you can take some data from a SharePoint list over here and then some data from your transaction database over here and even data from a CSV over here and I'll just kind of bring it all together hook it all up and then you can start to see relationships between different sources of data but you know
00:06:19
Speaker
The idea is that you have like a, they always say a single source of the truth or a dashboard, which, you know, I may or may not agree with, but bringing all these components together so that you can see the trends in between them is really, really interesting. And especially that it's more or less a drag and drop tool. You don't have to do any programming. And I think it's absolutely wonderful.
00:06:44
Speaker
So can we talk about the work that you and your team have been doing on the side of accessibility and how you've tried to make the tool accessible for people with vision impairments or cognitive difficulties? You know, I'm just curious about, you know, what the tool can do and also how you think about these various types of accessibility issues. Cause there's a lot, and I think a lot of us who are trying to think about accessibility probably don't even know all the issues that we should be considering. Right. Yeah. And that's.
00:07:14
Speaker
Kind of the wonderful thing about being in a large corporation is that we have teams of people that are trying to ensure that we all follow inclusive design because if we were all trying to do it kind of ad hoc and just saying, Oh, what about this? What about that? That's kind of reactive. But, um, I think Microsoft has taken quite a proactive stance on this. And so they call this inclusive design and I think it's, it's absolutely wonderful.
00:07:38
Speaker
It's really the effort to break down the traditional barriers in technology products that prohibit easy access.
00:07:45
Speaker
to use our tooling.
Keyboard Navigation and Interaction
00:07:47
Speaker
And so this would include more or less supporting people of all types of vision, hearing, neurodiversity, learning, and mobility abilities, whether they are temporary, permanent, or fleeting. So the idea being that if you break your arm or not able to use your arm, those are modalities. We can support alternative modalities that don't require you
00:08:15
Speaker
to have the ability to use your own. So we really want to support multiple ways of getting at the data, multiple ways of being able to author reports and things like that. And I think when we go into the development and design of our features with the mindset that everyone has abilities and everyone has limits to those abilities, no one is perfect at everything. That kind of pushes us to designing multiple ways to get at information
00:08:43
Speaker
that people need multiple ways to get at the same solution, guidance in multiple fashions. And by doing all these things, we more or less make our tool, and then by extension, the reports and the dashboards made by our tool, inclusive to all people.
00:09:01
Speaker
So that's more or less like that, the higher level mindset. So since we own the tool that allow people to make dashboards and reports with visualizations on them, we can like bake in a whole bunch of already standard accessibility features into these resulting reports.
00:09:19
Speaker
So yeah, I think probably most people think of when they think about accessibility, they think about red, green color blindness. They think about maybe dual encoding. So if you have difficulty seeing different shades of colors, you have the number on top of the bar, the dot or what have you. So you can still see that, but.
00:09:35
Speaker
You are living more in a world of interactivity where being able to click and scroll and zoom in is, you know, it's sort of like crucial to the whole game. So how do you build those thought processes or those accessibility needs into the tool itself? So we have a couple of guiding principles.
00:09:55
Speaker
that I think our team more or less abides by. And one of the main things is that everything that can be done with a pointer, either a finger or a mouse, should be able to be done with a keyboard. There should be no part of the product that you shouldn't be able to tab to, to interact with, to multi-select, things like that. So some examples are when you're consuming a report, you have a bunch of visuals on a page.
00:10:21
Speaker
So this could be like a dashboard or something like that. And you can imagine this is a page describing the sales or something like that. You might have a bar chart in the top left corner. You might have a table in the bottom right corner. And in Power BI, everything is interactive by default. So if you click on a bar that represents, say, the state of Oregon, then it would filter the other visuals to only display data that pertains to the state of Oregon.
00:10:46
Speaker
And so with a mouse or a pointer, you can click on the data bar that represents Oregon and it would filter all the other visuals. Well, we want to make sure that everybody can
00:10:56
Speaker
can filter the data and have this interactivity. So we devised basically a standardized approach for making our visuals keyboard accessible. And so we did that for all 31 of our core visuals, and we essentially came up with a standardized way to interact with these visuals. You can tab through all the visuals, and then if you decide that you want to enter a visual, you want to explore a visual,
00:11:24
Speaker
you can do a special keyboard shortcut in Power BI, it's control right arrow, and that will push the focus into the visual. Now you can start interacting with the visual elements inside that visualization. So you have the option of going through visual elements in the plot area, or you have the ability to navigate on the items on a categorical axis. So this could be, I want to tab through all the little dated labels,
00:11:52
Speaker
on the x-axis of column chart. So I tab over there, I hit enter. Now each individual data label is selectable. I can tab through it and then find the state of Oregon. And of course all this stuff is being read out by the screen reader and explaining where you are in this hierarchy. Then I could hit enter on Oregon and immediately everything else on the report updates.
00:12:16
Speaker
It's kind of a hierarchical navigation, enter to go in, escape to go out. So when I'm down at this access label state, I can escape, I can navigate over to the plot area, I can hit enter. Now I can select any of the bars, I can hit tab and
00:12:32
Speaker
The same information that comes up in the tool tip when you hover over a data point is right out by the screen reader. So we have this information. We can just expose it in multiple modalities. And I think that way that we've done it in that we bake all this stuff into the definition of the visual or how the visual is rendered, now all of a sudden everybody gets this functionality. You don't have to do anything special when you author reports to enable
Color Vision and AI Enhancements
00:12:59
Speaker
this functionality. It's just there by default.
00:13:02
Speaker
Right. And so when people are making their dashboards or their reports in Power BI, are there other helper functions that help them think about accessibility? So I'm thinking about the basic one, which is color vision issues. So aside from red and green, there's color contrast. So it's easy for me to go into Power BI and make something that I could pick colors that aren't going to work for everybody.
00:13:27
Speaker
Are there guides built in that help people make better decisions on that? Or is that really left to the user to consider these issues? Yeah, so issues like this, we tend to leave a little bit too wide open. So we added the ability to customize the theme. And I will say that all of our built-in themes are checked for these deficiencies, to be supportive of color vision deficiencies.
00:13:57
Speaker
Just so you get this stuff out of the box, we provide the ability to customize the theme. You can actually start from one of these built-in themes as your starting point and then make customization. I don't like this font and things like that. That's fun. There are a number of external tools that our users and creators of visualization have used to ensure that the colors that they're choosing,
00:14:24
Speaker
are sufficiently discernible in many different situations. I will say that one of the most helpful things is alt text. And I'm sure multiple people, including Megan, who was on your show recently, was stressed, was that alt text can really be a very succinct way for you to explain what's going on in this chart. I more or less describe the way of keyboard interacting with the chart.
00:14:51
Speaker
It can be kind of cumbersome to go through each individual data point to figure out, is there an interesting trend here or not? Whereas alt text could give you an indication, is there a trend or is there some sort of indication of what's going on in this chart so I can decide whether it's worth my time to go and investigate point by point or category by category.
00:15:12
Speaker
So I wonder on that on the alt text part, I wonder in PowerPoint, for example, when I insert a photo now in the new version, the modern, most updated version of PowerPoint, when I insert a photo into PowerPoint, it gives me an option to add an alt text and there is some algorithm
00:15:30
Speaker
know, artificial intelligence running in the background that says this is a picture of an old man riding a bike or whatever it is, right? And it's trying to come up with what an alt text could be. Do you have that or is that something on the horizon where, you know, I create a scatterplot and it would prime me with something that says, you know, there's an upward slope to the relationship here or something like that? Yeah. Yeah. And I swear I didn't prime you on this question.
00:15:57
Speaker
We are building like AI capabilities into the products that we have like automatic insights for trying to find what causes my sales to go up in my company and I can explain it by particular dimension values. The wonderful thing about doing that work in the previous six months to a year is that it enables things like automatically generating alt text.
00:16:22
Speaker
Like describing the trends or the anomalies that are happening in this visual. So we have what we call restatements. So we have filter restatements. One of the most powerful things about Power BI is setting up these filter contexts. So that's essentially, I clicked on a data point.
00:16:40
Speaker
in one chart and they filtered all my other visuals on the page. So now I care about sales in the state of Oregon. There it is. And so on every visual right now, you have the ability to figure out what's filtering this visual. And it will say in plain English or plain text,
Dynamic Visualizations and User-Centered Design
00:16:57
Speaker
this visual is only showing data from the state of Oregon. Right.
00:17:03
Speaker
We're actually moving toward features that would help us restate what's happening in a visual. And so this is something we've heard a lot from our customers in that
00:17:16
Speaker
a consumer might not know how to read a scatterplot and that's totally okay. We don't expect everyone to come in with like professional visualization fluency and be able to understand how to use everything. If you see text there that restates what's going on in these charts, that is kind of a learning feedback loop. And we're in a wonderful place where we're creating the tools that both
00:17:42
Speaker
the authors use and the consumers use. So we can support authors by making better reports, but at the same time, we can support consumers that are looking at the reports that the authors created. And I kind of get this learning feedback loop just by looking at the visual, looking at this text, and they're like, oh, I can kind of see how that visual is elaborating on the point that's being made in the text.
00:18:04
Speaker
Yeah. And so I would envision, and I'm not promising because I was told not to promise, but that by taking this information, we can augment alt text in situations where the report author is elected not to put any custom alt text in. And also another benefit of this is that these reports are always updating. One of the main
00:18:31
Speaker
benefits of using a tool like Power BI is that it's connected to always on data sources. So when those data sources update, the visualization update.
00:18:40
Speaker
It's kind of untenable to ask the report author, hey, go update the alt text anytime the data updates because maybe there's a different trend or an anomaly showing up. Right. But the fact that it exists in some ways is not just about the end user, it's also about the creator and sort of priming them and reminding them. I think of two things really. One is the accessibility issue, but also
00:19:03
Speaker
You know that maybe the title of your graph should be telling the story. I mean it sounds like what you're working on and what all tech what good all text does is really tell the story of the graph and the data and yet a lot of people don't do that in there and their chart titles and annotation it sounds like.
00:19:21
Speaker
You know, this is kind of like a way to help people do that. Yes, I agree. And we are working on that front, too. And although I'm not sure how much I could say about that, what I will say is that like I'm a big subscriber of what Alberto Cairo, I believe, describes as being purposeful with your data visualizations.
00:19:38
Speaker
I'm a big sucker for use cases. So if anybody listening has use cases, I'm always game to hear them. But the idea being that I start with a page and I need to have a goal about what I'm doing with this page. What is this page going to tell whoever is looking at this report about? So if I start with a goal for this page, then that could be very purposeful that I'm putting this table in here in the top left corner because I want people to see details about the data. So like transactions, something like that.
00:20:08
Speaker
And I'm going to put the summary graph in the bottom right that's going to give me a high level overview of the locations in which I'm having sales. And because we have interactivity for free, I am expecting that people will go and filter.
User Feedback and Accessibility Improvements
00:20:24
Speaker
to individual regions so that data in the table can be more manageable. I don't want it to be seeing 10,000 rows of data there. I want people to be filtering the data by using, in Power BI, we call them slicers. They're basically just little dropdown menus that let you pick a few items. And now all of a sudden the table becomes manageable and I can start to see relationships. So being purposeful about the goals for the page or what tasks you want people to do with individual visuals.
00:20:54
Speaker
Yeah, like, I think the process of filling in all text to codify or always explicitly denote what you expect someone to do with this, the task that you want to do with it, even though it seems a little rote, but putting it down and seeing everything together can be extremely powerful, especially from a standpoint of self critique, I believe.
00:21:18
Speaker
Right. Yeah, that's a good point. So Alperon, this idea of case studies, have you or others on your team, or I guess others at Microsoft really, have they done focus groups or one-on-one interviews or exercises of people who have these physical or cognitive limitations using some of the accessibility tools in Power BI? Yeah. On the Power BI team, we actually have a research team.
00:21:43
Speaker
and they're not research in terms of academic research, but more in terms of user research. And so they're doing one-on-one interviews and kind of walkthroughs and think alouds with individuals that may have these cognitive or visual disabilities. And so we're kind of gathering feedback from those avenues, but also,
00:22:07
Speaker
When we sell Power BI to large companies that have accessibility requirements, they're a very great way of getting feedback because we want to get feedback from a large diverse group of people. And Microsoft is really good at having customer support channels and things like that. And so we can start connecting with people one-on-one and ensuring that we have the best of intentions when we create
00:22:36
Speaker
our features with the accessibility support, but sometimes we just don't quite nail it. The wonderful thing about Power BI is we have an extremely fast release schedule, especially as compared to old tech companies. We can push updates out in the matter of weeks. Since Power BI has both a desktop application component, which is mainly for creating reports and
00:23:02
Speaker
the Power BI service, which is essentially our cloud-based offering.
00:23:07
Speaker
When we make an update that supports one person, and that's generally our threshold, like should we prioritize this bug or not? It's basically, does one customer have this issue? We can support everybody within a matter of weeks, which is fantastic because as you may know, it's hard to get everything right in technology and you always have bugs coming up.
00:23:34
Speaker
A great thing about our team is that we prioritize accessibility bugs. So when they come in and we start getting indications that we might have screwed something up, we can start these one-on-one conversations.
00:23:48
Speaker
start to attack the issue quite rapidly. That's interesting. If someone with some sort of physical deficiency sends you guys an email and says, you know, I can't use or I'm having difficulty using this particular aspect, is the response then to write them back and say, can we have a conversation about exactly what the issue is and help us to understand that back and forth?
00:24:16
Speaker
Yeah, yes. And that's very, like a really neat part about my job, I think, is that we've, we started the, more or less, I hate the term vertical, but it's essentially an accessibility vertical. We have a PM that's very focused on accessibility. We have engineers that are very focused on accessibility. So, you know, it's everybody's job on the team to
00:24:41
Speaker
ensure that the features that they write are accessible. But at the same time, when you're trying to understand accessibility requirements, it's fantastic to have PMs and developers that are tuned in to these new use cases coming in so they can determine, okay, this is the particular or specific scenario that this user was running into. How can we generalize this so that everybody can benefit from it?
00:25:10
Speaker
And so that's how we kind of define our feature worker, I suppose, backlog work that's created. What do we do to solve this problem? And just like programming anything, there's many different solutions to solve the problem. And we tend to take the solution that generalizes the best, whether it's across multiple visuals or for multiple modalities or things like that.
00:25:36
Speaker
Like, we don't try to hard code for, okay, somebody using the line chart was having trouble selecting individual points. Let's fix it just for the line chart. So we got the concern that it was difficult to interact with the pie chart. We thought about, okay, how do we generalize the system to all of our charts? And so that's how we came up with our hierarchical keyboard navigation system that's
00:26:01
Speaker
generalized and the same for all visuals so that if somebody knows how to keyboard interact with one visual, they know how to do it for all the visuals. For all of them, right. Let me ask one last question. As you think about your creator base, the folks who are creating visualizations, are there things that you would encourage them to think about with respect to accessibility as they're creating their reports and their dashboards?
00:26:27
Speaker
Yeah, I would propose being more purposeful in designing reports and dashboards. And I think following the task-based design that I brought up before is a really good way of pushing that forward. And as part of that, I think that making charts that are purposeful in what they're trying to communicate would lead to good report design, but also in reports that are accessible.
00:26:51
Speaker
to end users. So this would be things such as when you're thinking about how somebody interacts with a report, you're thinking, maybe they should interact with this chart first to filter the data and then go to this table to see the details. Well, that just highlighted, in Power BI, you can change the tab order of visuals. So if I want the first visual for someone to interact with,
00:27:17
Speaker
to be the summary visualization that summarizes all the data on this page, I'll make that the first visual in the tab order. I can make the table the second thing in the tab order, and then maybe a button that lets me go see more details, the third item in the tab order. Right now, the tab order is based on the visual that you created first, which is okay, but the person that's creating the report most likely has the best idea of how someone should navigate through the data.
High Contrast Mode and Contact Information
00:27:46
Speaker
And so I think the two biggest things are the alt text and the tab order, just for someone to understand what's in this report and what can I do with each of these items. I think those are the two biggest things. And then one thing I suppose I haven't talked about.
00:28:05
Speaker
is our support for high contrast mode. And so this is a reduced color mode where we more or less take all the components in a report and collapse it down to four colors. And there's a gigantic challenge for us internally to make sure that everything with all these backgrounds and foregrounds and highlighted data colors and things like that remain legible when there's only four colors. But we've done all that work for you, which is the fantastic part.
00:28:34
Speaker
When you're picking colors, you don't have to worry about how does this look in high contrast mode because we more or less overwrite all your custom styles and make sure that it looks great in a high contrast mode. That's kind of one less thing that every port author has to worry about. Yeah, right, right.
00:28:54
Speaker
Um, well, this is really interesting and, um, thanks for coming on the show and sharing this. And I would guess from a lot of things that you said that you are actively looking for feedback and, um, and comments, especially from those who, who have maybe some of these accessibility issues. Yes, absolutely. Um, people can contact me directly. I'm on the internet at albert.dataV.is that's my personal website. You can see some contact information there and some of the work I've done, but
00:29:24
Speaker
For the team, we really look at ideas.powerbi.com a lot, and we use that to prioritize our work.
00:29:31
Speaker
If you have any feature suggestions, we comb through that weekly. And we look at the new issues that are coming up. We don't just look at the top hitters that have been there for years, but also the new things that are coming in, like additional feature requests. And we really do use that to prioritize our work. So if you want to get in touch with the team, that's a great place to start.
Conclusion and Call to Action
00:29:55
Speaker
That's great. I'll put those links on the show notes so people can get in touch and hopefully help you all improve the tool for everybody. So yeah, this is great. Thanks so much for coming on the show. I appreciate it. Happy to be here. See you later.
00:30:14
Speaker
And thanks to everyone for tuning in for this week's episode. I hope you enjoy it. I hope I will see you at the next Data at Urban Digital Discussion Series. And I hope you will consider rating or reviewing the show on your favorite podcast provider or going over to my Patreon page and helping financially support the show so that I can bring all of these guests to you each and every other week. So until next time, this has been the Policy Vis Podcast. Thanks so much for listening.