%3CLINGO-SUB%20id%3D%22lingo-sub-1416845%22%20slang%3D%22en-US%22%3E%5BGuest%20Blog%5D%20The%20Accidental%20Accessibility%20Advocate%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1416845%22%20slang%3D%22en-US%22%3E%3CP%3E%3CEM%3E%20This%20post%20was%20written%20by%20MVP%20%3CA%20href%3D%22https%3A%2F%2Fmvp.microsoft.com%2Fen-us%2FPublicProfile%2F5002401%3FfullName%3DBill%2520Ayers%22%20target%3D%22_self%22%20rel%3D%22noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%22%3EBill%20Ayers%3C%2FA%3E%20as%20part%20of%20our%20Humans%20of%20IT%20Guest%20Blogger%20series.%20Read%20on%20to%20learn%20how%20the%20development%20of%20Windows%20Calc98%20accidentally%20(and%20fortuitously!)%20became%20accessible%2C%20and%20helped%20create%20a%20journey%20towards%20mindfully%20designing%20for%20accessibility.%26nbsp%3B%3C%2FEM%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EI've%20been%20developing%20software%20for%20a%20while%20now.%20I%20can%20remember%20back%20in%20the%201990s%2C%20before%20smartphones%2C%20and%20before%20Azure%20and%20Office%20365%2C%20and%20%3CEM%3Eway%3C%2FEM%3E%20before%20most%20people%20had%20heard%20of%20the%20World%20Wide%20Web%2C%20everyone%20was%20getting%20excited%20about%20Microsoft%20Windows%2095.%20Seriously%2C%20it%20was%20in%20the%20newspapers%20-%20some%20even%20had%20a%20pull-out%20section.%20So%20when%20we%20built%20a%20Windows%20calculator%20application%20we%20called%20it%20Calc95%2C%20and%20when%20a%20new%20version%20of%20Windows%20came%20out%20in%201998%2C%20called%20Windows%2098%2C%20we%20updated%20Calc95%20to%20Calc98.%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22Calc98.png%22%20style%3D%22width%3A%20250px%3B%22%3E-ERR%3AREF-NOT-FOUND-%3CSPAN%20class%3D%22lia-inline-image-caption%22%20onclick%3D%22event.preventDefault()%3B%22%3ECalc98%20Windows%20calculator%20from%201998%3C%2FSPAN%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EIt%20turns%20out%20to%20be%20a%20lot%20trickier%20than%20you'd%20think%20to%20write%20a%20calculator%20application%20for%20a%20computer.%20And%20back%20then%20there%20was%20no%20source%20control%20or%20test-driven%20development%2C%20and%20Kanban%20was%20something%20you'd%20only%20know%20about%20if%20you%20worked%20for%20a%20Japanese%20manufacturing%20company.%20But%2C%20we%20had%20about%20four%20million%20users%20and%20we%20encouraged%20a%20lot%20of%20feedback%20so%20that%20over%20the%20next%20few%20years%2C%20the%20number%20of%20bugs%20decreased%20to%20a%20trickle%20and%20Calc98%20was%20pretty%20much%20done.%20But%20what%20was%20more%20interesting%20was%20some%20of%20the%20messages%20we%20got%20from%20users%20telling%20us%20how%20they%20had%20used%20the%20software.%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CH2%20id%3D%22choice-is-good%22%20id%3D%22toc-hId--1329468847%22%20id%3D%22toc-hId--1329416058%22%20id%3D%22toc-hId--1329416058%22%20id%3D%22toc-hId--1329416058%22%3EChoice%20is%20Good%3C%2FH2%3E%0A%3CP%3EYou%20see%2C%20we%20never%20quite%20managed%20to%20decide%20what%20the%20right%20font%20was%2C%20or%20button%20size%2C%20or%20even%20how%20many%20buttons%20there%20should%20be%20on%20the%20calculator.%20So%20%3CSTRONG%3Ewe%20decided%20to%20make%20all%20those%20things%20configurable%2C%3C%2FSTRONG%3E%20because%20we%20could.%20The%20graphical%20user%20interface%20and%20the%20Win32%20SDK%20made%20that%20possible.%20If%20you%20wanted%20to%20make%20the%20display%20font%20gigantic%2C%20with%20just%20a%20few%20functions%20on%20huge%20buttons%2C%20you%20could.%20Back%20then%2C%20we%20couldn't%20think%20of%20any%20reason%20why%20you%20would%20do%20that%3B%20but%20you%20technically%20could%20if%20you%20wanted%20to.%20%3CSTRONG%3EThe%20key%20thing%20was%20that%20the%20option%20was%20there%20for%20users%3C%2FSTRONG%3E.%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22Calc98big.png%22%20style%3D%22width%3A%20350px%3B%22%3E-ERR%3AREF-NOT-FOUND-%3CSPAN%20class%3D%22lia-inline-image-caption%22%20onclick%3D%22event.preventDefault()%3B%22%3ECalc98%20with%20large%20buttons%20and%20display%3C%2FSPAN%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CH2%20id%3D%22solving-a-real-problem%22%20id%3D%22toc-hId-1158043986%22%20id%3D%22toc-hId-1158096775%22%20id%3D%22toc-hId-1158096775%22%20id%3D%22toc-hId-1158096775%22%3ESolving%20a%20Real%20Problem%3C%2FH2%3E%0A%3CP%3EThen%2C%20to%20our%20surprise%2C%20we%20noticed%20we%20were%20getting%20a%20lot%20of%20email%20messages%20(and%20in%20some%20cases%2C%20letters%20-%20remember%2C%20this%20was%20still%20the%201990s)%20from%20people%20saying%20things%20like%20%E2%80%9DMy%20father%20is%20a%20retired%20engineer%20and%20suffers%20from%20dementia%E2%80%A6%E2%80%9D%2C%20or%20%E2%80%9DI%20teach%20special%20needs%20children%E2%80%A6%E2%80%9D%2C%20%22I%20work%20in%20adult%20care...%22%2C%20%E2%80%9DI%20am%2083%20and%20have%20limited%20eyesight...%E2%80%9D.%20All%20of%20these%20people%20had%20found%20ways%20of%20using%20Calc98's%20button%20sizes%20and%20fonts%20to%20either%20simplify%20the%20application%20or%20make%20the%20buttons%20and%20legends%20and%20display%20bigger%2C%20or%20have%20higher%20contrast.%20Without%20even%20meaning%20to%2C%20we%20had%20inadvertently%20built%20something%20that%20helped%20people%20which%2C%20to%20be%20honest%2C%20we%20hadn%E2%80%99t%20really%20thought%20about.%20To%20think%20that%20the%20Calc98%20would%20help%20people%20with%20dementia%2C%20people%20with%20special%20needs%20children%2C%20and%20people%20with%20partial%20sight...%20Completely%20by%20accident%2C%20we%20had%20made%20an%20accessible%20application.%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EAnd%20so%20we%20doubled%20down%20on%20accessibility%20features%2C%20because%20it%20turns%20out%20there%20are%20a%20lot%20of%20people%20with%20accessibility%20needs.%20Not%20just%20people%20registered%20as%20disabled%20in%20some%20way%2C%20but%20also%20people%20with%20marginal%20eyesight%2C%20or%20who%20don't%20want%20to%20have%20to%20get%20out%20their%20reading%20glasses%2C%20or%20just%20need%20a%20little%20extra%20help.%20We%20learnt%20that%20big%20buttons%20help%20if%20you%20have%20any%20kind%20of%20physical%20or%20motor%20impairment%2C%20but%20also%20if%20you%20have%20gloves%20on%20or%20if%20you%20have%20to%20work%20with%20a%20small%20touchscreen.%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EWe%20discovered%2C%20accidentally%2C%20that%20%3CSTRONG%3Eincorporating%20these%20design%20details%20and%20giving%20users%20these%20choices%20made%20the%20software%20a%20better%20product%20overall%3C%2FSTRONG%3E.%20In%20my%20experience%2C%20users%20with%20accessibility%20needs%20don't%20really%20want%20a%20special%20application%2C%20they%20just%20want%20to%20be%20able%20to%20adapt%20it%20to%20their%20needs.%20They%20don't%20mind%20spending%20some%20time%20setting%20it%20up%2C%20as%20long%20as%20these%20custom%20configurations%20are%20possible.%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EEven%20in%20the%201990s%20there%20were%20hundreds%20of%20calculator%20applications%20for%20Windows.%20And%20yet%20ours%20became%20one%20of%20the%20most%20popular%2C%20with%20millions%20of%20installations.%20I%20am%20sure%20that%20its%20success%20was%20due%20to%20the%20accessibility%20features%20we%20introduced%2C%20even%20if%20it%20was%20largely%20by%20accident.%3C%2FP%3E%0A%3CH2%20id%3D%22welcome-to-2020%22%20id%3D%22toc-hId--649410477%22%20id%3D%22toc-hId--649357688%22%20id%3D%22toc-hId--649357688%22%20id%3D%22toc-hId--649357688%22%3EWelcome%20to%202020%3C%2FH2%3E%0A%3CP%3EWell%2C%20now%20it's%202020%20and%20it%20shouldn%E2%80%99t%20need%20to%20be%20an%20accident%20any%20more.%20You%20don%E2%80%99t%20have%20to%20be%20%E2%80%9Cwoke%E2%80%9D%2C%20and%20you%20shouldn't%20need%20to%20have%20a%20legal%20obligation%20to%20persuade%20your%20company%20to%20take%20accessibility%20seriously.%20It's%20not%20just%20a%20case%20of%20ticking%20a%20box%20or%20doing%20the%20right%20thing.%20It%20really%20is%20just%20sound%20commercial%20sense%20to%20be%20able%20to%20serve%20the%20majority%20of%20your%20market%20who%20will%20either%20have%20an%20accessibility%20need%20now%2C%20or%20will%20have%20one%20in%20the%20future.%20And%20I%20would%20go%20further%20to%20say%20that%20if%20your%20applications%20and%20websites%20aren%E2%80%99t%20accessible%2C%20then%20you%E2%80%99re%20creating%20software%20that%20probably%20doesn%E2%80%99t%20work%20well%20for%20everybody%2C%20and%20apparently%20nobody%20wants%20software%20that%20sucks.%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EIn%20more%20recent%20years%2C%20I've%20worked%20on%20numerous%20software%20projects%2C%20many%20of%20which%20that%20had%20accessibility%20needs%2C%20especially%20public-facing%20websites.%20For%20a%20few%20years%20I%20was%20the%20SharePoint%20Architect%20for%20the%20website%20of%20the%20NHS%20in%20the%20UK%20(back%20when%20building%20public-facing%20websites%20on%20was%20a%20thing).%20Meeting%20WCAG-AA%20standards%20with%20SharePoint%202007%20wasn%E2%80%99t%20easy%2C%20and%20in%20many%20cases%20we%20had%20to%20resort%20to%20re-writing%20the%20page%20and%20fixing%20everything%20up.%20Nowadays%2C%20SharePoint%20has%20much%20better%20accessibility%20support%2C%20and%20fortunately%20there%20are%20many%20tools%20and%20accessibility%20checkers%20available%20to%20make%20the%20task%20easier.%20I've%20listed%20a%20few%20at%20the%20end%20of%20the%20article%20for%20your%20reference.%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EBut%20it's%20an%20ongoing%20battle.%20It's%20very%20easy%20to%20spend%20a%20lot%20of%20resources%20getting%20a%20website%20or%20application%20to%20be%20accessible%2C%20and%20then%20neglect%20that%20as%20development%20continues%2C%20so%20that%20by%20the%20time%20version%203.5%20is%20released%20there%20are%20accessibility%20problems%20again.%20%3CSTRONG%3EYou%20need%20to%20keep%20running%20the%20accessibility%20checks%20and%20periodically%20review%20the%20list%20of%20good%20practices%2C%20or%20better%20still%2C%20make%20accessibility%20part%20of%20your%20development%20toolkit%3C%2FSTRONG%3E.%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CH2%20id%3D%22research-continues%22%20id%3D%22toc-hId-1838102356%22%20id%3D%22toc-hId-1838155145%22%20id%3D%22toc-hId-1838155145%22%20id%3D%22toc-hId-1838155145%22%3EResearch%20continues%3C%2FH2%3E%0A%3CP%3EAs%20time%20goes%20by%2C%20there%20is%20more%20and%20more%20research%20and%20advice%20on%20how%20we%20can%20make%20things%20better.%20Here's%20the%20relevant%20section%20of%20the%20settings%20page%20of%20another%20of%20our%20applications%3A%20Dictionary%20(on%20Windows%2010)%3A%3C%2FP%3E%0A%3CP%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22DictionarySettings.png%22%20style%3D%22width%3A%20348px%3B%22%3E-ERR%3AREF-NOT-FOUND-%3CSPAN%20class%3D%22lia-inline-image-caption%22%20onclick%3D%22event.preventDefault()%3B%22%3EPart%20of%20Dictionary%20application%20settings%20page%3C%2FSPAN%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EAs%20you%20can%20see%2C%20we've%20given%20users%20a%20choice%20between%20the%20%22dark%22%20and%20%22light%22%20themes%2C%20and%20also%20an%20option%20to%20take%20whatever%20the%20operating%20system%20default%20is.%20You%20can%20also%20change%20the%20font%20size%20and%20accent%20color%2C%20but%20not%20the%20individual%20text%20and%20background%20colors%20explicitly.%20And%20now%20an%20email%20from%20a%20user%3A%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CBLOCKQUOTE%3E%0A%3CP%3E%22I%20was%20reading%20the%20settings%20information%20for%20your%20app.%20I%20noticed%20that%20was%20available%20a%20background%20feature.%20I%20was%20unable%20to%20find%20those%20directions.%20I%20would%20like%20a%20background%20for%20easier%20reading%20because%20I%20have%20Dyslexia.%22%3C%2FP%3E%0A%3C%2FBLOCKQUOTE%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EOops!%20We%20didn't%20give%20people%20an%20option%20to%20subtly%20change%20the%20background%20color%2C%20because%20it%20never%20occurred%20to%20us%20that%20somebody%20would%20need%20to.%20But%20recent%20research%20suggests%20that%20users%20with%20Dyslexia%20can%20benefit%20from%20having%20black%20or%20dark%20grey%20text%20on%20a%20pastel%20background%2C%20rather%20than%20black%20text%20on%20a%20bright%20white%20background.%20Although%20contrast%20is%20generally%20good%2C%20there%20are%20actually%20cases%20where%20you%20can%20have%20too%20much%20contrast.%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22CommandError.png%22%20style%3D%22width%3A%20694px%3B%22%3E-ERR%3AREF-NOT-FOUND-%3CSPAN%20class%3D%22lia-inline-image-caption%22%20onclick%3D%22event.preventDefault()%3B%22%3EProblem%20contrast%20in%20error%20text%3C%2FSPAN%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EYou%20can%20also%20have%20the%20wrong%20type%20of%20contrast.%20As%20time%20has%20passed%2C%20like%20most%20people%2C%20I%20find%20using%20a%20computer%20screen%20more%20of%20a%20problem.%20I%20need%20to%20wear%20glasses%2C%20but%20then%20I%20need%20to%20get%20too%20close%2C%20but%20if%20I%20take%20them%20off%20I'm%20leaning%20back%2C%20or%20I%20can't%20quite%20read%20the%20text.%20One%20of%20the%20worst%20problems%20I%20have%20found%20is%20command%20windows%20that%20often%20display%20error%20messages%20in%20red%20against%20a%20black%20or%20dark%20blue%20background.%20I%20find%20this%20almost%20impossible%20to%20read%20without%20making%20the%20font%20size%20unmanageably%20large%2C%20and%20I%20still%20haven't%20found%20a%20way%20of%20configuring%20it%20in%20a%20satisfactory%20way.%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CH2%20id%3D%22still-learning%22%20id%3D%22toc-hId-30647893%22%20id%3D%22toc-hId-30700682%22%20id%3D%22toc-hId-30700682%22%20id%3D%22toc-hId-30700682%22%3EStill%20Learning%3C%2FH2%3E%0A%3CP%3EI%20went%20through%20a%20phase%20of%20thinking%20we%20shouldn't%20over-complicate%20application%20settings%20pages.%20But%20now%20I%20am%20of%20the%20view%20that%20we%20should%20err%20on%20the%20side%20of%20offering%20more%20user%20options%20for%20controlling%20the%20user%20interface.%20%3CSTRONG%3EBy%20giving%20users%20the%20ability%20to%20customize%2C%20you%20give%20them%20the%20power%20to%20make%20changes%20according%20to%20their%20individual%20needs%2C%20without%20trying%20to%20second-guess%20what%20those%20needs%20might%20be.%3C%2FSTRONG%3E%20You%20can't%20tell%20somebody%20what%20they%20need%20to%20make%20their%20life%20easier%20-%20you%20just%20don't%20know.%20Sometimes%20even%26nbsp%3B%3CEM%3Ethey%20%3C%2FEM%3Edon't%20know.%20Give%20them%20a%20choice%20so%20they%20can%20try%20different%20options%20until%20they%20find%20one%20that%20suits%20them.%20Sometimes%20just%20putting%20the%20user%20in%20control%2C%20in%20itself%2C%20is%20a%20great%20way%20of%20helping%20users.%20Give%20people%20a%20choice%2C%20and%20even%20if%20they%20ultimately%20decide%20not%20to%20take%20advantage%20of%20that%20choice%2C%20that's%20fine.%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EAccessibility%20is%20rarely%20%22done%22.%20It's%20a%20continuous%2C%20iterative%20process%20of%20improvement%20at%20the%20software%20level%2C%20but%20also%20at%20the%20individual%20level.%20We%20owe%20it%20to%20ourselves%20to%20get%20this%20right%2C%20because%20it%20makes%20commercial%20sense%2C%20because%20it%20makes%20the%20world%20a%20better%20place%2C%20but%20%3CEM%3Eespecially%3C%2FEM%3E%20because%20the%20people%20who%20need%20this%20technology%20the%20most%20might%20well%20be%20our%20future%20selves.%3C%2FP%3E%0A%3CH2%20id%3D%22resources%22%20id%3D%22toc-hId--1776806570%22%20id%3D%22toc-hId--1776753781%22%20id%3D%22toc-hId--1776753781%22%20id%3D%22toc-hId--1776753781%22%3EResources%3C%2FH2%3E%0A%3CUL%3E%0A%3CLI%3EHome%20Office%20posters%3A%20-ERR%3AREF-NOT-FOUND-%3CA%20href%3D%22https%3A%2F%2Faccessibility.blog.gov.uk%2F2016%2F09%2F02%2Fdos-and-donts-on-designing-for-accessibility%2F%22%20target%3D%22_blank%22%20rel%3D%22nofollow%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%22%3Ehttps%3A%2F%2Faccessibility.blog.gov.uk%2F2016%2F09%2F02%2Fdos-and-donts-on-designing-for-accessibility%2F%3C%2FA%3E%3C%2FLI%3E%0A%3CLI%3EList%20of%20accessibility%20testing%20tools%3A%20-ERR%3AREF-NOT-FOUND-%3CA%20href%3D%22https%3A%2F%2Fdocs.microsoft.com%2Fen-us%2Fmicrosoft-edge%2Faccessibility%2Ftest%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%22%3Ehttps%3A%2F%2Fdocs.microsoft.com%2Fen-us%2Fmicrosoft-edge%2Faccessibility%2Ftest%3C%2FA%3E%3C%2FLI%3E%0A%3CLI%3EAccessibility%20checker%20in%20Office%3A%20-ERR%3AREF-NOT-FOUND-%3CA%20href%3D%22https%3A%2F%2Faka.ms%2Fofficeaccessibility%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%22%3Ehttps%3A%2F%2Faka.ms%2Fofficeaccessibility%3C%2FA%3E%3C%2FLI%3E%0A%3CLI%3EAccessibility%20Insights%3A%20-ERR%3AREF-NOT-FOUND-%3CA%20href%3D%22https%3A%2F%2Faka.ms%2Faccessibilityinsights%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%22%3Ehttps%3A%2F%2Faka.ms%2Faccessibilityinsights%3C%2FA%3E%3C%2FLI%3E%0A%3CLI%3EW3C%20Web%20Accessibility%20Initiative%3A%20-ERR%3AREF-NOT-FOUND-%3CA%20href%3D%22https%3A%2F%2Fwww.w3.org%2FWAI%2Ffundamentals%2Faccessibility-intro%2F%22%20target%3D%22_blank%22%20rel%3D%22nofollow%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%22%3Ehttps%3A%2F%2Fwww.w3.org%2FWAI%2Ffundamentals%2Faccessibility-intro%2F%3C%2FA%3E%3C%2FLI%3E%0A%3CLI%3EA11y%20heuristics%20%3A%20-ERR%3AREF-NOT-FOUND-%3CA%20href%3D%22https%3A%2F%2Fwww.deque.com%2Fresources%2Fintro-to-accessibility-heuristics%2F%22%20target%3D%22_blank%22%20rel%3D%22nofollow%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%22%3Ehttps%3A%2F%2Fwww.deque.com%2Fresources%2Fintro-to-accessibility-heuristics%2F%3C%2FA%3E%3C%2FLI%3E%0A%3CLI%3EWCAG%3A%20-ERR%3AREF-NOT-FOUND-%3CA%20href%3D%22https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FWeb_Content_Accessibility_Guidelines%22%20target%3D%22_blank%22%20rel%3D%22nofollow%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%22%3Ehttps%3A%2F%2Fen.wikipedia.org%2Fwiki%2FWeb_Content_Accessibility_Guidelines%3C%2FA%3E%3C%2FLI%3E%0A%3C%2FUL%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%23HumansofIT%3C%2FP%3E%0A%3CP%3E%23TechforGood%3C%2FP%3E%0A%3CP%3E%23Accessibility%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-TEASER%20id%3D%22lingo-teaser-1416845%22%20slang%3D%22en-US%22%3E%3CP%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22people.png%22%20style%3D%22width%3A%20600px%3B%22%3E%3CIMG%20src%3D%22https%3A%2F%2Fgxcuf89792.i.lithium.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F194380i917726AF32D7C0AE%2Fimage-size%2Flarge%3Fv%3D1.0%26amp%3Bpx%3D999%22%20title%3D%22people.png%22%20alt%3D%22people.png%22%20%2F%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%3CEM%3EThis%20post%20was%20written%20by%20MVP%20Bill%20Ayers%20as%20part%20of%20our%20Humans%20of%20IT%20Guest%20Blogger%20series.%20Read%20on%20to%20learn%20about%20Bill's%20own%20experience%20in%20solving%20a%20problem%20by%20accident%20that%20helped%20him%20embark%20on%20an%20accessibility-focused%20journey!%3C%2FEM%3E%3C%2FP%3E%3C%2FLINGO-TEASER%3E%3CLINGO-SUB%20id%3D%22lingo-sub-1422439%22%20slang%3D%22en-US%22%3ERe%3A%20%5BGuest%20Blog%5D%20The%20Accidental%20Accessibility%20Advocate%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1422439%22%20slang%3D%22en-US%22%3E%3CP%3EHey%20%3CA%20href%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F1127%22%20target%3D%22_blank%22%3E%40Bill%20Ayers%3C%2FA%3E%20Great%20post%2C%20lots%20to%20take%20in%20about%20accessibility%20here%20and%20as%20you%20said%20it's%20something%20that%20is%20rarely%20%22done%22%2C%20though%20I%20know%20that%20we've%20see%20%3CU%3Eleaps%3C%2FU%3E%20and%20%3CSTRONG%3Ebounds%3C%2FSTRONG%3E%20over%20the%20years%20in%20term%20of%20general%20accessibility%20of%20Desktop%20software%20and%20websites%20too.%20Something%20that%20I%20am%20sure%20that%20you%20will%20have%20no%20doubt%20seen%20lots%20of%20in%20your%20career.%3C%2FP%3E%0A%3CP%3EOn%20your%20point%20with%20the%20error%20in%20the%20PowerShell%20Console%2C%20this%20is%20something%20that%20you%20can%20change%20quite%20easily%20to%20make%20it%20more%20outstanding%20in%20any%20version%20of%20the%20PowerShell%20console%20host%20which%20is%20installed%20with%20all%20version%20of%20PowerShell%20from%20v2%20(Server%202008%20%26amp%3B%20Win7%20onwards)%20using%20this%20bit%20of%20PowerShell%3CBR%20%2F%3E%3CBR%20%2F%3E%3C%2FP%3E%0A%3CBLOCKQUOTE%3E%3CHR%20%2F%3E%24Host.PrivateData.ErrorForegroundColor%20%3D%20%5BSystem.ConsoleColor%5D%3A%3AWhite%3C%2FBLOCKQUOTE%3E%0A%3CP%3Eto%20set%20error%20messages%20to%20show%20like%20this%20instead%3C%2FP%3E%0A%3CDIV%20id%3D%22tinyMceEditorRyan%20Yates_0%22%20class%3D%22mceNonEditable%20lia-copypaste-placeholder%22%3E%26nbsp%3B%3C%2FDIV%3E%0A%3CDIV%20id%3D%22tinyMceEditorRyan%20Yates_1%22%20class%3D%22mceNonEditable%20lia-copypaste-placeholder%22%3E%26nbsp%3B%3C%2FDIV%3E%0A%3CP%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-left%22%20image-alt%3D%22WhiteBackground.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3CIMG%20src%3D%22https%3A%2F%2Fgxcuf89792.i.lithium.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F194874i6F3F8CCFCF6181CC%2Fimage-size%2Fmedium%3Fv%3D1.0%26amp%3Bpx%3D400%22%20title%3D%22WhiteBackground.png%22%20alt%3D%22WhiteBackground.png%22%20%2F%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EThere%20are%20a%20small%20handful%20of%20colours%20in%20the%20default%20console%20that%20you%20can%20set%20for%20the%20foreground%20and%20background%20colours%20as%20below.%3C%2FP%3E%0A%3CP%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-left%22%20image-alt%3D%22colourchoices.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3CIMG%20src%3D%22https%3A%2F%2Fgxcuf89792.i.lithium.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F194875i26B9600254E2A10C%2Fimage-size%2Fmedium%3Fv%3D1.0%26amp%3Bpx%3D400%22%20title%3D%22colourchoices.png%22%20alt%3D%22colourchoices.png%22%20%2F%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EI%20will%20add%20that%20you%20see%20the%20green%20colour%20on%20%24Host%20in%20my%20above%20screenshot%20is%20given%20by%20a%20PowerShell%20module%2C%20called%20%3CA%20href%3D%22https%3A%2F%2Fgithub.com%2Fpowershell%2FPSReadline%22%20target%3D%22_self%22%20rel%3D%22noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%22%3EPSReadLine%3C%2FA%3E%20which%20is%20installed%20%26amp%3B%20imported%20by%20default%20on%20all%20Windows%2010%20%26amp%3B%20Server%202016%2B%20machines%20which%20all%20ship%20with%20PowerShell%20v5.1%20by%20default%20%26amp%3B%20both%20are%20available%20on%20older%20Windows%20Operating%20systems%20too%2C%20which%20provides%20many%20small%20but%20useful%20accessibility%20features%20alongside%20the%20many%20productivity%20features%20that%20it%20brings%20too%2C%20like%20in%20the%20above%20screenshot%20I%20used%20Ctrl%20%2B%20Shift%20to%20show%20me%20all%20those%20options%20which%20is%20a%20PSReadLine%20feature.%3C%2FP%3E%0A%3CP%3EThough%20that%20would%20help%20you%20in%20the%20current%20session%20if%20you%20add%20the%20above%20line%20to%20your%20%3CA%20href%3D%22https%3A%2F%2Fdocs.microsoft.com%2Fen-us%2Fpowershell%2Fmodule%2Fmicrosoft.powershell.core%2Fabout%2Fabout_profiles%3Fview%3Dpowershell-7%22%20target%3D%22_self%22%20rel%3D%22noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%22%3EPowerShell%20Profile%3C%2FA%3E%20you%20will%20have%20the%20same%20error%20view%20on%20all%20subsequent%20launches%20of%20PowerShell%20v5.1.%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EThough%20that's%20not%20all%20that%20has%20been%20happening%20in%20the%20PowerShell%20world%20for%20Accessibility%2C%20%3CA%20href%3D%22https%3A%2F%2Fgithub.com%2FPowerShell%2FPowerShell%2Freleases%2Ftag%2Fv7.0.1%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%22%3EPowerShell%20v7.0.1%3C%2FA%3E%2C%20has%20many%20additional%20accessibility%20fixes%20added%20to%20it%20%26amp%3B%20the%20recently%20launched%20%3CA%20href%3D%22https%3A%2F%2Fgithub.com%2Fmicrosoft%2Fterminal%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%22%3EWindows%20Terminal%3C%2FA%3E%20accepts%20a%20much%20greater%20range%20of%20colour%20combinations%20via%20it's%20settings%20files%20which%20use%20the%20hex%20colour%20code%20-%26nbsp%3B%3CA%20href%3D%22https%3A%2F%2Fdocs.microsoft.com%2Fen-us%2Fwindows%2Fterminal%2Fcustomize-settings%2Fcolor-schemes%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%22%3Ehttps%3A%2F%2Fdocs.microsoft.com%2Fen-us%2Fwindows%2Fterminal%2Fcustomize-settings%2Fcolor-schemes%3C%2FA%3E%20%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EI%20hope%20that%20helps%20you%20with%20your%20PowerShell%20Console%20in%20future%20(%26amp%3B%20anyone%20else%20reading%20too)%3C%2FP%3E%0A%3CP%3E%3CBR%20%2F%3ERyan%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-1423084%22%20slang%3D%22en-US%22%3ERe%3A%20%5BGuest%20Blog%5D%20The%20Accidental%20Accessibility%20Advocate%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1423084%22%20slang%3D%22en-US%22%3E%3CP%3EThanks%2C%20Ryan.%20I%20understand%20that%20you%20can%20change%20the%20error%20colour%20in%20the%20PowerShell%20console%2C%20and%20that%20can%20also%20be%20done%20in%20the%20menu.%20But%20then%20you%20can't%20so%20easily%20fix%20the%20error%20background%20colour.%20It's%20not%20in%20the%20menu%20-%20so%20you'd%20think%3A%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CPRE%3E%24Host.PrivateData.ErrorBackgroundColor%20%3D%20%5BSystem.ConsoleColor%5D%3A%3ADarkBlue%3C%2FPRE%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E-%20but%20that's%20still%20not%20right.%20So%20your%20only%20option%20is%20to%20change%20the%20whole%20background%20to%20black%20-%20but%20what%20if%20you%20like%20to%20have%20the%20dark%20blue%20to%20distinguish%20it%20from%20a%20regular%20command%20window%3F%20But%20the%20main%20problem%20is%20that%20the%20typical%20use%20case%20of%20error%20messages%20is%20when%20you%20are%20standing%20over%20someone's%20shoulder%20trying%20to%20help%20them%3B%20%22Okay%2C%20first%20let's%20spend%20ten%20minutes%20re-configuring%20your%20PowerShell%20console%20-%20I'll%20get%20my%20notes%22.%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EI%20agree%20that%20Windows%20Terminal%20looks%20like%20it's%20the%20answer%20-%20the%20error%20messages%20are%20legible%20by%20default.%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3ECheers%2C%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EBill%3C%2FP%3E%3C%2FLINGO-BODY%3E

