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
830
TypeScriptでつくるNode.jsパッケージ
yusukehirao
3
650
READMEにバッヂが欲しくてテストを書き始めました
yusukehirao
1
780
ユニバーサルなマークアップをしよう
yusukehirao
2
920
アクセシビリティチェックを自動化するためのmarkuplintのロードマップ
yusukehirao
2
2.2k
本当に必要ですか?そのJavaScript 〜スクロールイベント・リサイズイベント編〜
yusukehirao
0
660
自動化をデザインしよう
yusukehirao
1
910
JSONの型のはなし
yusukehirao
0
610
トランスパイラという文化(…とその後) - PHPカンファレンス福岡2016
yusukehirao
1
2.7k
Other Decks in Technology
See All in Technology
american airlines®️ USA Contact Numbers: Complete 2025 Support Guide
supportflight
1
110
ビギナーであり続ける/beginning
ikuodanaka
3
760
OSSのSNSツール「Misskey」をさわってみよう(右下ワイプで私のOSCの20年を振り返ります) / 20250705-osc2025-do
akkiesoft
0
170
スタートアップに選択肢を 〜生成AIを活用したセカンダリー事業への挑戦〜
nstock
0
200
Operating Operator
shhnjk
1
590
ネットワーク保護はどう変わるのか?re:Inforce 2025最新アップデート解説
tokushun
0
210
AI時代の開発生産性を加速させるアーキテクチャ設計
plaidtech
PRO
3
160
生成AI開発案件におけるClineの業務活用事例とTips
shinya337
0
260
LangChain Interrupt & LangChain Ambassadors meetingレポート
os1ma
2
310
さくらのIaaS基盤のモニタリングとOpenTelemetry/OSC Hokkaido 2025
fujiwara3
3
440
データグループにおけるフロントエンド開発
lycorptech_jp
PRO
1
100
Enhancing SaaS Product Reliability and Release Velocity through Optimized Testing Approach
ropqa
1
230
Featured
See All Featured
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
A Modern Web Designer's Workflow
chriscoyier
695
190k
Art, The Web, and Tiny UX
lynnandtonic
299
21k
Writing Fast Ruby
sferik
628
62k
Rebuilding a faster, lazier Slack
samanthasiow
82
9.1k
Thoughts on Productivity
jonyablonski
69
4.7k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Building an army of robots
kneath
306
45k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.1k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
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