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
社会構造をハックする -電子申請編- / railsdm2018
Search
Wataru MIYAGUNI
March 25, 2018
Technology
5
2.6k
社会構造をハックする -電子申請編- / railsdm2018
Rails Developers Meetup 2018: Day 2
https://railsdm.github.io/
Wataru MIYAGUNI
March 25, 2018
Tweet
Share
More Decks by Wataru MIYAGUNI
See All by Wataru MIYAGUNI
今だからこそ振り返る register_globals / PHPerKaigi 2020
gongo
0
7.4k
What can Emacs be? / Hackers Champloo 2019
gongo
4
7.7k
昔の) PHP が誇った最高の機能 register_globals の真実、そして未来へ
gongo
8
11k
肉体言語 Tython (Muscle Language "Tython")
gongo
2
1.1k
Other Decks in Technology
See All in Technology
ウォンテッドリーのデータパイプラインを支える ETL のための analytics, rds-exporter / analytics, rds-exporter for ETL to support Wantedly's data pipeline
unblee
0
120
アジャイルな開発チームでテスト戦略の話は誰がする? / Who Talks About Test Strategy?
ak1210
1
430
コンピュータビジョンの社会実装について考えていたらゲームを作っていた話
takmin
1
590
ディスプレイ広告(Yahoo!広告・LINE広告)におけるバックエンド開発
lycorptech_jp
PRO
0
280
ESXi で仮想化した ARM 環境で LLM を動作させてみるぞ
unnowataru
0
160
OPENLOGI Company Profile for engineer
hr01
1
20k
あなたが人生で成功するための5つの普遍的法則 #jawsug #jawsdays2025 / 20250301 HEROZ
yoshidashingo
2
240
データベースの負荷を紐解く/untangle-the-database-load
emiki
2
460
脳波を用いた嗜好マッチングシステム
hokkey621
0
280
CDKでカスタムランタイムを作成して、Lambdaをnode.js23+TypeScriptで動かしてみた
smt7174
2
100
Perlの生きのこり - エンジニアがこの先生きのこるためのカンファレンス2025
kfly8
2
260
データエンジニアリング領域におけるDuckDBのユースケース
chanyou0311
8
2.1k
Featured
See All Featured
Bash Introduction
62gerente
611
210k
Designing on Purpose - Digital PM Summit 2013
jponch
117
7.1k
Building Adaptive Systems
keathley
40
2.4k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.7k
How to Ace a Technical Interview
jacobian
276
23k
Code Reviewing Like a Champion
maltzj
521
39k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Why Our Code Smells
bkeepers
PRO
336
57k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.3k
Typedesign – Prime Four
hannesfritz
40
2.5k
Speed Design
sergeychernyshev
27
810
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
4
360
Transcript
3BJMT%FWFMPQFST.FFUVQ%BZ ࣾձߏΛϋοΫ͢Δ ిࢠਃฤ 4VO ٶᅳ !HPOHP; 4NBSU)3ιϑτΣΞΤϯδχΞ
ࣗݾհ ࢯ໊ٶᅳ Έ͙ʹΘͨΔ ॴଐגࣜձࣾ4NBSU)3 ݄ೖࣾ ԭೄ͔ΒҾͬӽ͖ͯ͠·ͨ͠ ιϑτΣΞΤϯδχΞ όοΫΤϯυ
ΞΧϯτ 5XJUUFS!HPOHP; (JU)VCHPOHP
4NBSU)3ͷ͝հ
גࣜձࣾ4NBSU)3
4NBSU)3ͱ ਓࣄ࿑ͷखଓ͖ΛΧϯλϯʹ͢Δ ΫϥυܕιϑτΣΞͰ͢
࿑୲ͷෛ୲Λܰݮ ࣾձอݥɾ࿑ಇอݥʹඞཁͳॻྨΛ ैۀһσʔλ͔Βࣗಈ࡞ ॴͷlిࢠਃz ΫϦοΫʂ
ैۀһͷෛ୲ܰݮͯ͘͠ΕΔ εϚϗͰαΫαΫ ௐ͕ϖʔύʔϨεʹ ैۀһ4NBSU)3ͷ࣭ʹैͬͯ1$ɾεϚϗͰೖྗ ˠ΄ͱΜͲ͕ʮ͍ʯʮ͍͍͑ʯͷΧϯλϯͳ࣭ ࿑୲ऀूͬͨใΛҰׅͰ$47ʹग़ྗ͠ɺ څ༩ܭࢉιϑτʹऔΓࠐΉ͚ͩʂ
ಋೖاۀɾܧଓ ಋೖاۀ ࣾ ܧଓ d݄࣮ αʔϏε։͔࢝Β
4NBSU)3ͱిࢠਃ
ిࢠਃͱ ࢴʹΑͬͯߦΘΕ͍ͯΔਃಧग़ͳͲͷखଓΛ ύιίϯεϚʔτϑΥϯΛར༻ͯ͠ ΠϯλʔωοτͰߦ͑ΔΑ͏ʹ͢Δͷ දతͳϠπ w F5BY w ࠃ੫ిࢠਃࠂɾೲ੫γεςϜ w
F-5"9 w ํ੫ϙʔλϧγεςϜ
ిࢠਃͱ ࢴʹΑͬͯߦΘΕ͍ͯΔਃಧग़ͳͲͷखଓΛ ύιίϯεϚʔτϑΥϯΛར༻ͯ͠ ΠϯλʔωοτͰߦ͑ΔΑ͏ʹ͢Δͷ දతͳϠπ w F5BY w ࠃ੫ిࢠਃࠂɾೲ੫γεςϜ w
F-5"9 w ํ੫ϙʔλϧγεςϜ ˠ4NBSU)3ʜ
4NBSU)3͕ѻ͏ʮిࢠਃʯͱ ૯লͷӡӦ͢Δిࢠͷ૯߹૭ޱ IUUQTXXXFHPWHPKQ w ๏ྩߦखଓҊͷݕࡧ w ߦखଓͷిࢠਃˡ ͜Ε ͳͲ
F(PW ΠʔΨϒ
F(PWిࢠਃ ֤ল͕ॴ͢Δ༷ʑͳߦखଓʹ͍ͭͯ ਃɾಧग़Λߦ͏͜ͱ͕Ͱ͖·͢ 4NBSU)3F(PWిࢠਃͷ8FC"1*Λར༻ͯ͠ ࣾձอݥɾ࿑ಇอݥؔ࿈ͷखଓ͖Λߦ͍·͢ ར༻ํ๏ ϒϥβͰը໘Λϙνϙν F(PW͕ఏڙ͢Δʮ֎෦࿈ܞ
8FC "1*ʯ
4NBSU)3 F(PWిࢠਃ
4NBSU)3 F(PWిࢠਃ σʔλͷΓͱΓ 9.-ܗࣜ
4NBSU)3 F(PWిࢠਃ ࣄલʹ࡞ࡁΈͷॻྨ͔Β ిࢠਃ༻ʹม͞ΕΔͨΊ ಛผͳ࡞ۀ͕૿͑Δ͜ͱͳ͍
4NBSU)3 F(PWిࢠਃ ఏग़ઌͰॻྨͷ ৹͕ࠪߦΘΕΔ
F(PWిࢠਃΛࢧ͑Δٕज़
F(PWిࢠਃΛࢧ͑Δٕज़ ͭ͋Γ·͢
F(PWిࢠਃΛࢧ͑Δٕज़ͦͷ
F(PWిࢠਃΛࢧ͑Δٕज़ͦͷ ͜͜Λࢧ͑ͯ·͢
F(PW࿈ܞ"1*ΫϥΠΞϯτϥΠϒϥϦ ,JKJ*T+BQBOFTFFHPW*OUFSGBDF IUUQTHJUIVCDPNLVGVLJKJ ʮͳͥϥΠϒϥϦͱͯ͠ެ։ͨ͠ͷ͔ ʯ w 3VCZ w F(PWిࢠਃͰར༻͢Δɺ࿈ܞ"1*ϥΠϒϥϦ
F(PWిࢠਃ࿈ܞ"1*ͷॴײ গ͠લʹ͓͑͠·ͨ͠ l9.-Ͱ3FRVFTU3FTQPOTF͢Δ͚ͩ z lF(PWిࢠਃɺ؆୯ʹ͑·͢Ͷʂz
F(PWిࢠਃ࿈ܞ"1*ͷॴײ গ͠લʹ͓͑͠·ͨ͠ ͦ͏Ϛ͍͔͘ͳ͍ l9.-Ͱ3FRVFTU3FTQPOTF͢Δ͚ͩ z lF(PWిࢠਃɺ؆୯ʹ͑·͢Ͷʂz
F(PW࿈ܞ"1*ͷগ͠πϥΠͱ͜Ζ ˞ ిࢠॺ໊͖ͷ9.-Ͱͳ͚ΕͳΒͳ͍ w ࣄۀॴຖʹిࢠূ໌ॻΛ࡞ͯ͠Β͏ શͯͷϦΫΤετʹࣄલ४උ͕ඞཁ w ϦΫΤετຖʹΞΫηεΩʔΛൃߦ͔ͯ͠Β
"1*༷ ॻ ͕େ w ࣌ʑؒҧͬͯͨΓ͢Δ ˞ ৄࡉεϥΠυඌͷʹͯ
F(PW࿈ܞ"1*ͷগ͠πϥΠͱ͜Ζ ˞ ిࢠॺ໊͖ͷ9.-Ͱͳ͚ΕͳΒͳ͍ w ࣄۀॴຖʹిࢠূ໌ॻΛ࡞ͯ͠Β͏ શͯͷϦΫΤετʹࣄલ४උ͕ඞཁ w ϦΫΤετຖʹΞΫηεΩʔΛൃߦ͔ͯ͠Β
"1*༷ ॻ ͕େ w ࣌ʑؒҧͬͯͨΓ͢Δ ։ൃऀൃ৴ͷใ͕গͳ͍ w ͜Ε͕ຯʹπϥ͍ ˞ ৄࡉεϥΠυඌͷʹͯ
։ൃऀࢹͰͷF(PW࿈ܞ"1*ͷ͋·Γฉ͔ͳ͍ w ݸਓͰϋʔυϧ͕ߴ͍ w ిࢠূ໌ॻ࡞ͬͨΓɺେͳ༷ॻΛಡΜͩΓ w ͦͦݸਓ༻్͕ແ͍ w Α͋͘Δʮࢼͯ͠Έ·ͨ͠ʯهࣄ·Ͱൃల͠ͳ͍ w
ຊ൪ͷ ࿈ܞ"1*Λ͏ͨΊʹɺ ʮ͜ͷιϑτΣΞ"1*ͬͯ0,ʯ ͱ͍͏૯ল͕ઃ͚Δ࠷ऴ֬ೝࢼݧΛಥഁ͢Δඞཁ͕͋Δ w اۀൃ৴ͳ͔ͳ͔ݟ͔͚ͳ͍ w "1*͍ͬͯΔاۀ͍͔ͭ͋͘Δ w IUUQXXXFHPWHPKQIFMQTIJOTFJBQJ@TPGUXBSFJOEFYIUNM
F(PWిࢠਃΛൃలͤ͞ΔͨΊʹ F(PW࿈ܞ"1*Λগ͠Ͱ͍͍ͨ͘͢͠ ͍͘͢ͳΔ͜ͱͰF(PWͷೝ ར༻ͷ্ʹߩݙͰ͖Δ
F(PWిࢠਃΛൃలͤ͞ΔͨΊʹ F(PW࿈ܞ"1*Λগ͠Ͱ͍͍ͨ͘͢͠ ͍͘͢ͳΔ͜ͱͰF(PWͷೝ ར༻ͷ্ʹߩݙͰ͖Δ ͦΕ͕Ϣʔβͷମݧ্ʹܨ͕Δ ͦͷͨΊͷLJKJ
F(PWిࢠਃΛࢧ͑Δٕज़ͦͷ͓ΘΓ
F(PWిࢠਃΛࢧ͑Δٕज़ͦͷ ͜͜ࢧ͑ͯ·͢
$47ܗࣜಧॻ࡞ϥΠϒϥϦ w 3VCZ w $47ܗࣜಧॻF(PWిࢠਃͷҰ෦ͷखଓ ͖Ͱඞཁͳɺ9.-ͱผͰఴ͢ΔϑΝΠϧͷ ໊শ IUUQTHJUIVCDPNLVGVLJSJDP
LJSJDPԿނੜ·Εͨͷ͔ $47ܗࣜಧॻͷਖ਼ମ $47ܗࣜಧॻʜ ৄ͘͠Θ͔Βͳ͍͚Ͳɺ ͭ·Γ$47ϑΝΠϧͩΑͶʜ γϡοͱ࡞ΕΔ͡ΌΜ
LJSJDPԿނੜ·Εͨͷ͔ $47ܗࣜಧॻͷਖ਼ମ şŘŪ <LBOSJ>
şŘŪ ౦ژઍా۠ <EBUB> şŘŪ ŠřŮƃŘŧƁř ްҰ şŘŪ ŠřŮƃŢƄƁř ްೋ $47 ܗࣜಧॻྫ
şŘŪ <LBOSJ>
şŘŪ ౦ژઍా۠ <EBUB> şŘŪ ŠřŮƃŘŧƁř ްҰ şŘŪ ŠřŮƃŢƄƁř ްೋ LJSJDPԿނੜ·Εͨͷ͔ $47ܗࣜಧॻͷਖ਼ମ ୡͷ͍ͬͯΔ$47͡Όͳ͍ $47 ܗࣜಧॻྫ
LJSJDPԿނੜ·Εͨͷ͔ $47ܗࣜಧॻͷ࡞Γํ ࣮ຊۚػߏ͔Βʮಧॻ࡞ϓϩάϥϜʯͱ͍ ͏ΞϓϦέʔγϣϯ͕ެ։͞Ε͍ͯΔ IUUQXXXOFOLJOHPKQEFOTIJCFOSJTFUTVNFJIUNM
LJSJDPԿނੜ·Εͨͷ͔ $47ܗࣜಧॻͷ࡞Γํ ࣮ຊۚػߏ͔Βʮಧॻ࡞ϓϩάϥϜʯͱ͍ ͏ΞϓϦέʔγϣϯ͕ެ։͞Ε͍ͯΔ IUUQXXXOFOLJOHPKQEFOTIJCFOSJTFUTVNFJIUNM ಈ࡞ڥ 8JOEPXTͷΈ
LJSJDPԿނੜ·Εͨͷ͔ ݁Ռ w ࡞ۀ4NBSU)3Ͱ͍݁ͨ͠ w F(PWిࢠਃιϑτΣΞ͔Β$47ܗࣜಧॻ͕ ࡞Ͱ͖Δͱศར w ಧॻ࡞༷ॻެ։͞Ε͍ͯΔ w
IUUQTXXXOFOLJOHPKQEFOTIJCFOSJTFUTVNFJIUNM 3VCZϥΠϒϥϦͱͯ͠࡞ɺެ։
F(PWిࢠਃΛࢧ͑Δٕज़ͦͷ͓ΘΓ
·ͱΊ
·ͱΊ w 4NBSU)3F(PWిࢠਃΛͬͯ ࣾձอݥ࿑ಇอݥؔ࿈ͷखଓ͖Λߦ͍·͢ w F(PWిࢠਃΛࢧ͑Δ3VCZϥΠϒϥϦΛ ։ൃɾެ։͍ͯ͠·͢ w ͜Ε͔Βͬͱ͍͘͢ͳΔͱ͍͍ͳ
ͦΜͳ4NBSU)3ؒΛ୳͍ͯ͠·͢ ΤϯδχΞઈࢍ࠾༻த IUUQTTNBSUISDPKQSFDSVJUIFMMPXPSME
044ؔ࿈هࣄ w F(PW"1*ʹରԠͨ͠HFNʮLJKJʯΛެ։͠·ͨ͠2JJUB w IUUQTRJJUBDPNLBLJQPJUFNTDDFGEGDGFE w ߦखଓ͖ͷిࢠਃΛͬͱۙʹʂ$47ܗࣜಧॻ࡞ϥΠϒϥϦ ʮLJSJDPʯΛެ։͠·ͨ͠4NBSU)35FDI#MPH w IUUQUFDITNBSUISKQFOUSZ
w 4NBSU)3ΦʔϓϯιʔεLJSJDPͷϩΰͷ࡞Γํ4NBSU)35FDI #MPH w IUUQUFDITNBSUISKQFOUSZ
࿈ܞ"1*ͷগ͠େมͳͱ͜Ζ ిࢠॺ໊͖ͷ 9.-Ͱͳ͚ΕͳΒͳ͍ w ຊਓ ࣄۀॴ ֬ೝ ˞ ɺվ᜵ݕͳͲͷͨΊ
w શϦΫΤετͰඞਢ ˞ิ ిࢠূ໌ॻࣄۀॴຖʹ࡞͕ඞཁ
࿈ܞ"1*ͷগ͠େมͳͱ͜Ζ શͯͷϦΫΤετʹ ࣄલ४උ͕ඞཁ ར༻ऀ*%Λొ͢Δ w ిࢠূ໌ॻͷొ ߋ৽ ޙʹඞཁ
ར༻ऀ*%Ͱೝূ͠ɺΞΫηεΩʔΛऔಘ͢Δ w ༗ޮظؒ͋Γ ϦΫΤετຖʹඞཁ ֤छిࢠਃॲཧ࣮ߦ
࿈ܞ"1*ͷগ͠େมͳͱ͜Ζ "1*༷ ॻ ͕େ w ࿈ܞ"1*ͷ9.-ߏఆٛॻ1%'Ͱఏڙ w ֤खଓ͖ͷਃ༷&YDFMͰఏڙ w
࣌ʑؒҧ͍ͬͯΔ w ૹ৴ͯ͠ेޙͰͳ͍ͱ֬ೝͰ͖ͳ͍ IUUQXXXFHPWHPKQTIJOTFJJOUFSGBDF@BQJEPXOMPBEIUNM