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
RubyやRailsをはじめる人を応援したい
Search
Kuniaki IGARASHI
December 08, 2012
0
480
RubyやRailsをはじめる人を応援したい
2012.12.8 at RejectTokyoRubyKaigi10
Kuniaki IGARASHI
December 08, 2012
Tweet
Share
More Decks by Kuniaki IGARASHI
See All by Kuniaki IGARASHI
roppongirb_20250911
igaiga
1
480
igaiga Ruby Association Activity Report 2025 LT
igaiga
1
96
KaigiOnRails2024
igaiga
11
19k
RuboSensei
igaiga
0
300
Shibuya.rb-2023-04-27-igaiga
igaiga
1
540
Ginza Rails27 igaiga
igaiga
9
13k
tork09igaiga
igaiga
2
360
Road to white mages
igaiga
1
720
Road to white mages
igaiga
8
4.1k
Featured
See All Featured
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
30
2.9k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
53k
Designing for Performance
lara
610
69k
Embracing the Ebb and Flow
colly
88
4.8k
Designing for humans not robots
tammielis
254
26k
The Pragmatic Product Professional
lauravandoore
36
6.9k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
620
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Docker and Python
trallard
46
3.6k
YesSQL, Process and Tooling at Scale
rocio
173
14k
It's Worth the Effort
3n
187
28k
Testing 201, or: Great Expectations
jmmastey
45
7.7k
Transcript
3VCZ3BJMTΛ ͡ΊΔਓΛ Ԡԉ͍ͨ͠ ,VOJBLJ*("3"4)*JHBJHB BU3FKFDU5PLZP3VCZ,BJHJ
ޒेཛྷ໌ גࣜձࣾສ༿ɹΤϯδχΞ UXJUUFS!JHBJHB GBDFCPPLIUUQGBDFCPPLDPNLVOJBLJJHBSBTIJ QIPUPCZLPJDIJSPPIUUQXXXqJDLSDPNQIPUPTLPJDIJSPP
ఏڙ גࣜձࣾສ༿
None
֤Ͱಅ ٻΊΔਓͷ܈Ε
݄ΑΓඇৗۈߨࢣ
None
None
ఏڙOJGUZ༷
None
จܥͷֶՊ
ߨٛͰ Ή͔͍ͣ͜͠ͱ
ֶੜ͞Μͷ স͍ΛͱΔ͜ͱ
5FBDIJOH"TTJTUBOU ᖛ࡚݈ޗ ΫοΫύουגࣜձࣾɹΤϯδχΞ 5"ͷᖛ࡚͞Μᐌ͘
ޒेཛྷ͞Μɺ ͋ͦ͜ ਓड͚ͯ·ͨ͠Αɻ ˞ֶੜਓ
͍͢͝Ͱ͢Ͷɺ ਓসͬͯ·ͨ͠Αɻ ˞ֶੜਓ
ͦΜͳϨϕϧ
ͪͳΈʹ ߨٛͰҰ൪ ड͚ͨͷ
None
ίϨˢ
ίϨˢ
None
None
None
͟Θ͟Θ ͟Θ͟Θ
͟Θ͟Θ ͟Θ͟Θ ͛͢ʔ
͟Θ͟Θ ͟Θ͟Θ ͛͢ʔ ͋ͷਓYYͬͯͷ ಡΊΔͷ
ΜͩΓ͢Δ ͚ΕͲ
ڭ͑Δ͜ͱ ͨͷ͍͠ʂ
ʆɾТɾ
ʆɾТɾ λ
ʆɾТɾ λɹλ
ʆɾТɾ λɹλɹλο
ʆɾТɾ λɹλɹλο λʔϯ
ɾʄƅɾ Ň ˜ ŰƅōōŇ ɾʄƅɾ ಈ͍ͨʙ
͔Βͷ
ϋΠλον
ϋΠλον
3BJMTॳΊͯͷਓ͚ʹ 3BJMTΛମݧ͢Δ ϫʔΫγϣοϓΠϕϯτ ૿͖͑ͯ·ͨ͠
None
None
None
None
None
None
None
None
None
3VCZBOE3BJMTΛ ͡ΊΔͱ͖ ͍͜͠ͱ
ڥߏங
ͱ͍͑ɺ ͍Ζ͍ΖศརʹͳͬͨͷͰ ͦΕ΄Ͳ͋͘͠Γ·ͤΜ
8JOEPXT3BJMT*OTUBMMFS 3BJMTΠϯετʔϥʔΛ%PXOMPBE *OTUBMM IUUQSBJMTJOTUBMMFSPSH ໊લͱFNBJMΛೖྗ ެ։͞Ε·͢ɻ HJUͷઃఆͰΘΕ·͢ɻ ىಈ8JOEPXTϝχϡʔ͔ΒҎԼΛ࣮ߦ ʮϓϩάϥϜͱϑΝΠϧͷݕࡧʯ͔Β$PNNBOE1SPNQUXJUI3VCZBOE3BJMTPS ελʔτˠશͯͷϓϩάϥϜˠ3BJMT*OTUBMMFSˠ$PNNBOE1SPNQUXJUI3VCZBOE3BJMT
˞3BJMT*OTUBMMFSͱ͍͏໊લͰ͕͢ɺ3VCZ͚ͩ͏ͷͳ͍Ͱ͢ɻ
.BD3BJMT*OTUBMMFS 3BJMTΠϯετʔϥʔΛ%PXOMPBE *OTUBMM IUUQSBJMTJOTUBMMFSPSH ໊લͱFNBJMΛೖྗ ެ։͞Ε·͢ɻ HJUͷઃఆͰΘΕ·͢ɻ λʔϛφϧ͔Β3VCZͱ3BJMT͕͑·͢ɻ ˞3BJMT*OTUBMMFSͱ͍͏໊લͰ͕͢ɺ3VCZ͚ͩ͏ͷͳ͍Ͱ͢ɻ
6CVOUV7. ΦϨΦϨΠϝʔδެ։த 3VCZQ 3BJMT IUUQTHJUIVCDPNIJUPUTVCBTIJSVCZMFDUVSF Πϯετʔϧํ๏ͳͲIUUQTTQFBLFSEFDLDPNJHBJHBSVCZ
6CVOUV BQUߋ৽ TVEPBQUHFUVQEBUF TVEPBQUHFUVQHSBEF جຊύοΫ TVEPBQUHFUJOTUBMMCVJMEFTTFOUJBMPQFOTTMMJCSFBEMJOFMJCSFBEMJOFEFWDVSM HJUDPSF[MJCH[MJCHEFWMJCTTMEFWMJCZBNMEFWMJCTRMJUFMJCTRMJUFEFWTRMJUF MJCYNMEFWMJCYTMUEFWBVUPDPOGMJCDEFWODVSTFTEFWBVUPNBLFMJCUPPMCJTPO TVCWFSTJPO[TITDSFFOWJN 3VCZ
XHFUGUQGUQSVCZMBOHPSHQVCSVCZSVCZQUBSH[ UBSYW[GSVCZQUBSH[ DESVCZQ DPOpHVSF NBLF TVEPNBLFJOTUBMM 3BJMT TVEPHFNJOTUBMMSBJMT TVEPBQUHFUJOTUBMMOPEFKT
͡Ί͔ͨ
8FCΞϓϦ ͍Ζ͍Ζ͕ࣝඞཁ͚ͩͲ 3VCZPO3BJMT 3PVUFT $POUSPMMFS 7JFX .PEFM 3&45GVM %BUBCBTF "QBDIF
1BTTFOHFS +BWBTDSJQU "+"9 K2VFSZ )5.- $44 (FNT 34QFD
·ͣͲΜͳ͜ͱ͕ Ͱ͖Δͷ͔ ମݧͯ͠Β͏
ྫɿը૾ߘΞϓϦ TQPOTPSFECZ+4BUP
ͭ͘Γ͔ͨ SBJMTOFXCMPH@BQQ DECMPH@BQQ CVOEMFFYFDSBJMTHTDBGGPMETUPSZUJUMFTUSJOH ɹ
ɹ EFTDSJQUJPOUFYUQJDUVSFTUSJOH CVOEMFFYFDSBLFECNJHSBUF IUUQMPDBMIPTUTUPSJFT CVOEMFFYFDSBJMTT ϒϥβͰ্هͷΞυϨεΞΫηεͯ͠ಈ࡞֬ೝͯ͠Έ·͠ΐ ͏ɻ֬ೝͰ͖ͨΒSBJMTTΛࢭΊͯ࣍͗ਐΈ·͢ɻ
HFNͷར༻ (FNpMF HFNDBSSJFSXBWF ը૾Λߘ͢ΔػೳΛ͚ΔͨΊʹɺ DBSSJFSXBWFͱ͍͏HFNΛ͍·͢ɻ 3BJMTΞϓϦͰHFNΛར༻͢Δ߹ɺ (FNpMFʹҎԼΛ͠·͢ɻ (FNpMFCMPH@BQQϑΥϧμͷԼʹ͋Γ·͢ɻ Ճ͢Δॴྫ͑HFNTRMJUFͷ࣍ͷߦɻ CVOEMF
CVOEMFCVOEMFJOTUBMMͷུͰɺ(FNpMFʹ৽ ͘͠Ճͨ͠HFNΛΠϯετʔϧ͢ΔίϚϯυͰ͢ɻ ฤूͨ͠(FNpMFΛөͤ͞·͢ɻ
ϑΝΠϧΞοϓϩʔυͷ࣮ NPVOU@VQMPBEFSQJDUVSF 1JDUVSF6QMPBEFS CVOEMFFYFDSBJMTHVQMPBEFS1JDUVSF DBSSJFSXBWFHFNΛར༻͢ΔͨΊͷखଓ͖Λ͠·͢ɻ ࠷ॳʹඞཁͳϑΝΠϧΛੜ͠·͢ɻ ࣍ʹϑΝΠϧΛमਖ਼͠·͢ɻ BQQNPEFMTTUPSZSC DMBTT4UPSZ"DUJWF3FDPSE#BTFͷ࣍ͷߦҎԼՃ ࣍ͷϖʔδͭͮ͘
GUFYU@pFMEQJDUVSF BQQWJFXTTUPSJFT@GPSNIUNMFSCΛՕॴमਖ਼ GpMF@pFMEQJDUVSF ҎԼͷΑ͏ʹมߋ GPSN@GPS !TUPSZ EPcGc GPSN@GPS !TUPSZ IUNM\NVMUJQBSUUSVF^
EPcGc ҎԼͷΑ͏ʹมߋ ͖ͭͮ BQQWJFXTTUPSJFTTIPXIUNMFSCΛՕॴमਖ਼ !TUPSZQJDUVSF JNBHF@UBH !TUPSZQJDUVSF@VSM XJEUI JG!TUPSZQJDUVSFQSFTFOU ҎԼͷΑ͏ʹมߋ
ϒϥβ͔Βಈ࡞֬ೝ SBJMTTΛ࠶ىಈͯ͠ಈ࡞֬ೝͯ͠Έ·͠ΐ͏ɻ IUUQMPDBMIPTUTUPSJFT CVOEMFFYFDSBJMTT ϒϥβͰ্هͷΞυϨεΞΫηε /FXTUPSZϖʔδͰ1JDUVSFʹ ϑΝΠϧΛબͯ͠อଘ͢Δͱɺ ը૾ϑΝΠϧΛVQMPBEͰ͖·͢ɻ
Ͱ͖ͯͨٙΛ આ໌͍ͯ͘͠
Έ
Ϛονͨ͠ ڭՊॻ͕ͳ͍
ੈͷதʹຊ ͨ͘͞Μ ͋Δ͚ΕͲ
ଟ͘ͷຊͷ ର ϓϩάϥϚ
ϓϩάϥϜΛॳ Ίͯॻ͘ਓʹ ෑډ͕ߴ͍
ࢲͷߨٛͰ
ͨͷ͍͠3VCZ ʴ ࣗ࡞
ͨͷ͍͠3VCZ ࢿྉͰิ ԋश ֤ڥͰͷ࣮ߦํ๏ ϓϩάϥϜతͳࢥߟํ๏
IUUQTHJUIVCDPNIJUPUTVCBTIJSVCZMFDUVSF
3VCZฤ TIFMM JSC SC ࢛ଇԋࢉɺຊޠɺม ݅அɺ܁Γฦ͠ɺϝιου "SSBZɺ)BTI ΦϒδΣΫτɺΫϥεɺΠϯελϯε 8JLJQFEJBΞΫηεղੳ UXJUUFSσʔλͷղੳ
IUUQTHJUIVCDPNIJUPUTVCBTIJSVCZMFDUVSF
3BJMTฤ ɾҰ൪খ͞ͳ3BJMTΞϓϦͭ͘Γ DPOUSPMMFS WJFX ɾ3VCZͷΫϥεΛ3BJMTຒΊࠐΉ ͓Έ͘͡ΞϓϦ ɾ$36%ղઆ ϦΫΤετ
SPVUFT DPOUSPMMFS WJFX NPEFM ɾσόοά $ISPNFͰϦΫΤετΛ؍ɺQɺMPHɺQSZ IUUQTHJUIVCDPNIJUPUTVCBTIJSVCZMFDUVSF
ͨͷ͍͠ αϯϓϧ
IUUQXXXFTUBUHPKQ4(FTUBU-JTUEP CJEDZDPEF
None
IUUQTHJTUHJUIVCDPN
Ͱࢿྉࣗ࡞େม
िץ࿈ࡌ࡞Ոؾ
8FC্ͷࢿྉͷ׆༻
ϛχπΫCZ/B$M
υοτΠϯετʔϧ
υοτΠϯετʔϧ
υοτΠϯετʔϧ
$PEFDBEFNZ આ໌ͱώϯτ )5.- $44ͳͲ ίʔυΛॻ͚Δ
$PEFDBEFNZ ͦͷͰॻ͍ͨ ݁ՌΛݟΒΕΔ
IUUQUSZSVCZPSH ͜͜ʹ3VCZίʔυΛ ೖྗ࣮ͯ͠ߦͰ͖·͢ ϓϩάϥϜΛফ͍ͨ͠ ߹Ϧϩʔυ IFMQͰ3VCZϨοεϯ։࢝
΄͔ʹ
ࡶஊ ɾจԽΛ͑Δ ɾՀཟͱόβʔϧ ɾ5Χʔυ ɾΞϧΰϦζϜτϨʔυ ɾ౦෩ʢຑʣ ɾ3VCZ$POG ɾถେ౷ྖબڍ ɾΫοΫύου࠷ڧ
)BWFB )BQQZ3VCZ5JNF