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
Launching Ruby on Rails applications, a checklist
Search
Robby Russell
June 30, 2009
Programming
3
150
Launching Ruby on Rails applications, a checklist
Planet Argon's checklist for launching web applications with Ruby on Rails
Robby Russell
June 30, 2009
Tweet
Share
Other Decks in Programming
See All in Programming
チームリードになって変わったこと
isaka1022
0
190
『GO』アプリ データ基盤のログ収集システムコスト削減
mot_techtalk
0
120
Formの複雑さに立ち向かう
bmthd
1
810
Ruby on cygwin 2025-02
fd0
0
140
Immutable ActiveRecord
megane42
0
140
なぜイベント駆動が必要なのか - CQRS/ESで解く複雑系システムの課題 -
j5ik2o
9
3.4k
パスキーのすべて ── 導入・UX設計・実装の紹介 / 20250213 パスキー開発者の集い
kuralab
3
730
AWSマネコンに複数のアカウントで入れるようになりました
yuhta28
2
160
Pulsar2 を雰囲気で使ってみよう
anoken
0
230
ファインディの テックブログ爆誕までの軌跡
starfish719
2
1.1k
Lottieアニメーションをカスタマイズしてみた
tahia910
0
120
SwiftUIで単方向アーキテクチャを導入して得られた成果
takuyaosawa
0
270
Featured
See All Featured
Understanding Cognitive Biases in Performance Measurement
bluesmoon
27
1.5k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
6
550
Site-Speed That Sticks
csswizardry
3
370
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.6k
Optimizing for Happiness
mojombo
376
70k
Typedesign – Prime Four
hannesfritz
40
2.5k
A Tale of Four Properties
chriscoyier
158
23k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
KATA
mclloyd
29
14k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Why You Should Never Use an ORM
jnunemaker
PRO
55
9.2k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
Transcript
Launching Ruby on Rails Applications A CHECKLIST Friday, July 24,
2009
Launching Ruby on Rails Applications A CHECKLIST Thanks Mark! Friday,
July 24, 2009
Launching Ruby on Rails Applications A CHECKLIST Friday, July 24,
2009
Launching Ruby on Rails Applications A CHECKLIST Friday, July 24,
2009
Launching Ruby on Rails Applications A CHECKLIST Friday, July 24,
2009
Launching Ruby on Rails Applications A CHECKLIST From our team
at Planet Argon, direct to you Friday, July 24, 2009
Launching Ruby on Rails Applications A CHECKLIST Launching Ruby on
Rails Applications Best Practices for prepping your launch pad Friday, July 24, 2009
Launching Ruby on Rails Applications Launching Ruby on Rails Applications
Friday, July 24, 2009
HOSTING Launching Ruby on Rails Applications Launching Ruby on Rails
Applications Friday, July 24, 2009
HOSTING SEARCH ENGINES Launching Ruby on Rails Applications Launching Ruby
on Rails Applications Friday, July 24, 2009
HOSTING SEARCH ENGINES DATA HARVESTING Launching Ruby on Rails Applications
Launching Ruby on Rails Applications Friday, July 24, 2009
HOSTING SEARCH ENGINES DATA HARVESTING FEEDBACK Launching Ruby on Rails
Applications Launching Ruby on Rails Applications Friday, July 24, 2009
HOSTING SEARCH ENGINES DATA HARVESTING FEEDBACK EXCEPTIONS Launching Ruby on
Rails Applications Launching Ruby on Rails Applications Friday, July 24, 2009
HOSTING SEARCH ENGINES DATA HARVESTING FEEDBACK EXCEPTIONS PERFORMANCE Launching Ruby
on Rails Applications Launching Ruby on Rails Applications Friday, July 24, 2009
HOSTING SEARCH ENGINES DATA HARVESTING FEEDBACK EXCEPTIONS PERFORMANCE CLIENTS Launching
Ruby on Rails Applications Launching Ruby on Rails Applications Friday, July 24, 2009
HOSTING SEARCH ENGINES DATA HARVESTING FEEDBACK EXCEPTIONS PERFORMANCE CLIENTS Have
your cake and eat it too! Launching Ruby on Rails Applications Launching Ruby on Rails Applications Friday, July 24, 2009
Launching Ruby on Rails Applications Checklist CHECK YOUR LIST Watch
for it on my blog: http://robbyonrails.com Friday, July 24, 2009
Friday, July 24, 2009
1200+ respondents More information at http://rails-hosting.com Friday, July 24, 2009
Before we begin... Friday, July 24, 2009
Working on your first Rails project? Friday, July 24, 2009
Have you launched at least one Rails app? Friday, July
24, 2009
Have you launched at least one Rails app? 2-5 Rails
apps? Friday, July 24, 2009
Have you launched at least one Rails app? 2-5 Rails
apps? more than 5? Friday, July 24, 2009
How many Ruby on Rails applications have you deployed? SURVEY
SAYS... 5+ 38% 1-5 47% 1 10% None 4% Q. Friday, July 24, 2009
Don’t wait until the last minute! Friday, July 24, 2009
lots of topics hosting data harvesting marketing visual design development
project management interaction design quality assurance client management tracking errors user feedback public relations teamwork browser testing testing code search engine optimization planning brainstorming etc. Friday, July 24, 2009
lots of topics hosting data harvesting marketing visual design development
project management interaction design quality assurance client management tracking errors user feedback public relations teamwork browser testing testing code search engine optimization planning brainstorming etc. Friday, July 24, 2009
Launching Ruby on Rails Applications Hosting Friday, July 24, 2009
Automate Deployments Friday, July 24, 2009
CHECK YOUR LIST Create reusable tasks to release new versions
of the application. Friday, July 24, 2009
Do you use an automated deployment tool? SURVEY SAYS... No
23% Yes 77% Q. Friday, July 24, 2009
That means nearly one in four are still... Friday, July
24, 2009
That means nearly one in four are still... Manually uploading
source code via FTP or SFTP Friday, July 24, 2009
Manually uploading source code via FTP or SFTP SSHing into
the server That means nearly one in four are still... Friday, July 24, 2009
Manually uploading source code via FTP or SFTP SSHing into
the server Manually running migrations That means nearly one in four are still... Friday, July 24, 2009
Manually uploading source code via FTP or SFTP SSHing into
the server Manually running migrations Manually restarting their application That means nearly one in four are still... Friday, July 24, 2009
That means nearly one in four are still... Manually uploading
source code via FTP or SFTP SSHing into the server Manually running migrations Manually restarting their application Don’t Repeat Yourself! Friday, July 24, 2009
Minimize Human Error Friday, July 24, 2009
Knowledgeable Team Friday, July 24, 2009
Make time to test deployments Friday, July 24, 2009
Know how to ROLLBACK when necessary Friday, July 24, 2009
Testing gives your team confidence! Friday, July 24, 2009
Hire a specialist who knows their stuff Friday, July 24,
2009
CHECK YOUR LIST Make sure your team knows how to
test, deploy & rollback when necessary. Friday, July 24, 2009
Setup a Staging Environment Friday, July 24, 2009
Practice in your production environment Friday, July 24, 2009
Brand new Rails App Deploy to staging! Sign contract Setup
git repository Generate new Rails app Friday, July 24, 2009
TIP FROM ROBBY Keep your application deployable at all times!
(Not just releasable) Friday, July 24, 2009
Friday, July 24, 2009
Staging site to the rescue! Friday, July 24, 2009
Test the water... Friday, July 24, 2009
... before diving in! Friday, July 24, 2009
Keep out the Peeping Toms Friday, July 24, 2009
HTTP Basic Authentication Friday, July 24, 2009
Friday, July 24, 2009
Test your scheduled tasks... in a real hosting environment Friday,
July 24, 2009
Create a deployment guide Friday, July 24, 2009
TIP FROM ROBBY Put configuration files in Git Friday, July
24, 2009
TIP FROM ROBBY Have a backup strategy! Friday, July 24,
2009
CHECK YOUR LIST Set up a staging environment as soon
as the project is started. Friday, July 24, 2009
Monitoring Your App Friday, July 24, 2009
Do you use monit or god for server side monitoring?
SURVEY SAYS... No 57% Other 4% God 13% Monit 26% Q. Friday, July 24, 2009
Mongrel memcached backgroundDrb Use Server Monitoring Tools for... delayed_job Friday,
July 24, 2009
CHECK YOUR LIST Setup monit or god. Friday, July 24,
2009
“Have you tried turning it off and on again?” Friday,
July 24, 2009
Do you use any uptime monitoring tools in production? SURVEY
SAYS... No 60% Other 12% Pingdom 10% Nagios 18% Q. Friday, July 24, 2009
Use Client Side Monitoring Tools do it yourself? Friday, July
24, 2009
EXTRA CREDIT! Friday, July 24, 2009
Use Cucumber to test in production EXTRA CREDIT! Friday, July
24, 2009
‣Automate your deployments ‣Setup a staging environment ‣Server-side monitoring ‣Client-side
monitoring Be cool & confident... use best practices Friday, July 24, 2009
Launching Ruby on Rails Applications Search Engines Friday, July 24,
2009
<h1>Write Good Markup</h1> <ul> <li>Page Titles</li> <li>Permalinks</li> <li>Important Elements</li> </ul>
<p>Hire a UI guru!</p> Friday, July 24, 2009
Page titles are used in search results Friday, July 24,
2009
Permalinks? URLs are part of the UI Friday, July 24,
2009
Use markup to create structure Search bots like structure. Friday,
July 24, 2009
<h1>Get in Touch</h1>... <h2>Visit Us</h2>... Friday, July 24, 2009
<img src=”studio.jpg” alt=”Planet Argon Studio” /> Friday, July 24, 2009
<a href=”/who-we-are” title=”Who We Are”>...</a> Friday, July 24, 2009
I see possible issues with AJAX and Javascript BOOM! Friday,
July 24, 2009
Search engines may not be able to access some content
Friday, July 24, 2009
Degrade Gracefully Friday, July 24, 2009
Create an XML Sitemap Friday, July 24, 2009
Automate the generation of your sitemap Friday, July 24, 2009
Notify these guys when you have an updated sitemap Friday,
July 24, 2009
Google Webmaster Tools Sign up for... Friday, July 24, 2009
Launching Ruby on Rails Applications Data Harvesting & Analytics Friday,
July 24, 2009
CHECK YOUR LIST Identify your Key Performance Indicators (KPIs) Friday,
July 24, 2009
What are some example KPIs? Friday, July 24, 2009
Example KPIs • Page views (per day / per visit)
Friday, July 24, 2009
Example KPIs • Page views (per day / per visit)
• Newsletter subscriptions Friday, July 24, 2009
Example KPIs • Page views (per day / per visit)
• Newsletter subscriptions • Successful orders Friday, July 24, 2009
Example KPIs • Page views (per day / per visit)
• Newsletter subscriptions • Successful orders • Abandoned shopping carts Friday, July 24, 2009
Example KPIs • Page views (per day / per visit)
• Newsletter subscriptions • Successful orders • Abandoned shopping carts • Homepage bounce rate Friday, July 24, 2009
Collect & Segment Friday, July 24, 2009
Sign up for Google Analytics and make sure your Clients
have access Friday, July 24, 2009
Setup your primary conversion goals Friday, July 24, 2009
Usage testing not the same as Usability testing Friday, July
24, 2009
Crazyegg CrazyEgg Heatmaps and usage patterns Friday, July 24, 2009
Clicktale Clicktale Screencasts of real visitors on your site Friday,
July 24, 2009
Look for patterns Friday, July 24, 2009
Get rid of the guesswork Friday, July 24, 2009
Test your ideas Friday, July 24, 2009
Data Harvesting Data Data Launching Ruby on Rails Applications User
Feedback Friday, July 24, 2009
Who is responsible for responding to feedback? Friday, July 24,
2009
User Voice Customers vote on ideas Friday, July 24, 2009
Tender Create a support center Friday, July 24, 2009
zendesk Support tool for small companies Friday, July 24, 2009
GetSatisfaction Make it easy for your users to send you
feedback Friday, July 24, 2009
Launching Ruby on Rails Applications Exceptions Friday, July 24, 2009
Do you catch and track Application Exceptions in production? SURVEY
SAYS... No 31% Yes 69% Q. Friday, July 24, 2009
exception_notification http://github.com/rails/exception_notification/tree/master Friday, July 24, 2009
hoptoad Friday, July 24, 2009
Exceptional Friday, July 24, 2009
Friday, July 24, 2009
Default 404 Default 500 Friday, July 24, 2009
Helpful 404 Page Friday, July 24, 2009
Helpful 500 Page Friday, July 24, 2009
Launching Ruby on Rails Applications Performance Friday, July 24, 2009
Page load is king Friday, July 24, 2009
YSlow Friday, July 24, 2009
Google Page Speed Friday, July 24, 2009
Benchmark against staging Friday, July 24, 2009
Do you use any performance monitoring tools in production? SURVEY
SAYS... No 64% Yes 36% Q. Friday, July 24, 2009
Scout Friday, July 24, 2009
FiveRuns Friday, July 24, 2009
New Relic Friday, July 24, 2009
Is your source code efficient? Friday, July 24, 2009
are the database queries efficient? Are your database queries efficient?
Friday, July 24, 2009
are the database queries efficient? Are your database queries efficient?
missing indexes? Friday, July 24, 2009
What are your slowest controller actions? Friday, July 24, 2009
negatively impacting our KPIs? What are your slowest controller actions?
Friday, July 24, 2009
TIP FROM ROBBY Use data to drive your optimization efforts
Friday, July 24, 2009
Stop guessing! Friday, July 24, 2009
Launching Ruby on Rails Applications Clients Holding their hands Friday,
July 24, 2009
Be a coach Friday, July 24, 2009
manage expectations TIP FROM ROBBY Make sure you are managing
your client’s expectations Friday, July 24, 2009
Launch is the starting line Friday, July 24, 2009
On-going maintenance is a necessity Friday, July 24, 2009
Budget for a reliable hosting solution Friday, July 24, 2009
Be ready on Launch Day Friday, July 24, 2009
Celebrate! Friday, July 24, 2009
Celebrate! Share some champagne... Friday, July 24, 2009
...or Scotch. ;-) Friday, July 24, 2009
Have a plan ready for the road ahead Friday, July
24, 2009
Analyze your KPIs Keep up on user feedback Push out
bug fixes early and often Friday, July 24, 2009
Launching Ruby on Rails Applications Summary Let’s do a quick
review Friday, July 24, 2009
CHECK YOUR LIST Don’t postpone preparation until the end Friday,
July 24, 2009
CHECK YOUR LIST Keep your application deployable at all times
Friday, July 24, 2009
CHECK YOUR LIST Pace yourself Friday, July 24, 2009
CHECK YOUR LIST Prepare for the unexpected Friday, July 24,
2009
CHECK YOUR LIST Solve the right problems Friday, July 24,
2009
Have Fun. CHECK YOUR LIST Have fun! Friday, July 24,
2009
Thank you Friday, July 24, 2009
Where’s Robby? • blog: http://robbyonrails.com • company: http://planetargon.com • twitter:
@robbyrussell • email:
[email protected]
Friday, July 24, 2009
PLANET ARGON DESIGN // DEVELOPMENT // DEPLOYMENT More information at
http://planetargon.com Friday, July 24, 2009