Melanie Sumner, dijital erişilebilirlik konusunda uzman bir yazılım mühendisidir. Mühendislik, erişilebilir tasarım, Ember.js ve bu çalışmalara finansman sağlamanın öneminden bahsettik.
Bu yayında, Erişilebilirlik Eğitimi kapsamında bir topluluk uzmanı öne çıkarılıyor.
Alexandra Klepper: Bana katıldığınız için teşekkürler. Kimsiniz ve ne yapıyorsunuz?
Melanie Sumner: Adım Melanie Sumner. Dijital erişilebilirlik konusunda uzman bir yazılım mühendisiyim. 25 yıldır web için kod yazıyorum. İlk kariyerim... bir nevi casusluktu. ABD Donanması'nda istihbarat analisti olarak çalışıyordum ve hobim kodlamaydı.
Casus olmaktan pek hoşlanmadım. Ölümden hoşlanmadım, ortaya çıktı. Çoğu insan, yakın olması gerektiğinde bunu yapamaz. Bundan sonra ne yapmak istediğime karar vermeliydim. Hobilerimi kariyerime dönüştürme zamanı gelmişti. Son 10 yılda özellikle erişilebilirlik alanında yazılım mühendisliğine odaklandım.
Alexandra: "Önce casustum" gibi bir ifadeyi sık sık duymazsınız. Önemli değil. Erişilebilirlik çalışması size ne kazandırdı?
Melanie: O zamanlar Kuzey Carolina Üniversitesi [UNC] Chapel Tepesi'nde, Geliştirme Departmanı'nda çalışıyordum. Bunlar, web geliştirme gibi geliştirme değil, bağış toplama gibi geliştirmeyi kastediyorlar.
Doğrudan yöneticim görme engelliydi ve her şeyi görmek için% 400'e yakınlaştırmak zorunda kalıyordu. Harika bir yazılım mühendisiydi. Muhtemelen hayatımda gördüğüm en iyi yönetici. Ancak çalışmamı görmek için yakınlaştırdığı için her zaman eşyalarımı kırıyordu. Her şeyi duyarlı bir şekilde oluşturmayı düşünmeseydim işler bozulurdu.
Yöneticimin patronu mavi renk kördü. UNC mavisinin nasıl göründüğünü bilmiyorum ama bu açık gök mavisi renk. Ayrıca beyaz zeminde kullanmayı sevdiler.
Alexandra: (gülüyor) Tüh.
Melanie: Patronu, işimi hiç göremediğinden sürekli şikayet ediyordu. Sitelerimiz için bir dizi tamamlayıcı renkler ve renk şeması geliştirmem gerekiyordu. Bu durum beni renk kontrastı ve renk körlüğü (veya başka bir görme engelli) olan kişilerin web'i nasıl kullandığını düşünmeye sevk etti.
UNC bir devlet üniversitesi olduğundan WCAG erişilebilirlik düzeyi AA'ya uygunluk için ABD federal şartı vardır. AAA seviyeyi hedefledik, çünkü bir eğitim kurumu.
Eyalet ve federal şartlar hakkında daha fazla bilgi edinip W3C Erişilebilirlik spesifikasyonunu okumaya başladığımda "Bunların hepsi mantıklı" diye düşündüm. Gördüğüm kadarıyla web'in çoğu uyumlu değildi. Elbette, web erişilebilirliği üzerinde çalışmalar web'in var olduğu sürece devam ediyor. Bazen JavaScript mühendisleri (özellikle) dijital erişilebilirlik konusunda biraz yavaş kalabiliyor.
Erişilebilirliği web'in son sınırı olarak adlandırıyorum. Erişilebilirlik için otomasyon üzerinde çalışan birçok iyi insan var. Performans ve güvenlik gibi diğer zor sorunlara yaklaştığımız şekilde çözümler üzerinde çalışmamız gerekiyor.
Alexandra: Muhtemelen Deniz Kuvvetleri'nde ve UNC'de çok sayıda uzun ve karmaşık belge okudunuz. Spesifikasyonu anlamak zor oldu mu?
Melanie: Anlamak için yaklaşık beş kez okumam gerekti. Daha önce başka spesifikasyonları da okumuştum. İnsanlara her zaman şunu söylüyorum: Şartnameyi beş kez okumak zorunda kaldım. Dolayısıyla, anlamazsanız kendinizi kötü hissetmeyin. Şaka değil.
Spesifikasyon diline alışmak çok zaman alır. Doğru şekilde yorumlamazsanız yanlış bir şey yapabilirsiniz. Ayrıca, spesifikasyon dilinin büyük bir kısmının tarayıcı geliştiricilere yönelik olduğunun anlaşılması da önemlidir. "Yazarların yapması gereken" ifadesini arayın. Bu ifade, web geliştiricilerine atıfta bulunur.
Alexandra Daha fazla geliştirici spesifikasyonları nasıl çözeceğini bilseydi web'deki birçok şey daha iyi olurdu.
Melanie: Sizin için bu yorumu yapan siteler hakkında çok şey söylenebilir. a11y-automation.dev'i oluşturdum ve bu site, bebeğim, yan projem gibi. Her erişilebilirlik ihlalini listelemeye ve söz konusu WCAG başarı ölçütlerine bağlamaya çalışıyorum. Hatayı önlemek için otomasyon yapılıyorsa bunu da sunarım.
Olası ihlaller listesini inceleyebilirsiniz ancak daha da önemlisi, bu ihlalleri nasıl düzelteceğinizi öğrenmektir. Var olmayan otomatik düzeltmeler için size bir lint aracı veya şablon yazmak isteyebilirsiniz. Bir tür test yazmak için ilham alabilirsiniz.
Açık kaynakta çalışmayı tercih ediyorum. Çünkü birbirinizden ilham alabilir, iyileştirmeler sunabilirsiniz (bazen iyileştirme, bazen değil, ama hepimiz elimizden geleni yaparız). Birbirimizin öğelerini geliştiriyoruz ve sonra web için gerçekten harika bir sonuç elde ediyoruz.
Erişilebilirlik nasıl finanse edilir
Alexandra: pleasefunda11y.com sitesine gerçekten ilgi duydum. Geliştiricilerin erişilebilir siteler oluşturmayı öğrenmesi çok önemli ancak üst düzey yöneticilerden kaynak ve onay almadan her zaman gerekli kaynaklara sahip olamazlar. Neden bu siteyi oluşturmaya karar verdiniz?
Melanie: Erişilebilirlik için çok az kaynak ayrıldığı için hayal kırıklığına uğradım. Açık kaynaklı fonların tamamını CSS'ye aktarıyor gibi görünüyor. CSS'yi çok seviyorum. CSS'yle pek çok şey yapabiliriz.
Siteyi, Chrome yazılım mühendisliği yöneticisi Addy Osmani ile yaptığımız görüşmeden sonra oluşturdum. Görüşmede, erişilebilirlik için finansman istediğimi ancak hangi çalışmaların finanse edilebileceği konusunda tavsiye almak istediğimi belirtmiştim. Bu büyük bir sorun: Açık kaynaklı fon sağlayıcılar, belli bir sonucu olmayan genel fikirlere değil, belirli projelere para vermek istiyorlar. Belirli girişimleri, nelerin gerekli olduğunu ve sitelerin erişilebilir hale getirilmesine nasıl yardımcı olacaklarını yazmak için biraz zaman ayırdım.
Şirketler benim olmadan bu çalışmalara katkıda bulunsalar da web'de erişilebilirliği önemli ölçüde ileri taşıyabiliriz. Diğer web çalışmalarına kıyasla çok küçük bir harcamadır ve insanların yaşamları üzerinde büyük bir etkisi olacaktır.
Şu anda yaygın olan düşünce şekli genellikle "Kaç kişi engelli?" şeklindedir. "Kullanıcıların teknolojiyle ilişkisi nasıl?" olmalıdır.
Bazıları bana "Renk körlüğünün bir engellilik olduğunu düşünmüyorum" dedi. Renk körlüğü yaşıyorsanız kendinizi engelli olarak tanımlamayabilirsiniz ancak bu durum teknolojiyle olan ilişkinizi etkiler.
Alexandra: Teknolojiyle olan ilişkinizi anlama hakkında daha fazla bilgi verebilir misiniz? Bu durum erişilebilirlikle nasıl ilişkilidir?
Melanie: Örneğin, nöroçeşitliyseniz çok basit bir dile ve çok net talimatlara ihtiyacınız olabilir. Sonuna kadar ilerlerken bir kerede birkaç seçim yaparak üç veya dört ekranda gezinmek daha iyi olabilir. Modern teknik uygulamalar için iyi bir rehberlik yoktur.
DevOps yapan şirketlerimiz var. Bu web sitelerinin bazılarını kullanmaya çalıştığınızda "Aman Tanrım" dediğinizi biliyor musunuz? Bugünlerde mutfak lavabosunu tüm arayüzlerimize yerleştirmeye çalışıyoruz.
Alexandra: Örnek verebilir misiniz?
Melanie: Örneğin, GitHub'da iç içe yerleştirilmiş sekmeler içeren açılır listeler vardır. Ve [sinirli bir şekilde iç çekiyor]. Sinirlensem bile üzülmem. Modern web'in yeni talepleri karşılamak için büyümesi gerekiyor. Ama aynı zamanda insanları geride bırakmayacak bir şekilde inşa etme sorumluluğumuz da var.
Beni motive eden şey ve tutkum. Birinin iş için kullanması gereken araçlar erişilebilir olmadığından bu kişinin iş bulmasını istemiyorum.
Alexandra: Yüzde yüz. İnsanlar genellikle harici kullanıcıları için erişilebilir ürünler geliştirmeyi düşünür ancak çalışanlarını düşünmeyebilir.
Melanie: Bu finansman tavsiyesinin herkese fayda sağlayacağını düşündüm.
Mühendislerden, erişilebilirlik konusunda çalışmayı çok istediklerini ancak "şirketimin buna önem vermediğini" duyuyorum. Eminim ki önemsiyorlardır. Bunun için iş mantığındaki boşluğu doldurmanız yeterlidir. İşletmeye sağlayacağı faydaları gösterin. Elbette site açık kaynaktır. Katkılara ve düzenlemelere açığım.
Alexandra Erişilebilirlik genellikle sürecin sonuna bırakılır. Örneğin, "Bunu daha sonra erişilebilir hale getirebiliriz." Ancak daha sonra eklemek, erişilebilir uygulamaları proje geneline entegre etmekten çok daha fazla zaman alacaktır.
Melanie: Genellikle "Bir kez mi yoksa iki kez mi ödeme yapmak istiyorsunuz?" diye soruyorum.
Ember.js ve çekirdek erişilebilirlik ekibi
Alexandra Sizin de Ember.js çerçevesi çekirdek ekibinde yer aldığınızı biliyorum. Bu projeye nasıl dahil oldunuz?
Melanie: JPMorgan Chase'in kurumsal yatırım bankacılığı platformlarında çalışmak üzere işe alındım. Ember, gerçekten kararlı (hatta biraz sıkıcı) bir tabana ihtiyaç duyduğunuzda kullanılan, çok fazla para kaybeden kod yazmanızı önleyebilecek ağır hizmet tipi bir JavaScript çerçevesidir. Ember, geriye dönük uyumluluk garantisine sahiptir. Büyük bir sürüme yükseltme yapsanız bile her zaman yükseltme yapabilirsiniz. Uygulamanızın çalışmasını engellememek için değişiklikleri kademeli olarak yapmaya çalışıyoruz.
Neyse, bir Ember konferansına gittim ve toplulukta bir sürü insanla tanıştım. Ember ekibi çok kibardı. Ayrıca, başka hiçbir yerde görmediğim gerçekten güçlü bir davranış kuralı var.
Askerden ayrıldıktan sonra güvenlik sektörüne girmek istedim. Bir bilgi güvenliği buluşmasına gittim ve orada başka kadın görmedim. Yaşlılardan biri bana baktı ve "Doğru odada olduğunuzdan emin misiniz tatlım?" dedi.
Alexandra: [İnliyor] Acıtıyor. Bu durum hiç de şaşırtıcı değil. Ben de benzer bir durum yaşamıştım.
Melanie: 2011 veya 2012 olabilir. Bu durum çok değişti. Bir noktayı kanıtlamak için o gece, buluşma boyunca orada kaldım. Bu yorumun beni durdurmasına izin vermeyecektim. Şakalar yaptım, iyi notlar aldım ve sohbete katıldım. Böylece, orada olduğumu herkes anladı. Kariyerimin büyük bir kısmında erkeklerin yanlış olduğunu kanıtladığımı düşünüyorum.
Ancak kadınların yazılım mühendisi olmasının tek nedeni erkeklerin yanlış olduğunu kanıtlamak olmamalı. İnanılmaz şeyler inşa edecek bir yazılım mühendisi olmak istiyordum, çünkü yapmak çok eğlenceli. Kadınlar da böyle bir kariyer seçeneğine sahip olmalı.
Alexandra: Elbette.
Melanie: Erişilebilirlik hakkında bildiklerimi Ember topluluğuyla paylaştım. Açıkçası bir bankacılık platformu olarak ABD federal gereksinimlerine uymanız gerekir. Yehuda Katz ve Tom Dale, "Ekipte bir boşluk var. Çok sayıda JavaScript uzmanımız, performans uzmanımız ve inanılmaz zeki insanlar var. Erişilebilirlik konusunda bilgi sahibi olan birine ihtiyacımız var." Ve beni çekirdek ekibe katılmaya davet ettiler.
Ember'ın varsayılan olarak erişilebilir olmasını sağlayacak girişimler üzerinde çalışıyorum. Yani ember new <my-app-name>
dediğinizde WCAG başarı kriterlerini hemen geçmeniz gerekir.
Alexandra: GitHub'da Ember için erişilebilirlik araçlarının uzun bir listesini gördüm. Ember topluluğundaki kullanıcıların bu araçlara katkıda bulunmaktan heyecan duyduğunu fark ettiniz mi?
Melanie: Bu çalışmanın gerçekten heyecan verici bir parçasıydı. LinkedIn'de çalışırken Ember için erişilebilirlik linting kuralları yazdım. Ardından, LinkedIn'den ayrılıp Hashicorp'ta çalışmaya başladım. Diğer kullanıcılar, lintere katkıda bulunmaya devam ediyor çünkü bu araç onlar için faydalı. Bu işin beni titreten ve heyecanlandıran kısmı bu.
Temel olarak erişilebilirliğin bir sivil hak olduğunu kabul ediyoruz. Bu artık tartışılmaz.
Neleri uygulayabiliriz? Ne zaman? Bunu nasıl yapıyoruz? Bunu nasıl öğretiriz ve geriye dönük uyumlu hale getiririz? Geliştiricilerin oluşturmaları veya planlamaları gereken çok büyük bir ekstra özellik olmadan erişilebilirlik desteği sağlamasına nasıl yardımcı oluruz?
Alexandra: Erişilebilirlik sivil bir haktır. Bu beni ürkütüyor. Bu, hepimizin doğru olduğunu bildiği bir şey olmalıdır.
Melanie: Bazı insanlar bana "Kör olsaydım interneti kullanmazdım" gibi bilgi sahibi olmadan yorumlar yaptı. Ya da “Kullanıcılarımın yalnızca% 5’i, kullanıcılarımın% 90’ı için işe yaradığında engellilik konusunu neden düşünmem gerekiyor?” Bu tür tartışmalar genellikle dikkati işten uzaklaştırmak için kullanıldığı için bu tür tartışmalara girmeyeceğim.
Erişilebilir kod yazarken W3C spesifikasyonlarını temel alan siteler oluşturmayı düşündüğünüz için performansınızı artırabilirsiniz. Yalnızca div'ler yerine anlamsal HTML'yi ve başlıkları kullanırsınız. <div>
'ye tıklama etkinliği eklemek yerine bir <button>
seçersiniz ve performans iyileştirmeleri elde edersiniz.
Erişilebilirliği otomatikleştirin
Alexandra: Web geliştiricilerin erişilebilir web siteleri oluşturmak için yapması gereken en önemli şey nedir?
Melanie: Otomasyon ekleyin. Kullandığınız çerçeve ve kod türü için mevcut bir linterle başlayın. Hangisini kullandığınızın önemi yok. Bu kurallardan biri kırılırsa derlemeniz çöker.
Yapay zeka henüz amacı çözemediği için bazı işlemler otomatikleştirilemez. Örneğin, bir resmin alternatif metin değeri anlamlı olmalıdır. Peki bu değer aslında ne anlama gelir? Şu anda otomasyon değil, insanın bunu ayırt etmesi gerekiyor.
Ancak otomatik bir araç size "Renk kontrastı şartını karşılamıyorsunuz." diyebilir. Düzeltmeniz yeterli. Buna karşı çıkmayın, "Ama ben bunu istemiyorum, bunu tercih ediyorum." demeyin. Bu sizinle ilgili değil. Yaptığımız çalışmaları dünyanın her yerindeki herkes için her gün erişilebilir kılmaktır.
Erişilebilirlik bir yolculuktur ve her zaman yeni şeyler öğreneceksiniz. On yıldan uzun süredir erişilebilirlik konusunda uzmanım ve hâlâ her gün yeni şeyler öğreniyorum. Savunmaya geçmeyin, hemen yapın.
Melanie'nin çalışmalarını melanie.codes adresindeki web sitesinde ve @a11yMel Twitter hesabında takip edebilirsiniz. pleasefunda11y.com, a11y-info.com ve a11y-automation.dev adreslerindeki erişilebilirlik kaynaklarına göz atın.