This post was written by MVP Bill Ayers as part of our Humans of IT Guest Blogger series. Read on to learn how the development of Windows Calc98 accidentally (and fortuitously!) became accessible, and helped create a journey towards mindfully designing for accessibility. 

 

I've been developing software for a while now. I can remember back in the 1990s, before smartphones, and before Azure and Office 365, and way before most people had heard of the World Wide Web, everyone was getting excited about Microsoft Windows 95. Seriously, it was in the newspapers - some even had a pull-out section. So when we built a Windows calculator application we called it Calc95, and when a new version of Windows came out in 1998, called Windows 98, we updated Calc95 to Calc98.

 

Calc98 Windows calculator from 1998Calc98 Windows calculator from 1998

 

It turns out to be a lot trickier than you'd think to write a calculator application for a computer. And back then there was no source control or test-driven development, and Kanban was something you'd only know about if you worked for a Japanese manufacturing company. But, we had about four million users and we encouraged a lot of feedback so that over the next few years, the number of bugs decreased to a trickle and Calc98 was pretty much done. But what was more interesting was some of the messages we got from users telling us how they had used the software.

 

Choice is Good

You see, we never quite managed to decide what the right font was, or button size, or even how many buttons there should be on the calculator. So we decided to make all those things configurable, because we could. The graphical user interface and the Win32 SDK made that possible. If you wanted to make the display font gigantic, with just a few functions on huge buttons, you could. Back then, we couldn't think of any reason why you would do that; but you technically could if you wanted to. The key thing was that the option was there for users

 

 

