멜라니 서머는 디지털 접근성을 전문으로 하는 소프트웨어 엔지니어입니다. 엔지니어링 경로, 접근성 있는 디자인, Ember.js, 이러한 노력에 대한 자금 지원의 중요성에 대해 이야기했습니다.
이 게시물에서는 접근성 알아보기의 일환으로 제공되는 커뮤니티 전문가를 소개합니다.
알렉산드라 클레퍼: 인터뷰에 응해 주셔서 감사합니다. 내 비즈니스 소개
멜라니 섬너: 제 이름은 멜라니 섬너이고, 디지털 접근성을 전문으로 하는 소프트웨어 엔지니어입니다. 저는 25년 동안 웹용 코드를 작성해 왔습니다. 제 첫 직업은 일종의 스파이였습니다. 저는 미 해군의 정보 분석가였으며 코딩은 취미였습니다.
스파이가 되는 게 별로 마음에 들지 않았어요. 죽음은 별로 좋아하지 않는 것 같습니다. 대부분의 사람들은 그렇지 않기 때문에 더 가까이 있어야 합니다. 다음에 무엇을 하고 싶은지 결정해야 했고, 취미를 직업으로 바꿀 때였습니다. 지난 10년 동안 저는 특히 접근성 분야의 소프트웨어 엔지니어링에 집중해 왔습니다.
Alexandra: '처음에는 스파이였어'라는 말을 자주 듣지는 않습니다. 신경 쓰지 마세요. 접근성 관련 업무를 시작하게 된 계기는 무엇인가요?
Melanie: 당시 노스캐롤라이나대학교 채플힐 캠퍼스의 개발 부서에서 근무하고 있었습니다. 웹 개발과 같은 개발이 아니라 기금 모금과 같은 개발을 의미합니다
상사가 시각 장애가 있어 모든 것을 400% 로 확대해야 볼 수 있었습니다. 그는 훌륭한 소프트웨어 엔지니어였습니다. 제가 겪은 상사 중에서 가장 좋았던 상사입니다. 하지만 항상 내 물건을 부수곤 했습니다. 내 작품을 보려고 확대해서 보기 때문이죠. 반응형으로 빌드하는 것을 고려하지 않았다면 빌드가 중단되었을 것입니다.
제 상사의 상사는 파란색 색맹이었습니다. UNC 블루가 어떤 색인지 알고 계신지 모르겠지만 밝은 하늘색입니다. 흰색에 사용하면 좋아하는 듯했습니다.
Alexandra: (웃음) 아뇨.
Melanie: 상사가 항상 내 작업을 볼 수 없다고 불평했습니다. 사이트에 사용할 보색 색상과 색 구성표를 개발해야 했습니다. 그래서 색 대비에 대해 생각하고 색맹 또는 시각 장애가 있는 사람들이 웹을 어떻게 사용하는지 생각해 보게 되었습니다.
UNC는 주립 대학교이므로 WCAG 접근성 수준 AA를 준수해야 하는 미국 연방법 요구사항이 있습니다. 교육 기관이므로 AAA 등급을 목표로 했습니다.
주 및 연방 요구사항에 대해 자세히 알아보고 W3C 접근성 사양을 읽기 시작하면서 '이 모든 것이 합리적'이라고 생각했습니다. 제가 볼 수 있듯이 웹 대부분이 규정을 준수하지 않았습니다. 물론 사람들은 웹이 존재하는 한 오랫동안 웹 접근성에 관해 노력해 왔습니다. 특히 JavaScript 엔지니어는 디지털 접근성 관련 사항을 받아들이는 데 다소 느린 경우가 있습니다.
저는 접근성을 웹의 마지막 개척지라고 부릅니다. 많은 우수한 인력이 접근성을 위한 자동화에 노력하고 있습니다. Google은 성능 및 보안과 같은 다른 어려운 문제에 접근한 것과 동일한 방식으로 솔루션을 개발해야 합니다.
Alexandra: 해군과 UNC에서 긴 복잡한 문서를 많이 읽으셨을 겁니다. 사양을 이해하기가 어려웠나요?
Melanie: 이해하기까지 약 5번 읽어야 했습니다. 전에 다른 사양을 읽은 적이 있었는데도요. 저는 항상 사람들에게 이렇게 말합니다. 이해하지 못해도 기분 나쁘지 마세요. 저도 사양을 5번 읽어야 했으니까요. 농담이 아니에요.
사양 언어에 익숙해지는 데는 시간이 많이 걸립니다. 이를 올바르게 해석하지 않으면 잘못된 조치를 취할 수 있습니다. 또한 사양 언어의 상당수가 브라우저 개발자를 위한 것임을 이해하는 것이 중요합니다. '작성자가 해야 함'을 찾으세요. 이는 웹 개발자를 언급하는 문구입니다.
Alexandra: 더 많은 개발자가 사양을 해독하는 방법을 알면 웹에서 많은 부분이 개선될 수 있습니다.
Melanie: 이러한 해석을 대신해 주는 사이트에 관해 할 말이 많습니다. a11y-automation.dev를 빌드했는데 이 사이트는 일종의 내 자식, 내 부업 프로젝트와 같습니다. 모든 접근성 위반을 항목별로 분류하여 문제가 되는 WCAG 성공 기준에 연결하려고 합니다 오류를 방지하는 자동화 기능이 있는 경우 해당 솔루션을 제안합니다.
잠재적 위반사항 목록을 숙지하는 것도 좋지만, 더 중요한 것은 문제를 해결하는 방법을 배우는 것입니다. 존재하지 않는 자동 수정의 경우 린터 또는 템플릿을 작성하게 될 수도 있고, 일종의 테스트를 작성하게 될 수도 있습니다.
저는 오픈소스에서 작업하는 것을 선호합니다. 서로의 아이디어를 발전시키고 개선사항을 제안할 수 있기 때문입니다. 때로는 개선사항이 될 수도 있고 그렇지 않을 수도 있지만 모두 최선을 다합니다. 서로의 작업을 기반으로 웹에 매우 훌륭한 결과를 얻게 됩니다.
접근성 지원 자금을 지원하는 방법
Alexandra: pleasefunda11y.com에 관심이 갔습니다. 개발자가 접근성 있는 사이트를 빌드하는 방법을 배우는 것이 매우 중요하지만, 임원진의 자금 지원과 승인 없이는 항상 리소스가 있는 것은 아닙니다. 이 사이트를 구축하기로 한 이유는 무엇인가요?
Melanie: 접근성 지원에 충분한 자금이 지원되지 않아 불만족스러웠습니다. 모든 오픈소스 자금이 CSS로 계속 투입되는 것 같습니다. CSS도 좋아합니다. CSS로 할 수 있는 일이 많습니다.
Chrome 소프트웨어 엔지니어링 관리자인 Addy Osmani가 접근성 자금 지원을 요청하게 된 것을 보고 어떤 작업에 자금을 지원할 수 있는지 조언을 받고 싶다고 하면서 이 사이트를 구축했습니다. 이는 큰 문제입니다. 오픈소스 후원자는 결과가 결정되지 않은 일반적인 아이디어가 아닌 구체적인 프로젝트에 자금을 제공하려고 합니다. 시간을 내어 몇 가지 구체적인 이니셔티브, 필요한 사항, 사이트 접근성을 높이는 데 도움이 되는 방법을 정리했습니다.
기업에서 이러한 노력을 기울이더라도 웹의 접근성을 상당히 개선할 수 있습니다. 다른 웹 활동에 비해 지출이 매우 적으며 사람들의 삶에 큰 영향을 미칠 것입니다.
현재의 사고방식은 '장애가 있는 사람은 얼마나 되나요?'라는 질문으로 시작되는 경우가 많습니다. 이는 '기술과 어떤 관계가 있는가?'입니다.
"저는 색맹이 장애라고 생각하지 않습니다"라고 말하는 분들도 계십니다. 색맹인 경우 장애가 있다고 생각하지 않을 수 있지만 기술과의 관계에는 영향을 미칩니다.
Alexandra: 기술과의 관계를 이해하는 방법을 자세히 설명해 주세요. 접근성과 어떤 관련이 있나요?
Melanie: 예를 들어 신경 다양성이 있는 경우 매우 간단한 언어와 매우 명확한 안내가 필요할 수 있습니다. 흐름에서 3~4개의 화면을 탐색하면서 한 번에 몇 가지 항목을 선택하여 끝까지 진행하는 것이 더 나을 수 있습니다. 현대 기술 애플리케이션에 대한 적절한 안내가 없습니다.
devops를 하는 회사가 전부 있는데, 그런 웹사이트를 사용해 보면 '맙소사'라는 생각이 들죠. 요즘은 모든 인터페이스에 모든 기능을 넣으려고 합니다.
Alexandra: 예를 들어 주시겠어요?
Melanie: 예를 들어 GitHub에는 중첩된 탭이 있는 드롭다운이 있습니다. 그리고 [격분한 한숨]. 짜증이 나더라도 화를 내면 안 됩니다. 현대 웹은 새로운 수요를 충족하기 위해 성장해야 합니다. 하지만 소외되는 사람이 없도록 구축할 책임도 있습니다.
그것이 저를 움직이는 원동력이며 제 열정입니다. 직장에서 사용해야 하는 도구에 액세스할 수 없어서 취업을 못하는 사람이 있어서는 안 됩니다.
Alexandra: 100%입니다. 사람들은 외부 사용자를 위해 액세스 가능한 제품을 만드는 것에만 관심을 두고 직원에 대해서는 생각하지 않는 경우가 많습니다.
Melanie: 이 자금 조달 조언은 모든 사람에게 도움이 될 것 같았습니다.
엔지니어들은 접근성을 좋아하고 '회사는 신경 안 써'라는 말을 자주 듣습니다. 관심을 가질 겁니다. 비즈니스 로직 격차를 메우기만 하면 됩니다. 비즈니스에 유익한 결과를 보여주세요. 물론 사이트는 오픈소스이며 참여와 수정사항을 환영합니다.
Alexandra: 접근성은 종종 프로세스 끝까지 미뤄집니다. '나중에 접근성을 제공하면 되지 않나요?'와 같은 식입니다. 하지만 나중에 접근성 관행을 추가하는 것은 프로젝트 전반에 접근성 관행을 통합하는 것보다 훨씬 더 오래 걸립니다.
Melanie: 저는 종종 '빌드하는 데 한 번 비용을 지불하시겠어요, 아니면 두 번 지불하시겠어요?'라고 말합니다.
Ember.js 및 핵심 접근성팀
Alexandra: Ember.js 프레임워크 핵심팀에도 참여하고 계신 것으로 알고 있습니다. 어떻게 참여하게 되었나요?
Melanie: 저는 JP 모건 체이스에서 기업 투자 은행 플랫폼을 담당하는 부서로 채용되었습니다. Ember는 매우 안정적이고 (다소 지루할 수도 있음) 많은 비용을 낭비하는 코드를 작성하지 않도록 도와주는 대규모 JavaScript 프레임워크입니다. Ember는 이전 버전과의 호환성을 보장합니다. 메인 버전을 사용해도 매번 업그레이드할 수 있습니다. Google은 앱이 중단되지 않도록 점진적으로 작업을 진행하고 있습니다.
어쨌든 Ember 컨퍼런스에 참석하여 커뮤니티의 많은 사람들을 만났습니다. Ember팀이 정말 친절했습니다. 그리고 다른 곳에서는 보지 못했던 매우 엄격한 윤리 강령이 있습니다.
군에서 제대했을 때 보안 분야로 진출하고 싶었습니다. 정보 보안 모임에 갔는데 다른 여성이 없었습니다. 나이 지긋한 남자 중 한 명이 나를 보고 '아가씨, 방을 잘 찾으셨나요?'라고 물었습니다.
Alexandra: [신음] 아파요. 전혀 놀랍지 않습니다. 저도 비슷한 경험을 했습니다.
Melanie: 2011년이나 2012년이었나요? 환경은 많이 변했습니다. 그날은 회의가 끝날 때까지 자리에 남아서 제 주장을 입증했습니다. 그 댓글 때문에 좌절하지 않을 거예요. 농담을 던지고, 메모를 잘 하며, 대화에 참여하여 내가 참석하고 있다는 사실을 알렸습니다. 제 커리어의 대부분은 남성이 틀렸다는 것을 증명하는 것 같습니다.
하지만 남성이 잘못되었다는 것을 증명하기 위해 여성이 소프트웨어 엔지니어가 되기를 바라지는 않습니다. 소프트웨어 엔지니어가 되어 멋진 제품을 만들고 싶었습니다. 재미있으니까요. 여성에게도 이러한 직업 선택권이 있어야 합니다.
Alexandra: 물론입니다.
Melanie: 은행 플랫폼으로서 미국 연방 정부 요구사항을 준수해야 하므로 접근성 관련 지식을 Ember 커뮤니티에 공유했습니다. 예후다 카츠와 톰 데이일은 '팀에 공백이 있습니다. Google에는 JavaScript 전문가, 성능 전문가, 천재적인 사람들이 많습니다. 접근성 지식이 있는 사람이 필요합니다." 그리고 핵심 팀에 초대해 주었습니다.
기본적으로 Ember에 액세스할 수 있도록 하는 이니셔티브를 진행하고 있습니다. 즉, ember new <my-app-name>
라고 말하면 즉시 WCAG 성공 기준을 통과해야 합니다.
Alexandra: GitHub에서 Ember용 접근성 도구 목록이 길게 나와 있었습니다. Ember 커뮤니티의 사람들이 이러한 도구에 기여하고 싶어 하는지 확인해 보셨나요?
Melanie: 이 작업에서 가장 흥미로운 부분이었습니다. LinkedIn에서 근무하는 동안 Ember의 접근성 린팅 규칙을 작성했습니다. 그 후 저는 LinkedIn을 떠나 Hashicorp에서 일하게 되었고, 다른 사람들은 유용하다고 생각하여 여전히 린터에 기여하고 있습니다. 이 부분이 바로 저에게 짜릿한 전율을 주고 저를 흥분하게 하는 부분입니다.
Google은 접근성은 기본적으로 시민권이라고 생각합니다. 이 문제는 논의할 수 없습니다.
무엇을 구현할 수 있는지 논의합니다. 일시 어떻게 만들 수 있을까요? 이를 가르치고 하위 호환되도록 하려면 어떻게 해야 하나요? 개발자가 빌드하거나 계획해야 하는 추가 기능 없이 접근성 지원을 제공할 수 있도록 지원하려면 어떻게 해야 하나요?
Alexandra: 접근성은 시민권입니다. 소름이 끼쳐요. 그냥 우리 모두가 진실로 알고 있는 것이어야 합니다.
Melanie: '내가 장님이면 인터넷을 사용하지 않을 것'과 같이 잘못된 정보를 말하는 사람들이 있었습니다. 또는 '90% 의 사용자에게는 문제가 없는데 5% 의 사용자만 장애가 있는 경우 장애를 고려해야 하는 이유는 무엇인가요?'와 같은 질문을 할 수 있습니다. 이러한 주제는 작업에 방해가 되기 때문에 논의하지 않습니다.
접근 가능한 코드를 작성하면 W3C 사양에 따라 사이트를 빌드할 수 있으므로 성능이 향상됩니다. div만 사용하는 대신 시맨틱 HTML을 사용하고 제목을 사용합니다. <div>
에 클릭 이벤트를 추가하는 대신 <button>
를 선택하면 성능이 향상됩니다.
한 가지 작업: 접근성 자동화
Alexandra: 웹 개발자가 접근성 있는 웹사이트를 빌드하기 위해 해야 할 한 가지 작업은 무엇인가요?
Melanie: 자동화를 추가합니다. 사용 중인 코드 종류와 관계없이 사용 중인 프레임워크의 기존 린터로 시작합니다. 어떤 것을 사용하시든 상관없습니다. 이러한 규칙 중 하나라도 위반되면 빌드가 중단됩니다.
AI가 아직 의도를 파악할 수 없으므로 일부 작업은 자동화할 수 없습니다. 예를 들어 이미지의 대체 텍스트 값은 의미가 있어야 하지만 실제로 그게 무엇을 의미할까요? 지금은 자동화가 아니라 사람이 이를 인지해야 합니다.
하지만 자동화 도구는 '색상 대비를 통과하지 못했습니다.'라고 알려줄 수 있습니다. 문제를 해결하세요. 저항하지 마세요. '하지만 원하지 않아요. 이렇게 하는 게 더 좋습니다.'라고 말하지 마세요. 이는 사용자와 관련이 없습니다. Google이 제공하는 서비스를 매일 전 세계 모든 사람이 이용할 수 있도록 하는 것이 중요합니다.
접근성은 여정이며 항상 배우고 있습니다. 저는 10년 넘게 접근성을 전문으로 해왔으며 여전히 새로운 것을 배우고 있습니다. 방어적인 태도를 보이지 말고 그냥 하라.
웹사이트 melanie.codes 및 트위터 @a11yMel에서 멜라니의 작업을 계속 확인하세요. pleasefunda11y.com, a11y-info.com, a11y-automation.dev에서 접근성 리소스를 확인하세요.