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
210
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
110
寿命の短いデータ分析コードにも、ちょっとだけ優しくしてあげたい話 / kindness-for-short-lifespan-codes
snhryt
1
91
【令和最新版】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
タスクの特性や不確実性に応じた最適な作業スタイルの選択(ペアプロ・モブプロ・ソロプロ)と実践 / Optimal Work Style Selection: Pair, Mob, or Solo Programming.
honyanya
3
140
実践AIチャットボットUI実装入門
syumai
7
2.4k
iOSアプリの信頼性を向上させる取り組み/ios-app-improve-reliability
shino8rayu9
0
150
Your Perfect Project Setup for Angular @BASTA! 2025 in Mainz
manfredsteyer
PRO
0
120
ソフトウェア設計の実践的な考え方
masuda220
PRO
3
470
階層構造を表現するデータ構造とリファクタリング 〜1年で10倍成長したプロダクトの変化と課題〜
yuhisatoxxx
3
910
NetworkXとGNNで学ぶグラフデータ分析入門〜複雑な関係性を解き明かすPythonの力〜
mhrtech
3
990
CSC509 Lecture 03
javiergs
PRO
0
330
CSC509 Lecture 04
javiergs
PRO
0
290
Web フロントエンドエンジニアに開かれる AI Agent プロダクト開発 - Vercel AI SDK を観察して AI Agent と仲良くなろう! #FEC余熱NIGHT
izumin5210
3
380
Advance Your Career with Open Source
ivargrimstad
0
330
CSC305 Lecture 02
javiergs
PRO
1
260
Featured
See All Featured
YesSQL, Process and Tooling at Scale
rocio
173
14k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
53k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.2k
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.6k
Thoughts on Productivity
jonyablonski
70
4.9k
Docker and Python
trallard
46
3.6k
Automating Front-end Workflow
addyosmani
1371
200k
Scaling GitHub
holman
463
140k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Documentation Writing (for coders)
carmenintech
75
5k
Code Review Best Practice
trishagee
72
19k
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Λ͓ئ͍͠·͢ʂ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