Calc98 with large buttons and displayCalc98 with large buttons and display

Solving a Real Problem

Then, to our surprise, we noticed we were getting a lot of email messages (and in some cases, letters - remember, this was still the 1990s) from people saying things like ”My father is a retired engineer and suffers from dementia…”, or ”I teach special needs children…”, "I work in adult care...", ”I am 83 and have limited eyesight...”. All of these people had found ways of using Calc98's button sizes and fonts to either simplify the application or make the buttons and legends and display bigger, or have higher contrast. Without even meaning to, we had inadvertently built something that helped people which, to be honest, we hadn’t really thought about. To think that the Calc98 would help people with dementia, people with special needs children, and people with partial sight... Completely by accident, we had made an accessible application.

 

And so we doubled down on accessibility features, because it turns out there are a lot of people with accessibility needs. Not just people registered as disabled in some way, but also people with marginal eyesight, or who don't want to have to get out their reading glasses, or just need a little extra help. We learnt that big buttons help if you have any kind of physical or motor impairment, but also if you have gloves on or if you have to work with a small touchscreen.

 

We discovered, accidentally, that incorporating these design details and giving users these choices made the software a better product overall. In my experience, users with accessibility needs don't really want a special application, they just want to be able to adapt it to their needs. They don't mind spending some time setting it up, as long as these custom configurations are possible.

 

