Last updated: March 10th, 2017
http://bit.do/webforms
(Formerly called Accessibility of Web Forms)
Web forms can present obstacles to users when they have not been developed to be accessible and usable. These obstacles can be torn down by following techniques for labeling form controls, validating user input, handling multi page forms and WAI-ARIA. Screen reader demonstrations will be used to highlight these features. The session will allow you to improve the design and development of your web forms.
* Formerly called Accessibility of Web Forms
Slides versions:
(March 2017) - updates include sample of keyboard users, why use native element, examples of form validation, how to fix a dialog box,
(Feb 2017) - updates include example of Other instruction and update to user agent support URL
(Dec 2016) - updates include example of placeholder
(Nov 2016) - updates include examples on usability of forms and ARIA misuse
(May 2016) - updates include new examples and more details on Validation of input and user notification
(Feb 2016) - Original version
Presented at Midwest JS, August 14 2014. My talk on web accessibility for web developers. I cover basic techniques, introduce screen readers and ARIA, and go over testing. I also include extended examples around keyboard behavior and focus management as well as ARIA labels. The goal is to demystify accessibility so we can weave it in to applications today.
My talk on web accessibility for web developers. I cover basic techniques, introduce screen readers and ARIA, and go over testing. I also include extended examples around keyboard behavior and focus management as well as ARIA labels. The goal is to demystify accessibility so we can weave it in to applications today.
Dreamweaver CS6, jQuery, PhoneGap, mobile designDee Sadler
A session talk for #NAGW2012 on:
Mobile app, choices
Dreamweaver’s place
Creating Mobile Design (actual design, not code)
Other helpful Adobe tools to create HTML/CSS
jQuery Mobile in DW
PhoneGap Build in DW
EuroPython 2011 - How to build complex web applications having fun?Andrew Mleczko
Web development is a complexity challenge nowadays. Growing number of functionalities results in customer expectations increase which makes project design more difficult. Using proper tools that suite your customer needs is essential.
This talk is about successful story using closely together Pyramid and Plone. Basing on these examples you will see the main reasons for using Plone as a CMS only and letting Pyramid do the rest (vertical application).
As a discipline, front end development (FED) has recently seen enormous growth with new focus areas like performance, design patterns, build tools, and frameworks emerge and mature. There’s a lot of new excitement for all things client-side, but how do these new technologies fit alongside a traditional Engineering team and an existing code base?
At Shopify, we’ve been exploring the dynamic more closely as our FED team continues to grow company-wide. In this talk, I will share my perspective on how FED can work alongside other disciplines to form robust, creative product teams at scale. Shared tools like coding standards, processes, and style guides, can make it possible for all developers to confidently build UI, while specialist FED build those systems and solve unique use cases. By investing in in tools and process, we’ve been able to find common focus for our team and a stronger understanding of our role across disciplines.
Presented at Midwest JS, August 14 2014. My talk on web accessibility for web developers. I cover basic techniques, introduce screen readers and ARIA, and go over testing. I also include extended examples around keyboard behavior and focus management as well as ARIA labels. The goal is to demystify accessibility so we can weave it in to applications today.
My talk on web accessibility for web developers. I cover basic techniques, introduce screen readers and ARIA, and go over testing. I also include extended examples around keyboard behavior and focus management as well as ARIA labels. The goal is to demystify accessibility so we can weave it in to applications today.
Dreamweaver CS6, jQuery, PhoneGap, mobile designDee Sadler
A session talk for #NAGW2012 on:
Mobile app, choices
Dreamweaver’s place
Creating Mobile Design (actual design, not code)
Other helpful Adobe tools to create HTML/CSS
jQuery Mobile in DW
PhoneGap Build in DW
EuroPython 2011 - How to build complex web applications having fun?Andrew Mleczko
Web development is a complexity challenge nowadays. Growing number of functionalities results in customer expectations increase which makes project design more difficult. Using proper tools that suite your customer needs is essential.
This talk is about successful story using closely together Pyramid and Plone. Basing on these examples you will see the main reasons for using Plone as a CMS only and letting Pyramid do the rest (vertical application).
As a discipline, front end development (FED) has recently seen enormous growth with new focus areas like performance, design patterns, build tools, and frameworks emerge and mature. There’s a lot of new excitement for all things client-side, but how do these new technologies fit alongside a traditional Engineering team and an existing code base?
At Shopify, we’ve been exploring the dynamic more closely as our FED team continues to grow company-wide. In this talk, I will share my perspective on how FED can work alongside other disciplines to form robust, creative product teams at scale. Shared tools like coding standards, processes, and style guides, can make it possible for all developers to confidently build UI, while specialist FED build those systems and solve unique use cases. By investing in in tools and process, we’ve been able to find common focus for our team and a stronger understanding of our role across disciplines.
How do you know if your web site is accessible? Can automated testing tools help? Glenda Sims will share gems from her 10+ years of experience testing sites for accessibility. Equip yourself with free and powerful testing tools. Learn how to turn it up a notch when you need to monitor accessibility across a vast enterprise. See some of the very latest testing tools that will help you evaluate color contrast, dynamic content and WAI-ARIA compliance
Wrangling Large Scale Frontend Web ApplicationsRyan Roemer
Web applications are massively shifting to the frontend, thanks to exciting new JavaScript / CSS technologies, expanding browser capabilities (visualizations, real-time apps, etc.) and faster perceived user experiences. However, client web applications can be a nightmare to maintain at scale, even for seasoned software architects and operations engineers. Deployment and production infrastructures are complex and rapidly changing. And, frontend JavaScript / CSS code ships to browsers worldwide, where errors and issues are notoriously difficult to systematically detect and diagnose.
In this talk, we will tackle the wild west of the frontend with pragmatic steps and seasoned advice from helping organizations from startups to Fortune 500 companies create some of the largest frontend web applications on the Internet. In particular, we will examine the many hard lessons gleaned from leading frontend application development and education for a team of 50+ engineers rearchitecting a top-five e-commerce site. Some of the topics we will cover include:
* Managing and building very large (500K+ line) frontend application / test code bases.
* Surviving production traffic and errors on the frontend and handling spikes like Black Friday / Cyber Monday for one of the highest traffic e-commerce websites in existence.
* How, where, and why your frontend application is likely to fail.
* Monitoring, logging, and debugging frontend web applications out in the wild.
* Automating checks, tests, and code introspection to protect your code in production.
* Creating an effective, fast, and engineer-friendly development-test-deployment frontend pipeline.
Whether your frontend application already supports millions of transactions a day or you are about to launch your first single-page-application, our aim is to prepare teams of all sizes for the most critical challenges and solutions facing modern frontend web applications.
HTML5--The 30,000' View (A fast-paced overview of HTML5)Peter Lubbers
A fast-paced overview of HTML5.
Topics include:
-What is HTML5?
-History of HTML5
-WHATWG and W3C specifications
-What is part of HTML5?
-Using HTML5 Today
-Using HTML5 in browsers that do not support it
-Detecting native availability of HTML5 features
Attacking and Defending Mobile ApplicationsJerod Brennen
The rapid increase in mobile technology adoption in the workplace has resulted in a rise in mobile application attacks. This presentation provides attendees with insight into how mobile application attacks are perpetuated, as well as how we can develop to defend against them.
Augmented Reality (AR) - The Future of Mobile Applications? Carin Campanario
Inspirational snippets of information (images and website links) about AR technologies, applications, concepts, ideas, events and blogs, gathered from the web for a Barcamp London 7 session on 25th October 2009, by Carin Campanario.
== Abstract ==
Presented at Analysis of Security APIs
Satellite workshop of IEEE CSF
July 13th 2015, Verona, Italy
http://www.dsi.unive.it/~focardi/ASA8/#program
Browsers HTML sandbox is, by default, only protected by the "Same Origin Policy". Although this simple constraint gave companies a very flexible environment to play with, and was probably one of the key features that led the Web to success as we see it now, it is quite unsatisfactory from a security perspective. In fact, this solution does not face the problem of letting third party code access the whole data in the DOM when explicitly loaded and executed by the browser. This behaviour opens the door to malicious third party code attacks that can be achieved using either Cross Site Scripting (OWASP Top Ten Security risk #1 for many years) or second order attacks, such as malvertising software. In the past, several attempts to sandbox untrusted code have been made. In this talk we will focus on successes and failures of the most interesting open source sandboxing browser techniques.
Web Standards: Fueling Innovation [Web Design World Boston '08]Aaron Gustafson
Web standards are all about rules and structure, formalities that many people find restrictive and stifling. From another perspective, however, the rigid structure of web standards can be seen as a boon to creativity on the web. In this session, Aaron Gustafson will teach you how to use smart JavaScript to leverage the extensibility of XHTML and CSS and push the boundaries of web design and development, all while still adhering to the best practices of web standards.
Slides from an HTML5 overview session I presented at work...
This presentation has an accompanying sample webapp project: http://code.google.com/p/html5-playground
How do you know if your web site is accessible? Can automated testing tools help? Glenda Sims will share gems from her 10+ years of experience testing sites for accessibility. Equip yourself with free and powerful testing tools. Learn how to turn it up a notch when you need to monitor accessibility across a vast enterprise. See some of the very latest testing tools that will help you evaluate color contrast, dynamic content and WAI-ARIA compliance
Wrangling Large Scale Frontend Web ApplicationsRyan Roemer
Web applications are massively shifting to the frontend, thanks to exciting new JavaScript / CSS technologies, expanding browser capabilities (visualizations, real-time apps, etc.) and faster perceived user experiences. However, client web applications can be a nightmare to maintain at scale, even for seasoned software architects and operations engineers. Deployment and production infrastructures are complex and rapidly changing. And, frontend JavaScript / CSS code ships to browsers worldwide, where errors and issues are notoriously difficult to systematically detect and diagnose.
In this talk, we will tackle the wild west of the frontend with pragmatic steps and seasoned advice from helping organizations from startups to Fortune 500 companies create some of the largest frontend web applications on the Internet. In particular, we will examine the many hard lessons gleaned from leading frontend application development and education for a team of 50+ engineers rearchitecting a top-five e-commerce site. Some of the topics we will cover include:
* Managing and building very large (500K+ line) frontend application / test code bases.
* Surviving production traffic and errors on the frontend and handling spikes like Black Friday / Cyber Monday for one of the highest traffic e-commerce websites in existence.
* How, where, and why your frontend application is likely to fail.
* Monitoring, logging, and debugging frontend web applications out in the wild.
* Automating checks, tests, and code introspection to protect your code in production.
* Creating an effective, fast, and engineer-friendly development-test-deployment frontend pipeline.
Whether your frontend application already supports millions of transactions a day or you are about to launch your first single-page-application, our aim is to prepare teams of all sizes for the most critical challenges and solutions facing modern frontend web applications.
HTML5--The 30,000' View (A fast-paced overview of HTML5)Peter Lubbers
A fast-paced overview of HTML5.
Topics include:
-What is HTML5?
-History of HTML5
-WHATWG and W3C specifications
-What is part of HTML5?
-Using HTML5 Today
-Using HTML5 in browsers that do not support it
-Detecting native availability of HTML5 features
Attacking and Defending Mobile ApplicationsJerod Brennen
The rapid increase in mobile technology adoption in the workplace has resulted in a rise in mobile application attacks. This presentation provides attendees with insight into how mobile application attacks are perpetuated, as well as how we can develop to defend against them.
Augmented Reality (AR) - The Future of Mobile Applications? Carin Campanario
Inspirational snippets of information (images and website links) about AR technologies, applications, concepts, ideas, events and blogs, gathered from the web for a Barcamp London 7 session on 25th October 2009, by Carin Campanario.
== Abstract ==
Presented at Analysis of Security APIs
Satellite workshop of IEEE CSF
July 13th 2015, Verona, Italy
http://www.dsi.unive.it/~focardi/ASA8/#program
Browsers HTML sandbox is, by default, only protected by the "Same Origin Policy". Although this simple constraint gave companies a very flexible environment to play with, and was probably one of the key features that led the Web to success as we see it now, it is quite unsatisfactory from a security perspective. In fact, this solution does not face the problem of letting third party code access the whole data in the DOM when explicitly loaded and executed by the browser. This behaviour opens the door to malicious third party code attacks that can be achieved using either Cross Site Scripting (OWASP Top Ten Security risk #1 for many years) or second order attacks, such as malvertising software. In the past, several attempts to sandbox untrusted code have been made. In this talk we will focus on successes and failures of the most interesting open source sandboxing browser techniques.
Web Standards: Fueling Innovation [Web Design World Boston '08]Aaron Gustafson
Web standards are all about rules and structure, formalities that many people find restrictive and stifling. From another perspective, however, the rigid structure of web standards can be seen as a boon to creativity on the web. In this session, Aaron Gustafson will teach you how to use smart JavaScript to leverage the extensibility of XHTML and CSS and push the boundaries of web design and development, all while still adhering to the best practices of web standards.
Slides from an HTML5 overview session I presented at work...
This presentation has an accompanying sample webapp project: http://code.google.com/p/html5-playground
PDF, audio, and voiceover are now available on designintechreport.wordpress.com
Today’s most beloved technology products and services balance design and engineering in a way that perfectly blends form and function. Businesses started by designers have created billions of dollars of value, are raising billions in capital, and VC firms increasingly see the importance of design. The third annual Design in Tech Report examines how design trends are revolutionizing the entrepreneurial and corporate ecosystems in tech. This report covers related M&A activity, new patterns in creativity × business, and the rise of computational design.
London Growth Marketing Power Session @ London Startup Growth Meetup - 27 Jan...Growth Tribe
Building great products isn't enough. Marketing channels are saturated. Growth Marketing skills help you beat the competition and develop your products.
In this session, David Arnoux, co-founder of Europe's 1st Growth Hacking Academy 'Growth Tribe', walks you through the mindset, process & tools to implement an experiment-driven approach to growth in your organization.
About David Arnoux (Growth Tribe):
David Arnoux is a growth marketing expert. He has helped over 500 companies & teams implement and execute growth strategies. He is currently head of growth at Growth Tribe and lead growth hacker at Twoodo, growth coach for startups and corporates, a public speaker and a contributor to publications such as The Next Web. Come follow him on Twitter! @darnocks
Advice on what to measure for channel marketing programs and platforms to help measure the impact on your business and to make improvements to your programs.
Notes are not enough! Why relying on your notes will lead you down the garden...Ash Donaldson
You take great notes, right? Have you ever compared them to a transcript?
It’s amazing how much of the important stuff we miss as we take the time to interpret what someone says, formulate what we’re going to write, then go through the physical act of writing before switching back into listening again.
In this presentation we’ll walk through the model of communication, exploring the limitations of perception, cognition, attention and memory. By the end I hope you’ll appreciate why your notes are not enough.
Presented at Design Research 2017, Sydney
On commence à voir des liens AMP dans les pages de résultat Google depuis février 2017. Qui sont les sites qui se sont lancés dans l’aventure ? Avec quels résultats ? Quid du e-commerce ? Faut t’il y aller et si oui comment, pour quelles opportunités et avec quels risques ? Ce sont à toutes ces questions que cette conférence tentera de répondre, en vous dressant un bilan d’un an d’AMP.
Stratio Streaming is the result of combining the power of Spark Streaming as a continuous computing framework and Siddhi CEP engine as complex event processing engine.
Accessibility Testing Using Screen ReadersRabab Gomaa
Testing websites using screen readers gives web developers the opportunity to make a real evaluation of their code and help identify accessibility issues that could be missed in manual checkup, or neglected by automatic verification tools.
In this session we will demonstrate how blind people navigate the web and will show how to use screen readers for accessibility testing of web pages including interactive components and web forms.
Website accessibility matters! There are many reasons to make your site accessible - not only will incorporating accessibility into your daily lives help people with disabilities actually be able to use your site, but it can help attract a wider audience/larger customer base, make your site rank higher with search engines, and can improve your overall user experience on both desktop and mobile devices.
But how can you make your site accessible? Website accessibility is often an afterthought at the end a project when there is an accessibility audit or a user submits an issue, but what if we switched focus and started thinking about accessibility at the beginning of a project during the initial design and development stages?
In this talk I will present a quick overview of website accessibility (the what, who, and why), then review the underlying guidelines to making a site accessible, and present some general rules to keep in the back of your mind while designing and developing your next site. Finally, we will review some current D7/D8 modules that can help you make your site accessible.
A Half Day Workshop on Building Accessible Websites For People With DisabilitiesAayush Shrestha
The beauty of internet is in its availability and universality. However, developers are neglecting a big chunk of population when they build websites that are not accessible.
In this workshop, we will talk about accessibility and how it can be achieved in the websites that we build with very little extra effort to what we have been doing all along.
Organized by:
Sangai Hami - Together We
American Embassy
nLocate | Locate things nearby
Getting Down and Dirty with Accessibility and Usability workshop at TCUK12Karen Mardahl
Transcript and extra notes available at http://www.mardahl.dk/2012/11/02/getting-down-and-dirty-with-accessibility-usability-tcuk12-workshop/
Workshop at Technical Communication UK 2012 conference, Newcastle, UK.
Four Principles of Accessibility UK Version Homer Gaines
"The Four Principles of Accessibility" is an informative presentation meant to shine a light on the benefits of building inclusive products and explain the four basic principles that serve as the foundation for accessibility. These four areas specifically target areas where users have the most trouble when accessing digital products and provide guidelines for understanding how to think and approach accessibility.
Web access for users with disabilities is an important goal and challenging problem for web content developers and designers.
Essential open source api projects to ease the developing & testing for web accessibility.
Presented by: Michael Head, Slalom, Inc
Presented at All Things Open 2020
Abstract: Web accessibility is a growing topic of interest among many practitioners in software development, from designers to product managers to developers. If you're not familiar with the topic it can be overwhelming at first. This talk serves as a crash course into web accessibility to help people get a grasp on the topic overall and figure out where they can go to learn more. It's useful for designers, developers, product managers, or anyone else involved in product development. Come learn about why accessibility is important, what all those acronyms mean (WCAG, ATAG, WAI-ARIA, oh my!), and about some of the tools of the trade.
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
Essentials of Automations: Optimizing FME Workflows with ParametersSafe Software
Are you looking to streamline your workflows and boost your projects’ efficiency? Do you find yourself searching for ways to add flexibility and control over your FME workflows? If so, you’re in the right place.
Join us for an insightful dive into the world of FME parameters, a critical element in optimizing workflow efficiency. This webinar marks the beginning of our three-part “Essentials of Automation” series. This first webinar is designed to equip you with the knowledge and skills to utilize parameters effectively: enhancing the flexibility, maintainability, and user control of your FME projects.
Here’s what you’ll gain:
- Essentials of FME Parameters: Understand the pivotal role of parameters, including Reader/Writer, Transformer, User, and FME Flow categories. Discover how they are the key to unlocking automation and optimization within your workflows.
- Practical Applications in FME Form: Delve into key user parameter types including choice, connections, and file URLs. Allow users to control how a workflow runs, making your workflows more reusable. Learn to import values and deliver the best user experience for your workflows while enhancing accuracy.
- Optimization Strategies in FME Flow: Explore the creation and strategic deployment of parameters in FME Flow, including the use of deployment and geometry parameters, to maximize workflow efficiency.
- Pro Tips for Success: Gain insights on parameterizing connections and leveraging new features like Conditional Visibility for clarity and simplicity.
We’ll wrap up with a glimpse into future webinars, followed by a Q&A session to address your specific questions surrounding this topic.
Don’t miss this opportunity to elevate your FME expertise and drive your projects to new heights of efficiency.
State of ICS and IoT Cyber Threat Landscape Report 2024 previewPrayukth K V
The IoT and OT threat landscape report has been prepared by the Threat Research Team at Sectrio using data from Sectrio, cyber threat intelligence farming facilities spread across over 85 cities around the world. In addition, Sectrio also runs AI-based advanced threat and payload engagement facilities that serve as sinks to attract and engage sophisticated threat actors, and newer malware including new variants and latent threats that are at an earlier stage of development.
The latest edition of the OT/ICS and IoT security Threat Landscape Report 2024 also covers:
State of global ICS asset and network exposure
Sectoral targets and attacks as well as the cost of ransom
Global APT activity, AI usage, actor and tactic profiles, and implications
Rise in volumes of AI-powered cyberattacks
Major cyber events in 2024
Malware and malicious payload trends
Cyberattack types and targets
Vulnerability exploit attempts on CVEs
Attacks on counties – USA
Expansion of bot farms – how, where, and why
In-depth analysis of the cyber threat landscape across North America, South America, Europe, APAC, and the Middle East
Why are attacks on smart factories rising?
Cyber risk predictions
Axis of attacks – Europe
Systemic attacks in the Middle East
Download the full report from here:
https://sectrio.com/resources/ot-threat-landscape-reports/sectrio-releases-ot-ics-and-iot-security-threat-landscape-report-2024/
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
UiPath Test Automation using UiPath Test Suite series, part 3DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 3. In this session, we will cover desktop automation along with UI automation.
Topics covered:
UI automation Introduction,
UI automation Sample
Desktop automation flow
Pradeep Chinnala, Senior Consultant Automation Developer @WonderBotz and UiPath MVP
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Ramesh Iyer
In today's fast-changing business world, Companies that adapt and embrace new ideas often need help to keep up with the competition. However, fostering a culture of innovation takes much work. It takes vision, leadership and willingness to take risks in the right proportion. Sachin Dev Duggal, co-founder of Builder.ai, has perfected the art of this balance, creating a company culture where creativity and growth are nurtured at each stage.
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Jeffrey Haguewood
Sidekick Solutions uses Bonterra Impact Management (fka Social Solutions Apricot) and automation solutions to integrate data for business workflows.
We believe integration and automation are essential to user experience and the promise of efficient work through technology. Automation is the critical ingredient to realizing that full vision. We develop integration products and services for Bonterra Case Management software to support the deployment of automations for a variety of use cases.
This video focuses on the notifications, alerts, and approval requests using Slack for Bonterra Impact Management. The solutions covered in this webinar can also be deployed for Microsoft Teams.
Interested in deploying notification automations for Bonterra Impact Management? Contact us at sales@sidekicksolutionsllc.com to discuss next steps.
JMeter webinar - integration with InfluxDB and GrafanaRTTS
Watch this recorded webinar about real-time monitoring of application performance. See how to integrate Apache JMeter, the open-source leader in performance testing, with InfluxDB, the open-source time-series database, and Grafana, the open-source analytics and visualization application.
In this webinar, we will review the benefits of leveraging InfluxDB and Grafana when executing load tests and demonstrate how these tools are used to visualize performance metrics.
Length: 30 minutes
Session Overview
-------------------------------------------
During this webinar, we will cover the following topics while demonstrating the integrations of JMeter, InfluxDB and Grafana:
- What out-of-the-box solutions are available for real-time monitoring JMeter tests?
- What are the benefits of integrating InfluxDB and Grafana into the load testing stack?
- Which features are provided by Grafana?
- Demonstration of InfluxDB and Grafana using a practice web application
To view the webinar recording, go to:
https://www.rttsweb.com/jmeter-integration-webinar
Accelerate your Kubernetes clusters with Varnish CachingThijs Feryn
A presentation about the usage and availability of Varnish on Kubernetes. This talk explores the capabilities of Varnish caching and shows how to use the Varnish Helm chart to deploy it to Kubernetes.
This presentation was delivered at K8SUG Singapore. See https://feryn.eu/presentations/accelerate-your-kubernetes-clusters-with-varnish-caching-k8sug-singapore-28-2024 for more details.
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...UiPathCommunity
💥 Speed, accuracy, and scaling – discover the superpowers of GenAI in action with UiPath Document Understanding and Communications Mining™:
See how to accelerate model training and optimize model performance with active learning
Learn about the latest enhancements to out-of-the-box document processing – with little to no training required
Get an exclusive demo of the new family of UiPath LLMs – GenAI models specialized for processing different types of documents and messages
This is a hands-on session specifically designed for automation developers and AI enthusiasts seeking to enhance their knowledge in leveraging the latest intelligent document processing capabilities offered by UiPath.
Speakers:
👨🏫 Andras Palfi, Senior Product Manager, UiPath
👩🏫 Lenka Dulovicova, Product Program Manager, UiPath
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.
Generating a custom Ruby SDK for your web service or Rails API using Smithyg2nightmarescribd
Have you ever wanted a Ruby client API to communicate with your web service? Smithy is a protocol-agnostic language for defining services and SDKs. Smithy Ruby is an implementation of Smithy that generates a Ruby SDK using a Smithy model. In this talk, we will explore Smithy and Smithy Ruby to learn how to generate custom feature-rich SDKs that can communicate with any web service, such as a Rails JSON API.
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Accessible & Usable Web Forms. Your How To Guide!
1. Accessible & Usable Web Forms.
Your How To Guide!
Rabab Gomaa
@RubysDo
Confoo.ca. March 11th
, 2017
http://bit.do/webforms
2. 2
Objective
To explore coding techniques that make web forms
accessible and usable for all users and in particular for
people who use screen readers or keyboards.
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
3. 3
Table of Contents
• What is an “accessible & usable” web form?
• Keyboard users examples
• What is WAI-ARIA & how screen readers navigate
web forms?
• Coding Techniques
1. Labeling & Grouping Controls
2. Form Instructions
3. Validating Input & User Notifications
4. Multi-page Forms
5. Dialog boxes
• Summary
• Questions (10 mins)
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
4. 4
What is an “accessible and usable”
web form?
• A web form that users with disability can
understand, perceive, interact with without
barriers
• A web form that is designed to be easy to
use!
References:
W3C (2015, May 21). Notes on Using ARIA in HTML. Retrieved from https://www.w3.org/TR/aria-in-html/
WAI-ARIA Overview (2016, Jan 15). Retrieved from https://www.w3.org/WAI/intro/aria
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
5. 5
Keyboard Users
Examples (1/2)
• Blind users
{use of screen reader e.g. JAWS, NVDA, Voice Over, etc.}
• Motor / physical disability
{Parkinson disease, hand tremor, heart attack consequence}
Snapshot sources:
Keyguard retrieved from from https://www.youtube.com/watch?v=zFv2myGVhl8
Mouse stick and head Wand retrieved from from http://webaim.org/articles/motor/assistive
Mouse stick user snapshot retrieved from https://www.w3.org/WAI/perspectives/keyboard.html
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
Keyguard is raised above the keyboard to guide
him to the specific key without making mistakes
Mouse stick Rubber tip to give better traction on keyboard, and
end to insert into the mouth.
Head Wand: A person moves the head to make the head wand
type characters, navigate through web pages
6. 6
Keyboard Users
Examples (2/2)
• Temporary limited mobility
{broken arm}
• Computer problem
{Mouse is not functional}
• Preference / situations
{Use of laptop on the bed, standing up in metro or airport, carry
a baby with one hand}
References:
snapshot of keyguard from https://www.youtube.com/watch?v=zFv2myGVhl8
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
7. 7
Using WAI-ARIA (1)
Accessible Rich Internet Applications (WAI-ARIA)
• WAI-ARIA defines a way to make Web
content and Web applications more
accessible to people with disabilities.
• Example:
References:
W3C (2015, May 21). Notes on Using ARIA in HTML. Retrieved from https://www.w3.org/TR/aria-in-html/
WAI-ARIA Overview (2016, Jan 15). Retrieved from https://www.w3.org/WAI/intro/aria
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
8. 8
Using WAI-ARIA (2)
Accessible Rich Internet Applications (WAI-ARIA)
User Agent Support for WAI-ARIA:
•“User Agent support for WAI-ARIA varies, but overall support for WAI-
ARIA is improving” (W3C, ARIA Techniques for WCAG 2.0.)
First rule of using ARIA:
•Use a native HTML element instead of ARIA as long as it
is possibleReferences:
W3C (2015, May 21). Notes on Using ARIA in HTML. Retrieved from https://www.w3.org/TR/aria-in-html/
W3C, ARIA Techniques for WCAG 2.0. Retrieved from https://www.w3.org/TR/WCAG20-TECHS/aria
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
Reliability Trend for aria-describedby
Last updated October 16, 2016
Source: https://goo.gl/GRBTo7
9. 9
Using WAI-ARIA (3)
Keyboard Demo
<button> vs. <a role="button“> when pressing "spacebar" key
https://youtu.be/KCyC9CUFiDw
Notice:
Pressing “Spacebar” key on a link makes the page scroll down. The link is not activated.
•<button> can be activated using “Enter” or Spacebar” keyboard keys .
•<a>, <a role=“button”> can be activated using “Enter” key only.
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
<button> vs <a role=“button”>
10. 10
Using WAI-ARIA (4)
Repurposing a <div> to radio group
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
• Many considerations for keyboard interaction
• Many WAI-ARIA roles, states and properties
involved
Learn More on required effort:
https://www.w3.org/TR/wai-aria-practices-1.1/#radiobutton
When possible use native HTML element e.g. radio group instead of repurposing
<div> to function as a radio group.
Why?
11. 11
Using WAI-ARIA (3)
Under what circumstances?
• “If the feature is available in HTML [HTML5.1] but it
is not implemented or it is implemented, but
accessibility support is not.
• If the visual design constraints rule out the use of a
particular native element, because the element
cannot be styled as required.
• If the feature is not currently available in HTML.”
(W3C, Notes on Using ARIA in HTML)
Reference:
W3C (2015, May 21). Notes on Using ARIA in HTML. Retrieved from https://www.w3.org/TR/aria-in-html/
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
12. 12
How screen readers
navigate web forms?
• Screen readers inform users when they
have entered into a form “Forms Mode” by
playing a sound
• In “Forms Mode” :
• User can edit input fields and interact with form
elements
• User generally navigate through a form using the TAB
key for next control and SHIFT+TAB for previous
control
• Demos of today are done using JAWS 17
Reference:
Freedom Scientific. Using Forms with JAWS and MAGic L. Retrieved from http://www.freedomscientific.com/Training/Surfs-Up/Forms.htm
WebAIM. Creating Accessible Forms. Retrieved from http://webaim.org/techniques/forms/
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
13. 13
Screen readers navigate web forms
How does this matter?
Scenario of Failure : Jaws user fails to interact with a form
Non-accessible
Mimic of form element coded using <div>s and
<span>s
Accessible
Form element coded using HTML form controls
<label>& <select>
Snapshot 1 captured from JIRA Issue Tracking v7.1
• Developer used <div>s and <span>s and on-hover event (and not on
focus) to edit assignee name instead of select element
• Jaws user hears no switch to forms mode and missed the edit feature
(1)
(2)
Labeling Controls
. Association of labels
. Invisible labels
. Visual position
Grouping Controls
Form Instructions
Validating Input &
User Notifications
Multi-page Forms
Dialog Boxes
Summary
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
14. 14
Labeling Controls
• “Associating labels with form controls allows
assistive technology to recognize the label and
present it to the user”WCAG WG, EOWG (2015, March 2)
• Possible ways of associating labels and form
controls:
1. <label> & for/id attributes (recommended)
2. aria-labelledby attribute
3. wrapping <label> around text and control
Reference:
WCAG WG, EOWG (2015, March 2). Forms Concepts. Retrieved from http://www.w3.org/WAI/tutorials/forms/
Labeling Controls
. Association of labels
. Invisible labels
. Visual position
Grouping Controls
Form Instructions
Validating Input &
User Notifications
Multi-page Forms
Dialog Boxes
Summary
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
15. 15
Association of labels
1. <label> & for/id
• A <label> is attached to a specific form control
through the use of for and id attributes.
Reference:
WCAG WG, EOWG (2015, March 2). Forms Concepts. Retrieved from http://www.w3.org/WAI/tutorials/forms/
Labeling Controls
. Association of labels
. Invisible labels
. Visual position
Grouping Controls
Form Instructions
Validating Input &
User Notifications
Multi-page Forms
Dialog Boxes
Summary
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
16. 16
Association of labels
2. aria-labelledby
• With aria-labelledby, the form field indicates which
element labels it by referencing its id attribute
Reference:
W3C (2014). ARIA9: Using aria-labelledby to concatenate a label from several text nodes. Retrieved from https://www.w3.org/TR/WCAG20-TECHS/ARIA9.html
Labeling Controls
. Association of labels
. Invisible labels
. Visual position
Grouping Controls
Form Instructions
Validating Input &
User Notifications
Multi-page Forms
Dialog Boxes
Summary
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
17. 17
Association of Labels
3. Associating labels implicitly
• When form controls cannot be labelled explicitly, the
label element is used as a container for both the
form control and the label text, so that the two are
associated implicitly.
Reference:
WCAG WG, EOWG (2015, March 2). Forms Concepts. Retrieved from http://www.w3.org/WAI/tutorials/forms/
Labeling Controls
. Association of labels
. Invisible labels
. Visual position
Grouping Controls
Form Instructions
Validating Input &
User Notifications
Multi-page Forms
Dialog Boxes
Summary
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
18. 18
Association of Labels
Screen Reader Demo
Labeling Controls
. Association of labels
. Invisible labels
. Visual position
Grouping Controls
Form Instructions
Validating Input &
User Notifications
Multi-page Forms
Dialog Boxes
Summary
Association of labels demo - https://youtu.be/PjKAusofvP0
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
19. 19
Invisible Labels
• Label is visually hidden to avoid redundancy for users who can
derive the purpose from the visual cues
Warning! Screen readers hide elements from their users when they are
styled using display: none; and visibility: hidden;Reference:
WCAG WG, EOWG (2015, March 2). Forms Concepts. Retrieved from http://www.w3.org/WAI/tutorials/forms/
Labeling Controls
. Association of labels
. Invisible labels
. Visual position
Grouping Controls
Form Instructions
Validating Input &
User Notifications
Multi-page Forms
Dialog Boxes
Summary
WET 4
class
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
20. 20
Placeholder Attribute
A placeholder attribute can't be a replacement for a label.
Labeling Controls
. Association of labels
. Invisible labels
. Visual position
Grouping Controls
Form Instructions
Validating Input &
User Notifications
Multi-page Forms
Dialog Boxes
Summary
Reference:
W3C (October, 2014). A vocabulary and associated APIs for HTML and XHTML. Retrieved from https://www.w3.org/TR/html5/forms.html#the-placeholder-attribute
“Use of the placeholder attribute as a replacement for a label can reduce the
accessibility and usability of the control for a range of users including older
users and users with cognitive, mobility, fine motor skill or vision impairments.”
(W3C, placeholder-attribute)
BAD PRACTISE
Notice: The placeholder text disappears as soon as the user enters a value.
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
21. 21
Placeholder Attribute
A placeholder can be used to display short hint while keeping a
visible label.Labeling Controls
. Association of labels
. Invisible labels
. Visual position
Grouping Controls
Form Instructions
Validating Input &
User Notifications
Multi-page Forms
Dialog Boxes
Summary
Screenshot source: Government of Canada – Open data website
Notice: Each form control has a visible label!
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
22. 22
Visual Position of Label text
Best practises
• Which is best for accessibility and usability?
Placing labels above OR beside the form fields
Labeling Controls
. Association of labels
. Invisible labels
. Visual position
Grouping Controls
Form Instructions
Validating Input &
User Notifications
Multi-page Forms
Dialog Boxes
Summary
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
23. 23
Visual Position of Label text
Best practises
• Placing labels above the form fields and position
labels to the right of radio buttons and checkboxes.Labeling Controls
. Association of labels
. Invisible labels
. Visual position
Grouping Controls
Form Instructions
Validating Input &
User Notifications
Multi-page Forms
Dialog Boxes
Summary
GOODLearn More!
W3C. G162: Positioning labels to maximize predictability of relationships. Retrieved from https://www.w3.org/TR/WCAG20-TECHS/G162.html
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
24. 24
Grouping Controls
• “Grouping related form controls makes forms more
understandable for all users, as related controls are
easier to identify. It also makes it easier for people to
focus on smaller and more manageable groups
rather than try to grasp the entire form at once.”WCAG
WG, EOWG (2015, March 2)
• Possible ways of grouping form controls include:
1. <fieldset> and <legend> elements
2. <optgroup> to group items inside a
selection list
Reference:
WCAG WG, EOWG (2015, March 2). Forms Concepts. Retrieved from http://www.w3.org/WAI/tutorials/forms/
Labeling Controls
. Association of labels
. Invisible labels
. Visual position
Grouping Controls
Form Instructions
Validating Input &
User Notifications
Multi-page Forms
Dialog Boxes
Summary
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
25. 25
Grouping Controls
1.<fieldset> & <legend> (1)
• <fieldset> has a <legend> that is the label of the
group
• Important for related radio buttons and checkboxes
Reference:
W3C. WCAG H71: Providing a description for groups of form controls using fieldset and legend elements. Retrieved from https://www.w3.org/TR/WCAG20-TECHS/H71
Labeling Controls
. Association of labels
. Invisible labels
. Visual position
Grouping Controls
Form Instructions
Validating Input &
User Notifications
Multi-page Forms
Dialog Boxes
Summary
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
26. 26
Grouping Controls
1.<fieldset> & <legend> (2)
• Important for related radio buttons and checkboxes
Labeling Controls
. Association of labels
. Invisible labels
. Visual position
Grouping Controls
Form Instructions
Validating Input &
User Notifications
Multi-page Forms
Dialog Boxes
Summary
Reference:
W3C. WCAG H71: Providing a description for groups of form controls using fieldset and legend elements. Retrieved from https://www.w3.org/TR/WCAG20-TECHS/H71
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
27. 27
Grouping Controls
1.<fieldset> & <legend> (3)
Heading H1-H6 now allowed inside a <legend> (HTML 5.2 Working Draft)
Labeling Controls
. Association of labels
. Invisible labels
. Visual position
Grouping Controls
Form Instructions
Validating Input &
User Notifications
Multi-page Forms
Dialog Boxes
Summary
Reference: W3C, HTML 5.2 <legend>. Retrieved from https://www.w3.org/TR/html52/
Remember !
- To do a screen reader test before
to determine the level of support.
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
28. 28
Grouping Controls
2.<optgroup> inside a selection list
• Group <option> in a selection list using <optgroup>
• Label <optgroup> with label attribute for users to
know what to expect inside the group
Reference:
W3C. H85: Using OPTGROUP to group OPTION elements inside a SELECT. Retrieved from https://www.w3.org/TR/WCAG20-TECHS/H85
Labeling Controls
. Association of labels
. Invisible labels
. Visual position
Grouping Controls
Form Instructions
Validating Input &
User Notifications
Multi-page Forms
Dialog Boxes
Summary
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
29. 29
Form Instructions
• “Provide instructions to help users understand how
to complete the form and use individual form
controls. ”WCAG WG, EOWG (2015, March 2)
• Types of Instructions:
1. Overall Instruction
(instructions that apply to the entire form)
2. In-line instructions (specific to a form element)
(example of input , instructions on filling a field)
• 2.1 Instruction within <label>
• 2.2 Instruction associated with control using
<aria-describedby“
3. Instruction between form controls
Reference:
WCAG WG, EOWG (2015, March 2). Forms Concepts. Retrieved from http://www.w3.org/WAI/tutorials/forms/
Labeling Controls
. Association of labels
. Invisible labels
. Visual position
Grouping Controls
Form Instructions
Validating Input &
User Notifications
Multi-page Forms
Dialog Boxes
Summary
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
30. 30
Form Instructions
1. Overall Instruction
• “Where relevant, provide such instructions that apply to the entire form
before the <form> element to ensure that it is read aloud by screen
readers before they switch to “Forms Mode”.WCAG WG, EOWG (2015, March 2)
Reference:
WCAG WG, EOWG (2015, March 2). Forms Concepts. Retrieved from http://www.w3.org/WAI/tutorials/forms/
Labeling Controls
. Association of labels
. Invisible labels
. Visual position
Grouping Controls
Form Instructions
Validating Input &
User Notifications
Multi-page Forms
Dialog Boxes
Summary
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
31. 31
Form Instructions
2.1 Instruction within <label>
• Within <label> for simple use cases indicating:
• required form controls
• expected data format and example
References:
W3C. H90: Indicating required form controls using label or legend. Retrieved from https://www.w3.org/TR/2014/NOTE-WCAG20-TECHS-20140916/H90
W3C. G89: Providing expected data format and example. Retrieved from https://www.w3.org/TR/2014/NOTE-WCAG20-TECHS-20140916/G89
Labeling Controls
. Association of labels
. Invisible labels
. Visual position
Grouping Controls
Form Instructions
Validating Input &
User Notifications
Multi-page Forms
Dialog Boxes
Summary
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
32. 32
Form Instructions
2.2.arai-describedby (1)
• Use aria-describedby to associate instructions with
form fields while there is a form label.
• Instructions will be available to users when the form
control has focus
Reference:
W3C, ARIA1: Using the aria-describedby property to provide a descriptive label for user interface controls. Retrieved from https://www.w3.org/TR/WCAG20-TECHS/ARIA1.html
WCAG WG, EOWG (2015, March 2). Forms Concepts. Retrieved from http://www.w3.org/WAI/tutorials/forms/
W3C, WCAG 3.3.2 Labels or Instructions. Retrieved from http://www.w3.org/TR/UNDERSTANDING-WCAG20/minimize-error-cues.html
WEBAIM, Creating Accessible Forms. Retrieved from http://webaim.org/techniques/forms/advanced
Labeling Controls
. Association of labels
. Invisible labels
. Visual position
Grouping Controls
Form Instructions
Validating Input &
User Notifications
Multi-page Forms
Dialog Boxes
Summary
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
33. 33
Form Instructions
2.2.arai-describedby (2)
Labeling Controls
. Association of labels
. Invisible labels
. Visual position
Grouping Controls
Form Instructions
Validating Input &
User Notifications
Multi-page Forms
Dialog Boxes
Summary
Instruction
Government of Canada - Statistic Canada,
2016 Census
Screenshot Reference:
Government of Canada - Statistic Canada, 2016 Census - Start questionnaire. Retrieved from https://www133.statcan.gc.ca/census-recensement/en/login-connexion/open-ouvrir
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
34. 34
Form Instructions
2.2.arai-describedby (3)
Reference:
W3C, ARIA1: Using the aria-describedby property to provide a descriptive label for user interface controls. Retrieved from https://www.w3.org/TR/WCAG20-TECHS/ARIA1.html
WCAG WG, EOWG (2015, March 2). Forms Concepts. Retrieved from http://www.w3.org/WAI/tutorials/forms/
W3C, WCAG 3.3.2 Labels or Instructions. Retrieved from http://www.w3.org/TR/UNDERSTANDING-WCAG20/minimize-error-cues.html
WEBAIM, Creating Accessible Forms. Retrieved from http://webaim.org/techniques/forms/advanced
Labeling Controls
. Association of labels
. Invisible labels
. Visual position
Grouping Controls
Form Instructions
Validating Input &
User Notifications
Multi-page Forms
Dialog Boxes
Summary
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
35. 35
Form Instructions
Screen Reader demo
Form instructions demo - https://youtu.be/9rIT595KrZQ
Labeling Controls
. Association of labels
. Invisible labels
. Visual position
Grouping Controls
Form Instructions
Validating Input &
User Notifications
Multi-page Forms
Dialog Boxes
Summary
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
36. 36
Form Instructions
3. Instruction between form elements
• Add tabindex=“0“ to instruction between form
elements to receive focus and be included in the
natural tab order
Labeling Controls
. Association of labels
. Invisible labels
. Visual position
Grouping Controls
Form Instructions
Validating Input &
User Notifications
Multi-page Forms
Dialog Boxes
Summary
<p tabindex=“0”>Once Click offers
you convenient features to modify your
online content</p>
<p tabindex=“0”>Please ensure
accuracy of input before submitting
the form</p>
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
37. 37
Validating Input &
User Notification
• Validating Input
• User Notifications
Labeling Controls
. Association of labels
. Invisible labels
. Visual position
Grouping Controls
Form Instructions
Validating Input &
User Notifications
Multi-page Forms
Dialog Boxes
Summary
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
38. 38
Validating Input & User Notification
Validating Input
1) Validating required input fields
•Indicate required fields in the label text
•Add required attribute to form controls to indicate that user input is required before
submission
W3C. ARIA2: Identifying a required field with the aria-required property. Retrieved from https://www.w3.org/TR/WCAG20-TECHS/ARIA2.html
Labeling Controls
. Association of labels
. Invisible labels
. Visual position
Grouping Controls
Form Instructions
Validating Input &
User Notifications
Multi-page Forms
Dialog Boxes
Summary
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
required=“required”
When user clicks submit without filling
a mandatory field, user agent indicates
to the user that input is required before
submission “Please fill out this field”
aria-required=“true”
provided redundantly to support web browsers that don’t
communicate the required attribute to assistive technology to inform
assistive technologies about required controls so that they are
appropriately announced to the users (as opposed to validating the
input)
39. 39
Validating Input & User Notification
Validating Input
2) Validating common input for input fields
•HTML5 validates common types for an <input> element such as tel, email, urlLabeling Controls
. Association of labels
. Invisible labels
. Visual position
Grouping Controls
Form Instructions
Validating Input &
User Notifications
Multi-page Forms
Dialog Boxes
Summary
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
40. 40
Validating Input & User Notification
User Notifications
Provide feedback to users about the results of their form submission.
Error messages need to be informative - should provide guidance on how
to correct mistakes.
•Notification summary of errors:
Overall feedback with list of errors that occurred provided after user
submission of the form provided at the top of the page
•Notification on form control:
Inline specific feedback provided at or near the form controls
Labeling Controls
. Association of labels
. Invisible labels
. Visual position
Grouping Controls
Form Instructions
Validating Input &
User Notifications
Multi-page Forms
Dialog Boxes
Summary
Reference:
WCAG WG, EOWG (2015, March 2). Forms Concepts. Retrieved from http://www.w3.org/WAI/tutorials/forms/
W3C. Error Identification: Understanding SC 3.3.1. https://www.w3.org/TR/UNDERSTANDING-WCAG20/minimize-error-identified.html
Screenshot inspired from : Form validation Working examples - Web Experience Toolkit http://wet-boew.github.io/v4.0-ci/demos/formvalid/formvalid-en.html
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
41. 41
Validating Input & User Notification
Form Validation Demo
Example uses WET 4 validation of input and error message handling (http://wet-boew.github.io/v4.0-ci/demos/index-en.html)
Labeling Controls
. Association of labels
. Invisible labels
. Visual position
Grouping Controls
Form Instructions
Validating Input &
User Notifications
Multi-page Forms
Dialog Boxes
Summary
Notification on form control:
•Error message placed within
the <label> to not be missed
•Error message provides
guidance on how to correct
mistakes
Notification summary of
errors:
•Focus moved from the submit
button to list of errors
•Notification placed at the top
of the form and list all errors
•Each error linked to the
relevant control
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
42. 42
Validating Input & User Notification
Form Validation Demo
Web Experience Toolkit (WET 4) “Form validation” provides
example on validation of input and error message handling
Screenshot source:
WET 4 Working examples - Web Experience Toolkit. Retrieved from http://wet-boew.github.io/v4.0-ci/demos/index-en.html
Hint: Google “WET 4 examples” to
find this page!
Labeling Controls
. Association of labels
. Invisible labels
. Visual position
Grouping Controls
Form Instructions
Validating Input &
User Notifications
Multi-page Forms
Dialog Boxes
Summary
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
43. 43
Multi-page Form
• Divide long forms into multiple smaller forms that
constitute a series of logical steps or stages, and
• Inform users about their progress.
Reference:
WCAG WG, EOWG (2015, March 2). Forms Concepts. Retrieved from http://www.w3.org/WAI/tutorials/forms/
Labeling Controls
. Association of labels
. Invisible labels
. Visual position
Grouping Controls
Form Instructions
Validating Input &
User Notifications
Multi-page Forms
Dialog Boxes
Summary
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
44. 44
Multi-page Form
Example
Reference:
W3C. WCAG G98: Providing the ability for the user to review and correct answers before submitting. Retrieved from https://www.w3.org/TR/WCAG20-TECHS/G98.html
Labeling Controls
. Association of labels
. Invisible labels
. Visual position
Grouping Controls
Form Instructions
Validating Input &
User Notifications
Multi-page Forms
Dialog Boxes
Summary
Repeat overall
instructions on
every page before
<form>
Indicating
progress in
each step
(title, h1,
nav)
The ability to review
and correct answers
before submitting
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
45. 45
Multi-page Form
Indicating progress (1)
• “Each step should inform the user about the
progress they are making” WCAG WG, EOWG (2015, March 2)
• Possible techniques include using:
1. Page <title>
2. The main heading <h1>
3. HTML5 <progress> element
4. Step-by-step indicator
Reference:
WCAG WG, EOWG (2015, March 2). Forms Concepts. Retrieved from http://www.w3.org/WAI/tutorials/forms/
Labeling Controls
. Association of labels
. Invisible labels
. Visual position
Grouping Controls
Form Instructions
Validating Input &
User Notifications
Multi-page Forms
Dialog Boxes
Summary
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
46. 46
Multi-page Form
Indicating progress (2)
1. Page <title>
(The progress information should precede other information
provided in the title)
2. The main heading <h1>
(Include progress in prominent heading)
<h1>Billing Address (step 2 of 4)</h1>
Reference:
WCAG WG, EOWG (2015, March 2). Forms Concepts. Retrieved from http://www.w3.org/WAI/tutorials/forms/
Labeling Controls
. Association of labels
. Invisible labels
. Visual position
Grouping Controls
Form Instructions
Validating Input &
User Notifications
Multi-page Forms
Dialog Boxes
Summary
<title>Step 2 of 4 : Billing Address - Camp Registration</title>
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
47. 47
Multi-page Form
Indicating progress (3)
3.1 HTML5 <progress> element
(Inform users about the progress such as in a survey)
Note: Some browsers do not support <progress> functionality natively which requires
a polyfill to emulate the same functionality using generic HTML and WAI-ARIA.
•<div role="progressbar" aria-valuenow="29" aria-valuemin="0" aria-
valuemax="100">29 %</div>
3.2 Custom progress bar (personal preference!)
Labeling Controls
. Association of labels
. Invisible labels
. Visual position
Grouping Controls
Form Instructions
Validating Input &
User Notifications
Multi-page Forms
Dialog Boxes
Summary
Screenshot Source: WCAG WG, EOWG (2015, March 2). Forms Concepts
<div><span class="wb-inv">Progress:</span>
<span id="ProgressText">29</span>% <span
class="wb-inv"> complete</span></div>
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
48. 48
Multi-page Form
Indicating progress (3)
4. Step-by-step indicator
(known number of steps to be completed)
<ol class="breadcrumb">
<li class="h5"><a href="childinfo.html"> <span class="glyphicon glyphicon-ok"> </span>
<span class="wb-inv">Completed:</span> Child Information</a></li>
<li class="h5"><span class="glyphicon glyphicon-unchecked"> </span>
<span class="wb-inv">Current:</span> Billing Address</li>
<li>Review Registration</li>
<li>Complete Registration</li>
</ol>
Reference:
WCAG WG, EOWG (2015, March 2). Forms Concepts. Retrieved from http://www.w3.org/WAI/tutorials/forms/
Labeling Controls
. Association of labels
. Invisible labels
. Visual position
Grouping Controls
Form Instructions
Validating Input &
User Notifications
Multi-page Forms
Dialog Boxes
Summary
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
49. 49
Dialog Boxes (before and after)
Labeling Controls
. Association of labels
. Invisible labels
. Visual position
Grouping Controls
Form Instructions
Validating Input &
User Notifications
Multi-page Forms
Dialog Boxes
Summary
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
Non-accessible dialog box issues
https://youtu.be/cFW4VVzcec4?t=25s
•User has access to background
page
•Dialog box has not title
When developing a dialog box, ensure that:
The dialog box receives focus
User knows that he is in a dialog box
Dialog box has a title
User does not have access to the background page.
Example of a non-accessible dialog box:
50. 50
Dialog Boxes (before and after)
Labeling Controls
. Association of labels
. Invisible labels
. Visual position
Grouping Controls
Form Instructions
Validating Input &
User Notifications
Multi-page Forms
Dialog Boxes
Summary
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
HTML snippet:
<div role="dialog" aria-labelledby="login">
<h1 id="login">Log in to Kangaroo
Kilometers</h1>
<!-- input fields -->
</div>
The dialog box receives focus
User knows that he is in a dialog box
Dialog box has a title
JS pseudo code:
// When dialog box is opened
//Select the background page main wrapper and give it aria hidden="true"
document.querySelector('.wrapper').setAttribute('aria-hidden', true);
// When dialog box is closed
//change the background page main wrapper to aria-hidden="false"
document.querySelector('.wrapper').setAttribute('aria-hidden', false);
User does not have access to the background page.
A role="dialog" interrupts the current
processing in order to prompt the
user to enter information or require a
response
Accessible Dialog box example https://www.youtube.com/watch?
v=nLjAqr6YDZE
51. 51
Summary
With the techniques of labeling & grouping controls,
Form instructions , validating Input, user notifications
and multi-page forms your web forms will be easier to
understand and more accessible for all users.
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
52. 52
Questions Period
Resources
•Google Accessibility Course (Lesson 5 – ARIA)
https://www.udacity.com/course/web-accessibility--ud89
•Creating Accessible Forms
http://webaim.org/techniques/forms/
•Forms Concepts
http://www.w3.org/WAI/tutorials/forms/
•User Agent Support Notes for HTML and XHTML Techniques
https://www.w3.org/WAI/WCAG20/Techniques/ua-notes/
Thank you for your attention!
Rabab Gomaa
@RubysDo
http://bit.do/webforms
•Notes on Using ARIA in HTML
https://www.w3.org/TR/aria-in-html/
•WAI-ARIA Authoring Practices 1.1
https://www.w3.org/TR/wai-aria-practices-1.1/
•Buttons, Submits, and Divs, Oh Hell
http://adrianroselli.com/2016/01/links-buttons-submits-and-divs-
oh-hell.html
•JAWS Screen reader Demos
https://www.youtube.com/channel/UCVoa-B5tR08-
T2c1ku5mhfA
•How to Meet WCAG 2.0
https://www.w3.org/WAI/WCAG20/quickref/
@RubysDo “Accessible & Usable Web Forms. Your How To Guide!” http://bit.do/webforms
Editor's Notes
In case you wonder what those cute cows are, this just happened to be the template of the Agency and the purpose of this session is completely different!