Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Nakamyというサービスを作った話 @社内LT会
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
kikunantoka
April 13, 2018
Technology
150
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Nakamyというサービスを作った話 @社内LT会
社内LT会@giftee
kikunantoka
April 13, 2018
More Decks by kikunantoka
See All by kikunantoka
個人開発しているサービスのインフラをAWSからGCPに載せ替えた話 💪 / kojin_kaihatsu_night_3
kikunantoka
0
1.3k
Gatsby.jsとCloud Functionsで毎週自動でコンテンツが更新され続けるフレームワーク比較サイトを作った話 / gotanda_js_13
kikunantoka
1
2.5k
Gatsby.jsとCloud Functionsで毎週自動でコンテンツが更新され続けるフレームワーク比較サイトを作った話 / frontend_night_1
kikunantoka
3
1.8k
サービスがゼロからN億円規模になるまに実践した7つのやっていき / 7_yatteiki_battle_conference_u30_2019
kikunantoka
1
1.4k
Gatsby.jsとNetlifyとの付き合い方 / gatsby-js-and-netlify
kikunantoka
3
650
Gatsby.jsで導入事例をバシバシ読めるSPAなLPを作った話 / gatsby-js-for-biz-lp
kikunantoka
2
750
Gatsby.jsで導入事例をバシバシ読めるSPAなLPを作った話 / gatsby-js-for-biz-lp
kikunantoka
1
1.9k
今日から始める Flood.io / fuka-taisaku-night-01
kikunantoka
0
370
20万RPMを捌くRailsアプリケーションの作り方
kikunantoka
0
860
Other Decks in Technology
See All in Technology
二歩目のフロントエンド・ウェブアクセシビリティ
camiha
2
670
スキマバイトという雇用形態は存在しないので、雇用期間1日のアルバイト契約を事業者とワーカーが結ぶ手続きを支えるのがタイミーなんです
akitoshiga
0
210
20261017福岡devIO 「AIは"良いダッシュボード"を作れるか?
jtakeda
0
190
Kiro Crewをはじめよう
kizawa2020
1
160
事業成長とデータ活用を止めないためのマネジメントへ挑戦
hiracky16
0
400
Active Record Connection Adaptersにおける長年の課題に再び取り組む
yahonda
0
200
S3 Filesで挑む! 八戸せんべい汁の食べ頃問題
usanchuu
0
120
1つのリクエストを追って理解する - llm-dのP/D分離
akhino
1
170
Optunaの最新リリースv5.0について
pfn
PRO
0
120
10年後、Engineering 行為を剥奪されるとして、わたしたちは、どう、何を創ればいいだろうか。 / If Engineering Is Taken Away in 10 Years, How and What Should We Create?
bitkey
PRO
1
200
AIがコードを書く時代に、エンジニアは何で自分の価値を証明するのか / In an era where AI writes code how do engineers prove their value
carta_engineering
3
1.1k
PagerDuty Tech Hub-鳴らすけれど、人は動かない
ezaki
0
180
Featured
See All Featured
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
580
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
1k
It's Worth the Effort
3n
188
29k
From π to Pie charts
rasagy
1
400
Discover your Explorer Soul
emna__ayadi
2
1.3k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Building an army of robots
kneath
307
47k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
3.2k
Skip the Path - Find Your Career Trail
mkilby
1
260
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
520
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
18k
Intergalactic Javascript Robots from Outer Space
tanoku
273
28k
Transcript
Nakamyͱ͍͏αʔϏεΛ࡞ͬͨ @kikunantoka ࣾLTձ@giftee on 2018/04/13
ࣗݾհ about: name: Fumitaka Kikukawa twitter: @kikunantoka job: engineer work_at:
giftee Inc. // giftee is a good company.
ԿͬͯΜͷʁ
ԿͬͯΜͷʁ ʢࣾͰ($1ͱུ͞Εͩ͢ʜʣ
Nakamyͱ͍͏αʔϏεΛ࡞ͬͨ • ։ൃͨ͠αʔϏεʹ͍ͭͯ • ݸਓ։ൃͷֶͼ • NakamyΛࢧ͑Δٕज़ • ࠓޙͷ͍͖ͬͯ
։ൃͨ͠ αʔϏεʹ͍ͭͯ
https://nakamy.com
Nakamy • ༑ୡͷiPhoneͷதΛ͚ΔαʔϏε • Facebook࿈ܞͯ͠ɺϗʔϜը໘ΛΞοϓϩʔ υ͢Εɺ༑ୡͷϗʔϜը໘ΛݟΕΔ • কདྷతʹϢʔβଐੑʹج͍ͮͨΞϓϦͷϨ ίϝϯυͳͲ
None
User 01 User 02 User 03 User 04
࡞͖͔͚ͬͨͬ • Βͳ͍ΞϓϦ͕ͨ͘͞Μ͋ͬͯɺ͍ͬͨͳ͍ • ͝൧ͷ࣌ʹʮ͓͢͢ΊͷΞϓϦ͋Δʁʯͬͯฉ͍ ͯ1ݸ͔2ݸ͙Β͍͔͠Ҿ͖ग़ͤͳ͍ • ༑ୡͷiPhoneͷதΛ͖͍ͨ • ͩͬͨΒɺ͍ͬͦͷ͜ͱϗʔϜը໘ΛΞοϓϩʔ
υͤͯ͞ɺը૾ղੳ͠Α͏
ݸਓ։ൃͷֶͼ
શવਐ·ͳ͍ • खΛಈ͔ͤΔਓࣗͻͱΓ • શʹϞνϕʔγϣϯʹґଘ • ฏ8࣌ؒಇ͍ͨޙͷΓ + •
ࣄͰαʔϏε։ൃ͍ͯ͠Δ࣌ͷͳ͔ ͳ͔͑ΒΕͳ͍
ٕज़ʹڽΓͩ͢ͱશવਐ·ͳ͍ • React on Rails on SSR on SPA with
HMR with Redux with CSS Modules • ΞϓϦԽΛߟ͑ͯ next.js + Railsʁ • ڥߏங͢Δ͚ͩͰຬͯ͠͠·ͬͨ • ؊৺ͷΞϓϦέʔγϣϯίʔυશવਐΜͰ͍ ͳ͔ͬͨ
MVPΛϦϦʔε͢Δ͜ͱΛతͱ͢Δ • ։ൃ͕ظԽ͢ΔͱϞνϕʔγϣϯ͕མͪͯ ͘Δ • ͑Δ͕࣌ؒগͳ͍͜ͱΛҙࣝͯ͠ಈ͘ • ࣮͢Δػೳٕज़ͷऔࣺબ • ʮ࡞Ζ͏ͱࢥͬͯ·͢ʯԿ࢈·ͳ͍
NakamyͷMVP • ϗʔϜը໘ΛΞοϓϩʔυ͢Δͱը૾ղੳ͞ Εͯɺதʹೖ͍ͬͯΔΞϓϦҰཡ͕औಘͰ͖ ͯɺͦͷΞϓϦͷৄࡉ͕ݟΕͯ… • ༑ୡͷϗʔϜը໘ͷεΫϦʔϯγϣοτͷը ૾͕ݟΕΔ • FB࿈ܞ,
༑ୡػೳ, Ξοϓϩʔυػೳ
ϦϦʔε͢Δ͜ͱͰ • Γ߹͍͔ͬͯ͠ͳͯ͘ɺগͳ͘ͱ ڹ͕͋Δ • ࣍ͷػೳΛ։ൃ͢ΔϞνϕʔγϣϯʹͳΔ • ࠓ͍ͬͯΔ͜ͱΛڞ༗͘͢͠ͳΔ
ϦϦʔε͢Δ͜ͱͰ • αʔϏεͷ໘ന͞ΛମײͰ͖Δ • CTO͕ωλߘͯ͠Δw • ಉ͡ΞϓϦΛ͜ͷਓͱ͜ͷਓ͕͍ͬͯΔɺௐ ͯΈΑ͏
ձࣾͰ͏ٕज़ͱڞ௨Խ͢Δ • AnsibleCFnͷςϯϓϨʔτGemfileͳͲ ࣄ͔Βྲྀ༻Ͱ͖ͨ • ٯʹSemantic UIͳͲݸਓ։ൃ͔Βࣄʹ׆ ͔͢͜ͱ͕Ͱ͖ͨ • ڞ௨Խ͢Δͱࣄͱݸਓ։ൃͰֶͼͷ૬ޮ
Ռ͕͋Δ
ίετΛ͔͚ͳ͍ • ConohaͳͲͷVPSΛ͓͏ͱ͚ͨ͠Ͳɺ݁ہAWSͰ Public IPͷΠϯελϯε1ஔ͍ͯ͋ΔߏͱมΘΒ ͳ͍ͱ͍͏ׂΓΓ • ແྉΛ࠷େݶʹ͏ • Bastionஔ͔ͳ͍
• $0.55 / month ʢcdn༻ͷαϒυϝΠϯͷΈʣ
ΫϩʔζͷλΠϛϯάΛܾΊΔ • ແྉ͕͍ͬͯΔ1ͷؒʹɺαʔόఔ ͷϚωλΠζͷॲཱ͕ͨͳ͚ΕɺΫϩʔ ζ͢Δ • AWSͷແྉ͕ྑ͍அϙΠϯτͱͳΔͷͰ • ࣈΛਨΕྲྀ͠ଓ͚Δͱਏ͘ͳΓͦ͏
ϚωλΠζ • ΞϓϦͷΞϑΟϦΤΠτͷഽײΛ௫Ή • ϒϩάͰΞϓϦͷհͷهࣄΛॻ͍ͯݕূ • 50 PVs /day Ͱ
¥200 / month ͙Β͍
શવ·Βͳ͍ • ϚωλΠζ͚ͯMAU֫ಘ͍͕͍ͨ͠͠ • Γ߹͍ͷҬΛͳ͔ͳ͔ग़ͳ͍… • γΣΞػೳʁ • ϒϩάϝσΟΞʁ •
Ωϟϯϖʔϯʁ
NakamyΛࢧ͑Δٕज़
Wappalyzer ᐌ͘
Πϯϑϥ • AWS • ແྉߏ
όοΫΤϯυ • Rails 5.1.3 # facebook API gem 'koala' #
image gem 'carrierwave' gem 'fog-aws' gem 'rmagick' gem 'carrierwave-magic' gem 'piet' gem 'piet-binary' # error log gem 'sentry-raven' # views gem 'autoprefixer-rails' gem 'semantic-ui-sass' gem 'jquery-rails' gem 'slim-rails' # database gem 'seed-fu' # authorization gem 'omniauth-facebook' gem 'devise'
ϑϩϯτΤϯυ • Rails ͷ View Ͱ Slim + Sass •
SPAͰ͋Δඞཁੑͷݕ౼େࣄͦ͏ • JSΛΰϦοͱॻ͖ͨ͘ͳͬͨΒɺ෦తʹ VueΛ͏༧ఆ
CSSϑϨʔϜϫʔΫ • Semantic UI • Grid • ඞཁͦ͏ͳίϯϙʔωϯτἧ͍ͬͯΔ • semantic-ui-sass
ͱ͍͏GemͰೖΔ
Sentry • Τϥʔ௨αʔϏε • ձࣾͰAirbrake͔ΒSentryʹΓ͑த
ࠓޙͷ͍͖ͬͯ
ࠓޙͷ͍͖ͬͯ • ·ͱͳΞϓϦέʔγϣϯʹ্͍͛ͯ͘ • ऩӹԽΛࢦ͢ • Nakamy Insight • ϗʔϜը໘ΛऔΓ্͍͛ͯ͘
• Nakamy for Mac • ͲΜͳΤσΟλͬͯΔʁͱ͔Γ͍ͨ
࣌ؒ༨ͬͨΒฉ͍ͯཉ͍͠ • ϩΰͷͩ͜ΘΓ
࣌ؒ༨ͬͨΒฉ͍ͯཉ͍͠ • ϩΰͷͩ͜ΘΓ ࣋ͬͯΔΞϓϦेਓे৭
࣌ؒ༨ͬͨΒฉ͍ͯཉ͍͠ • ϩΰͷͩ͜ΘΓ ᶃ ᶄ ᶅ ᶆ ᶇ ᶈ ᶉ
ᶊ ᶋ ᶌ ࣋ͬͯΔΞϓϦेਓे৭
օ͞Μ༑ୡͷiPhoneΛ ͍ͯΈ·ͤΜ͔ʁ
https://nakamy.com
ίϚʔγϟϧ • We are hiring!!! - Ұॹʹಇؒ͘Λืूதʂ ձһສਓಥഁʂ ࠃ/PͷΧδϡΞϧΪϑταʔϏε