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
cookpad_tech_kitchen_7
Search
seki at druby.org
April 21, 2017
Programming
8
4.5k
cookpad_tech_kitchen_7
#cookpad_tech_kitchen
seki at druby.org
April 21, 2017
Tweet
Share
More Decks by seki at druby.org
See All by seki at druby.org
XP, Testing and ninja testing
m_seki
3
200
RWC 2024 DICOM & ISO/IEC 2022
m_seki
0
450
ERB, ancient and future
m_seki
3
890
ERB Hacks
m_seki
1
1.5k
わりこまれるはなし
m_seki
0
830
ぼくのかんがえたさいきょうのけいやくによるプログラミング
m_seki
2
1.2k
Learn Ractor
m_seki
1
2.7k
How many copies did you buy the first print?
m_seki
1
740
Create my own search engine.
m_seki
1
5.3k
Other Decks in Programming
See All in Programming
iOSアプリ開発で 関数型プログラミングを実現する The Composable Architectureの紹介
yimajo
2
220
設計やレビューに悩んでいるPHPerに贈る、クリーンなオブジェクト設計の指針たち
panda_program
6
1.6k
Enterprise Web App. Development (2): Version Control Tool Training Ver. 5.1
knakagawa
1
120
型付きアクターモデルがもたらす分散シミュレーションの未来
piyo7
0
810
Deep Dive into ~/.claude/projects
hiragram
9
1.6k
Cursor AI Agentと伴走する アプリケーションの高速リプレイス
daisuketakeda
1
130
What Spring Developers Should Know About Jakarta EE
ivargrimstad
0
270
エラーって何種類あるの?
kajitack
5
310
プロダクト志向なエンジニアがもう一歩先の価値を目指すために意識したこと
nealle
0
110
Railsアプリケーションと パフォーマンスチューニング ー 秒間5万リクエストの モバイルオーダーシステムを支える事例 ー Rubyセミナー 大阪
falcon8823
4
970
システム成長を止めない!本番無停止テーブル移行の全貌
sakawe_ee
1
140
Azure AI Foundryではじめてのマルチエージェントワークフロー
seosoft
0
140
Featured
See All Featured
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Code Review Best Practice
trishagee
68
18k
What's in a price? How to price your products and services
michaelherold
246
12k
Docker and Python
trallard
44
3.4k
A better future with KSS
kneath
239
17k
Producing Creativity
orderedlist
PRO
346
40k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.8k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Bash Introduction
62gerente
614
210k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
357
30k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
107
19k
Gamification - CAS2011
davidbonilla
81
5.3k
Transcript
ཧͷ։ൃݱͷ ʮ;ͭ͏ʯͷ͓ ·͓ͭ!,B[V@DPDPB ͖͋·!BLJZBNB ͖ͤ!N@TFLJ ΈΘ!NJXB
!,B[V@DPDPB ·͓ͭ͘Μ ΫοΫύουͷςετΤϯδχΞ ࠾༻త
!N@TFLJ ͖ͤ͘Μ 3VCZίϛολ ϓϩͷແ৬ એత➡ ਓࣄ෦ॻ͍ͯΔΑʂ
!BLJZBNB ळࢁ͘Μ 4PGUXBSF5FTUJOH4QFDJBMJTU ݺͼग़ͪ͠Όͬͨ
!NJXB ΈΘ ΈࠐΈγεςϜʢࣗࣾʣͷ࿀Ѫܥςελʔ ळࢁత
ɻ ΫοΫύουΤϯδχΞτʔΫφΠτ ʙΫοΫύουςετΤϯδχΞWPM5FTUJOHฤʙ ΫοΫύουͱΘͨ͠ͷݱͷςετΤϯδχΞɺ ςελʔͷΛ͠·ͨ͠
ɻ ͜ͷΠϕϯτͷ͋ͱɺळࢁ͘Μ͕͜ΜͳจΛൃද͠ ·ͨ͠
ຊ৴པੑֶձࢽ7PM /PQQΑΓ
zಠཱͨ͠ςετઐνʔϜ͕ςετ͢ΔͷͰͳ͘ɼ։ൃνʔϜ ͷதʹςετΤϯδχΞΛ༗͠ςετΤϯδχΞ͕ৗతʹෆ۩ ߹ʹ௨͡Δҧײ͕ͳ͍͔ײ֮Λݚ͗·͢͜ͱʹΑͬͯෆ۩߹ Λݟ͚͍ͭͯΔνʔϜ͕͋Δɽz zͦͷ৫Ͱʮਓϛε͢Δʯͱ͍͏ࣄ࣮ΛνʔϜͷશһ͕ड͚ ೖΕ͍ͯΔɽͦͷͨΊɺ։ൃऀͱςετΤϯδχΞ͕ରܾ͢Δߏ ਤʹͳΒͣɼ։ൃऀςετΤϯδχΞෆ۩߹ΛݮΒ࣭͠ Λ্͢Δͱ͍͏ڞ௨ͷతʹ͕͍͍ͯΔɽςετͷݱͷ ཧܗͷҰͭͱࢥ͏ɽz ຊ৴པੑֶձࢽ7PM
/PQQΑΓ
ղઆ͠·͢ Ͷ
ʮςετͷݱͷཧܗͷҰͭͱࢥ͏ʯ Θͨ͠ͷνʔϜ͕΄ΊΒΕͯخ͍͠ʂ ळࢁ͘Μςετͷଆ໘͔Βઆ໌ͯ͘͠Ε·͕ͨ͠ɺ ͜ͷνʔϜ։ൃͱςετ͕Ұମʹͳͬͯ·͢ ࠓςετ։ൃ྆ํ;͘Ίͯɺ͓͠·͠ΐ͏
Θͨ͠ͷνʔϜ !N@TFLJͷνʔϜͷ͜ͱͰ͢ ςετΛத৺ͱͨ͠෮։ൃͷνʔϜͰ͢ ͘Β͍ଓ͍͍ͯΔνʔϜ +B445ɺσϒαϛͰใࠂͨ͜͠ͱ͕͋ΔͷͰ ͖͍ͨਓ͍Δ͔ͳ
ࠓͷਐΊํ Θͨ͠ͷνʔϜͰΑ͘͏ϑϨʔζɺتΕΔ;Δ·͍ Λ͍͔ͭ͘༻ҙ͖ͯ͠·ͨ͠ ͦΕΛࡐʹɺΈͳ͞Μͱ͓͍ͨ͠ͱࢥ͍·͢
ʮ໌͔ΒΒͰग़དྷͦ͏ͱࢥͬͯΒ͑Δ ͕ྑ͍ͱࢥ͍·͢ɻʯ Θͨͦ͠͏ࢥ͏ʂ ؔ͘Μͷɺฉ͍ͯΑ͘Θ͔Βͳ͍ΜͩΑͳʜ
ল ͜Ε·ͰɺνʔϜΛ၆ᛌͯ͠։ൃͷྲྀΕʢ෮։ൃɺ ׂ࣌ؒͷ͜ͱɺϓϩηε͕มԽ͢ΔͨΊͷ͔͚͠ʣ Λใࠂ͖ͯ͠·ͨ͠ Ͱɺ͜ΕͰ͖͕͋ͬͨνʔϜͷ༷ࢠΛઆ໌ͨ͠ ͚ͩͰ͢ ʢಡΜͩΓฉ͍ͨΓ͚ͨͩ͠ͰɺͰ͖ΔΘ͚ͳ͍ͩΖʂʣ
Ծઆ νʔϜ͕νʔϜʹͳΔաఔΛࢥ͍ฦͯ࣍͠ͷΑ͏ʹ ԾઆΛཱͯ·ͨ͠ Λղܾ͍ͯ͘͠࠷தʹ͓͜Δʮখ͞ͳձʯ͕ ʮΑ͍νʔϜʯΛ͔ͨͪ࡞ΔʢͷͰͳ͍͔ʂʣ ͔ͬ͜Α͘ݴ͏ͱνʔϜͷՁ؍ɹ ϑϨʔζˠ;Δ·͍ˠՁ؍
None
None
ࡐ ࣄͷΓํ ʮ͏·͍ͬͨ͘ΒͲ͏ͳΔͷʁʯ ʮͳΜͰΔΜ͚ͩͬʁʯ ʮΓͨ͘ͳ͍ͷʁʯ γάφϧʮ͑ʔʯ تΕΔ;Δ·͍ʹ͍ͭͯ ࠓ͜ΜͳࡐΛͬͯɺͲΜͳྑ͍͜ͱ͕͋Δͷ͔ɺ༻͢Δঢ়گͳͲΛհ ͠·͢ɻ Έͳ͞ΜͷνʔϜ৫ͰࣅͨΑ͏ͳঢ়گʹͳͬͨ࣌ɺͲΜͳ͜ͱ͕ى͖Δͷ͔ɺ
Έͳ͞ΜͲ͏ߦಈ͍ͯ͠Δͷ͔ɺ಄ͷதͰߟ͑ͳ͕Βฉ͍͍ͯͩ͘͞Ͷɻ
ʮ͏·͍ͬͨ͘ΒͲ͏ͳΔͷʁʯ ͜Μͳྑ͍͜ͱ͕ى͖Δ ΰʔϧ͕Θ͔Δ ͔֬ΊΔํ๏͕Θ͔Δ ΰʔϧ·Ͱͷεςοϓ͕Θ͔Δ ͏·͘໎͑Δ ʮ˓˓͕Θ͔Δʯ݁ՌͰ͚͢ΕͲɺ͜ͷϑϨʔζ͕τϦΨʔͱͳΓʮԿ͕Θ͔͍ͬͯͯɺ Կ͕Θ͔Βͳ͍ͷ͔ʯ͕໌Β͔ʹͳΓ·͢ͶɻͦͷޙɺΘ͔ΔͨΊͷ׆ಈ͕ߦΘΕɺͦͷ݁ ՌʮΘ͔ΔʯΑ͏ʹͳΔͱ͍͏͜ͱͰ͢ɻʮ͏·͘໎͑Δʯͱ͍͏ͷɺͪΐͬͱઆ໌͕ ͍͠ͷͰ͕͢ɺΰʔϧ·ͰͷԾઆΛཱͯͯஈ֊తʹղ͘ΜͰ͢Ͷɻͦ͏͢Δͱؒҧ͍ʹؾ͕
͖ͭ͘͢ͳΔɻ࠷ޙͷ࠷ޙʹͳͬͯ͏·͍͔͘ͳ͍͜ͱ͕͔ͬͯɺ࿏಄ʹ໎ͬͯ͠·͏͜ ͱ͕ى͖ͳ͍Α͏ʹͳ͍ͬͯΔɻ͔ͩΒɺઓུతʹؒҧ͑ΒΕ·͢ɻ҆৺ͯ͠໎͑ΔΜͰ͢Ͷɻ
ʮ͏·͍ͬͨ͘ΒͲ͏ͳΔͷʁʯ ঢ়گ ˓˓ͷௐࠪΛ͠·͢ ༷Λ˓˓͞Μʹ֬ೝ͠·͢ ετʔϦʔͷλΠτϧ͕ʮ˓˓ػೳͷ࣮ʯ ˓݄˓ʹϦϦʔε͠·͢ ϨάϨογϣϯςετɺը૾సςετɺɺɺ ߟ͑ͯΈΑ͏
ୈᶜ෦ɹຊਓࣥචऀʹΑΔνʔϜϦʔμʔγοϓʹ͍ͭͯΔ͖͜ͱ ষɹϦʔυʹ͍ͭͯ ؔকढ़ ষɹҰॹʹͰ͖ΔϦʔμʔΛҭͯΑ͏ ঙ࢘Յ৫ ষɹ͏·͍ͬͨ͘ΒͲ͏ͳΔͷ ؔকढ़
ʮͳΜͰΔΜ͚ͩͬʁʯ ͜Μͳྑ͍͜ͱ͕ى͖Δ ΰʔϧͷҙຯ͕Θ͔Δ ͲΜͳͱ͖ʹ͍͍ͷʁ ͳʹΛղܾ͢Δͷʁ ͩΕ͕΄͍͠ͷʁ Γ͗͢Λ͑ΒΕΔ Ͳͷ͘Β͍Ε͍͍ͷʁ ͍·͕ࣗɺνʔϜ͕Ζ͏ͱ͍ͯ͠Δʢ͍ͬͯΔʣ࡞ۀԿͷͨΊʹ͍ͬͯΔΜ͚ͩͬʁ ͱߟ͑Δ͖͔͚ͬʹͳΓ·͢ɻ࡞ۀࣗମͷҙຯΛߟ͑Δ͜ͱʹͳΔ͔͠Ε·ͤΜ͠ɺͦͷ࡞
ۀͰ࡞Ζ͏ͱ͍ͯ͠ΔϞϊʹ͍ͭͯߟ͑Δ͜ͱ͋Γ·͢ɻԿͰΕ͍͍ͬͯͷͰͳ͍ ͷΘ͔͍ͬͯΔ͚ͲɺΓ͍͗ͯ͢ΔͷΘ͔ΓͮΒ͍ΜͰ͢ΑͶɻ
ʮͳΜͰΔΜ͚ͩͬʁʯ ঢ়گ ͠߹͍ͬͯͯಓʹ໎ͬͯͦ͏ͳ࣌ ٸʹ੩͔ʹͳΔ ͕݁ग़ͳ͍ ࡞ۀதʹ ࠔ͍ͬͯΔΑ͏ʹݟ͑Δͱ͖ த͍ͯ͠Δͱ͖ ߟ͑ͯΈΑ͏
ʮΓͨ͘ͳ͍ͷʁʯ ͜Μͳྑ͍͜ͱ͕ى͖Δ Γͨ͘ͳ͞Λ͔Γ߹͑Δ ͜Μͳͱ͜Ζ͕ΠϠͰ͢ ΞϨ͕ͦ͠͏Ͱ͢ ΈΜͳͷʮΓͨ͘ͳ͍ʯʹͳΔ Δؾͷ͍ͤʹ͠ͳ͍Ͱ͢Ή ୭͔͕ͬͯ͘ΕΔ Γͨ͘ͳ͍͜ͱɺ͋Γ·͢ΑͶɻͦΜͳͱ͖νʔϜͷ୭͔ʹʮΓͨ͘ͳ͍ͷʁʯͱฉ͔Ε ͨΒͳΜͯ͑·͔͢ʁ
Θͨ͠ͷνʔϜͰʮΓͨ͘ͳ͍ʯ͕ೝΊΒΕ͍ͯΔΑ͏ʹײ͡·͢ɻϞνϕʔτ͢ΔΑΓ ΠϠͳ͜ͱΛͳ͘͢ɺ·ͨΈΜͳͷͷʹ͢Δ΄͏͕؆୯ʂ
ʮΓͨ͘ͳ͍ͷʁʯ ঢ়گ ͍ͦ͏ͳͱ͖ Λલʹݴ༿͕ग़ͳ͍ͱ͖ ʮϞνϕʔγϣϯ͕ʔʯ͍ͬͯ͏ਓ͕͍Δͱ͖ ؔ͘Μ͕Γ͍ͨͱ͖ ߟ͑ͯΈΑ͏
͏·͍ͬͨ͘Β Ͳ͏ͳΔͷʁ ͳʹͯ͠Δͷʁ ͳΜ͚ͩͬʁ Ͱ͖ͦ͏ʁ ࠶ݱͤͨ͞Β Θ͔Δͷʁ ͳΜͰ ΔΜ͚ͩͬʁ ͜Εμϝͳͭͩ
ͳΜͰͰ͖Δͱ ࢥ͏ͷʁ ࣗͰ৮ͬͯ Έͨʁ ଟܾͰܾΊΔʁ Γͨ͘ͳ͍ͷʁ ͳʹ͕େࣄ͡Ό ͳ͍ͷʁ Ͳ͕ࣗ͜৴ ͋Δͷʁ ͕ΜΒͳ͍Ͱʂ Έͤͯ ͑ʔ
ʮ͑ʔʯ ͜Μͳྑ͍͜ͱ͕ى͖Δ ॠ࣌ʹҧײΛ͑Δ͜ͱ͕Ͱ͖Δ ͦΕ͕Կͳͷ͔ΛΈΜͳ͕Ұ੪ʹߟ͑ɺ࢝͠ΊΔ େͷ߹ɺ՝ʢʣ͕ݟ͔ͭΔ Θͨ͠ͷνʔϜʮ͑ʔʯΛฉ͔ͳ͍͕ͳ͍͘Β͍ʮ͑ʔʯΛ͍·͢ɻͪΐͬͱݴͬͯΔ ͜ͱ͕͔Βͳ͍ͳʔͱ͍͏͍࣌·͢͠ɺͦΕ͓͔͍͠Μ͡Όͳ͍͔ͳͱࢥ͏࣌ɺ· ͣʮ͑ʔʯΛݴͬͯΈΔ͜ͱ͕ଟ͍Ͱ͢ɻ͠ɺ͋ͳ͕ͨ୭͔͔Βʮ͑ʔʯͱݴΘΕͨΒɺ ͲͷΑ͏ͳؾ࣋ͪʹͳΓ·͔͢ʁԿ͔͓͔͠ͳ͜ͱΛݴͬͯ͠·ͬͨΜͩΖ͏͔ͱෆ҆ͳؾ ࣋ͪʹͳͬͨΓɺԿ͔Λ൱ఆ͞ΕͨΑ͏ͳؾ࣋ͪʹͳͬͯ͠·͏͔͠Ε·ͤΜͶɻͦͦ
ԿͰͦΕΛݴΘΕΔͷ͔͔Βͣɺࠔͯ͠͠·͏͔͠Ε·ͤΜɻΘͨ͠ͷνʔϜͷ ʮ͑ʔʯͦ͜·ͰਂࠁͳʢϝϯόʔΛই͚ͭͯ͠·͏Α͏ͳʣͷͰ͋Γ·ͤΜɻ୭͔ ͕ʮ͑ʔʯΛݴͬͨॠؒʹɺΈΜͳͷ՝ʹͳΓ·͢ɻ
ʮ͑ʔʯ ঢ়گ ͍ͭͰ͑Δ Α͘͏ϑϨʔζͷલʹ͏ͱɺΑΓޮՌత ͑ʔɺ͏·͍ͬͨ͘ΒͲ͏ͳΔͷʁ ͑ʔɺͳΜͰΔΜ͚ͩͬʁ ୯ಠͰͬͯ0, ߟ͑ͯΈΑ͏
تΕΔ;Δ·͍ ͋Εɺมͩͳʁͱࢥͬͨ࣌ʹɺ͙͢ʹ୭͔ʹݴ͏ ͜Εόά͔ͳʁͱࢥͬͨ࣌ʹɺ͙͢ʹ୭͔ʹݟͤΔ ༷͕Θ͔Βͳ͍࣌ɺ୭͔ʹฉ͘ ςετͷΓํ͕Θ͔Βͳ͍࣌ɺ୭͔ʹฉ͘ ςετΛࢥ͍͍ͨ࣌ɺΔલʹ୭͔ʹݴ͏ ͜Ε·ͰΘ͕ͨ͠ܦݧ͖͍͔ͯͨͭ͘͠ͷνʔϜͰʮ͜͏͢Δ͖ʯͱ͞Ε͍ͯͨ;Δ·͍ͱ ҧ͍ɺ͡Ί᪳ͨ͠ΓɺͦΕ͕ग़དྷΔΑ͏ʹͳΔ·Ͱ͕͔͔࣌ؒͬͨͷɻ
ʮ໌͔Βग़དྷͦ͏ʁʯ
ʮ໌͔Βग़དྷͦ͏ʁʯ ϥϜμϊʔτͷέʔε
ʮ໌͔Βग़དྷͦ͏ʁʯ ࠓ൩ɺ͜ͷձͰɺग़དྷͯͨͰ͠ΐʁ
None