Even in the 1990s there were hundreds of calculator applications for Windows. And yet ours became one of the most popular, with millions of installations. I am sure that its success was due to the accessibility features we introduced, even if it was largely by accident.

Welcome to 2020

Well, now it's 2020 and it shouldn’t need to be an accident any more. You don’t have to be “woke”, and you shouldn't need to have a legal obligation to persuade your company to take accessibility seriously. It's not just a case of ticking a box or doing the right thing. It really is just sound commercial sense to be able to serve the majority of your market who will either have an accessibility need now, or will have one in the future. And I would go further to say that if your applications and websites aren’t accessible, then you’re creating software that probably doesn’t work well for everybody, and apparently nobody wants software that sucks.

 

In more recent years, I've worked on numerous software projects, many of which that had accessibility needs, especially public-facing websites. For a few years I was the SharePoint Architect for the website of the NHS in the UK (back when building public-facing websites on was a thing). Meeting WCAG-AA standards with SharePoint 2007 wasn’t easy, and in many cases we had to resort to re-writing the page and fixing everything up. Nowadays, SharePoint has much better accessibility support, and fortunately there are many tools and accessibility checkers available to make the task easier. I've listed a few at the end of the article for your reference.

 

But it's an ongoing battle. It's very easy to spend a lot of resources getting a website or application to be accessible, and then neglect that as development continues, so that by the time version 3.5 is released there are accessibility problems again. You need to keep running the accessibility checks and periodically review the list of good practices, or better still, make accessibility part of your development toolkit.

 

