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
コードレビュー なんてしてられるかッ!!
Search
Yusuke Hirao
January 19, 2018
Technology
24
14k
コードレビュー なんてしてられるかッ!!
俺の話を聞け!! LT大会#7
結論markuplintというHTMLのLinter作った
Yusuke Hirao
January 19, 2018
Tweet
Share
More Decks by Yusuke Hirao
See All by Yusuke Hirao
ユニバーサルHTMLとWebのポテンシャル
yusukehirao
1
840
TypeScriptでつくるNode.jsパッケージ
yusukehirao
3
660
READMEにバッヂが欲しくてテストを書き始めました
yusukehirao
1
790
ユニバーサルなマークアップをしよう
yusukehirao
2
930
アクセシビリティチェックを自動化するためのmarkuplintのロードマップ
yusukehirao
2
2.2k
本当に必要ですか?そのJavaScript 〜スクロールイベント・リサイズイベント編〜
yusukehirao
0
670
自動化をデザインしよう
yusukehirao
1
920
JSONの型のはなし
yusukehirao
0
620
トランスパイラという文化(…とその後) - PHPカンファレンス福岡2016
yusukehirao
1
2.8k
Other Decks in Technology
See All in Technology
AI エージェントとはそもそも何か? - 技術背景から Amazon Bedrock AgentCore での実装まで- / AI Agent Unicorn Day 2025
hariby
3
770
スプリントレトロスペクティブはチーム観察の宝庫? 〜チームの衝突レベルに合わせたアプローチ仮説!〜
electricsatie
1
150
Kubernetes における cgroup v2 でのOut-Of-Memory 問題の解決
pfn
PRO
0
460
役割は変わっても、変わらないもの 〜スクラムマスターからEMへの転身で学んだ信頼構築の本質〜 / How to build trust
shinop
0
160
エラーとアクセシビリティ
schktjm
0
830
Webブラウザ向け動画配信プレイヤーの 大規模リプレイスから得た知見と学び
yud0uhu
0
200
「魔法少女まどか☆マギカ Magia Exedra」での負荷試験の実践と学び
gree_tech
PRO
0
510
DuckDB-Wasmを使って ブラウザ上でRDBMSを動かす
hacusk
1
140
新規案件の立ち上げ専門チームから見たAI駆動開発の始め方
shuyakinjo
0
660
カミナシ社の『ID管理基盤』製品内製 - その意思決定背景と2年間の進化 #AWSUnicornDay / Kaminashi ID - The Big Whys
kaminashi
3
760
Grafana MCPサーバーによるAIエージェント経由でのGrafanaダッシュボード動的生成
hamadakoji
1
1.2k
AWS環境のリソース調査を Claude Code で効率化 / aws investigate with cc devio2025
masahirokawahara
2
1.2k
Featured
See All Featured
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
51
5.6k
Thoughts on Productivity
jonyablonski
69
4.8k
Code Review Best Practice
trishagee
70
19k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.6k
A better future with KSS
kneath
239
17k
Embracing the Ebb and Flow
colly
87
4.8k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
36
2.5k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
Why Our Code Smells
bkeepers
PRO
339
57k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Docker and Python
trallard
45
3.5k
For a Future-Friendly Web
brad_frost
179
9.9k
Transcript
2018 Yusuke Hirao, CC BY-ND. ίʔυϨϏϡʔ ͳΜͯͯ͠ΒΕΔ͔ο ԶͷΛฉ͚-5େձ גࣜձࣾσΟʔθϩ ϑϩϯτΤϯυΤϯδχΞ
ฏඌ༏య
2018 Yusuke Hirao, CC BY-ND. ͔݁Β
2018 Yusuke Hirao, CC BY-ND. )5.-ͷ-JOUFS࡞ͬͨ
2018 Yusuke Hirao, CC BY-ND. ࣗݾհ ฏඌ༏యʢͻΒ͓Ώ͏ͯΜʣ גࣜձࣾσΟʔθϩ ϑϩϯτΤϯυΤϯδχΞ ίϛϡχςΟ׆ಈ
ԬϑϩϯτΤϯυ༑ͷձ'VLVPLB'SPOUFOE'SPHT ԬϚʔΫΞοϓษڧձ CBTFS$.4Ϣʔβʔձ Yusuke Hirao @cloud10designs
2018 Yusuke Hirao, CC BY-ND. ࣾͷ ίʔσΟϯάΨΠυϥΠϯΛ ॻ͍ͨΜͰ͢
2018 Yusuke Hirao, CC BY-ND.
2018 Yusuke Hirao, CC BY-ND. ίʔσΟϯάελΠϧ͔Β ΞΫηγϒϧϚʔΫΞοϓɺ $44ઃܭɺ+4ͷςΫχοΫ͔Β ίʔσΟϯάࢥͳͲ ΤϞ͍ײ͡ͰςϯίΓ
2018 Yusuke Hirao, CC BY-ND. Ͱɺ ࡞͔ͬͨΒʹɺ ͪΌΜͱΨΠυϥΠϯʹ Ԋ͍ͬͯΔ͔֬ೝ͍ͨ͠
2018 Yusuke Hirao, CC BY-ND. Α͠ɺ
2018 Yusuke Hirao, CC BY-ND. ίʔυϨϏϡʔ͠Α͏
2018 Yusuke Hirao, CC BY-ND. ͜͜+4ͷτϦΨʔʹͳΔ ͷͰBλάΑΓCVUUPOλάͭ ͔͍·͠ΐ͏
2018 Yusuke Hirao, CC BY-ND. ͜͜+4ͷτϦΨʔʹͳΔ ͷͰBλάΑΓCVUUPOλάͭ ͔͍·͠ΐ͏͜͜VMMJͰՕ ॻ͖ʹ͠·͠ΐ͏
2018 Yusuke Hirao, CC BY-ND. ͜͜+4ͷτϦΨʔʹͳΔ ͷͰBλάΑΓCVUUPOλάͭ ͔͍·͠ΐ͏͜͜VMMJͰՕ ॻ͖ʹ͠·͠ΐ͏OBWʹ BSJBMBCFMೖΕ·͠ΐ͏͔
2018 Yusuke Hirao, CC BY-ND. ͜͜+4ͷτϦΨʔʹͳΔ ͷͰBλάΑΓCVUUPOλάͭ ͔͍·͠ΐ͏͜͜VMMJͰՕ ॻ͖ʹ͠·͠ΐ͏OBWʹ BSJBMBCFMೖΕ·͠ΐ͏͔ϥ
ϯυϚʔΫϩʔϧ͚ͭ·͠ΐ ͏
2018 Yusuke Hirao, CC BY-ND. ͜͜+4ͷτϦΨʔʹͳΔ ͷͰBλάΑΓCVUUPOλάͭ ͔͍·͠ΐ͏͜͜VMMJͰՕ ॻ͖ʹ͠·͠ΐ͏OBWʹ BSJBMBCFMೖΕ·͠ΐ͏͔ϥ
ϯυϚʔΫϩʔϧ͚ͭ·͠ΐ ͏͓ɺด͡λά͕ൈ͚͍ͯ ·͢
2018 Yusuke Hirao, CC BY-ND. ͜͜+4ͷτϦΨʔʹͳΔ ͷͰBλάΑΓCVUUPOλάͭ ͔͍·͠ΐ͏͜͜VMMJͰՕ ॻ͖ʹ͠·͠ΐ͏OBWʹ BSJBMBCFMೖΕ·͠ΐ͏͔ϥ
ϯυϚʔΫϩʔϧ͚ͭ·͠ΐ ͏͓ɺด͡λά͕ൈ͚͍ͯ ·͓͢ɺBMU͕ͳ͍Ͱ͢Ͷ
2018 Yusuke Hirao, CC BY-ND. ͜͜+4ͷτϦΨʔʹͳΔ ͷͰBλάΑΓCVUUPOλάͭ ͔͍·͠ΐ͏͜͜VMMJͰՕ ॻ͖ʹ͠·͠ΐ͏OBWʹ BSJBMBCFMೖΕ·͠ΐ͏͔ϥ
ϯυϚʔΫϩʔϧ͚ͭ·͠ΐ ͏͓ɺด͡λά͕ൈ͚͍ͯ ·͓͢ɺBMU͕ͳ͍Ͱ͢Ͷ ͓ɺෆਖ਼ͳωετؔʹͳͬ ͯ·͢
2018 Yusuke Hirao, CC BY-ND. ͜͜+4ͷτϦΨʔʹͳΔ ͷͰBλάΑΓCVUUPOλάͭ ͔͍·͠ΐ͏͜͜VMMJͰՕ ॻ͖ʹ͠·͠ΐ͏OBWʹ BSJBMBCFMೖΕ·͠ΐ͏͔ϥ
ϯυϚʔΫϩʔϧ͚ͭ·͠ΐ ͏͓ɺด͡λά͕ൈ͚͍ͯ ·͓͢ɺBMU͕ͳ͍Ͱ͢Ͷ ͓ɺෆਖ਼ͳωετؔʹͳͬ ͯ·͋͢ɺλά໊খจࣈʹ ͍ͯͩ͘͠͞Ͷ
2018 Yusuke Hirao, CC BY-ND. ͜͜+4ͷτϦΨʔʹͳΔ ͷͰBλάΑΓCVUUPOλάͭ ͔͍·͠ΐ͏͜͜VMMJͰՕ ॻ͖ʹ͠·͠ΐ͏OBWʹ BSJBMBCFMೖΕ·͠ΐ͏͔ϥ
ϯυϚʔΫϩʔϧ͚ͭ·͠ΐ ͏͓ɺด͡λά͕ൈ͚͍ͯ ·͓͢ɺBMU͕ͳ͍Ͱ͢Ͷ ͓ɺෆਖ਼ͳωετؔʹͳͬ ͯ·͋͢ɺλά໊খจࣈʹ ͍ͯͩ͘͠͞ͶͱΓ͋͑ͣΠ ϯσϯτ͚ͭͯΒ͑·͔͢ʁ
2018 Yusuke Hirao, CC BY-ND. ͜͜+4ͷτϦΨʔʹͳΔ ͷͰBλάΑΓCVUUPOλάͭ ͔͍·͠ΐ͏͜͜VMMJͰՕ ॻ͖ʹ͠·͠ΐ͏OBWʹ BSJBMBCFMೖΕ·͠ΐ͏͔ϥ
ϯυϚʔΫϩʔϧ͚ͭ·͠ΐ ͏͓ɺด͡λά͕ൈ͚͍ͯ ·͓͢ɺBMU͕ͳ͍Ͱ͢Ͷ ͓ɺෆਖ਼ͳωετؔʹͳͬ ͯ·͋͢ɺλά໊খจࣈʹ ͍ͯͩ͘͠͞ͶͱΓ͋͑ͣΠ ϯσϯτ͚ͭͯΒ͑·͢ ͔ʁΨΠυϥΠϯಡΈ·͠ ͨʁ
2018 Yusuke Hirao, CC BY-ND. ͜͜+4ͷτϦΨʔʹͳΔ ͷͰBλάΑΓCVUUPOλάͭ ͔͍·͠ΐ͏͜͜VMMJͰՕ ॻ͖ʹ͠·͠ΐ͏OBWʹ BSJBMBCFMೖΕ·͠ΐ͏͔ϥ
ϯυϚʔΫϩʔϧ͚ͭ·͠ΐ ͏͓ɺด͡λά͕ൈ͚͍ͯ ·͓͢ɺBMU͕ͳ͍Ͱ͢Ͷ ͓ɺෆਖ਼ͳωετؔʹͳͬ ͯ·͋͢ɺλά໊খจࣈʹ ͍ͯͩ͘͠͞ͶͱΓ͋͑ͣΠ ϯσϯτ͚ͭͯΒ͑·͢ ͔ʁΨΠυϥΠϯಡΈ·͠ ͨʁ ͔͠ ઍϖʔδ
2018 Yusuke Hirao, CC BY-ND. ίʔυϨϏϡʔ͠Α͏
2018 Yusuke Hirao, CC BY-ND. ίʔυϨϏϡʔ͠Α͏ ͯ͠ΒΕΔ͔ο
2018 Yusuke Hirao, CC BY-ND. ϨϏϡʔࠔΛۃΊͨ ϨϏϡʔͷຊདྷͷత ίϯςΩετͱηϚϯςΟοΫͷ֬ೝ ΞΫηγϏϦςΟνΣοΫ ࣮ࡍʹؾΛऔΒΕͯ͠·ͬͨ͜ͱ
)5.-7BMJEBUJPO Ϋϥε໋໊نଇͳͲίʔσΟϯάΨΠυϥΠϯ४ڌͷ֬ೝ ্࣭ͳ͍͚ͲϝϯςͷͨΊͷΨΠυϥΠϯϧʔϧ͕ ΠϯσϯτϨϏϡʔͷಡΈ͢͞ͷͨΊͳͷʹͦΕΛࢦఠ ෛͷϧʔϓ
2018 Yusuke Hirao, CC BY-ND. -JOUFSΛಋೖ͠Α͏✅
2018 Yusuke Hirao, CC BY-ND. -JOUFSͷԸܙ +BWB4DSJQU&4-JOUͰɺ$444UZMFMJOUͰಋೖࡁΈ ࣍ͷ͜ͱ͍͍ͩͨࣗಈԽͰ͖Δ γϯλοΫενΣοΫ ίʔυελΠϧͷνΣοΫ
໋໊نଇͷνΣοΫ ΞϯνύλʔϯͷνΣοΫ ࢦఠ͢ΔͷػցͳͷͰਓ֨൱ఆʹड͚औΒΕʹ͍͘ ʮΤϥʔ͕ग़ͳ͍Α͏ʹίʔσΟϯά͍ͯͩ͘͠͞ʯͰย͘
2018 Yusuke Hirao, CC BY-ND. )5.-)JOUΛͬͯΈ͕ͨʜ جຊͷνΣοΫͪΖΜαϙʔτ ϓϥάΠϯ"1*Λ͍࣋ͬͯͨͷͰ࠷ॳͦΕͰؤுͬͨ ͔͍ͬͯ͘͠͠͏ͪʹ͕ϙϩϙϩ "1*͋ͬͯHVMQΤσΟλ͕ϓϥάΠϯʹରԠͯ͠ͳ͍
&4-JOUΈ͍ͨʹϑΥϧμ͝ͱͷϧʔϧઃఆ͕Ͱ͖ͳ͍ 47(ͳͲͷ֎དྷཁૉʹରԠ͍ͯ͠ͳ͍ ։ൃࢭ·ͬͯΔ͠
2018 Yusuke Hirao, CC BY-ND. ͭʔΘ͚Ͱ
2018 Yusuke Hirao, CC BY-ND. )5.--JOUFS࡞Γ·ͨ͠
2018 Yusuke Hirao, CC BY-ND. NBSLVQMJOU /PEFKTͰಈ͘)5.--JOUFS ͦͷ͏ͪϒϥβ൛ ϓϥάΠϯ"1*Λ͍࣋ͬͯΔ
ਖ਼֬ͳϩέʔγϣϯΛͭ"45 %0.ϥΠΫͳπϦʔߏ͕ѻ͑Δ ཁૉ͝ͱʹϧʔϧΛ࠶ઃఆͰ͖Δ ରͷཁૉηϨΫλͰߜΓ͜ΊΔ ϑΥϧμ͝ͱʹϧʔϧΛઃఆͰ͖Δ ϧʔϧઃఆܧঝ͕Ͱ͖Δ )5.--JWJOHTUBOEBSEͷίϯςϯπϞσϧใΛͭ ֎དྷཁૉɾΧελϜཁૉɾ7JFXϥΠϒϥϦͷରԠΛݟਾ͑ͨઃܭ Τϥʔ͕ຊޠ ϩέʔϧͰఆ ·੍ͩ࡞த͚ͩͲ
2018 Yusuke Hirao, CC BY-ND. NBSLVQMJOU ͦͦ͜͜ಈ͖·͢
2018 Yusuke Hirao, CC BY-ND. NBSLVQMJOU 74$PEF֦ுެ։ࡁΈ
2018 Yusuke Hirao, CC BY-ND. NBSLVQMJOU ॗʑϧʔϧͱՃத
2018 Yusuke Hirao, CC BY-ND. NBSLVQMJOU ͕ΜͬͯυΩϡϝϯτॻ͍ͯ·͢
2018 Yusuke Hirao, CC BY-ND. Ͱɺ࡞ͬͯΈͯͷײ
2018 Yusuke Hirao, CC BY-ND. ָ͍͠
2018 Yusuke Hirao, CC BY-ND. ͳΜ͜Ε։ൃָ͍͠Μ ඞཁʹۦΒΕͯ࡞Γ࢝Ίͨʹͯ͠༧֎ʹָ͍͠ ΰϦΰϦ)5.-ΛѻͬͯΔͷʹϑϩϯτΤϯυ͡Όͳ͍ෆࢥٞײ ͍ΖΜͳֶͼ͕͋ͬͨ ͱʹ͔͘)5.--JWJOHTUBOEBSEಡΈ·ͬͨ͘
)5.-ͷߏจύʔεʹͨΒৄ͘͠ͳͬͨ $-*ͷԞਂ͞ ඪ४ೖྗग़ྗͱ͔ϑϩϯτΤϯυͰະ ࠶ؼॲཧͱ͔ਅ໘ʹऔΓΜͩͷॳΊ͔ͯ͠Εͳ͍ ϒϥβޓΛؾʹ͠ͳ͍ίʔσΟϯάͷշײ ͋ͱɺۙʑઍϖʔδͷʹཱͯΔ͜ͱ͕ ͖ͬΓ͍ͯ͠Δ೩͑Δಈػʹͳ͍ͬͯͨ
2018 Yusuke Hirao, CC BY-ND. తͱָཱ͍͕྆͠Ͱ͖ͦ͏Ͱ͋Δ ϨϏϡʔͷຊདྷͷత ίϯςΩετͱηϚϯςΟοΫͷ֬ೝ ΞΫηγϏϦςΟνΣοΫ ࣮ࡍʹؾΛऔΒΕͯ͠·ͬͨ͜ͱ
)5.-7BMJEBUJPO Ϋϥε໋໊نଇͳͲίʔσΟϯάΨΠυϥΠϯ४ڌͷ֬ೝ ্࣭ͳ͍͚ͲϝϯςͷͨΊͷΨΠυϥΠϯϧʔϧ͕ ΠϯσϯτϨϏϡʔͷಡΈ͢͞ʹͨΊͳͷʹͦΕΛࢦఠ ෛͷϧʔϓ
2018 Yusuke Hirao, CC BY-ND. తͱָཱ͍͕྆͠Ͱ͖ͦ͏Ͱ͋Δ ϨϏϡʔͷຊདྷͷత ίϯςΩετͱηϚϯςΟοΫͷ֬ೝ ΞΫηγϏϦςΟνΣοΫ ࣮ࡍʹؾΛऔΒΕͯ͠·ͬͨ͜ͱ
)5.-7BMJEBUJPO Ϋϥε໋໊نଇͳͲίʔσΟϯάΨΠυϥΠϯ४ڌͷ֬ೝ ্࣭ͳ͍͚ͲϝϯςͷͨΊͷΨΠυϥΠϯϧʔϧ͕ ΠϯσϯτϨϏϡʔͷಡΈ͢͞ʹͨΊͳͷʹͦΕΛࢦఠ ෛͷϧʔϓ త
2018 Yusuke Hirao, CC BY-ND. తͱָཱ͍͕྆͠Ͱ͖ͦ͏Ͱ͋Δ ϨϏϡʔͷຊདྷͷత ίϯςΩετͱηϚϯςΟοΫͷ֬ೝ ΞΫηγϏϦςΟνΣοΫ ࣮ࡍʹؾΛऔΒΕͯ͠·ͬͨ͜ͱ
)5.-7BMJEBUJPO Ϋϥε໋໊نଇͳͲίʔσΟϯάΨΠυϥΠϯ४ڌͷ֬ೝ ্࣭ͳ͍͚ͲϝϯςͷͨΊͷΨΠυϥΠϯϧʔϧ͕ ΠϯσϯτϨϏϡʔͷಡΈ͢͞ʹͨΊͳͷʹͦΕΛࢦఠ ෛͷϧʔϓ త ָ͍͠
2018 Yusuke Hirao, CC BY-ND. ͋͞ɺ
2018 Yusuke Hirao, CC BY-ND. ίʔυϨϏϡʔ͠Α͏
2018 Yusuke Hirao, CC BY-ND. 5IBOLZPV
2018 Yusuke Hirao, CC BY-ND. NBSLVQMJOU IUUQTHJUIVCDPN:VTVLF)JSBPNBSLVQMJOU NBSLVQMJOUQMVHJOUFYUMJOU IUUQTXXXOQNKTDPNQBDLBHFNBSLVQMJOUQMVHJOUFYUMJOU NBSLVQMJOUGPS74$PEF
IUUQTNBSLFUQMBDFWJTVBMTUVEJPDPNJUFNT JUFN/BNFZVTVLFIJSBPWTDPEFNBSLVQMJOU