Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
JSDC
Search
Mu-An Chiou
October 12, 2014
Programming
2
550
JSDC
Talk @ JSDC 2014
12.10.2014
Mu-An Chiou
October 12, 2014
Tweet
Share
More Decks by Mu-An Chiou
See All by Mu-An Chiou
Details on <details>
muan
0
350
Publishing and Hosting on GitHub pages
muan
4
150
Having no patience(Japanese)
muan
1
380
Design with Code
muan
5
550
Having no patience
muan
1
300
Design in GitHub
muan
5
370
Project Lab Squirrel #2
muan
1
630
Project Lab Squirrel #1
muan
8
870
A girl with no patience
muan
18
1.9k
Other Decks in Programming
See All in Programming
AI時代もSEOを頑張っている話
shirahama_x
0
230
251126 TestState APIってなんだっけ?Step Functionsテストどう変わる?
east_takumi
0
300
dotfiles 式年遷宮 令和最新版
masawada
1
670
Building AI Agents with TypeScript #TSKaigiHokuriku
izumin5210
6
1.2k
Evolving NEWT’s TypeScript Backend for the AI-Driven Era
xpromx
0
260
堅牢なフロントエンドテスト基盤を構築するために行った取り組み
shogo4131
6
1.9k
俺流レスポンシブコーディング 2025
tak_dcxi
13
7.7k
無秩序からの脱却 / Emergence from chaos
nrslib
2
12k
Herb to ReActionView: A New Foundation for the View Layer @ San Francisco Ruby Conference 2025
marcoroth
0
240
AIコードレビューがチームの"文脈"を 読めるようになるまで
marutaku
0
310
AIコーディングエージェント(skywork)
kondai24
0
110
宅宅自以為的浪漫:跟 AI 一起為自己辦的研討會寫一個售票系統
eddie
0
470
Featured
See All Featured
We Have a Design System, Now What?
morganepeng
54
7.9k
Docker and Python
trallard
46
3.7k
Building Applications with DynamoDB
mza
96
6.8k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Git: the NoSQL Database
bkeepers
PRO
432
66k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
120
20k
Site-Speed That Sticks
csswizardry
13
990
A Modern Web Designer's Workflow
chriscoyier
697
190k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.8k
Writing Fast Ruby
sferik
630
62k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.8k
Designing for Performance
lara
610
69k
Transcript
! େᯃ "
twitter@muanchiou github@muan
None
ᅇᅇح zeczec.com
! github.com
236 hubbers are spread across 101 cities right now
None
muan & jlord defunkt
Be asynchronous
Be non-blocking
@github/css @github/design @github/engineering @github/accessibility @github/billing @github/education
@github/ @github/ @github/ @github/ @github/ @github/ $44 ઃܭ ఔ ແো
ڭҭ
@github/css @github/design @github/engineering @github/accessibility @github/billing @github/education
engineering
engineering design css accessibility
The front-end team Linting + CI Accessibility
The front-end team
DESIGN FRONT-END
FRONT-END + DESIGN
FRONT-END + DESIGN Serious JavaScripters
PROTOTYPES # $
CARES ABOUT CODE ♥ $
ALWAYS INVOLVED &
DESIGN + CODE = +
Linting + CI
' ( ) * + ଌࢼᔒա, ෆڅ㟬EFQMPZ。
None
None
These classes are no where to be found: ! .avatar-upload-label
.billing-extra-yolo .login-form-fixed Stale selectors and partials
These selectors are too damn complicated: ! #adv_code_search .enterprise .site-search
.search-page-label: body.page-profile .profilecols .tabnav .pagehead-actions li.t .discussion-hidden .timeline-comment-content .timeline-commen .prose-diff > .markdown-body li .wraps-task-list-item-checkbo Deep selectors
Stylesheets should not contain js- prefixed classes: ! .js-avatar-uploader .js-prorated-for-days
.js-branch-name-suggestion Special prefixed classes
Stylesheets should not contain js- prefixed classes: ! .js-avatar-uploader .js-prorated-for-days
.js-branch-name-suggestion Special prefixed classes git grep -n '[#.]js-' -- app/assets/stylesheets
Accessibility
Limited resources ➡️ Reactive
None
None
The ALT attribute if(!img.hasAttribute('alt')) { console.warn(“Missing alt attribute on", img)
} if(!img.hasAttribute('alt')) { console.warn(“Missing alt attribute on", img) }
label.control if(!label.control) { console.warn("Label missing control”, label) }
<a>/anchor tag declaration if(!this.getAttribute("href") || !this.getAttribute("role") == “button") { console.warn("Missing
link declaration", link) }
Accessible text – aria-label text = node.innerText text += node.getAttribute(‘alt')
text += node.getAttribute(‘aria-label') ! if(text.length == 0) { console.warn("Missing accessible text", this) }
None
Be asynchronous
Be non-blocking
DESIGN + CODE = +
Lint your code
Care about accessibility
Accessibility Camps www.accessibilitycamp.org
WE HAVE STICKERS
None