Research continues

As time goes by, there is more and more research and advice on how we can make things better. Here's the relevant section of the settings page of another of our applications: Dictionary (on Windows 10):

Part of Dictionary application settings pagePart of Dictionary application settings page

 

As you can see, we've given users a choice between the "dark" and "light" themes, and also an option to take whatever the operating system default is. You can also change the font size and accent color, but not the individual text and background colors explicitly. And now an email from a user:

 

"I was reading the settings information for your app. I noticed that was available a background feature. I was unable to find those directions. I would like a background for easier reading because I have Dyslexia."

 

Oops! We didn't give people an option to subtly change the background color, because it never occurred to us that somebody would need to. But recent research suggests that users with Dyslexia can benefit from having black or dark grey text on a pastel background, rather than black text on a bright white background. Although contrast is generally good, there are actually cases where you can have too much contrast.

 

Problem contrast in error textProblem contrast in error text

 

You can also have the wrong type of contrast. As time has passed, like most people, I find using a computer screen more of a problem. I need to wear glasses, but then I need to get too close, but if I take them off I'm leaning back, or I can't quite read the text. One of the worst problems I have found is command windows that often display error messages in red against a black or dark blue background. I find this almost impossible to read without making the font size unmanageably large, and I still haven't found a way of configuring it in a satisfactory way.

 

