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.5k
Design and implementation of "Markdown to Google Slides" / phpconfuk 2025
k1low
1
970
analysis パッケージの仕組みの上でMulti linter with configを実現する / Go Conference 2025
k1low
1
800
Flight recorder at the application layer (NOT the FlightRecoder newly added at Go 1.25) / Fukuoka.go #22
k1low
0
180
ソフトウェア開発におけるインターフェイスという考え方 / PHPerKaigi 2025
k1low
12
6.3k
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
AI、CDK と協働する Full TypeScript アプリケーション開発 / Full TypeScript Application with AI and CDK
geekplus_tech
2
310
Genie Ontologyは銀の弾丸かを考える / Is Genie Ontology a Silver Bullet?
nttcom
0
370
あなたの『Site』はどこですか? — xREという考え方
miyamu
0
1.2k
美しいコードを書くためにF#を学んでみた話
yud0uhu
1
450
なぜ私たちのSREプラクティスはなかなか機能しないのか 〜システムより先に組織を見る〜 / Why our SRE practices aren't really working
vtryo
4
3.9k
生成AI×AWS CDK×AWS FISで"振り返れる"ミニGameDayをつくろう
yoshimi0227
1
280
Alphaモジュール使っていいのかい!?いけないのかい!?どっちなんだいっ!?
watany
1
250
LLMやAIエージェントをソフトウェアに組み込むプラクティス
shibuiwilliam
2
400
大量データに対しても、生成AIを用いてリーズナブルにデータ加工をしたい!Databricksのai_queryについて調べてみた
kamoshika
1
210
しぶいSRE: サーバから見えない障害にどう向き合うか。ラストワンマイルのデバッグ実践 / Shibui SRE
kanny
13
6.3k
CDKで書くECSのベストプラクティス、 改めて考え直す2026 #cdkconf2026
makies
2
690
10年目を迎えた「ABEMA」がどのように AI 活用を推進して、AI 駆動開発にシフトしているのか / How ABEMA, entering its 10th year, is promoting the use of AI and shifting toward AI-driven development
miyukki
0
220
Featured
See All Featured
Design in an AI World
tapps
1
260
Raft: Consensus for Rubyists
vanstee
141
7.6k
Evolving SEO for Evolving Search Engines
ryanjones
0
240
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
72
40k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
55k
sira's awesome portfolio website redesign presentation
elsirapls
0
300
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
770
Facilitating Awesome Meetings
lara
57
7k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
350
Building a Scalable Design System with Sketch
lauravandoore
463
34k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
420
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
3.8k
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