Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Accessible By Default!
Search
Bilal Çınarlı
October 08, 2024
Technology
110
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Accessible By Default!
Bilal Çınarlı
October 08, 2024
More Decks by Bilal Çınarlı
See All by Bilal Çınarlı
Efficieny and Scaling in Frontend
bcinarli
0
57
Navigating with Unknowns
bcinarli
1
51
Story of a Boring Work
bcinarli
0
29
Refactoring Frontend
bcinarli
0
63
Aninda Yüklenen Uygulamalar
bcinarli
0
160
Iletisimin Mühendisligi
bcinarli
0
69
Independently together: better developer experience & App performance
bcinarli
1
560
Developer Experience: How happy are your engineers?
bcinarli
0
290
Micro Applications: Divide & Conquer
bcinarli
2
1.3k
Other Decks in Technology
See All in Technology
Genie Code ワークショップ 基礎編 / Genie-Code-Workshop-fundamental
databricksjapan
PRO
0
330
[RSJ26] Hierarchy-Aware Multimodal Retrieval-Augmented Generation for Embodied Question Answering
keio_smilab
PRO
1
170
bet_ai_day_2026_session02
agenticsec
1
910
魔法少女がClaude Codeを監視する / ccportal-deck
noriyukitakei
3
130
Bet AI Day 2026丨AIを「使う」から、AIが「働く」へ ― LayerXが進める「組織AI」の社会実装
layerx
PRO
2
2k
推論の観測、できていますか? 〜 Google Cloud Gemini Enterprise Agent Platformで 3つの Gemini モデルを実測して踏んだ、評価の罠 〜
shukob
PRO
0
140
『止めない』を設計する — 制約の中で、事業の根幹を支える判断
hiroyaterui
0
150
Driving AI Adoption Using In-House GPUs to Serve Qwen
po3rin
2
430
こんなアーキテクチャ図は嫌だ BEYOND THE TIME: 半年後の自分へ贈る15のメッセージ / 15 of Anti-pattern in AWS Architecture Diagrams
naospon
3
220
現場に行くだけでは足りない——プロダクトエンジニアが業務の流れを捉える観点と、その鍛え方
takumiengineering
0
220
AIで実装は速くなった。なのにプロダクトは速くならない。職能の壁を越えて価値のフローを設計する
nwiizo
6
6.7k
AI時代に、プロダクトの数だけ積み上がる所有コストをどうエンジニアリングするか / Engineering the Cost of Ownership
kzkmaeda
0
930
Featured
See All Featured
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
450
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
230
Between Models and Reality
mayunak
4
440
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
510
Designing Powerful Visuals for Engaging Learning
tmiket
1
530
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
490
Embracing the Ebb and Flow
colly
88
5.2k
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
500
Docker and Python
trallard
47
4.2k
Mobile First: as difficult as doing things right
swwweet
225
10k
Transcript
ACCESSIBLE BY DEFAULT ERİŞİLEBİLİR UYGULAMA GELİŞTİRMENİN PÜF NOKTALARI
BILAL ÇINARLI Principal Frontend Engineer @ Jira / Atlassian @bcinarli
%95.9 İLK 1 MİLYON SİTE İÇİNDE ERİŞİLEBİLİRLİK PROBLEMİ OLANLAR
98% WCAG 2.1 STANDARTLARINA UYMAYAN SİTE ORANI
WCAG 2.1 standartları çoğunlukla alt-text, klavye navigasyonu, tutarlılık ve uygun
HTML yapısı istiyor
Yanlış Bilgi Erişilebilirlik sadece küçük bir grup kullanıcı için geçerli
16% DÜNYA NÜFUSUNDA BİR ŞEKİLDE ENGELİ OLANLAR
Yanlış Bilgi Benim uygulamamı engelli kullanıcıların kullanma ihtiyacı yok
Yanlış Bilgi Erişilebilirlik sadece görme engelli kişiler içindir
Erişilebilirlik ihtiyacı her hangibir zamanda karşımıza çıkabilir
Bir ay boyunca zayıf olan kolunuzu kullandığınızı düşünün
Yanlış Bilgi Bir siteyi erişilebilir yapmak çok zaman alan ve
masraflı bir uğraştır
56.8 ORTALAMA BİR SAYFADAKİ ERİŞİLEBİLİRLİK PROBLEMİ
Açıklama metni eksik resimler, boş bağlantılar & butonlar, eksik/olmayan etiketler
(label), yanlış renk kontrastı
<div class="headline"> <h2>Elmalar ne kadar sağlıklı? < / h2> <img
src="headline.jpg" /> </ div>
<div class="headline"> <h2>Elmalar ne kadar sağlıklı? < / h2> <img
alt="Bir bütün ve bir ısırılmış elma yan yana duruyor." src="headline.jpg" /> </ div>
Yanlış Bilgi Erişilebilirlik sadece resimlere açıklama metni eklemekten ibarettir
%54.5 RESİMLERİNDE AÇIKLAMA METNİ EKSİK SİTE ORANI
%19.8 TOPLAM ERİŞİLEBİLİRLİK KUSURLARI İÇİNDE RESİMLERİN ORANI
Yanlış HTML yapısı, yanlış fonksiyonel kontroller, eksik renk kontrası, yanlış
JavaScript kullanımı…
<div class="input"> <span class="label">Email < / span> <input type="text" name="email"
required / > </ div> <div class="input"> <span class="label">Password </ span> <input type="password" name="password" required /> </ div>
<label class="input"> <span class="label">Email < / span> <input type="email" name="email"
required /> </ label> <label class="input"> <span class="label">Password </ span> <input type="password" name="password" required / > </ label>
Dosyayı indirmek için <a onclick="download('file123')">buraya </ a> tıklayınız
<a href="erisilebilir-uygulamalar.pdf" type="application/pdf"> Erişilebilir uygulamalar (<abbr title="Adobe Portable Document Format">PDF
</ abbr>, 27.5 <abbr title="Megabyte">MB </ abbr>) </ a>.
AAA - 7 : 1 AA - 4.5 : 1
A - 3 : 1 (içerik için uygun değil)
https://colourcontrast.cc
Yanlış Bilgi Sadece aria-label ekleyerek erişilebilir olabiliriz
First Rule of ARIA use: ARIA kullanmayın! Standart HTML semantiği
ve etkileşimini tercih edin!
<table role="menu"> <tr role="menubar"> <td role="menuitem"> <button onclick="goToLink('homepage')" aria-current="page" aria-label="Homepage">Homepage
< / button> </ td> <td role="menuitem"> <button onclick="goToLink('search')" aria-label="Search">Search < / button> </ td> <td role="menuitem"> <button onclick="goToLink('likes')" aria-label="Likes">Likes </ button> </ td> <td role="menuitem"> <button onclick="goToLink('profile')" aria-label="Profile">Profile </ button> </ td> </ tr> </ table>
<nav> <ul> <li><a href="/" aria- current="page">Homepage </ a> </ li>
<li><a href="/search">Search </ a> </ li> <li><a href="/likes">Likes </ a> </ li> <li><a href="/profile">Profile </ a> </ li> </ ul> </ nav>
Yanlış Bilgi Websitemi, açılmadan önce erişilebilir hale getirebilirim
56.8 ORTALAMA SAYFA BAŞINA KARŞILAŞILAN PROBLEM
Doğru Bilgi Erişilebilirlik bir takım işidir ve baştan itibaren üzerinde
durulmalıdır
ACCESSIBLE BY DEFAULT BİLAL ÇINARLI @bcinarli