Still Learning

I went through a phase of thinking we shouldn't over-complicate application settings pages. But now I am of the view that we should err on the side of offering more user options for controlling the user interface. By giving users the ability to customize, you give them the power to make changes according to their individual needs, without trying to second-guess what those needs might be. You can't tell somebody what they need to make their life easier - you just don't know. Sometimes even they don't know. Give them a choice so they can try different options until they find one that suits them. Sometimes just putting the user in control, in itself, is a great way of helping users. Give people a choice, and even if they ultimately decide not to take advantage of that choice, that's fine.

 

Accessibility is rarely "done". It's a continuous, iterative process of improvement at the software level, but also at the individual level. We owe it to ourselves to get this right, because it makes commercial sense, because it makes the world a better place, but especially because the people who need this technology the most might well be our future selves.

Resources

 

#HumansofIT

#TechforGood

#Accessibility

2 Comments

Hey @Bill Ayers Great post, lots to take in about accessibility here and as you said it's something that is rarely "done", though I know that we've see leaps and bounds over the years in term of general accessibility of Desktop software and websites too. Something that I am sure that you will have no doubt seen lots of in your career.

On your point with the error in the PowerShell Console, this is something that you can change quite easily to make it more outstanding in any version of the PowerShell console host which is installed with all version of PowerShell from v2 (Server 2008 & Win7 onwards) using this bit of PowerShell


