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
The future of tbls and "Documentation as Code" ...
Search
Ken’ichiro Oyama
June 24, 2023
Technology
10k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
The future of tbls and "Documentation as Code" / phpconfuk 2023
https://fortee.jp/phpconfukuoka-2023/proposal/df1faefa-056a-493a-87d3-45934e96ea8c
Ken’ichiro Oyama
June 24, 2023
More Decks by Ken’ichiro Oyama
See All by Ken’ichiro Oyama
Introducing RFC9111 / YAPC::Fukuoka 2025
k1low
2
5.6k
Design and implementation of "Markdown to Google Slides" / phpconfuk 2025
k1low
1
1k
analysis パッケージの仕組みの上でMulti linter with configを実現する / Go Conference 2025
k1low
1
820
Flight recorder at the application layer (NOT the FlightRecoder newly added at Go 1.25) / Fukuoka.go #22
k1low
0
190
ソフトウェア開発におけるインターフェイスという考え方 / PHPerKaigi 2025
k1low
12
6.4k
Parsing HCL/CUE / Fukuoka.go #21
k1low
0
11k
実践 net/http Middleware パターン / Kizuku.go Vol.1
k1low
2
460
Cleanup handling in Go / Go Conference 2024
k1low
7
4.2k
CI/CDがあたりまえの今の時代にAPIテスティングツールに求められていること / CI/CD Test Night #7
k1low
18
12k
Other Decks in Technology
See All in Technology
Invisible to AI? Making TYPO3 Sites Quotable by AI Search Systems
wolfgangwagner
0
170
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
53k
SO-101×VLAによる3色キューブのピック&プレース
abeja
0
160
Pavlokで始める電撃駆動開発
sgrsn
0
180
変化の早いClaude Codeを 書籍に落とし込む
oikon48
7
1.3k
モバイルアプリ開発概論2026
recruitengineers
PRO
5
510
組織にどうSREを根付かせるか?〜IVRyの場合〜
abnoumaru
0
330
20260608_Codexの可能性_ノンプログラマー向け_大城追記
doradora09
PRO
0
780
グローバル基準のSREは、運用現場でどう機能したか:成熟度アセスメントの実践 / SRE NEXT 2026
sorawatanabe
0
140
強化学習「理論」入門
enakai00
3
3.6k
20260807_第6回_関東kaggler会LT_claw系bot xangiと始める、"寂しくない" kaggle
sugupoko
0
220
LLM・AIエージェントシステムベストプラクティス
shibuiwilliam
2
630
Featured
See All Featured
KATA
mclloyd
PRO
35
15k
Skip the Path - Find Your Career Trail
mkilby
1
180
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.9k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
270
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
200
The Invisible Side of Design
smashingmag
301
52k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2.1k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.6k
For a Future-Friendly Web
brad_frost
183
10k
Music & Morning Musume
bryan
47
7.3k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Between Models and Reality
mayunak
4
390
Transcript
The future of tbls and “Documentation as Code" খࢁ݈Ұ /
GMO PEPABO inc. 2023.6.24 PHPΧϯϑΝϨϯεԬ2023 1
ࣗݾհ ٕज़෦ɹٕज़ج൫νʔϜ 2018 த్ೖࣾ খࢁ ݈Ұ Ken’ichiro Oyama গ࣮͠༻తͰখ͞ͳOSSΛॻ͘ͷ͕झຯɻ •
GitHub : k1LoW • Twitter : @k1LoW 2
GMOϖύϘʹ͍ͭͯ 3 https://pepabo.com
4 ͡Ίʹ
5 ͡Ίʹ • tblsΛத৺ʹൃද͢Δͷ࣮ʹ5ͿΓ2ճͰ͢ • ຊηογϣϯͰtblsͱDocumentation as Codeʹ͍ͭͯ͠·͢ • tblsͱDocumentation
as Codeʹ͍ͭͯͷ5ͷूେʹͳΓ·͢ • օ͞ΜʹtblsͷΛฉ͖ͳ͕ΒɺͬͱநతͳʮυΩϡϝϯςʔγϣ ϯͷͨΊͷπʔϧʯΛΠϝʔδͯ͠΄͍͠Ͱ͢ • tblsʹݶͬͨͰͳ͍ͱࢲ৴͍ͯ͡·͢
6
7 About tbls tbls is a CI-Friendly tool for document
a database, written in Go. • CIϑϨϯυϦͳσʔλϕʔευΩϡϝϯτੜπʔϧ • ൃԻ /ˈteɪbl ̩z/ʢςʔϒϧεʣ • PostgreSQL, MySQLͳͲͷRDBMS͚ͩͰͳ͘ɺBigQuery Amazon DynamoDB, Cloud Spannerͱ͍༷ͬͨʑͳσʔλιʔ εʹରԠ • υΩϡϝϯτΛॆ࣮ͤ͞Δػೳͱͯ͠ϝλσʔλΛΞϊςʔ γϣϯ͢Δ͜ͱ͕Մೳ • ςʔϒϧɺΧϥϜͳͲͷίϝϯτ༩͚ͩͰͳ͘ϥϕ ϧɺϦϨʔγϣϯγοϓͳͲ
8 About tbls tbls doc • σʔλϕʔεʹଓͯ͠σʔλϕʔευΩϡϝϯτΛੜ͢ΔαϒίϚϯυ DEMO
9 About tbls ϝτϦΫεͰݟΔtbls • 20185݄17ʹ։ൃ։࢝ɻ20236݄23࣌Ͱ1,863ʢ5ϱ1ϲ݄6ʣ • 14σʔλιʔεαϙʔτ • 1,816ίϛοτɻ392ϓϧϦΫΤετ
• k1LoW୯ಠͰ1,146ίϛοτɺ303ϓϧϦΫΤετ • 170ϦϦʔε • όʔδϣϯv1.68.0 • ίʔυ9,690ߦ / ςετίʔυ3,958ߦ • k1LoW୯ಠͰ691,018 ++ / 603,716 -- • 2,477ελʔ
10 Documentation as Code
%PDVNFOUBUJPOBT$PEF %PDTBT$PEF SFGFSTUPBQIJMPTPQIZUIBUZPV TIPVMECFXSJUJOHEPDVNFOUBUJPOXJUIUIFTBNFUPPMTBTDPEF *TTVF5SBDLFST 7FSTJPO$POUSPM (JU 1MBJO5FYU.BSLVQ .BSLEPXO
SF4USVDUVSFE5FYU "TDJJEPD $PEF3FWJFXT "VUPNBUFE5FTUT 5IJTNFBOTGPMMPXJOHUIFTBNFXPSL fl PXTBTEFWFMPQNFOUUFBNT BOECFJOH JOUFHSBUFEJOUIFQSPEVDUUFBN*UFOBCMFTBDVMUVSFXIFSFXSJUFSTBOE EFWFMPQFSTCPUIGFFMPXOFSTIJQPGEPDVNFOUBUJPO BOEXPSLUPHFUIFSUP NBLFJUBTHPPEBTQPTTJCMF ɹΑΓൈਮɹ Documentation as Code
12 Documentation as Code Documentation as Codeͷݪ • ʮDocumentation as
Codeͱɺίʔυͱಉ͡πʔϧΛͬͯυΩϡϝϯςʔγϣϯΛॻ͖͘ ͩͱ͍͏ֶʯby Write the DocsίϛϡχςΟ • Issue Trackers • Version Control (Git) • Plain Text Markup (Markdown, reStructuredText, Asciidoc) • Code Reviews • Automated Tests • γεςϜͷ։ൃͷۙ͘ʹυΩϡϝϯτ࡞ͷΈΛஔ͘͜ͱͰɺ։ൃαΠΫϧͷதʹυΩϡϝ ϯτ࡞Λ౷߹͠ɺγεςϜͱυΩϡϝϯτͷဃΛখ͘͞͠Α͏ͱ͍ͯ͠Δ͜ͱ͕Θ͔Δ
13 Documentation as Code Documentation as Codeͷ՝
14 Documentation as Code γεςϜͱυΩϡϝϯτͷဃ • ʮγεςϜͱυΩϡϝϯτͷဃΛখ͘͞ʯ͚ͩͰ࣌ͱ࣮ͯ͠༻ʹݫ͍͠ • ဃ͕ʢগ͠Ͱʣ͋ΔͱԿ͕ਖ਼͍͔͕͠Θ͔Βͳ͘ͳΔ •
ਓγεςϜͱͷဃΛൃݟ͢Δͱ͏ͦͷυΩϡϝϯτΛ৴༻͠ͳ͘ͳͬͯ͠·͏ • ׂΕ૭ཧ • υΩϡϝϯτ͕ߋ৽͞ΕΕɺਓߋ৽ʹ͍ͭͯਖ਼͍͔͠Ͳ͏͔ͷϨϏϡʔͰ͖Δɻ͔͠ ͠ɺγεςϜ։ൃ͕ਐΜͰऔΓ͞Εͯ͠·ͬͨυΩϡϝϯτͷϨϏϡʔͷλΠϛϯά͕ͳ͍ɻ
Documentation as Code+ 15
16 Documentation as Code+ ࣮༻తͳʢγεςϜͱဃ͠ͳ͍ͨΊͷʣDocumentation as Code • ͦͦʮγεςϜͱυΩϡϝϯτͷဃʯͳͥى͜Δͷ͔ •
γεςϜ࣌ؒͷܦաʹΑͬͯมԽ͢Δ͕ɺυΩϡϝϯτͦͷมԽʹै͠ͳ͍͔Β ʢ͘͠ै͢ΔʹλΠϜϥά͕ൃੜ͢Δ͔Βʣ • ࣌ؒܦաʹ͑ΔͨΊʹɺɺγεςϜΛͦͷ··υΩϡϝϯτʢ͘͠υΩϡϝϯτͷ ܗʣʹมͰ͖Εྑ͍ • ͜͜ͷϞσϧԽʹڵຯ͋Δํͪ͜Βˠ • ʮγεςϜΛͦͷ··ʯ ʹγεςϜ͔ΒߏԽσʔλΛநग़͢Δ https://speakerdeck.com/k1low/web-system-architecture-number-8
17 Documentation as Code+ γεςϜͱυΩϡϝϯτͷဃΛθϩʹ͢Δ • γεςϜ͔ΒߏԽσʔλΛநग़ͯ͠ɺͦͷߏԽσʔλ͔ΒυΩϡϝϯτΛੜ͢Δ • Α͘ΒΕ͍ͯΔͷͱͯ͠PHPDocgodocͱ͍ͬͨιʔείʔυ͔ΒυΩϡϝϯτΛ ੜ͢ΔΞϓϩʔνʢιʔείʔυγεςϜͷࣸ૾ͱ͍͑Δʣ
• ߏԽσʔλ͔ΒγεςϜͱυΩϡϝϯτͷ྆ํΛੜ͢Δ • OpenAPI • Protocol Buffersʢprotocʣ • γεςϜͱυΩϡϝϯτͷဃΛθϩʹ͢ΔDocumentation as CodeΛຊൃදʢ͚ͩʣͰ Documentation as Code+ͱݺͿ
18 Documentation as Code+ tbls։ൃͷ͖͔͚ͬ • ࣌ΞϧϑΝஈ֊ͷϓϩδΣΫτͰઈࢍ։ൃதʹɺϓϩμΫτΦʔφʔ͕SQLΛॻ͘ਓͰʮσʔ λϕʔεఆٛॻͲ͜ʹ͋Γ·͔͢ʁʯͱฉ͔Εͯ͠·ͬͨ • σʔλϕʔεεΩʔϚʑมΘ͍ͬͯΔΑ͏ͳϑΣʔζͰใ͕ϚΠάϨʔγϣϯϑΝΠ
ϧͱίϛοτϩάʹ͔͠ͳ͔ͬͨ • γεςϜʢσʔλϕʔεʣͱυΩϡϝϯτͷ ဃΛθϩʹ͢Δπʔϧͱͯ͠tblsͷ։ൃΛ ͡Ίͨ https://speakerdeck.com/k1low/pepabo-tech-conference-number-16
19 Documentation as Code+ Documentation as Code+ͷࢹͰ࡞͞Εͨtbls • tblsߏԽσʔλʢσʔλϕʔεʣ͔ΒυΩϡϝϯτΛੜ͢ΔΞϓϩʔν •
CIͰυΩϡϝϯτΛੜ͢Δ͜ͱͰܧଓతʹγεςϜͱͷဃΛθϩʹ͢Δ • ʮContinuous Documentationʯ • CIϑϨϯυϦ=ϫϯόΠφϦͰ؆୯ʹΠϯετʔϧͰ͖Δ https://speakerdeck.com/k1low/pepabo-tech-conference-number-16
20 Documentation as Code+ k1LoW/setup-tbls • tblsΛηοτΞοϓ͢ΔAction for GitHub Actions
• https://github.com/k1LoW/setup-tbls • ΑΓCIϑϨϯυϦʹ
21 Documentation as Code+ Documentation as Code+Λ αϙʔτ͢ΔtblsαϒίϚϯυ
22 Documentation as Code+ tbls diff • ࠩΛ֬ೝ͢ΔίϚϯυɻ • σʔλϕʔε-υΩϡϝϯτɺσʔλϕʔε-σʔλϕʔεͲͪΒՄೳ
23 Documentation as Code+ tbls coverage • ιʔείʔυͱಉ͡Α͏ʹυΩϡϝϯτͷΧόϨοδʢςʔϒϧΧϥϜͷίϝϯτͷຒ·Γ ʣΛ֬ೝͰ͖Δ
24 Documentation as Code+ tbls lint • σʔλϕʔευΩϡϝϯτʢͱσʔλϕʔεʣͷͨΊͷLinter • ίϝϯτͷ༗ແؔ࿈ͷ༗ແɺςʔϒϧ͝ͱͷΧϥϜͳͲΛνΣοΫରʹͰ͖Δɻ
͜͜·Ͱ͕ɺ ࣌ߟ͍͑ͯͨ Documentation as Code 25
26 Documentation as Code+ Documentation as Code+ͷ՝
27 Documentation as Code+ ਖ਼͍͠ɻ͕ɺʹཱͨͳ͍ • ਖ਼͍͠σʔλϕʔευΩϡϝϯτͰ͋Δͱ͍͏҆৺ײಘΒΕͨ • tblsద༻ҎલͰಘΒΕͳ͔ͬͨײ֮Ͱ͋Δ͜ͱؒҧ͍ͳ͍ •
σʔλϕʔεͷςʔϒϧΧϥϜͷίϝϯτɺϦϨʔγϣϯ͕උ͞Ε͍ͯΔυΩϡϝϯτ͕͋ Δ͜ͱͰҰఆͷʹཱ͕ͭɺͦΕҎ্ͰͦΕҎԼͰͳ͍ • γεςϜͷ։ൃϥΠϑαΠΫϧʹ͓͍ͯʹཱͭλΠϛϯά͕গͳ͍ • ·ͩ·ͩυΩϡϝϯτΛ׆༻Ͱ͖͍ͯΔͱݴ͑ͳ͍ͷͰʁ
28 Documentaion as Code++
29 Documentation as Code++ υΩϡϝϯτʢʹσʔλʣͷ׆༻ൣғΛ͛Δ • γεςϜͷ։ൃϥΠϑαΠΫϧʹ͓͍ͯʮσʔλϕʔεΛ༻͢ΔλΠϛϯάʯʮσʔλϕʔε Λͬͯߟ͑ΔλΠϛϯάʯଟ͋͘Δͣ • σʔλϕʔεʮυΩϡϝϯτʯ͚ͩͰΓͳ͍ͷ͔͠Εͳ͍ɻ
• γεςϜ͔Βநग़ͨ͠ใҎ֎ͷใ༩͢Δɻ • ʮσʔλϕʔευΩϡϝϯτʯͱ͍͏ܗ͕ࣜϚον͍ͯ͠ͳ͍ͷ͔͠Εͳ͍ɻ • ਖ਼͍͠σʔλϕʔευΩϡϝϯτਖ਼͍͠σʔλͰ͋Δͱ͍͑ΔͷͰσʔλ׆༻ͷ؍͔ ΒΛ૿͢ɻ
30 Documentation as Code++ γεςϜͷཧղΛॿ͚Δ υΩϡϝϯςʔγϣϯ
ιϑτΣΞΞʔΩςΫνϟͷଟ͘ͷஶऀ͕ɺͨͬͨͭͷϞσϧΛͬͯιϑτΣΞ ΞʔΩςΫνϟΛهड़͢Δ͜ͱશ͘ෆՄೳͩͱࢦఠ͍ͯ͠ΔɻͦͷΑ͏ͳϞσϧɺ ཧղ͠ʹ্͍͘ɺΞʔΩςΫνϟͰ࠷ॏཁͳػೳΛ໌֬ʹಛఆͰ͖ΔݟࠐΈ΄ͱΜ Ͳͳ͍ɻʢதུʣ ϏϡʔʢWJFXʣͱɺҰਓҎ্ͷεςʔΫϗϧμ๊͕͍͍ͯΔͭ·ͨͦΕҎ্ͷؔ ৺ࣄʹɺΞʔΩςΫνϟ͕Ͳ͏ରԠ͢Δ͔Λࣔ͢ɺΞʔΩςΫνϟͷͭҎ্ͷߏతଆ ໘Λදݱͨ͠ͷͰ͋Δɻ χοΫɾϩβϯεΩ ΦΣϯɾοζιϑτΣΞγεςϜΞʔΩςΫνϟߏஙͷݪཧୈ൛
+BQBOFTF&EJUJPO ΑΓൈਮɹ
32 Documentation as Code++ γεςϜͷཧղΛॿ͚ΔυΩϡϝϯςʔγϣϯ • ʮؔ৺ࣄʹ߹ΘͤͯΞʔΩςΫνϟΛ1ͭҎ্ͷଆ໘ʢΓޱʣͰදݱ͢Δʯ͜ͷߟ͑ํઃܭ ͚ͩͰͳ͘υΩϡϝϯςʔγϣϯʹͯΊΔ͜ͱ͕Ͱ͖Δ • γεςϜʹର͢Δؔ৺ࣄʹ߹ΘͤͯඞཁͳγεςϜͷཁૉ͚ͩΛ·ͱΊͯʮϏϡʔʢϏϡʔϙΠ
ϯτʣʯͱ͠υΩϡϝϯτԽ͢ΔʢʮϢʔβ͔ΒͷHTTPϦΫΤετʯʮϚΠΫϩαʔϏε୯ ҐʯͳͲʣ • ؔ৺ࣄ…γεςϜΛཧղ͢Δ্Ͱҙຯ ͷ͋Δάϧʔϐϯά https://speakerdeck.com/k1low/phperkaigi-2021
33 Documentation as Code++ labels: / comments[].labels: / comments[].columnLabels: •
εΩʔϚςʔϒϧΧϥϜʹϥϕϧΛ༩Ͱ͖Δ • ϥϕϧBigQueryʹػೳͱͯ͠ଘࡏ͍ͯ͠Δ͕tblsΛ͏͜ͱͰ͋ΒΏΔσʔλϕʔεͷ υΩϡϝϯτʹϥϕϧΛ༩Ͱ͖Δ • ϥϕϧใͦͷ··υΩϡϝϯτʹͦͷ··ө͞ΕΔ • ʮηϯγςΟϒใ͕ೖΔΧϥϜʹ `sesitive` ͱ͍͏ϥϕϧΛ༩͠ɺͦͷϥϕϧ͕͋ΔΧϥϜ ͷใʹϚεΫΛ͢ΔɻӾཡݖݶΛߜΔʯ
34 Documentation as Code++ viewpoints: • σʔλϕʔευΩϡϝϯτʹ͓͚ΔʮϏϡʔϙΠϯτʯΛ ࣮ݱͨ͠ػೳ • ؔ৺ࣄʹ߹Θͤͯςʔϒϧ໊ͱϥϕϧͰؔ࿈ςʔϒϧΛߜ
ΓࠐΈɺͦͷؔ৺ࣄΛઆ໌͢ΔυΩϡϝϯτΛ࡞Ͱ͖Δ • άϧʔϐϯάՄೳ
35 Documentation as Code++ ߏԽσʔλͷ׆༻
36 Documentation as Code++ schema.json • ߏԽσʔλΛυΩϡϝϯτʹ͚͔ͩ͠Θͳ͍ͱ͍͏ͷ͍ͬͨͳ͍ • σʔλ׆༻ͷൣғΛ͛ΔͨΊʹɺtbls͕σʔλϕʔεεΩʔϚͱ.tbls.ymlΛ༻ͯ͠υΩϡϝϯ τΛੜ͢ΔͨΊʹ෦Ͱߏங͍ͯ͠ΔߏԽσʔλʢschema.jsonʣΛग़ྗ͢ΔΑ͏ʹ͢Δ
• ͱͱ tbls out -t json Ͱग़ྗͰ͖Δ͕ɺv1.57.0͔Βtbls docͰσϑΥϧτͰग़ྗ͢Δ Α͏ʹͨ͠ • σϑΥϧτͰग़ྗ͞Ε͍ͯΕग़ྗ͞Ε͍ͯΔલఏͰ࣮͕Ͱ͖Δ • schema.jsontblsʹͱͬͯMySQLPostgreSQLͱಉ͡σʔλιʔεͳͷͰɺ json:// εΩʔϜ github:// εΩʔϜΛͬͯࢦఆ͢Δ͜ͱͰɺmysql:// pg:// ͱಉ༷ʹ༻Ͱ͖Δ
37 Documentation as Code++ tbls ls • σʔλϕʔεͷςʔϒϧҰཡΧϥϜҰཡΛग़ྗ͢ΔίϚϯυʢઈࢍ֦ுதʣ • schema.jsonΛҰ࣍ใͱͯ͠༻͢Δ͜ͱͰɺ࣮ࡍͷσʔλϕʔεʹଓ͢Δ͜ͱͳ͘༻Մ
ೳ DEMO
38 Documentation as Code++ ֎෦αϒίϚϯυͷߏԽσʔλͷड͚͠ • ghʢGitHub CLIʣίϚϯυgitίϚϯυɺkubectlίϚϯυͷΑ͏ͳαϒίϚϯυ֦ுػೳ • ࣮tblsʹ͋ΔϓϥάΠϯػߏ
• σʔλϕʔεͷղੳ.tbls.ymlͷใऔಘtbls͕ߦ͍ɺαϒίϚϯυʹղੳ݁Ռͷ schema.json͕ڥมΛ௨ͯ͡ΔΈ • .tbls.ymlͰهࡌͨ͠ίϝϯτϥϕϧΛ ٯʹBitQueryʹઃఆ͢Δtbls-metaͳͲ͕͋Δ • https://github.com/k1LoW/tbls-meta https://speakerdeck.com/k1low/pepabohatena
39 Documentation as Code++ େنݴޠϞσϧʢLLMʣΛ ༻ͨ͠͞ΒͳΔ֦ு
40 Documentation as Code++ ਖ਼͘͠ඞཁͳσʔλΛLLMʹͤΔͱ͍͏ϝϦοτ • tblsͰσʔλϕʔευΩϡϝϯτਖ਼͍͜͠ͱ͕͔͍ͬͯΔɻίϯςΩετใଟ࣋ͬͯ͘ ͍Δɻ • ίϝϯτؔ࿈ɺϏϡʔϙΠϯτͳͲ
• ʮจষ͕༩͑ΒΕͨ࣌ɺ࣍ͷจষΛਪଌ͢Δʯͱ͍͏LLM͕ಘҙͱ͢ΔʹͯΊΔ • ʮίϝϯτ͖ͷਖ਼͍͠σʔλϕʔεεΩʔϚʯͱʮ࣭ʯΛ༩͑ͯLLMʹਪଌͤ͞Δ • ۩ମతʹɺσʔλϕʔεεΩʔϚͱίϯςΩετʹԊͬͨΫΤϦΛ࡞ͤ͞Δ͜ͱ͕Մೳ
• schema.json͔Βʮਖ਼͍͠ίϯςΩετΛ࣋ͬͨσʔλϕʔεεΩʔϚʢίϝϯτ͖DDLʣʯ Λ࡞ͯ͠ɺ෦తʹϓϩϯϓτʹ༻͢Δ 41 Documentation as Code++ tbls ask (
PoC: https://github.com/k1LoW/tbls-ask ) DEMO
42 Documentation as Code++ υΩϡϝϯτ׆༻ͷΠϯλʔϑΣʔεΛ͛Δ • schema.jsonΛܦ༝͢Δ͜ͱͰʢ࣮σʔλϕʔεʹଓ͠ͳͯ͘ʣܧଓతʹਖ਼͍͠ใΛσʔ λΛऩू͢Δ͜ͱ͕Ͱ͖Δ • LLMʹΑͬͯʮਖ਼͍͠υΩϡϝϯτʢߏԽσʔλʣΛͬͨਪଌʯͱ͍͏Ξϓϩʔν
• ྫ͑ʮνϟοτϘοτʯͱ͍͏υΩϡϝϯτ׆༻ͷΠϯλʔϑΣʔε • ʮ@tbls-bot query minneͷྦྷੵྲྀ௨ֹͷ߹ܭʯʮSELECT * ʙʯ͕༰қʹ࣮ݱͰ͖Δɻ • ͞ΒʹΫΤϦͷ࣮ߦΛڐ͢ͷͰ͋Ε • ʮ@tbls-bot minneͷྦྷੵྲྀ௨ֹͷ߹ܭΛڭ͑ͯʯʮ͍ɻ 20236݄15࣌Ͱͷྦྷܭ ྲྀ௨ֹ߹ܭ1,000,00*,***,***Ͱ͢ɻ࣮ߦͨ͠ΫΤϦXXXͰ͢ɻʯ͕࣮ݱͰ͖Δɻ
43 Documentation as Code++ ͞ΒʹٯͷΞϓϩʔν
44 Documentation as Code++ ࣮σʔλΛ༻ͨ͠υΩϡϝϯςʔγϣϯͷิ • ʮςʔϒϧͷϨίʔυͷαϯϓϧʯΛ༩͑ͯLLMʹʮςʔϒϧͱΧϥϜͷઆ໌ʯΛਪଌͤ͞Δ • ࣮σʔλͰυΩϡϝϯςʔγϣϯΛͯ͠͠·͓͏ͱ͍͏tblsͱٯͷΞϓϩʔν •
By @pyama86 • ϖύϘࣾͰଟ͘ͷChatGPTΞϓϦέʔγϣϯΛఏڙ͖͔ͯͨ͠Βͦ͜ͷൃ • https://ten-snapon.com/archives/2908
͓ΘΓʹ 45
46 https://star-history.com/blog/star-history-monthly-pick-202302 ʢ͜ͷϓϩδΣΫτ5Ҏ্લ͔ΒΦʔϓϯιʔεԽ͞Ε͍ͯΔ ͕ɺࠓͷॳΊʹͷ͕ٸ૿ͨ͠ɻͦͷؒʹԿ͕͋ͬͨͷ͔ɺ Ͳͳ͔͓ͨΘ͔ΓʹͳΓ·͔͢ʁʣ The project has been open-sourced
for 5+ years, but the number of stars had a spike earlier this year. Anyone has any idea what happened in between?
47 ͓ΘΓʹ ͓ΘΓʹ • ͑ͱͯ͠ʮΘ͔Γ·ͤΜɻ͔͠͠ɺDocumentation as Codeʹ͍ͭͯߟ͑ͳ͕Βɺܧଓత ʹ։ൃΛ͖ͯ͠·ͨ͠ʯ • Documentation
as CodeͷݪʮυΩϡϝϯτΛίʔυͱಉ͡Α͏ʹӡ༻͍ͯ͘͠ʯ • ͦͯͦ͠ͷઌΛߟ࣮͖͑ͯͨ͠ɻ • ࠓ࣌ͷࢲͷDocumentation as Codeͷείʔϓʮਖ਼͍͠υΩϡϝϯτਖ਼͍͠σʔλͰ͋ ΓɺυΩϡϝϯτͷൣᙝΛӽ͑ྑ࣭ͳೖྗʹͳΔʯ
Thank You! Thank You! 48