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
DataformでPythonする / dataform-de-python
Search
snhryt
July 27, 2025
Programming
0
110
DataformでPythonする / dataform-de-python
Dataform Meetup #1 登壇資料
https://dataform-jp.connpass.com/event/359348/
snhryt
July 27, 2025
Tweet
Share
More Decks by snhryt
See All by snhryt
ヤバい(わるい意味)データでヤバい(いい意味)ことしようとしている話 / yabai-yabai-data-yabai
snhryt
0
78
寿命の短いデータ分析コードにも、ちょっとだけ優しくしてあげたい話 / kindness-for-short-lifespan-codes
snhryt
1
88
【令和最新版】Python実行環境の選択肢 / Modern Python Env Management 20240628
snhryt
0
130
マテリアルズ・インフォマティクスの先端で起きていること / What's Happening at the Cutting Edge of Materials Informatics
snhryt
1
250
Other Decks in Programming
See All in Programming
DMMを支える決済基盤の技術的負債にどう立ち向かうか / Addressing Technical Debt in Payment Infrastructure
yoshiyoshifujii
4
670
AWS Summit Japan 2024と2025の比較/はじめてのKiro、今あなたは岐路に立つ
satoshi256kbyte
1
260
可変性を制する設計: 構造と振る舞いから考える概念モデリングとその実装
a_suenami
8
1k
AI時代の『改訂新版 良いコード/悪いコードで学ぶ設計入門』 / ai-good-code-bad-code
minodriven
24
10k
202507_ADKで始めるエージェント開発の基本 〜デモを通じて紹介〜(奥田りさ)The Basics of Agent Development with ADK — A Demo-Focused Introduction
risatube
PRO
5
1.3k
SQLアンチパターン第2版 データベースプログラミングで陥りがちな失敗とその対策 / Intro to SQL Antipatterns 2nd
twada
PRO
35
10k
ソフトウェア設計とAI技術の活用
masuda220
PRO
25
7k
Workers を定期実行する方法は一つじゃない
rokuosan
0
130
それ CLI フレームワークがなくてもできるよ / Building CLI Tools Without Frameworks
orgachem
PRO
13
3.3k
The Evolution of Enterprise Java with Jakarta EE 11 and Beyond
ivargrimstad
0
590
SwiftでMCPサーバーを作ろう!
giginet
PRO
2
210
[DevinMeetupTokyo2025] コード書かせないDevinの使い方
takumiyoshikawa
2
230
Featured
See All Featured
Building an army of robots
kneath
306
45k
[RailsConf 2023] Rails as a piece of cake
palkan
56
5.7k
Building Adaptive Systems
keathley
43
2.7k
Navigating Team Friction
lara
188
15k
Docker and Python
trallard
45
3.5k
GitHub's CSS Performance
jonrohan
1031
460k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.2k
Unsuck your backbone
ammeep
671
58k
Why You Should Never Use an ORM
jnunemaker
PRO
58
9.5k
Code Review Best Practice
trishagee
69
19k
The Invisible Side of Design
smashingmag
301
51k
Site-Speed That Sticks
csswizardry
10
730
Transcript
%BUBGPSNͰ1ZUIPO͢Δ %BUBGPSN .FFUVQσʔλΤϯδχΞ ݪ༔ై
1ZUIPOͰ1ZUIPO͢Δ
%BUBGPSNͰ1ZUIPO͢Δʁ🤔 ʮ%BUBGPSN42-Ͱσʔλͷ5SBOTGPSNBUJPO͢ΔπʔϧͰ͢ΑͶʁʯ ˠ ͱͯͦ͏ ʮ͍͍ຐվԵɻ༻్ʹ͋Θͤͯπʔϧ͍͚·͠ΐ͏Ͷ͆ʯ ˠ Ͳ͔ͪΒͱ͍͑ͦ͏ ʮ͔͍ͯಓͳ͘Ͷʁʯ ˠ ͦΜͳ͜ͱͳ͍
ઌʹ͓அΓ • ॳาతͳͱ͜Ζͬ͢ඈ͍͖ͯ͠ͳΓԠ༻ͷʹೖΓ·͢🙏 • ϦϦʔε͞Ε͔ͯΒ·͕ͩઙ͍χονͳػೳͷΛ͠·͢🙏
5",&"8": ຊ͝հ͢Δ%BUBGPSNͰ1ZUIPO͢Δखஈͭ %BUBGPSNͰ1ZUIPO6%'ʢϢʔβʔఆٛؔʣΛཧ͢Δ ˠ ͓͢͢Ί˒˒˒˒ˑ %BUBGPSNܦ༝Ͱ/PUFCPPLΛఆظ࣮ߦ͢Δ ˠ ͓͢͢Ί˒ˑˑˑˑ
ࣗݾհ • ݪ༔ైʢ!TOISZUEFTVʣ • σʔλΤϯδχΞ!ϚΠϕετ ˡσʔλαΠΤϯςΟετ!ΞΠσϛʔ ˡωοτϫʔΫΤϯδχΞ!/̋5 ˡभେֶ • ຊʹਓ͙Β͍͔͍͠ͳ໊͍ࣈ
• %BUBGPSNͷढറʹनΘΕ͍ͯΔਓˠ
None
None
%BUBGPSNͰ1ZUIPO6%'Λཧ͢Δ
લఏlPQFSBUJPOTzUZQFΛ͑%BUBGPSNͰ6%'ͷཧ͕Ͱ͖Δ ௨ৗͷ%.-ͱಉ༷ʹ%BUBGPSNλάΛઃఆͨ͠͏͑ͰɺϫʔΫϑϩʔ্Ͱ%%-ͷ࣮ߦ͕Մೳ
લఏ6%'Λ1ZUIPOͰॻ͚ΔΑ͏ʹͳͬͨ ैདྷͷ42- +BWB4DSJQUʹՃͯ͠1ZUIPOͰॻ͚ΔΑ͏ʹͳͬͨ 1SF(" ͪ͜Βͷ;FOOهࣄʹ ۩ମతͳ͍ํҙΛ ·ͱΊ͍ͯ·͢
1ZUIPO6%'ͷར1ZUIPOͷ๛ͳϥΠϒϥϦ܈ʹ͔͋ΕΔ 1Z1*ʹެ։͞Ε͍ͯΔϥΠϒϥϦΛΠϯετʔϧͯ͠ར༻Մೳ ˠ 42-Ͱ࣮͕͍͠Ͱ͖ͳ͍͜ͱͰ͖ΔΑ͏ʹɻՄೳੑ 𝙄𝙉𝙁𝙄𝙉𝙄𝙏𝙔 ˡ 1ZUIPO6%'Ͱ$MPVE5SBOTMBUJPO αʔϏεΛݺͼग़ͯ͠༁ͤ͞Δྫ
ϚΠϕετͰͷ׆༻ྫ 4DJ1ZͷྗΛआΓͯɺαΫοͱ౷ܭݕఆ͕Ͱ͖Δ6%'Λ࡞ɻ%BUBGPSNͰίʔυཧ͠ɺϫʔΫϑϩʔ্Ͱߋ৽ EFGJOJUJPOTPQFSBUJPOVEGTTRMY
%BUBGPSN º 1ZUIPO6%'ࡶײ • ͚ͬ͜͏͍͍ • +BWB4DSJQU6%'ΑΓѻ͍͍͢ • ࠔΓ͝ͱ •
1ZUIPOͷίʔυࣗମͷಈ࡞֬ೝ༧ΊผͷॴͰࡁ·͓ͤͯ͘ඞཁ͕͋Δ • ίʔυΛจࣈྻͱͯ͠ཧ͢ΔͷͰɺ4ZOUBY)JHIMJHIU͕ޮ͔ͳ͍ • ͘͝كʹ6%'ͷCVJMEʹࣦഊͯ͠ɺ6%'Λࢀর͍ͯ͠ΔΫΤϦ͕ࣦഊ͢Δ͜ͱ͕͋Δ • Έ͚ͱͯ͠ɺػցֶश(FNJOJͳͲ#2.-ʹҕͶΔͷ͕Αͦ͞͏
%BUBGPSNܦ༝Ͱ/PUFCPPLΛఆظ࣮ߦ͢Δ
લఏ%BUBGPSNʹॲཧͤ͞Δલஈ֊Ͱ&YUSBDU-PBE͕ඞཁ • %BUBGPSNͰσʔλΛՃ͢ΔͨΊʹɺ#JH2VFSZ#JH2VFSZ͕ ֎෦ςʔϒϧͱͯ͠ѻ͑ΔॴʢFH($4ʣʹσʔλ͕ஔ͔Ε͍ͯΔ ඞཁ͕͋Δ • &YUSBDU-PBEͷखஈେ͖͚͘Δͱͭ • σʔλιʔεʹରԠ͢ΔϨσΟϝΠυͷίωΫλ͕͋Δ&-5πʔϧ ʢFH530$$0
'JWFUSBO "JSCZUFʣΛ͏ ˠ ଟ͘ͷέʔεͪ͜ΒͰରԠՄʹͳ͖ͬͯͨ • ࣗલͰόονΛΉ ˠ ϚΠφʔͳαʔϏεɺ"1*͕ఏڙ͞Ε͍ͯͳ͍αʔϏεґવ͜Ε͕ඞཁ
%BUBGPSNºࣗલόονͷ՝ σʔλऔಘ෦ͷ࣮ࣗମੜ"*Ͱ؆୯ʹॻ͚ΔΑ͏ʹͳ͍ͬͯΔ͕ɺ࣮֎ͷ՝͕ґવͱͯ͠Δ • όονͱ%BUBGPSN͕ؒಠཱ͘͢͠ͳΔ • -PBEʹࣦഊͨ͠ͷʹ5SBOTGPSNBUJPOΛ࣮ߦ ˠ ҙਤ͠ͳ͍ςʔϒϧͷதʹʜ • 8PSLGMPXTΛ͑ղܾ͢Δ͕ɺͦͷ߹%BUBGPSN
"1*Λୟ͘Α͏ͳ ΞʔΩςΫνϟͱͳΓɺ%BUBGPSN $MPVEͷϫʔΫϑϩʔػೳʹ͔͋Εͳ͘ͳΔ • Πϯϑϥͷཧ • (PPHMF$MPVEϢʔβʔͩͱ$MPVE3VO 'VODUJPOT º $MPVE4DIFEVMFSͰ όονΛΉέʔεଟ͍ͣ ˠ ແݶʹ૿͑ଓ͚Δ$MPVE4DIFEVMFS • ϚωʔδυίϯιʔϧΆͪΆͪͰ࡞͢Δͱӡ༻͕ͭΒ͍ • ҰํͰɺ5FSSBGPSNΛͬͯ·͡Ίͳ*B$ΛΉͷͦΕͦΕͰେม • ඞͣ͠σʔλΤϯδχΞ͕ίʔυΛॻ͘ͱݶΒͳ͍ • ֘σʔλΛ৮Δ෦ॺͷਓʹϕʔεͷ࣮Λ͍ͤͨ߹͋Δ
͋ͳ͖ͨͬͱ͜͏ࢥͬͨͣͰ͢ ʮ%BUBGPSNͰ&YUSBDU-PBEͰ͖ͨΒศརͳͷʹͳ͊ʯˣΠϝʔδ
None
None
࣮ɺ%BUBGPSN͢Ͱʹ1ZUIPOͷఆظ࣮ߦʹରԠࡁ • ॳࣖͳΜ͕ͩʂ ˠ ͦΕͦͷͣ • WͷϦϦʔε࣌ʹࡶͳϦϦʔεϊʔτͱࡶͳαϯϓϧίʔυͰ ͵ΔͬͱΒ͞ΕͯҎ߱ɺެࣜυΩϡϝϯτʹಛʹهࡌͳ͠ ˡ ϦϦʔεϊʔτͷ֘Օॴશจ
IUUQTHJUIVCDPNEBUBGPSNDPEBUBGPSNSFMFBTFTUBH ˡ ެࣜͷαϯϓϧίʔυҰࣜɻিܸͷจ3&"%.& IUUQTHJUIVCDPNEBUBGPSNDPEBUBGPSNUSFFNBJOFYBNQMFTFYUSFNF@XFBUIFS@QSPHSBNNJOH
࣮ɺ%BUBGPSN͢Ͱʹ1ZUIPOͷఆظ࣮ߦʹରԠࡁ • /PUFCPPL JQZOC ܗࣜͷ1ZUIPOίʔυ͕ର • $PMBC &OUFSQSJTFʹͱͱ/PUFCPPLͷఆظ࣮ߦػೳ͋Γ • %BUBGPSN্Ͱ1ZUIPOͷڥ͕࡞ΒΕΔΘ͚Ͱͳ͘ɺ
$PMBC &OUFSQSJTFͷ1ZUIPOϥϯλΠϜΛ࣮ͬͯߦ͢Δ ˠ ཁɺ$PMBC &OUFSQSJTFͷ8SBQQFSతͳҐஔ͚ ͷཧ /PUFCPPL
۩ମతʹ͜͏͠·͢ • $PMBC &OUFSQSJTFͰ%BUBGPSNͷ࣮ߦϩέʔγϣϯͱಉ͡ϩέʔγϣϯͰ ϥϯλΠϜςϯϓϨʔτΛ࡞͓ͯ͘͠ • XPSLGMPX@TFUUJOHTZBNM ʹ͜Μͳײ͡Ͱॻ͘ ࣮ߦޙͷ/PUFCPPLΛ
ॻ͖ग़͢($4όέοτ $PMBCͷϥϯλΠϜ ςϯϓϨʔτ
۩ମతʹ͜͏͠·͢ • EFGJOJUJPOTԼʹҎԼΛηοτͰஔ͢Δ • ࣮ߦ͍ͨ͠/PUFCPPL • BDUJPOTZBNM • ΞΫγϣϯ໊Λࢦఆͯ͠
42-ͱಉ͡ϊϦͰ࣮ߦ ˠ ಈ͖·͢🎉 EFQFOEFODZΛ ࢦఆ͢Δ͜ͱՄೳ
͔ͯ͠͠ UBHTͰϫʔΫϑϩʔͷ࣮ߦཧͰ͖Δɾɾɾͬͯίτ • ೦ͳ͕Βࠓ/P • ͨͩɺ͍ۙʹमਖ਼͞ΕͯϦϦʔε͞ΕΔΒ͍͠ ʹฦ͖ͬͯͨฦࣄ
ͨͩ͠ɺ69͕ɾɾɾ $MPVE൛ΤσΟλͰ+40/ϑΝΠϧѻ͍ ΤσΟλͰˢ͕ग़͖ͯͨͱ͖সͬͨɻ ฤू͢Δͱ͖ϩʔΧϧ %BUBGPSN $-* ɺ ࣮ߦ࣌ͷΈ%BUBGPSN $MPVEΈ͍ͨͳΈ͚͕ඞཁ ΤϥʔϋϯυϦϯά͕ͮ͠Β͍
Τϥʔৄࡉ$PMBC &OUFSQSJTFଆͷ࣮ߦϩά·Ͱ જΒͳ͍ͱݟ͑ͳ͍
%BUBGPSN º/PUFCPPLࡶײ • ͓ੈࣙʹʮΊͪΌͪ͘Ό͑Δʯͱݴ͑ͳ͍ • ͔ͭɺݱঢ়ͷվमεϐʔυΛݟΔݶΓɺ೦ͳ͕Β͙͢ʹվળ͞ΕΔ ݟࠐΈബ͍ؾ͕͍ͯ͠Δɾɾɾ • ͦΕͰɺ͜ΜͳέʔεͰྗΛൃشͦ͠͏ •
σʔλΤϯδχΞҎ֎͕࣮ݧతʹॻ͍ͨίʔυΛྲྀ༻ͯ͠ɺͱʹ͔͘༏ઌͰ σʔλ࿈ܞ͍ͨ͠ͱ͖ ˠ $PMBC &OUFSQSJTFͰ/PUFCPPLΛεέδϡʔϧ࣮ߦ͢ΔΑΓɺ %BUBGPSNܦ༝ʹͨ͠΄͏͕͍উख͕͍͍ʢϚγʣ • (16ΠϯελϯεͰόονΛಈ͔͢ඞཁ͕͋Δͱ͖
$PODMVTJPO
·ͱΊ %BUBGPSNͰ1ZUIPO͢Δͤ͞ΔखஈΛͭ͝հ͠·ͨ͠ %BUBGPSNͰ1ZUIPO6%'ʢϢʔβʔఆٛؔʣΛཧ͢Δ ˠ ͓͢͢Ί˒˒˒˒ˑ ΘΓͱԠ༻ޮ͘ͱࢥ͍·͢ʂ1SF("ͷʹҙ %BUBGPSNܦ༝Ͱ/PUFCPPLΛఆظ࣮ߦ͢Δ ˠ
͓͢͢Ί˒ˑˑˑˑ 0QT؍Ͱѻ͍ͮΒ͍ͷͰ͋·Γ͓͢͢ΊͰ͖ͳ͍ɻUBHTʹظ
࠷ޙʹએ • σʔλαΠΤϯςΟετɾσʔλΤϯδχΞ྆৬छͱʹੵۃืूதͰ͢ • %4νʔϜʹͯ/PUFϚΨδϯΛ͍͍݄ͩͨʙϖʔεͰߋ৽͍ͯ͠ΔͷͰɺ ͥͻϑΥϩʔˍ-JLFΛ͓ئ͍͠·͢ʂ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