Back to home

Making websites work for everyone

Aaron Gustafson - March 2023

Aaron is the Principal Accessibility Innovation Strategist at Microsoft. In this college, he discusses accessibility for the web and how to make websites work for everyone.

How can we make our websites work for everyone

When developing websites, it's crucial to consider the diverse range of user networks and conditions that exist, including wifi, hardline, and mobile connections. The web experience is not homogenous as we may imagine, as lower-class devices may perform worse / differently than higher-class ones. Therefore, to make websites work for everyone, we need to take these factors into account.

A good practice to ensure website accessibility is through progressive enhancement or graceful degradation. This means starting with the most basic functionality and then building upon it. By developing this way, we ensure that the core functionality of the website will work for anyone, regardless of their device, while providing additional features for those with more advanced devices.

A common metaphor for progressive enhancement is the escalator. Just like how an escalator always works, even if it's not moving, a well-made website should also function even if certain elements, such as JavaScript, are not enabled. The website may not be as enjoyable without these advanced features, but it should still be functional for all users.

Steps when developing for the web

  1. Focus on what matters: It's important to prioritize what'''s most important for your website and focus on those elements first. This will help you stay on track and reduce unnecessary complexity.
  2. Write it out, then read it back: Before diving into coding, take some time to plan out your website and write out your ideas. Then, read your plan back to make sure everything makes sense and you haven'''t missed anything important or overcomplicated things.
  3. Use semantic code: Semantic code uses HTML tags that accurately describe the content they contain, making it easier for all users to understand and use your website.
  4. Use design to communicate your intent: Good design can help communicate the purpose and message of your website to visitors. Use common design patterns and make sure your design conveys your intent.
  5. Consider your design choices and how they impact user experience: Design choices can have a big impact on how users interact with your site. Think about things like layout, color choices and typography. Think about how these elements of a website can affect usability and accessibility.
  6. Think about the different ways people might interact with your site: People will access your site from a variety of devices and browsers with varying network speeds. Make sure your site is responsive and accessible on different platforms.
  7. Iterate: Finally, remember that development is an iterative process. Don't be afraid to kill your darlings and improve your site as you go.