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
ソーシャルコーディング時代のふつうのプログラマサバイバルガイド
Search
takkanm
September 16, 2012
Programming
7.4k
17
Share
ソーシャルコーディング時代のふつうのプログラマサバイバルガイド
http://sapporo.rubykaigi.org/2012/ja/schedule/details/53.html
takkanm
September 16, 2012
More Decks by takkanm
See All by takkanm
Rails な受託の会社でぼくがやっていること / What I do in a Rails consulting company
takkanm
6
14k
わたしの知っているRubyKaigiとESM / The relationship between RubyKaigi and ESM that I know
takkanm
0
440
Learn Programming Essence from Ruby patches
takkanm
4
2.3k
UpdateAdhoqToSupportRails5
takkanm
0
1.5k
That I speak when talking about language that starts from R
takkanm
3
2.6k
journey through the programming language(censored edition)
takkanm
1
280
10th anniversary Rubyist Magazine
takkanm
0
220
ordk03-ninja-talk
takkanm
0
610
bookshelf_in_my_head.pdf
takkanm
0
150
Other Decks in Programming
See All in Programming
Redox OS でのネームスペース管理と chroot の実現
isanethen
0
480
モックわからないマン卒業記 ~振る舞いを起点に見直した、フロントエンドテストにおけるモックの使いどころ~
tasukuwatanabe
3
430
Codex の「自走力」を高める
yorifuji
0
1.3k
CS教育のDX AIによる育成の効率化
niftycorp
PRO
0
170
ローカルで稼働するAI エージェントを超えて / beyond-local-ai-agents
gawa
1
190
ネイティブアプリとWebフロントエンドのAPI通信ラッパーにおける共通化の勘所
suguruooki
0
230
ポーリング処理廃止によるイベント駆動アーキテクチャへの移行
seitarof
3
1.3k
仕様漏れ実装漏れをなくすトレーサビリティAI基盤のご紹介
orgachem
PRO
8
3.7k
Goの型安全性で実現する複数プロダクトの権限管理
ishikawa_pro
2
1.4k
Strategy for Finding a Problem for OSS: With Real Examples
kibitan
0
130
今こそ押さえておきたい アマゾンウェブサービス(AWS)の データベースの基礎 おもクラ #6版
satoshi256kbyte
1
210
AWS×クラウドネイティブソフトウェア設計 / AWS x Cloud-Native Software Design
nrslib
16
3.5k
Featured
See All Featured
A Soul's Torment
seathinner
5
2.6k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.9k
Un-Boring Meetings
codingconduct
0
240
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.4k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.3k
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.4k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Practical Orchestrator
shlominoach
191
11k
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.4k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
240
Navigating Weather and Climate Data
rabernat
0
150
Transcript
4VSWJWJOH1SPKFDUT"GUFSUIF (JU)VC3FWPMVUJPO "O0SEJOBSZ1SPHSBNNFST (VJEF .JUTVUBLB.JNVSB &JXB4ZTUFN.BOBHFNFOU *ODBTBLVTBSC 129݄16༵
NF 129݄16༵
129݄16༵
XPSL 129݄16༵
IUUQDPEFSXBMMDPNUFBNFJXB TZTUFNNBOBHFNFOU 129݄16༵
129݄16༵
129݄16༵
DPNNVOJUZ 129݄16༵
129݄16༵
IUUQXXXNFFUVQDPNUPLZPSBJMTFWFOUT 129݄16༵
129݄16༵
3VCZ,BKBʹͳΓ·ͨ͠ 129݄16༵
IUUQKQSVCZJTUOFUNBHB[JOF 129݄16༵
Δͼ·Ͱ هࣄΛॻ͍ͯ͘ΕΔํ ҰॹʹฤूΛ͢ΔํΛ ืू͍ͯ͠·͢ IUUQKQSVCZJTUOFUNBHB[JOF 129݄16༵
ࠓ͞ͳ͍͜ͱ 129݄16༵
ࠓ͞ͳ͍͜ͱ ✓ίʔυϨϏϡʔͷϕετϓϥΫςΟε ✓ΩϥΩϥͨ͜͠ͱ ✓ࠈͷΈ͞Θ ✓*%0- 129݄16༵
ࠓͷ͓ 129݄16༵
͓ͷ༰ ιʔγϟϧίʔσΟϯά͕࢝·ͬͨ ӬͰੜ͖ΔͨΊɺ .Z$PEFΛ8F$PEFͱͳΔΑ͏ʹ ؾΛ͚ͭͨ͜ͱ 129݄16༵
Ӭͷਓͨͪ 129݄16༵
129݄16༵
R u b y i s t ͨ ͪ 129݄16༵
Φ ϒ ਥ ͨ ͪ 129݄16༵
129݄16༵
͜ͷͰى͖ͨ ڥͷมԽ 129݄16༵
৬ʹ(JU)VC͕ ͖ͬͯͨ 129݄16༵
ಋೖͷ͖͔͚ͬ ✓ʮίʔυϨϏϡʔʯ ✓େਓ O ͷϓϩδΣΫτ ✓νʔϑϓϩάϥϚʔ VSTN ʹΑΔ ϨϏϡʔ 129݄16༵
ϨϏϡʔ͚ͬ͜͏େม ✓ࢦఠޱ಄ PS*3$ ✓มߋΛ͏ͷ͕େม ✓ݟΔ͖ର͕ࢁ 129݄16༵
ͦ͜Ͱ(JU)VCͰ͢Α ✓ͲΜͲΜϨϏϡʔͰ͖Δڥʹ ✓ίϝϯτΛͤΔ ✓QVMMSFRVFTUͰϨϏϡʔґཔ 129݄16༵
ࣗͨͪͷπʔϧ࡞Γ ✓࠷ॳ̍ਓ͕࡞ͬͨϓϩμΫτ ✓ผͷ୭͔͕͕ࣗཉ͍͠ػೳՃΛউ खʹΔΑ͏ʹͳͬͨ ✓ࠓ·Ͱಉ͡ϓϩδΣΫτʹͳͬͨ͜ͱ ແ͍ਓ͕ಉ͡ίʔυΛ͍͡ΔΑ͏ʹͳ ͬͨ 129݄16༵
ձࣾͷதʹ(JU)VCͰ ى͖͍ͯΔιʔγϟϧͳ ׆ಈ͕ൃੜ͢ΔΑ͏ʹͳͬͨ 129݄16༵
มԽͷ·ͱΊ ✓ଞͷϓϩδΣΫτͷίʔυΛݟΕΔΑ ͏ʹͳͬͨ ✓ϓϩδΣΫτ֎ͷϝϯόʔϑΟʔυ όοΫΛͩͤΔڥʹͳͬͨ ✓ϝϯόʔશһ͕ಉ͡ίʔυΛڞ༗͢Δ Α͏ʹͳͬͨ 129݄16༵
129݄16༵
ʢʼʻʣ ✓QVTI͢ΔͨͼʹೖΔίϝϯτͷʑ ✓ࣄ͕ਐ·ͳ͍ ✓Ԝ 129݄16༵
͚ͬ͜͏ਏ͍ 129݄16༵
ͦΜͳதͰ͕ࣗ ίʔυΛॻ͖ଓ͚Δ ͨΊʹԿ͕Ͱ͖Δ͔Λ ߟ͑ͯΈͨ 129݄16༵
ٯڥΛνϟϯεʹ ✓ฐࣾʹɺ͍͢͝ਓ͕͍ͬͺ͍͍Δ ✓ͦΜͳ͍͢͝ਓ͔ΒݟࣺͯΒΕͣʹབྷ ΜͰΒ͑Δͷνϟϯε ✓ड͚ͨࢦఠΛʹ͚͍͚ͭͯɺΑ͍ श׳Λʹ͚ͭΕΔͣ 129݄16༵
ࢥߟ͕ωΨςΟϒϑΟʔυό οΫʹ͓͍ͪΒͳ͍Α͏ʹ ҙࣝΛม͑ͨ 129݄16༵
ͳͥࢦఠ͕ଟ͍͔Λ ߟ͑ͨ ✓ʮӬͷNBTUFSϒϥϯνʹมͳ ίʔυ͕ແ͍ʯΛ࣮ݱ͢ΔͨΊʹɺ Θͨ͠ʹΓͯͳ͍͜ͱ͕ଟ͍ 129݄16༵
ӬͷNBTUFSϒϥϯνʹ͍Ε ͍͍ͯΑ͏ͳίʔυΛॻͨ͘Ίʹ Θ͕ͨ͠ؾΛ͚ͭΔΑ͏ʹͳͬͨ /ݸͷ͜ͱ 129݄16༵
129݄16༵
ίʔυͷܗΛ ؾʹ͢Δ 129݄16༵
ίʔυͷܗΛؾʹ͢Δ ✓͏͚ͨࢦఠ ✓ίʔυʹ͍ΕΔۭനվߦͷҐஔ͕ όϥόϥ ✓ॻ͖ํʹϜϥ͕͋Δ 129݄16༵
ྫɿۭനͷ͍Εํ ࢦఠΛ͏͚Δ)BTIͷॻ͖ํ {a: 1, b: 2 } ࢦఠΛ͏͚ΔϒϩοΫͷॻ͖ํ [1, 2,
3].map{ |a| a + 1} 129݄16༵
ྫɿۭനͷ͍Εํ ࢦఠΛ͏͚Δ)BTIͷॻ͖ํ {a: 1, b: 2 } ࢦఠΛ͏͚ΔϒϩοΫͷॻ͖ํ [1, 2,
3].map{ |a| a + 1} ˢ͜ͷεϖʔεԿ 129݄16༵
ྫɿۭനͷ͍Εํ ࢦఠΛ͏͚Δ)BTIͷॻ͖ํ {a: 1, b: 2 } ࢦఠΛ͏͚ΔϒϩοΫͷॻ͖ํ [1, 2,
3].map{ |a| a + 1} ͜ͷεϖʔεԿ ˢ 129݄16༵
ྫɿۭനͷ͍Εํ ࢦఠΛ͏͚Δ)BTIͷॻ͖ํ {a: 1, b: 2 } ࢦఠΛ͏͚ΔϒϩοΫͷॻ͖ํ [1, 2,
3].map{ |a| a + 1} ͜͜ʹεϖʔε͍Εͳ͍ͷ ˢ 129݄16༵
Ͳ͏ͯ͠େࣄ͔ ✓վߦۭനίʔυͷҰ෦ͳͷͰؾʹ͠ ͳ͚Ε͍͚ͳ͍ ✓ίʔυͷݟ͕ͨѱ͍ͱϨϏϡϫʔ͕ຊ ࣭Ҏ֎ͷ͜ͱͰؾΛͱΒΕͯ͠·͏ ✓ݟͨͷޙʹ࠶ϨϏϡʔʹͳΔͷͰແ ବ͕ൃੜ͢Δ 129݄16༵
࣮ફͨ͜͠ͱ ✓ࢦఠ͞Εۭͨനվߦͷ͍ΕํΛཧղ͠ ͯɺίʔυΛॻ͘ͱ͖ʹ֬ೝ͢Δ ✓ଞͷਓ͕ॻ͍ͨίʔυΛϨϏϡʔ͢Δͱ ͖ҙࣝ͢Δ ✓Πϯλʔωοτʹެ։͞Ε͍ͯΔ͍ΖΜ ͳίʔσΟϯάϧʔϧΛݟͯࣗͱͷҧ ͍Λ୳ͯ͠ɺΑ͍ͷऔΓೖΕΔ 129݄16༵
129݄16༵
આ໌Ͱ͖ΔίʔυΛ ॻ͘ 129݄16༵
આ໌Ͱ͖ΔίʔυΛॻ͘ ✓͏͚ͨࢦఠ ✓͜ͷมͲ͏͍͏ҙຯͰ͔͢ ✓͜ͷߏԿͰ͜͏ͳΔΜͰ͔͢ 129݄16༵
ྫɿςετσʔλͷ ηοτΞοϓ object.instance_variable_set :@user, 'takkanm' 129݄16༵
ྫɿςετσʔλͷ ηοτΞοϓ object.instance_variable_set :@user, 'takkanm' lΘ͚͕Θ͔Βͳ͍Αz 129݄16༵
Ͳ͏ͯ͠େࣄ͔ ✓ࣗͰΘ͔Γ໊͍͢લΛ͚ͭͨͱࢥͬ ͯɺਓʹཧղͰ͖ͳ͍͜ͱ͋Δ ✓࠷ऴతʹίϛοτ͞ΕΔͷಈ͚ͩ͘ Ͱͳ͘ҙਤ͕͖ͬΓ͍ͯ͠ͳ͍ͱ͍͚ ͳ͍ 129݄16༵
࣮ફͨ͜͠ͱ ✓ม໊ߏʹΜͩΒ૬ஊ ✓ଞͷਓͷίʔυ͔Β׳༻తͳ୯ޠΛֶͿ ✓આ໌Ͱ͖ΔΑ͏ʹॻ͚ΔΑ͏ʹɺԿ ॻ͖͢ 129݄16༵
129݄16༵
ಓ۩ΛΔ 129݄16༵
ಓ۩ΛΔ ✓͏͚ͨࢦఠ ✓ͦΕ˓˓ͰͰ͖ΔΑ ✓ʷʷͬͯͳ͍ͷͰ͔͢ 129݄16༵
ྫɿϑΝΠϧͷSFBE File.read(Rails.root + ‘/lib/ foo.csv’) 129݄16༵
ྫɿϑΝΠϧͷSFBE File.read(Rails.root + ‘/lib/ foo.csv’) l1BUIOBNFͳΒͬͱΓΑ͏͋ΔΑͶz 129݄16༵
ྫɿϑΝΠϧͷSFBE File.read(Rails.root + ‘/lib/ foo.csv’) l3BJMTSPPUKPJO bMJCGPPDTW` SFBEz 129݄16༵
ྫɿྻڍ͍ͨ͠ͱ͖ class Todo < ActiveRecord::Base STATUS = %w(done doing ready)
end 129݄16༵
ྫɿྻڍ͍ͨ͠ͱ͖ class Todo STATUS = %w(done doing ready) end lFOVNFSBUFE@BUUSJCVUFΛͬͨΒͲ͏Ͱ͔͢ʁz
class Todo < ActiveRecord::Base STATUS = %w(done doing ready) end 129݄16༵
Ͳ͏ͯ͠େࣄ͔ ✓ϓϩάϥϚͱͯ͠3VCZ3BJMTͷ ಓ۩ΛΑ͘Βͳ͍ͱ͍͚ͳ͍ ✓ϓϩάϥϚͱͯ͠ৗʹΞϯςφΛషͬͯ ͍Δඞཁ͕͋Δ 129݄16༵
࣮ફͨ͜͠ͱ ✓υΩϡϝϯτΛோΊΔ ✓45,͢Δ ✓ଞͷϓϩδΣΫτͷ(FNpMFΛݟΔ 129݄16༵
"QQFOEJY" 129݄16༵
՝֎׆ಈΛ͢Δ 129݄16༵
ֶΜͩ͜ͱΛ Ξτϓοτ͢Δ ✓ࣾͰֶΜͩ͜ͱΛΞτϓοτ͢Δ ✓ࣗͷཧղཱ͍ͬͯΔॴΛΔ͍ ͍ػձʹͳΔ 129݄16༵
ωοτ্ͷ׆ಈ ✓$PEFSXBMM ✓όοξͰ৫ͷংྻ͕ݟ͑Δ ✓3BJMTͷόοξ͕ཉͯ͘͠ύονΛॻ͘ ✓2"UNBSLJU ✓Ϩϐϡςʔγϣϯ͕ଞͷਓʹෛ͚ͳ͍Α͏ʹ࣭ʹ ͑Δ ✓3VCZϦϑΝϨϯεϚχϡΞϧ ✓ಡΜͰ͍Δͱ͖ʹؒҧ͍ʹؾ͍ͨΒ#VHใࠂ 129݄16༵
ίϛϡχςΟʹͰΔ ✓"TBLVTBSC ✓3BJMTษڧձ ✓3VCZJTU.BHB[JOFฤू ✓ࡳຈ3VCZձٞͰ͢ 129݄16༵
ࣗͷมԽʹ͍ͭͯ 129݄16༵
มΘͬͨ͜ͱ ✓QVTI͢Δͷָ͕͘͠ͳͬͨ ✓·ͩ·ͩποί·ΕΔ͚ͲલΑΓۤ Ͱͳ͘ͳͬͨ ✓ଞͷਓʹֶΜͩࣄΛ͑ΕΔΑ͏ʹ ✓ͭΒ͘ͳ͍Α͏ʹؾΛ͚ͭΔ ✓ڭ͑Δ͜ͱͰߋʹߟ͕͑ਂ·Δ͜ͱ 129݄16༵
;ͭ͏ͷ͜ͱͰ ✓͍͢͝ਓ͕;ͭ͏ʹߦͳ͍ͬͯΔࣄͩ ͚ͲɺΘͨ͠ʹؾΛ͚ͭͳ͍ͱͰ͖ ͳ͍ࣄ͕ଟ͔ͬͨ ✓͋ͨΓ·͑ͱݴΘΕ͍ͯΔࣄΛͪΌΜ ͱΕΔΑ͏ʹྗ͠ͳ͍ͱ͍͚ͳ͍ 129݄16༵
·ͱΊ ✓ձࣾͰίʔυΛॻ͘ڥձࣾ֎ͰίʔυΛ ॻ͘ڥࠩҟ͕ͳ͘ͳͬͯ͘Δ͜ͱͰɺ্ୡ ͢Δνϟϯε͕૿͑ͨ ✓ਏͯ͘ΒͣʹૉʹࢦఠΛड͚ͱΊֶͯΜ Ͱ͍͘͜ͱ͕େࣄ ✓ίʔυΛָ͘͠ॻ͘ͱ͍͏͜ͱΛੜۀʹ͢Δͷ ͳΒɺ͋ͨΓ·͑ͷ͜ͱΛਖ਼͘͠ΕΔΑ͏ʹ ৗʹҙࣝ͢Δ͜ͱ͕େࣄ 129݄16༵
129݄16༵