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
ソフトウェア開発とコミュニケーション / Communication in Software ...
Search
Junichi Kobayashi
September 18, 2021
Programming
0
1.3k
ソフトウェア開発とコミュニケーション / Communication in Software Development
Junichi Kobayashi
September 18, 2021
Tweet
Share
More Decks by Junichi Kobayashi
See All by Junichi Kobayashi
The Implementations of Advanced LR Parser Algorithm
junk0612
3
1.7k
「今のプロジェクトいろいろ大変なんですよ、app/services とかもあって……」/After Kaigi on Rails 2024 LT Night
junk0612
5
2.6k
LR で JSON パーサーを作る / Coding LR JSON Parser
junk0612
2
1.5k
「ナントカLR」を整理する / Clarifying LR Algorithms
junk0612
1
570
From LALR to IELR: A Lrama's Next Step
junk0612
2
4.3k
RubyConf Taiwan / Understanding Parser Generators surrounding Ruby with Contributing Lrama
junk0612
2
6.9k
LL法とLR法の違いは?調べてみた!-完全版-/Comparing LL and LR parse algorithm -EX Edition-
junk0612
0
1.1k
ESM Super LT/Comparing LL and LR parse algorithm
junk0612
1
180
Lrama へのコントリビューションを通して学ぶ Ruby のパーサジェネレータ事情
junk0612
4
7k
Other Decks in Programming
See All in Programming
AIコーディング道場勉強会#2 君(エンジニア)たちはどう生きるか
misakiotb
1
270
datadog dash 2025 LLM observability for reliability and stability
ivry_presentationmaterials
0
410
Cursor AI Agentと伴走する アプリケーションの高速リプレイス
daisuketakeda
1
130
“いい感じ“な定量評価を求めて - Four Keysとアウトカムの間の探求 -
nealle
0
470
#QiitaBash MCPのセキュリティ
ryosukedtomita
0
660
関数型まつりレポート for JuliaTokai #22
antimon2
0
160
20250704_教育事業におけるアジャイルなデータ基盤構築
hanon52_
4
240
Create a website using Spatial Web
akkeylab
0
310
0626 Findy Product Manager LT Night_高田スライド_speaker deck用
mana_takada
0
140
LT 2025-06-30: プロダクトエンジニアの役割
yamamotok
0
660
Node-RED を(HTTP で)つなげる MCP サーバーを作ってみた
highu
0
120
地方に住むエンジニアの残酷な現実とキャリア論
ichimichi
5
1.5k
Featured
See All Featured
A Modern Web Designer's Workflow
chriscoyier
694
190k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Rails Girls Zürich Keynote
gr2m
94
14k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.5k
Producing Creativity
orderedlist
PRO
346
40k
StorybookのUI Testing Handbookを読んだ
zakiyama
30
5.8k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
940
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
A Tale of Four Properties
chriscoyier
160
23k
Testing 201, or: Great Expectations
jmmastey
42
7.6k
Transcript
ιϑτΣΞ։ൃͱ ίϛϡχέʔγϣϯ גࣜձࣾӬγεςϜϚωδϝϯτΞδϟΠϧࣄۀ෦ খྛ७Ұ !KVOL 91ࡇΓ POMJOF 4BU
খྛ७Ұ !KVOL
ࣗݾհ • খྛ७Ұ !KVOL • גࣜձࣾӬγεςϜϚωδϝϯτ ‣ ΞδϟΠϧࣄۀ෦3VCZº"HJMFάϧʔϓॴଐ •
ԻήʔϚʔɺϘʔυήʔϚʔ ‣ ͖ͳۂ%FTUJOZ4XPSE **%9 ‣ ͖ͳϘʔυήʔϜ4DZUIFେחઓ
None
None
࠷ॳʹ͓Θͼ
ιϑτΣΞ։ൃͱίϛϡχέʔγϣϯ • ༰͕ܾ·Γ͖ͬͯͳ͔ͬͨͷͰλΠτϧ͕େ͛͞ʹͳΓ·ͨ͠ • ࣗͷܦݧ͔ΒΛ͢ΔͷͰɺΞδϟΠϧ ಛʹ91 ʹݶͬͨ ʹͳΓ·͢ • ΥʔλʔϑΥʔϧܕͷେن։ൃͰΤοηϯε
͓࣋ͪؼΓ͍͚ͨͩΔͱࢥ͍·͕͢ʜʜ
ؾΛऔΓͯ͠
ιϑτΣΞ։ൃͱ ίϛϡχέʔγϣϯ גࣜձࣾӬγεςϜϚωδϝϯτΞδϟΠϧࣄۀ෦ খྛ७Ұ !KVOL 91ࡇΓ POMJOF 4BU 91ͳ
͓͠ͳ͕͖ • 91ʹ͓͚Δίϛϡχέʔγϣϯͱ • ࣮ࡍͷ։ൃͰֶΜͩίϛϡχέʔγϣϯͷॏཁੑ ‣ ্ख͍ͬͨ͘ࣄྫɾࣦഊͨ͠ࣄྫ • 91ͷϓϥΫςΟεΛίϛϡχέʔγϣϯͷࢹͰݟΔ
91ʹ͓͚Δ ίϛϡχέʔγϣϯͱ
ίϛϡχέʔγϣϯͷҐஔ͚ͮ • 91ͰʮՁʯͷҰͭ ‣ ίϛϡχέʔγϣϯ ‣ γϯϓϦγςΟ ‣ ϑΟʔυόοΫ ‣
༐ؾ ‣ ϦεϖΫτ
ίϛϡχέʔγϣϯͷҐஔ͚ͮ • ʮνʔϜʹΑΔιϑτΣΞ։ൃͰͬͱॏཁͳͷɺ ίϛϡχέʔγϣϯͰ͋Δɻʯ ‣ ʰΤΫετϦʔϜϓϩάϥϛϯάʱୈষQ • ଞͷՁͱີʹؔΘΔ ‣ ʮϑΟʔυόοΫίϛϡχέʔγϣϯʹ͔ܽͤͳ͍ʯ
‣ ʮ༐ؾΛ࣋ͬͯਅ࣮ΛޠΕɺίϛϡχέʔγϣϯ৴པ͕ ڧԽ͞ΕΔʯ
ίϛϡχέʔγϣϯͷޮՌ • ιϑτΣΞ։ൃɺίϛϡχέʔγϣϯͷ ળ͠ѱ͠ʹΑͬͯ༰қʹ݁Ռ͕ࠨӈ͞ΕΔ ‣ ఆظతͳ֬ೝͷ͓͔͛Ͱϝϯόʔͷঢ়گ͕Θ͔ͬͨ ‣ ઃܭҙਤ͕Θ͍ͬͯͳ͔ͬͨͷͰɺ ࡉ͔͍ͱ͜ΖͰஅϛεΛͯ͠͠·ͬͨ ‣
Ҏલίςϯύϯʹ٧ΊΒΕͯ͠·ͬͨͷ͕τϥϚͰɺ ٞʹ͚͍ܽͯΔॏཁͳࢹΛݴ͍ग़ͤͳ͔ͬͨ
ίϛϡχέʔγϣϯͷछྨ • νʔϜͷೝࣝΛἧ͑ΔͨΊʹଧͪ߹ΘͤΛ͢Δ • ேձɾ༦ձͰ͓ޓ͍ͷঢ়گΛ֬ೝ͢Δ • ϨϏϡʔΛͯ͠ରͷཧղΛิ͍߹͏ • ΑΓྑ͍ίϛϡχέʔγϣϯΛऔΔͨΊࡶஊΛదʹߦ͏ •
ະདྷͷࣗ৽ͨͳνʔϜϝϯόʔ͕ࠔΒͳ͍Α͏ʹ ઃܭҙਤΛυΩϡϝϯτԽ͠ɺ ࣮ҙਤΛϦʔμϒϧίʔυͱ͓ͯͯ͘͠͠
ίϛϡχέʔγϣϯͱ • ϓϩδΣΫτΛલʹਐΊΔͨΊʹߦΘΕΔશͯͷΓऔΓ ‣ ͋͘·ͰશͯͷతΑΓྑ͍ࣄΛ͢Δ͜ͱ ‣ ϦΞϧλΠϜͰ͋ΔͱݶΒͳ͍ ‣ ํͰ͋ΔͱݶΒͳ͍
։ൃ͔ΒֶΜͩ ίϛϡχέʔγϣϯͷ ॏཁੑ
લఏͱͳΔڥ • ࣮ࡍʹ։ൃΛߦ͏ϝϯόʔগਓ ‣ ʙ໊ఔ • ։ൃର3BJMTΞϓϦέʔγϣϯ ‣ ϑϩϯτΤϯυͷϑϨʔϜϫʔΫΛͬͨ͜ͱ͋Δ͕ 41"ͷܦݧͳ͍
‣ Πϯϑϥ"84ΦϯϓϨ)FSPLVͳͲ ϓϩδΣΫτʹΑΓ͞·͟·
લఏͱͳΔڥ • ։ൃख๏جຊతʹΞδϟΠϧ ‣ 91ϕʔε͔εΫϥϜϕʔε͔ϓϩδΣΫτʹΑΔ • ΠςϨʔγϣϯ εϓϦϯτ ʙिؒ ‣
ि࣍αΠΫϧ ‣ ΠςϨʔγϣϯ͝ͱʹ;Γ͔͑ΓͱݟੵΓ
લఏͱͳΔڥ • ϦϦʔεपظຖʙΠςϨʔγϣϯ͝ͱ ‣ σΠϦʔσϓϩΠ • ۠Γͷͨͼʹதظతͳ;Γ͔͑Γ ‣ ࢛ظαΠΫϧ ‣
େ͖ͳػೳͷϦϦʔεޙ͝ͱͳͲ
্ख͍ͬͨ͘ྫ
ى͖͍ͯͨ͜ͱ • ༏ઌॱҐʹैͬͯऔͬͨλεΫ͕ॳΊͯ৮Δػೳͷमਖ਼ͩͬͨ • ͦͷػೳ5ZQF4DSJQU3FBDUͰ࣮͞Ε͓ͯΓɺ ࠓ·ͰࣄͰ৮ͬͨ͜ͱ͕ͳ͘ෆ׳Εͩͬͨ
࣮ࡍʹͬͨ͜ͱ • ෆ׳ΕͰ͋Δ͜ͱΛൃݴͯ͠૬ஊͨ͠ ‣ ͍͕࣌ؒ͋ͬͨͷͰɺ׳Εͨਓʹότϯλονͤͣ ࣗͰΔ͜ͱʹͨ͠ • ଞʹෆ׳Εͳϝϯόʔ͕͍ͨͷͰ ৄ͍͠ਓͷ࣌ؒΛΒͬͯΈΜͳͰઆ໌Λฉ͍ͨ •
ಛʹ͍͠ͱ͜ΖϖΞϓϩͳͲͰ ॿ͚ͯΒͬͨ
͜ͷํ๏ΛऔΕͨഎܠ • ීஈ͔Βࡶஊ͕ͦΕͳΓʹଟ͔ͬͨͷͰ ͔͚͘͢͠૬ஊ͔ͬͨ͢͠ ‣ ϦϞʔτϫʔΫࣾձʹͳΔલͷͰ͢ ‣ ޙड़͠·͕͢ཧతʹ੮͕͔ۙͬͨͷ͋Γ·͢
͜ͷํ๏ΛऔΕͨഎܠ • ීஈ։ൃʹ͏ͷͱผͷ େ͖ͳσΟεϓϨΠ͕νʔϜʹͭ͋Γɺ ͦͷͰͪΐͬͱͨ͠ଧͪ߹ΘͤͳͲ͕Ͱ͖ͨ ‣ ேձ༦ձͰΧϯόϯ༻ͷ5SFMMPΛөͨ͠Γ ใຬࡌͷϫʔΫεϖʔε ɺ ίʔυΛө͠ͳ͕Βઆ໌ϞϒϓϩΛͨ͠Γ
͜ͷํ๏ΛऔΕͨഎܠ • ։ൃνʔϜͰౡʹͳͬͯ࠲͍ͬͯͨͷͰ શһಉ੮ ɺ ཧతʹڑ͕ۙ͘ϖΞϓϩͳͲͷରԠ͕औΓ͔ͬͨ͢
্ख͍͔͘ͳ͔ͬͨྫ
࣮ݱ͔ͨͬͨ͜͠ͱ • ճͷϦΫΤετͰ࠷େສ݅ͷϨίʔυΛ %#ʹ࡞͢ΔॲཧΛ࣮͢Δ ‣ ϚελΛจࣈྻͰ෦Ұகݕࡧ͠ɺ ΤϯυϢʔβʔͱͷؒʹଟରଟͷަࠩςʔϒϧΛ࡞͢Δ • ݟੵΓஈ֊Ͱɺ ࡞ۀྔଟ͍͕ͦΕ΄Ͳ͘͠ͳ͍λεΫͱࢥΘΕ͍ͯͨ
࣮ࡍʹىͬͨ͜͜ͱ • ࣮ͷஈʹͳͬͯߟྀ͖͕ͩͬͨ͢ଓग़͠ɺઃܭ͕໎ͨ͠ ‣ 8FCαʔόͷߴෛՙɾλΠϜΞτ ‣ %#ͷߴෛՙ ‣ ͔ͨ͠ɺಉ͡νέοτͰճ͘Β͍࣮Λ͕Βͬͱ ॻ͖͑·ͨ͠ʜʜ😭
8FCαʔόͷߴෛՙ • ສ݅ͷϨίʔυ࡞Λ͍ͬͯΔͱλΠϜΞτ͢Δ ‣ Ұఆ݅Ҏ্ώοτ͢Δ͜ͱ͕Θ͔ͬͨΒ ͦͷͰ࡞ΒͣόονॲཧΛ༧͢Δ͜ͱʹͨ͠ • %#Ͱͷจࣈྻݕࡧͷ݁ՌΛ͍ͬͯΔͱ ݅ͷώοτͰλΠϜΞτ͢Δ ‣
࠷ऴతʹશจݕࡧΤϯδϯʹಀ͕ͨ͠
%#ͷߴෛՙ • ୯७ʹສ݅ͷϨίʔυΛ࡞Δͷ͕͔͔࣌ؒΔ ‣ ͜ΕճආͰ͖ͳ͍ͷͰͤΊͯόονͰॲཧ͢Δ • จࣈྻͷ෦Ұகݕࡧ͕ඞཁͩͬͨͨΊ ΠϯσοΫε͕ޮ͔ͳ͍ ‣ લड़ͷ௨Γɺ%#ͰΒͳ͍͜ͱʹͨ͠
ݪҼੳ • ؚࣗΊɺଟछଟ༷ͳܦݧΛੵΜͰ͖ͨνʔϜϝϯόʔ͕ ू·͍ͬͯΔͷʹɺ͜ͷʹ୭ؾ͚ͮͳ͔ͬͨ Βͳ͔ͬͨ ͱߟ͑ʹ͍͘ • ͓ޓ͍͕ࢥߟͷ͖͔͚ͬʹͳΔΑ͏ͳ ίϛϡχέʔγϣϯΛेʹऔΕ͍ͯͳ͔ͬͨͷͰͳ͍͔ʁ ‣
ͦΕͳ͔ͥʹ͍ͭͯࠓޙͷݕূΛ͓ͪԼ͍͞
ࠒ࣮ફ͍ͯ͠Δ 91ͷϓϥΫςΟεΛ ίϛϡχέʔγϣϯͷ؍͔ΒݟΔ
ϖΞϓϩάϥϛϯά • ਓͰϖΞΛΈɺυϥΠόʔͱφϏήʔλʔͷׂʹ͔Εͯ ϓϩάϥϛϯά͢Δ
ϖΞϓϩάϥϛϯά • ਓͰϖΞΛΈɺυϥΠόʔͱφϏήʔλʔͷׂʹ͔Εͯ ϓϩάϥϛϯά͢Δ ‣ ࣮͠ͳ͕ΒϨϏϡʔΛಉ࣌ʹߦ͏ ‣ ϨϏϡʔίϛϡχέʔγϣϯͷछ
શһಉ੮ • νʔϜશһ͕ཧతʹ͍ۙॴ Ͱ͖Ε෦ ͰࣄΛ͢Δ
શһಉ੮ • νʔϜશһ͕ཧతʹ͍ۙॴ Ͱ͖Ε෦ ͰࣄΛ͢Δ ‣ ίϛϡχέʔγϣϯΛ༠ൃ͘͢͢͠Δ ‣ ϦϞʔτϫʔΫͰ࣮ݱͰ͖ͳ͍ͷͰɺͤΊͯςΩετνϟοτ ϘΠενϟοτΛ׆༻͢Δ
UJNFTνϟϯωϧͳͲ
ि࣍αΠΫϧ • ຖि ֤ΠςϨʔγϣϯ ͝ͱʹ;Γ͔͑Γͱ ࣍ͷΠςϨʔγϣϯͷݟੵΓΛߦ͏
ि࣍αΠΫϧ • ຖि ֤ΠςϨʔγϣϯ ͝ͱʹ;Γ͔͑Γͱ ࣍ͷΠςϨʔγϣϯͷݟੵΓΛߦ͏ ‣ ͜·ΊͳใಉظΛͯ͠ίϛϡχέʔγϣϯΛ ൃੜͤ͞Δ
࢛ظαΠΫϧ • ࢛ظ͝ͱʹܭըΛཱͯɺ͜͜·Ͱ͖ͬͯͨ͜ͱΛ;Γ͔͑Δ
࢛ظαΠΫϧ • ࢛ظ͝ͱʹܭըΛཱͯɺ͜͜·Ͱ͖ͬͯͨ͜ͱΛ;Γ͔͑Δ ‣ ͭͷςʔϚͰ͠߹͏ػձΛ૿͢ ‣ தظతͳهԱҙ֎ͱͳ͘ͳΓ͍͢ͷͰɺ ීஈ͔Β͜·Ίʹه͓ͯ͘͠ͱྑ͍
ใຬࡌͷϫʔΫεϖʔε • ࠓͷϓϩδΣΫτͷঢ়گ͕ͻͱͰ͔Δ ϫʔΫεϖʔε ΧϯόϯͳͲ Λ࡞Δ
ใຬࡌͷϫʔΫεϖʔε • ࠓͷϓϩδΣΫτͷঢ়گ͕ͻͱͰ͔Δ ϫʔΫεϖʔε ΧϯόϯͳͲ Λ࡞Δ ‣ ঢ়گΛՄࢹԽ͠ɺͨ͘͠ͳ͍ࣄฑΛ ͟͞ΔΛಘͳ͍Α͏ʹ͢Δ
΄͔ͷՁͰ ϓϥΫςΟεΛݟ͢ͱ ࢥΘ͵ൃݟ͕͋Δ͔ʁ
·ͱΊ • ίϛϡχέʔγϣϯϓϩδΣΫτΛલʹਐΊΔͨΊʹ ߦΘΕΔશͯͷΓऔΓ • ίϛϡχέʔγϣϯΛ্ख͘औΕΔͱେ͖ͳϝϦοτ͕͋Δ͠ɺ ࣦഊͨ͠Βେมͳ͜ͱʹͳΔ • ࠒ࣮ફ͍ͯ͠Δ91ͷϓϥΫςΟεΛɺίϛϡχέʔγϣϯͷ ؍Ͱଊ͑ͯ͠հ