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
研究の再現性を高める 仕組みをGoでつくる / Creating a system to im...
Search
linyows
October 23, 2024
Technology
1
190
研究の再現性を高める 仕組みをGoでつくる / Creating a system to improve the reproducibility of research using go
Oct 23, 2024 Fukuoka.go#20 での発表資料です。
linyows
October 23, 2024
Tweet
Share
More Decks by linyows
See All by linyows
研究開発と実装OSSと プロダクトの好循環 / A virtuous cycle of research and development implementation OSS and products
linyows
1
190
コードジェネレーターで 効率的な開発をする / Efficient development with code generators
linyows
0
180
研究を支える拡張性の高い ワークフローツールの提案 / Proposal of highly expandable workflow tools to support research
linyows
0
360
非コンテナ環境において宣言的Deploymentを手軽に実現する / Declarative deployment in non-container environments
linyows
0
120
メール送信サーバの集約における透過型SMTP プロキシの定量評価 / Quantitative Evaluation of Transparent SMTP Proxy in Email Sending Server Aggregation
linyows
0
780
透過型SMTPプロキシによる送信メールの可観測性向上: Update Edition / Improved observability of outgoing emails with transparent smtp proxy: Update edition
linyows
2
360
奥が深いメールのシステム / The depth of Email system
linyows
4
540
IaCにおけるテスト考察 / Tests in IaC
linyows
2
600
リバースエンジニアリングとGoでSlackの認知負荷を下げる / Reducing cognitive load in Slack with Reverse-engineering and Go
linyows
2
370
Other Decks in Technology
See All in Technology
Engineering Managementのグローバルトレンド #emoasis / Engineering Management Global Trend
kyonmm
PRO
6
990
アプリケーション固有の「ロジックの脆弱性」を防ぐ開発者のためのセキュリティ観点
flatt_security
32
12k
Amazon Q Developer 他⽣成AIと⽐較してみた
takano0131
1
120
Symfony in 2025: Scaling to 0
fabpot
2
200
3/26 クラウド食堂LT #2 GenU案件を通して学んだ教訓 登壇資料
ymae
1
210
LINEギフトのLINEミニアプリアクセシビリティ改善事例
lycorptech_jp
PRO
0
250
非エンジニアにも伝えるメールセキュリティ / Email security for non-engineers
ykanoh
13
4k
20250328_OpenAI製DeepResearchは既に一種のAGIだと思う話
doradora09
PRO
0
150
IAMのマニアックな話 2025 ~40分バージョン ~
nrinetcom
PRO
8
930
RAGの基礎から実践運用まで:AWS BedrockとLangfuseで実現する構築・監視・評価
sonoda_mj
0
440
DevinはクラウドエンジニアAIになれるのか!? 実践的なガードレール設計/devin-can-become-a-cloud-engineer-ai-practical-guardrail-design
tomoki10
3
1.4k
ソフトウェア開発現代史: なぜ日本のソフトウェア開発は「滝」なのか?製造業の成功体験とのギャップ #jassttokyo
takabow
2
1.6k
Featured
See All Featured
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
17
1.1k
Building Adaptive Systems
keathley
41
2.5k
How GitHub (no longer) Works
holman
314
140k
Making Projects Easy
brettharned
116
6.1k
How to Think Like a Performance Engineer
csswizardry
22
1.5k
Fireside Chat
paigeccino
37
3.3k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
30
2.3k
A designer walks into a library…
pauljervisheath
205
24k
The Cost Of JavaScript in 2023
addyosmani
48
7.6k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
A Philosophy of Restraint
colly
203
16k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Transcript
Fukuoka.go #20 Tomohisa Oda / Oct 23, 2024 ݚڀͷ࠶ݱੑΛߴΊΔ ΈΛ(PͰͭ͘Δ
Fukuoka.go #20 @linyows Blog: tomohisaoda.com Affiliation: Sakura internet, Inc. ɹɹɹɹɹɹCognano,
Inc.
Fukuoka.go #20 ๏ ݚڀͰϝʔϧૹ৴ʹ͓͚ΔूͱϝʔϧΩϡʔ͕ू͞ΕΔ͜ͱͰΛճආ͢ΔͨΊ ʹಁաܕ4.51ϓϩΩγΛఏҊ͍ͯ͠Δ ๏ ಁաܕ4.51ϓϩΩγͷੑೳධՁͷͨΊʹطଘख๏Ͱ͋Δ1PTU fi YΛ͍͔ͬͯͭ͘ͷൺֱ ࣮ݧΛߦ͍ͬͯΔ
๏ ࣮ݧͰɺͷ࠶ݱɺϝʔϧϨΠςϯγʔϦιʔεফඅੳͳͲΛߦ͍ͬͯΔ ๏ ֶज़ݚڀʹ͓͍ͯ࠶ݱੑ৴པੑಁ໌ੑͷͨΊʹͱͯॏཁɺͱ͍͏ͷࣗ໌͕ͩखܰ ʹͲ͏͢Ε͍͍ͱ͍͏ͷͳ͍ ๏ ಛʹใֶ͋Δ͍ιϑτΣΞֶ࣮ݧՊֶʹൺͯ࠶ݱੑΛ୲อ͍͢͠ ͡Ίʹ
Fukuoka.go #20 ιϑτΤΞͷ࣮ݧΛ୭Ͱ࠶ݱͰ͖ΔΑ͏ʹ͍ͨ͠
Fukuoka.go #20 ๏ Ұ࿈ͷ࣮ݧΛϫʔΫϑϩʔͱఆٛ͢Δ ๏ ྫ͑ZBNMͳͲਓ͕ಡΈ͍͢ܗࣜͰϫʔΫϑϩʔΛϑΝΠϧʹ هड़͢Δʢόʔδϣϯཧʣ ๏ ͦͷఆٛϑΝΠϧ͔ΒϫʔΫϑϩʔͷ࣮ߦ͕؆୯ʹߦ͑Δʢ࣮ݧ ͷͨΊͷڥߏஙείʔϓ֎ʣ
๏ ϓϩάϥϛϯάݴޠͰ֦ு͕Ͱ͖ɺൺֱతʹϝϯςָ͕ ཁ݅
Fukuoka.go #20 ๏ (/6.BLF 5BTL fi MFλεΫ࣮ߦܥ ίϚϯυґଘ͔ͭਖ਼͘͠ಈ͘อূ͕ͳ͍ ๏ /O
.BLF FYJOUFHSPNBU ϫʔΫϑϩʔࣗಈԽ4BB4ܥ ఆٛϑΝΠϧͷΤΫεϙʔτͰ͖Δ͕αʔϏεґଘͰෑډ͕ߴ͍ ๏ "OTJCMF*B$ܥ ࣮ݧڥͷߏஙʹඞཁ͕࣮ͩݧͷ༰Λఆٛ͢Δʹείʔϓ͕ҟͳΔ ๏ (SBEMF "QBDIF"OU "QBDIF.BWFOϏϧυܥ ఆٛϑΝΠϧ͕9.-ͩͬͨΓ͢Δɺͦͯ͠KBWBWBʜ طଘπʔϧͷௐࠪ
Fukuoka.go #20 ๏ "SUJMMFSZ (BUMJOH "QBDIF+.BUFSෛՙςετܥ +BWBͰهड़ͨ͠γφϦΦͷ࣮ߦͰ͖Δ ๏ "QBDIF"JS fl
PXσʔλύΠϓϥΠϯܥ ෳͷίϯϙʔωϯτ͕ඞཁͰखؒͩ͠తͱҟͳΔ ๏ +FOLJOT$*$%ܥ ͜ΕఆϢʔεέʔε͕ҟͳΔ ๏ 1PTUNBO *OTPNOJB 3VOOγφϦΦςετܥ લ̎ͭ+4Ͱهड़͢Δඞཁ͕͋Δ͕ɺSVOOZBNMͰهड़Ͱ͖ͯҰ൪༗ྗ طଘπʔϧͷௐࠪ
Fukuoka.go #20 ͦͦʜ طଘͷϫʔΫϑϩʔࣗಈԽπʔϧ܈Ͱϝʔϧૹ৴Λఆͯ͠ ͍Δͷ͕ͳ͍ 😭
Fukuoka.go #20 ๏ ҟͳΔૹ৴ݩɺҟͳΔૹ৴ઌʹରͯ͠ಉ࣌ʹϝʔϧΛ܁Γฦ ͠ૹ৴͢Δ ๏ ड৴ͨ͠ϝʔϧͷϔομʔΛύʔεͯ͠ϨΠςϯγʔΛूܭ ͢Δ ͲΜͳ࣮ݧΛ͍ͯ͠Δͷ͔
Fukuoka.go #20 'JHVSF
Fukuoka.go #20 ๏ ϫʔΫϑϩʔࣗಈԽπʔϧͰͷ࣮ݧఘΊɺ(PͰ࣮ݧΛ TDSJQUͱͯ͠هड़ͯ͠ݚڀਐΊͨ ๏ ݚڀͷՌ݄ͷ*054Ͱൃද༧ఆ ๏ ҰํͰɺͦͷίʔυΛݟͯԿΛ͍ͬͯΔͷ͔Λ͙͢ʹཧղ Ͱ͖Δͷ(PQIFSͷΈͩΖ͏ʜ
ͦ͏͜͏͍ͯ͠Δ͏ͪʹకΊΓ͕ʜ
Fukuoka.go #20 ιϑτΤΞͷ࣮ݧΛ୭Ͱ࠶ݱͰ͖ΔΑ͏ʹ͢Δʂ
Fukuoka.go #20 ๏ ͢Ͱʹ͋ΔϓϩμΫτʹίϛοτ͢Δͷ͍͍͕ࣗͷཁ݅ Λຬͨͨ͢Ίʹझຯͱͯࣗ͠Ͱ࡞Δͷͩ ๏ ࣗͷ෦ͷେ͖͞ʹͽͬͨΓ߹͏୨Λ࡞ΔΑ͏ͳͷ ๏ ͱ͍͏͜ͱͰϫʔΫϑϩʔࣗಈԽπʔϧΛ࡞Γ࢝Ίͨ ͳ͚Ε࡞Ζ͏ɺ͋ͬͯ࡞Ζ͏
Fukuoka.go #20 ๏ Ұ࿈ͷ࣮ݧΛϫʔΫϑϩʔͱఆٛ͢Δ ๏ ྫ͑ZBNMͳͲਓ͕ಡΈ͍͢ܗࣜͰϫʔΫϑϩʔΛϑΝΠϧʹ هड़͢Δʢόʔδϣϯཧʣ ๏ ͦͷఆٛϑΝΠϧ͔ΒϫʔΫϑϩʔͷ࣮ߦ͕؆୯ʹߦ͑Δʢ࣮ݧ ͷͨΊͷڥߏஙείʔϓ֎ʣ
๏ ϓϩάϥϛϯάݴޠͰ֦ு͕Ͱ͖ɺൺֱతʹϝϯςָ͕ ཁ݅ʢ࠶ܝʣ ίί͕ॏཁ
Fukuoka.go #20 ๏ (PͰϓϥάΠϯԽ͢ΔʹͲ͏͖͔͢ͷߟΛࡢͷ(P$POJO,ZPUPͰൃදͨ͠ ๏ ඪ४ͷQMVHJOύοέʔδΛ͏ͱɺຊମͱϓϥάΠϯΛಉ͡πʔϧνΣΠϯͰϏϧυ ͠ͳ͚ΕͳΒͳ͍ ๏ ͭ·Γ$(0Λ༗ޮʹ͠HDDͷόʔδϣϯؾʹ͢Δඞཁ͕͋Δ ๏
ຊମͱϓϥάΠϯΛࣗલͰཧ͢ΔલఏͰͳ͍ͱݫ͍͠ ๏ ࠓճ31$ʹΑΔϓϥάΠϯػߏͰ͋ΔIBTIJDPSQHPQMVHJOΛ༻͢Δ ๏ ཧతʹQSPUPCVGΛͬͯଞͷݴޠͰϓϥάΠϯΛ࣮͢Δ͜ͱͰ͖ΔͩΖ͏ ֦ுੑͷ࣮ݱ
Fukuoka.go #20 'JHVSF
Fukuoka.go #20 ๏ ϫʔΫϑϩʔʹ͓͚Δશͯͷ࣮ߦΛϓϥάΠϯଆͰߦ͏ఆ ๏ ͦͷ࣮ߦͷ͜ͱΛ"DUJPOTͱఆٛ͢Δ ๏ "DUJPOT)551ɺ4.51*."1ɺ(31$ɺ4IFMMɺ44)ͳͲ৭ʑ ߟ͑ΒΕΔ ๏
ͦ͏͢Δͱ"DUJPOT͕ϓϥάΠϯΠϯλʔϑΣʔεΛ௨ͯ͠ཁٻ͢ Δใ༷ʑͰ͋Γɺ༷ʑͰ͋Δʢड͚ೖΕΒΕͳ͍ͷͰճʣ ຊମͱϓϥάΠϯؒͷใ
Fukuoka.go #20 ܕ͕ఆ·Βͳ͍1SPUPCVGͷఆٛͲ͏͢Δ
Fukuoka.go #20 ๏ ຊମͱϓϥάΠϯؒͰNBQ<TUSJOH>BOZͰेͩΖ͏ͱߟ͍͕͑ͯͨQSPUPCVGʹͦΜͳܕͳ͔ͬͨ ๏ HPPHMFQSPUPCVG"OZ͋Δ͍HPPHMFQSPUPCVG4USVDUΛJNQPSU͢ΕBOZܕΛ͏͜ͱͰ͖Δ ๏ લऀϓϦϛςΟϒͳܕΛϥοϓͨ͠ϝοηʔδΛఆٛ͠γϦΞϥΠζ͢ΔͨΊૹड৴Ͱ.BSTIBM 6ONBSTIBM͕ඞཁ ๏
ޙऀఆٛෆཁ͕ͩಉ༷ʹߏମͰγϦΞϥΠζ͢ΔͷͰૹड৴Ͱม͕ඞཁ ๏ ܕΛ໌ࣔతʹ͢ΔલऀΛ͍͍͕ͨɺωετ͢ΔNBQ<TUSJOH>BOZΛදݱͰ͖ͳ͍ ๏ ͱ͍͑ޙऀ<>CZUFܕͷ··ૹΕͳ͍ͷͰ෦ͰCBTFʹΤϯίʔυ͞ΕΔ͕ड৴ଆͰࣗલͰσ ίʔυ͢Δඞཁ͕͋Γͦ͏Ͱటष͍ QSPUPCVGʹ͓͚ΔNBQ<TUSJOH>BOZͷ՝
Fukuoka.go #20 'JHVSF
Fukuoka.go #20 ๏ ͋Β͔͡Ίܕ͕Θ͔Βͳ͍ ͷ͔ͩΒ͍ͬͦͷ͜ͱ NBQ<TUSJOH>BOZΛKTPOʹ ͯ͠͠·͏ ๏ KTPOΛTUSVDUQC4USVDUʹ͠ ͯड͚͠Λ͢Δ
๏ αʔόʔଆͰ TUSVDUQC4USVDUΛKTPOʹ͠ ͯNBQ<TUSJOH>BOZʹ͢ QSPUPKTPOΛ͏ͱ͍͏ΞΠσΞ
Fukuoka.go #20 ๏ IUUQTHJUIVCDPNMJOZPXTQSPCFͱΓ͋͑ͣެ։͍ͯ͠Δ ๏ ϫʔΫϑϩʔ<>8PSL fl PX<>+PC<>4UFQͱ͍͏ߏ ๏ 4UFQϓϥάΠϯͰ͋Δ"DUJPOTΛAVTFTAΩʔϫʔυͰࢦఆ͢Δ
๏ Πϝʔδ(JUIVC"DUJPOTʹ͍ۙ ๏ "DUJPOTAXJUIAΩʔϫʔυΛͬͯใΛಘΔʢίί͕ઌ΄Ͳͷ KTPOʹͳΔʣ ϫʔΫϑϩʔࣗಈԽπʔϧ1SPCF
Fukuoka.go #20 ઌ΄Ͳͷ࣮ݧ͕͜ͷΑ͏ͳఆٛͰ࠶ݱͰ͖Δʢ·ͩಈ͔ͳ͍ʣ
Fukuoka.go #20
Fukuoka.go #20 'JHVSF
Fukuoka.go #20 'JHVSF IUUQBDUJPOTΛͬͨఆٛɻ ͪ͜ΒҰԠಈ͘ɻ
Fukuoka.go #20 ๏ ࣮͖͢͜ͱ͕Γͩ͘͞Μ͗͢Δ͕ɺࠓܞΘ͍ͬͯΔϓ ϩδΣΫτͰ͏ͱ͍͏ϞνϕʔγϣϯͰؤுΔ ๏ ݁Ռͷग़ྗ͕ૉ͗͢ΔͷͰϦονʹ͍ͨ͠ ๏ 4UFQͷ࠶ར༻ੑ ΞΠσΞͱͯ͠ZBNMͷΤΠϦΞεΛ͏
ෳͷXPSL fl PXͷ߹ҰͭͷZBNMͱͯ݁͠߹͢Δ ࠓޙͷ՝
Fukuoka.go #20 ๏ ݚڀͷ࠶ݱੑΛखܰʹ࣮ݱ͍ͨ͠ͱࢥ͕ͬͨطଘιϑτΣΞͰ༰қͰͳ ͔ͬͨ ๏ ͍ΖΜͳݚڀ͕͋ΔͷͰશͯΛຬͨ͢ιϑτΣΞ͋Β͔͡ΊఏڙͰ͖ͳ͍ ๏ ͦͷͨΊ֦ுੑͷߴ͍ιϑτΣΞΛΦʔϧϓϥάΠϯԽͰࣗ࡞͢Δ͜ͱʹͨ͠ ๏
ຊମͱϓϥάΠϯHSQDͰ௨৴͠ɺ͋Β͔͡Ίܕ͕ෆ໌ͳ༷ΛKTPOΛ͏͜ ͱͰղܾͨ͠ ๏ ػೳ͕શવΓͯͳ͍ͷͰॆ࣮͍ͤͯ͘͞ ·ͱΊ
Fukuoka.go #20 ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ ͘͞ΒΠϯλʔωοτͰ 𝝣 (0ΛͬͯΫϥυͷίϯϙʔω ϯτΛ։ൃͯ͘͠ΕΔؒΛ୳͍ͯ͠·͢ʂ ؾܰʹ͓͔͚͍ͩ͘͞ʕ⊙౪⚆ʔ