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
140
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
Quine, Polyglot, 良いコード
qnighy
4
640
Enabling DevOps and Team Topologies Through Architecture: Architecting for Fast Flow
cer
PRO
0
330
Webの技術スタックで マルチプラットフォームアプリ開発を可能にするElixirDesktopの紹介
thehaigo
2
1k
Nurturing OpenJDK distribution: Eclipse Temurin Success History and plan
ivargrimstad
0
930
macOS でできる リアルタイム動画像処理
biacco42
9
2.4k
[Do iOS '24] Ship your app on a Friday...and enjoy your weekend!
polpielladev
0
110
Kaigi on Rails 2024 〜運営の裏側〜
krpk1900
1
230
Duckdb-Wasmでローカルダッシュボードを作ってみた
nkforwork
0
130
Remix on Hono on Cloudflare Workers
yusukebe
1
290
Snowflake x dbtで作るセキュアでアジャイルなデータ基盤
tsoshiro
2
520
CSC509 Lecture 12
javiergs
PRO
0
160
AWS IaCの注目アップデート 2024年10月版
konokenj
3
3.3k
Featured
See All Featured
Designing Experiences People Love
moore
138
23k
RailsConf 2023
tenderlove
29
900
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
47
2.1k
Building Flexible Design Systems
yeseniaperezcruz
327
38k
Happy Clients
brianwarren
98
6.7k
Embracing the Ebb and Flow
colly
84
4.5k
How GitHub (no longer) Works
holman
310
140k
Put a Button on it: Removing Barriers to Going Fast.
kastner
59
3.5k
What's in a price? How to price your products and services
michaelherold
243
12k
Teambox: Starting and Learning
jrom
133
8.8k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
Facilitating Awesome Meetings
lara
50
6.1k
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