I’m going to go a different direction than I think most people will. I spend a lot of time learning new technologies in Azure, but I am also focusing on learning better presentation skills and improving my use of related technologies. Yes, that often means PowerPoint. But sometimes I do presentations directly in Power BI when I am presenting data or mostly doing demos. Building presentations requires tech, design, and speaking skills. And I enjoy that mix.
I enjoy presenting at user groups and conferences, and lately I’ve been branching out in the types of presentations I give. At PASS Summit this year, I delivered a pre-con and a general session, and I participated in a panel and the BI Power Hour. Each one required a slightly different presentation style.
Just like we may cringe when we go back and look at old code and wonder what we were thinking, I have the same reaction when I go back and look at old presentations.
As a data viz person, you would think I would be better at building engaging presentations since a lot of the data viz concepts apply to visual presentation, but it’s still a struggle and a constant endeavor to improve. I have made some progress to date. Below is a sample from a presentation on good report design practices in SSRS that I gave in 2015.
While it’s not the worst slide I’ve ever seen, it’s definitely not the best. Here are a few slides from my PASS Summit presentation called “Do Your Data Visualizations Need A Makeover?”, which cover the same topic as the above slide.
The new slides are much more pleasant and engaging. I have changed to this style based upon what I have learned so far from Echo Rivera’s blog and her Countdown to Stellar Slides program. I use more and larger images and less text on each slide. This naturally leads to having more slides, but I spend less time on each one. And there is less of a chance that I will revert to just reading from a slide since there is just less text. I get to tell you about what that one sentence means to me.
My goals is to learn how to deliver presentations that are more accessible and more engaging.
I blogged about accessible slide templates earlier this year. I got interested in accessibility when I was learning how to make more accessible Power BI reports. I want people to feel welcome and get something out of my talks, even if they have visual, auditory, or information processing challenges. So far, what I have learned is that I can be more inclusive with a handful of small changes.
To continue my learning about presentation delivery, I plan to:
And of course, I plan to give presentations so I can try out what I learn and improve from there. I have already submitted to SQLSaturday Colorado Springs, and I’m sure I will add more presentations next year.
If you have resources that have been particularly helpful in improving your presentation delivery, please leave them in the comments.
Azure Data Factory V2 allows developers to branch and chain activities together in a pipeline. We define dependencies between activities as well as their their dependency conditions. Dependency conditions can be succeeded, failed, skipped, or completed.
SSIS allows us to define expressions to be evaluated to determine if the next task should be executed.
SSIS allows us to choose whether we handle multiple constraints as a logical AND or a logical OR. In other words, do we need all constraints to be true or just one.
ADF V2 activity dependencies are always a logical AND. While we can design control flows in ADF similar to how we might design control flows in SSIS, this is one of several differences. Let’s look at an example.
The pipeline above is a fairly common pattern. In addition to the normal ADF monitoring that is available with the product, we may log additional information to a database or file. That is what is happening in the first activity, logging the start of the pipeline execution to a database table via a stored procedure.
The second activity is a Lookup that gets a list of tables that should be loaded from a source system to a data lake. The next activity is a ForEach, executing the specified child activities for each value passed along from the list returned by the lookup. In this case the child activity includes copying data from a source to a file in the data lake.
Finally, we log the end of the pipeline execution to the database table.
Activities on Failure
This is all great as long as everything works. What if we want something else to happen in the event that one of the middle two activities fail?
This is where activity dependencies come in. Let’s say I have a stored procedure that I want to run when the Lookup or ForEach activity fails. Your first instinct might be to do the below.
The above control flow probably won’t serve you very well. The LogFailure activity will not execute unless both the Lookup activity and the ForEach activity fails. There is no way to change the dependency condition so that LogFailure executes if the Lookup OR the ForEach fails.
Instead, you have a few options:
1). Use multiple failure activities.
This is probably the most straight forward but least elegant option. In this option you add one activity for each potential point of failure. The stored procedure you execute in the LogLookupFailure and LogForEachFailure activities may be the same, but you need the activities to be separate so there is only one dependency for execution.
2) Create a parent pipeline and use an execute pipeline activity. Then add a single failure dependency from a stored procedure to the execute pipeline activity. This works best if you don’t really care in which activity your original/child pipeline failed and just want to log that it failed.
3) Use an If Condition activity and write an expression that would tell you that your previous activity failed. In my specific case I might set some activity dependencies to completed instead of success and replace the LogPipelineEnd stored procedure activity with the If Condition activity. If we choose a condition that indicates failure, our If True activity would execute the failure stored procedure and our If False activity would execute the success stored procedure.
Think of it as a dependency, not a precedence constraint.
It’s probably better to think of activity dependencies as being different than precedence constraints. This becomes even more obvious if we look at the JSON that we would write to define this rather than using the GUI. MyActivity2 depends on MyActivity1 succeeding. If we add another dependency in MyActivity2, it would depend both on that new one and the original dependency. Each additional dependency is added on.
Do you have another way of handling this in Data Factory V2? Let me know in the comments.
If you would like to see Data Factory V2 change to let you choose how to handle multiple dependencies, you can vote for this idea on the Azure feedback site or log your own idea to suggest a different enhancement to better handle this in ADF V2.
The PASS Summit 2018 schedule has been published, and I’m on it twice! On Monday, November 5, I am giving a full-day pre-con with Melissa Coates on Designing Modern Data and Analytics Solutions in Azure. We’ll have presentations, hand-on labs, and open discussions about architecture options in Azure when building an analytics solution. If you’ve been wondering how your architecture should change when moving from on-premises solutions to PaaS solutions, when to use SSIS versus ADF V2, options for data virtualization, or what kind of data storage technology to use, we would love to have you attend our pre-con.
I also have a general session at PASS Summit: Do Your Data Visualizations Need A Makeover?. I’ll share the signs that your data visualizations aren’t providing a good experience for your users, explain the most common reasons why, and give you tips on how to fix it. Data visualization is a skill that must be learned and that we all should continue to sharpen. We’ll have some fun discussing common mistakes and looking at examples. This session is scheduled for Wednesday, November 7 at 4:45pm.
If you are on the fence about attending PASS Summit, I highly recommend it, especially if you have never been. There are so many benefits for data professionals:
Microsoft product and customer advisory teams have a large presence at the conference, so you can ask them questions and get advice.
The wide array of content allows you to go deeper on topics with which you are already familiar or to get an intro to a topic that is adjacent to your current knowledge that just wasn’t clicking for you by reading blog posts or books.
You get to meet data professionals from all over the world. You can make new professional contacts and friends with whom you can keep in touch afterwards.
If you are looking for a new job, it’s a great place to make connections.
You can talk to the speakers whose blogs you read and conference sessions you attend! If you spot your favorite speaker at PASS Summit, it is a great place to introduce yourself or ask a question.
There are lots of community events, including happy hours, game nights, and more.
There is always something to do for dinner, between receptions, sponsor parties, and friendly groups to tag along with.
SQL Karaoke is happening somewhere pretty much every night.
These benefits are most definitely real, not just over-hyped advertising. I have friends and colleagues of many years that I first met at PASS Summit. I first met Melissa Coates at PASS Summit, and now I work with her and present with her. And I got to help edit the Power BI whitepaper she wrote with Chris Webb (whom I also first met at PASS Summit – I fan-girled a little and asked for his autograph on his Power Query book the year it came out). I got job interviews after letting colleagues at PASS Summit know that I was looking one year. I had a blast singing karaoke with a live band at an evening event last year. I could continue this list for quite a while, but I think you get the picture.
It’s hard to please everyone, especially when everyone means several dozen speakers and thousands of audience members at a tech conference. And especially when it comes to presentations to an international audience. So I get that it can be difficult to make a presentation template that stays on brand and promotes the best presentation of information. But I see a continuing trend that conferences optimize templates for marketing and forget that we are trying to communicate to audiences of varying skills and abilities, many of whom have paid to attend the conference to learn the information in our presentations. I’m not here just to argue aesthetics, although I definitely have opinions on that. I want people to realize that we are unintentionally excluding many of our audience members with our horribly inaccessible slide templates. Accessibility refers to the ability for everyone, regardless of disability or special needs, to access, use, and benefit from everything within their environment. Yes, in many cases use of the conference template is not required, but many speakers will still use it. So the designer of the slide template should be thoughtful about their design more than just staying on brand with colors and conference logos. Basically, we can do better. We should be designing with accessibility in mind.
I’m going to pick on a template that I’m currently working with because it is from a conference that is near and dear to my heart, and it serves as a good example of how we can (and should) improve. Concrete examples seem to have more impact than just providing guidelines. While this year’s PASS Summit template is not the worst conference presentation template I’ve seen, it leaves a lot to be desired in the areas of effectiveness and inclusiveness. I’m writing this publicly to help educate our SQL Family about making better presentations that actually work for our audience. While it is criticism, it is said with love and hope that we can improve for future conferences. The speakers and organizers of PASS Summit are good people who strive to deliver a great conference. I know we can do better.
So what’s wrong with the template?
Let’s start with the title slide.
The title text is 36pt Segoe UI Light, the subheading text is 24pt Segoe UI, and the speaker info text is 14 pt Segoe UI.
Those font sizes alone make it very hard to read from the back of even the smaller rooms at the conference.
In addition to being too small, the gray text for the speaker info doesn’t have enough contrast from the white background. We want to get a contrast ratio of at least 4.5:1 (but 7:1 would be better). The contrast ratio for these colors is 4.0.
While sans serif fonts are generally thought to be easier to read in presentations, it’s better to use fonts with a stroke width that is not too thin – not necessarily wider characters, but thicker lines that make up each letter. So Segoe UI Light would not be my first choice for a title font, but Segoe UI or Segoe UI Bold might be ok.
Also, the red used on the right half of the slide is VERY bright for an element that is purely decorative, to the point that it might be distracting for some people. And the reason we need to squish our title into two lines of too-small text is because that giant red shape takes up half the page. What is more important: a “pretty” red shape to make our slide look snazzy or being able to clearly read the title of the presentation?
Here is the speaker bio slide.
This slide also suffers from the font being way too small.
Speaker name: 32pt (Segoe UI Light)
Title/Company: 20 pt (Segoe UI)
Social media handles: 11pt (Segoe UI)
Biography Point One: 14pt (Segoe UI)
Biography Point body text: 10.5pt (Segoe UI)
Again, there are issues with color contrast, which make the slide difficult to read – especially when shown on a projector that will probably wash out some of the color. The blue font on white background has a contrast ratio of 2.2. The red font on white background has a contrast ratio of 3.67. The dark font color on light gray background is actually ok from a color contrast perspective.
Here is a standard content slide.
What I appreciate about this slide is that it is free from unnecessary decorative shapes/backgrounds and doesn’t use needless bullet points everywhere. And the PASS logo is small in the lower right hand corner, not taking up too much room or being super distracting. But again, font sizes are way too small and the color contrast from the background is not high enough.
The difference in heading styles is a bit distracting. While they should probably differ in size, they don’t need to also differ in capitalization and font and color and boldness. One or two properties would be fine to denote difference, and having so many differences is a bit distracting.
More important than that, if you have three layers of headings on your slide, you probably have too much text. It would have been better not to even suggest that we would need to do such a thing. Putting it in the template passively gives presenters permission or encouragement to do just that.
What’s wrong and why should you care?
Conferences need to consider that some attendees may have varying abilities to see, hear, and understand the presentations. But those attendees paid to attend the conference and shall we say… connect, share, and learn? How can they learn when they can’t read the slide? How can they connect when the speaker contact information is tiny and hard to distinguish from the background? When we use slide templates that don’t work for those attendees, we are basically saying that they don’t matter and aren’t our “real” audience. Do we really want to be just another conference that discriminates against these people and makes them feel unwelcome? No one is purposefully doing this, but our ignorance/thoughtlessness about accessibility still creates that experience for them, whether or not we meant to do so.
Attendees don’t have to have a diagnosed “official” disability to benefit from slides that present information clearly. How many of us just have aging eyes? We can all appreciate when we end up seated at the back of a large conference room and can actually read the slides. Non-native English speakers may appreciate being able to clearly and quickly read slide content as they have to take more time/effort to process information written in English. We all get distracted by our phone/laptop/tablet/watch/neighbor during conference sessions, and it’s nice to be able to refocus on the presentation by focusing on the visual content while we listen to the speaker. But we can’t do that when the speaker’s slides are distracting us from the good information or are just plain hard to read. Slide templates are just one part of the presentation, but they can help set a standard that provides a good, inclusive experience for all attendees.
And what’s going to be better marketing for a conference: slide templates that are hard to read but use the right colors and logos, or attendees that have a great experience and learn a ton and tell their friends and coworkers all about it?
How do we fix it?
There are several basic things we can do to fix our templates to make them more accessible and more engaging (and still on brand for the conference). Here is a (non-comprehensive) list that organizations that create conference slide templates could start with to create accessible templates.
Even better, don’t require/request use of a slide template. Just give speakers a few intro/exit slides with necessary information and let them do what is best to communicate their intended information. It would then be the speaker’s responsibility to create accessible content, but hopefully they care enough about their presentations to do that. PASS Summit requires the use of the title and speaker bio slides (and a few other conference-related slides), but it allows speakers to design their own slides for the rest of the content.
If you have tips or opinions about creating accessible presentation content for conferences, please leave them in the comments.
Register for our webcast on Friday October 18th, 2019 at 2pm Eastern / 11am Pacific where Denny, Monica and John will tell you everything you need to know about the PASS Summit including where to eat, where to drink, and where the parties will be.
Watch our webcast from Friday September 6th, 2019 at 11am Eastern / 8am Pacific where Denny Cherry was joined by Kevin Kline of SentryOne and they took you through five surprising situations where what you don’t know WILL hurt you.
See All Our Live and Recorded Webcasts
As Microsoft MVP’s and Partners as well as VMware experts, we are summoned by companies all over the world to fine-tune and problem-solve the most difficult architecture, infrastructure and network challenges.
And sometimes we’re asked to share what we did, at events like Microsoft’s PASS Summit 2015.