$Host.PrivateData.ErrorForegroundColor = [System.ConsoleColor]::White

to set error messages to show like this instead

 
 

WhiteBackground.png

 

 

There are a small handful of colours in the default console that you can set for the foreground and background colours as below.

colourchoices.png

 

 

I will add that you see the green colour on $Host in my above screenshot is given by a PowerShell module, called PSReadLine which is installed & imported by default on all Windows 10 & Server 2016+ machines which all ship with PowerShell v5.1 by default & both are available on older Windows Operating systems too, which provides many small but useful accessibility features alongside the many productivity features that it brings too, like in the above screenshot I used Ctrl + Shift to show me all those options which is a PSReadLine feature.

Though that would help you in the current session if you add the above line to your PowerShell Profile you will have the same error view on all subsequent launches of PowerShell v5.1.

 

Though that's not all that has been happening in the PowerShell world for Accessibility, PowerShell v7.0.1, has many additional accessibility fixes added to it & the recently launched Windows Terminal accepts a much greater range of colour combinations via it's settings files which use the hex colour code - https://docs.microsoft.com/en-us/windows/terminal/customize-settings/color-schemes  

 

I hope that helps you with your PowerShell Console in future (& anyone else reading too)


Ryan

 

 

 

 

Thanks, Ryan. I understand that you can change the error colour in the PowerShell console, and that can also be done in the menu. But then you can't so easily fix the error background colour. It's not in the menu - so you'd think: 

 

$Host.PrivateData.ErrorBackgroundColor = [System.ConsoleColor]::DarkBlue

 

- but that's still not right. So your only option is to change the whole background to black - but what if you like to have the dark blue to distinguish it from a regular command window? But the main problem is that the typical use case of error messages is when you are standing over someone's shoulder trying to help them; "Okay, first let's spend ten minutes re-configuring your PowerShell console - I'll get my notes".

 

I agree that Windows Terminal looks like it's the answer - the error messages are legible by default.

 

Cheers,

 

Bill