Web Accessibility Hacker Way

web accessibility meme

Have you heard about accessibility? Do you know what that is? Do you know what it takes to make your website accessible?

Making your website accessible, means providing ability for everyone, regardless of disability or special needs, to use it.

Unfortunately if you put together all accessibility specifications and print it, the stack will be higher than CN Tower in Toronto:

CN Tower (Toronto)

This is not very encouraging. Many people think that it is not worth effort because the customer base with special needs is significantly low. However, there is a thing called situational disability that applies to all of us. Moreover, when we are building our websites with accessibility in mind, we make them better for everyone. Why? Because everybody is more comfortable when he can use forms on website with keyboard only  (without mouse) and switch between fields fast. Everybody likes when focus is set on search box for sites that in 99% of the time, the first thing you do is search for something. Everybody likes properly matched colors (accessible contrast).

How do you get started? How to survive without reading tons of specifications?

3 steps to fulfill 80% standards with 20% effort

  1. Make your website usable with keyboard only:
    • make sure that focus outline is visible all the time and user can determine which element is currently focused
    • no extra/unnecessary TAB stops
    • no tabstop traps (when you cannot get out of element with keyboard)
  2. Implement smart focus management:
    • set focus on appropriate elements after user actions (e.g., when user navigates to page with login form – set focus on login text field; in 90% of cases the next user action will be entering login)
    • restore focus to appropriate elements after user actions (e.g., when user closes menu, focus should be restored to element that was focused before opening the menu)
    • make tab order user friendly (remove not actionable and not informative tab stops)
  3. Make your website usable with screen reader:
    • When element gets focused, screen reader should provide meaningful information to the user (e.g., “image Satya Nadella” when focused on Satya’s image, or “menu collapsed” when focused on dropdown menu)
    • Min bar: make it good enough with one screen reader and one browser first. As of 2016-08-22 the best browser + screen reader combination is Firefox + NVDA (it has text mode that prints output instead of converting it into speech: Tools -> Speech viewer)
    • Add aria tags to elements only when screen reader cannot infer information from HTML (e.g., button element does not need role=’button’ as screen reader will infer it)

Good to know

  1. Don’t focus too much on “being compliant to the standards” at the beginning. Just use the common sense and your intuition. You can deep dive into standards later on.
  2. Make your website’s’ most common scenarios working well first, and focus on less popular pages later.
  3. Only 20% of accessibility requirements can be verified by tools. The rest has to be verified manually by:
    • yourself
    • user study
    • accessibility expert

Resources to get started

Summary

If you are web developer you probably like when the tool you are using enables you to do everything without the mouse. This is thanks to keyboard accessibility, and smart focus management. If you play with color contrast analyzer you will notice that colors with good contrast just looks better. Be aware that accessibility is performance first. When your website is slow it can lead to unexpected focus behaviors, unwanted user actions, or moving content. How many times you tried to scroll to some part of website and it was moving because images were loading? I’m sure a lot.

What do you think? Is the website you are working on accessible? Have you ever even think about it?

Accessibility all the things


Azure Portal Tips & Tricks – 20. Creating MEAN Stack Ready Linux VM

Azure Portal Tips & Tricks is a series of short videos where I am showing various features of the Azure Portal and how you can take advantage of them to be more productive.

On the Azure Portal you can create already configured Virtual Machines, e.g. for node or ruby development, or with the latest Visual Studio and .NET Core installed. In this video I am showing how to create VM with MEAN stack installed, how to create an express app, and run it within 5 minutes.

You can follow the series by subscribing to my channel or going directly to Azure Portal Tips & Tricks playlist:

If you have any suggestions or questions about the Azure Portal, or there is something in particular that you would like to see in this series, tweet me at @JakubJedryszek or leave a comment.


Azure Portal – the largest Single Page App in the World

Azure Portal - dashboard

Last week I had a pleasure to attend and present the Azure Portal insights at the Visual Studio Live conference in Redmond.

Throughout the conference, 5 sessions were being presented simultaneously, and 1 session was being streamed live. My session was chosen to be streamed live, and is now available on channel9:


I updated this session since the last time when I presented it at NDC London. I restructured it, added more demos, and new section with performance tips&tricks that you can apply in your project. I encourage you to check it out!

I received a lot of great feedback after my session:

Visual Studio Live session feedback (Hanselman)

Visual Studio Live session feedback

Now, I am waiting for YOUR feedback. Leave it in comments or tweet me at @JakubJedryszek. What did you like, what did you not like, what would you like to see that I haven’t show?

You can also check out other recorded sessions from VSLive at channel9.

I really enjoyed this conference. I had opportunity to meet many interesting people with passion in Software Development. From marketing people, through Software Developers, to CEOs and CTOs.

Interesting fact I learned from two gentlemen working as Software Engineers at Panama Canal: it cost hundreds of thousands of dollars to cross the Panama Canal once!

Panama Canal


Azure Portal Tips & Tricks – 19. Configure web monitoring with App Insights

Azure Portal Tips & Tricks is a series of short videos where I am showing various features of the Azure Portal and how you can take advantage of them to be more productive.

In this video I am showing how to configure App Insights monitoring for your web app (that not necessarily has to be hosted on Azure).

You can follow the series by subscribing to my channel or going directly to Azure Portal Tips & Tricks playlist:

If you have any suggestions or questions about the Azure Portal, or there is something in particular that you would like to see in this series, tweet me at @JakubJedryszek or leave a comment.


Azure Portal Tips & Tricks – 18. App Service Plans explained

Azure Portal Tips & Tricks is a series of short videos where I am showing various features of the Azure Portal and how you can take advantage of them to be more productive.

Azure App Service plans allow you to save money on Azure. In this video I am explaining how App Service plans work, and how to scale it on the Azure Portal.

You can follow the series by subscribing to my channel or going directly to Azure Portal Tips & Tricks playlist:

If you have any suggestions or questions about the Azure Portal, or there is something in particular that you would like to see in this series, tweet me at @JakubJedryszek or leave a comment.