Getting your app launched is an incredible achievement, and it's just the beginning of your app's life story!
After you've shipped comes the work of actually running and maintaining your live app - keeping it fast, up-to-date, stable and secure.
Keep Your Ruby on Rails App Healthy is the complete course that teaches what you need to design, build and configure your Ruby on Rails apps to make this essential work much easier.
This course will help you stop worrying about deployments, making finding a fixing bugs a breeze, and help you monitor your app's health, so you can concentrate on adding great new features for your customers.
NEW: Get Access to the Private Slack + Toolkit Early-Access
The Toolkit Edition includes the original Keep Your Ruby on Rails App Healthy eCourse, plus:
- Access to the private Healthy Rails Apps Slack to discuss Rails app development, maintenance and best practice plus get answers to your specific questions about building healthy Rails apps;
- Code / Auditing Scripts (including a standalone Docker-based tool) that can be used to automatically check the quality of your app's code, and report on any security issues;
- A complete Ansible playbook to use as the basis for provisioning your own application servers;
- A pre-launch checklist to keep as a handy reference to make deploying your Ruby on Rails apps as smooth as possible;
- ...plus free updates, new tools and resources as they are added to the toolkit.
The Course - What You'll Learn
In Keep Your Ruby on Rails App Healthy, you’ll learn how to design, build, monitor and maintain your Ruby on Rails apps to keep them fast, stable, and secure.“I’ve been writing Rails apps for 10 years and learned enough in the first chapter to justify higher a price…” (@jot)
As you work through each lesson, you'll get valuable tips, discover easy-to-implement best-practices, and learn how to set up tools and automated processes to monitor, maintain and improve your Ruby on Rails apps.
With this knowledge you'll be able to start paying back technical debt in your projects - and keep it from building up again.Through this packed course, you'll learn how to...
- Perform a quick health-check on your site to make sure pages are optimised and responsive.
- Audit and Secure your app and it’s dependencies against vulnerabilities and outdated gems.
Check your code for known "code smells" - and how to fix them.
- See how your code measures up against current Ruby and Rails code styles and best practice techniques. Your code becomes instantly easier to maintain.
- Setup monitoring for all layers of your app, from uptime checking to code performance, and error reporting.
- Automate and schedule ongoing checks of your app's health using everyday Ruby tools. Check with every commit, and rest assured that your code is in great condition.
Automate Your Infrastructure Configuring a basic server for your app with Ansible, to make managing your infrastructure simply and consistent.
Making and Managing Backups How to set up automated, encrypted off–site backups for your app's critical data.
Smart Notifications Setting up a notification strategy for monitoring all layers of your app.
Learn the basics of using Docker to containerise your app for development.
Protecting your app by automating SSL and configuration in your app.
...and much more (See full chapter list below)
Why should I buy this course?
Modern software applications—including websites—rely on dozens of external dependencies, all of which are regularly updated and patched as time goes on, new security vulnerabilities are found, and new bugs discovered.
Rather than rebuilding your site, and ending up in the same situation 6 months from now, you are far better off investing to bring your existing app up to scratch, and improve upon things in a little-and-often approach.
Seeing your Rails app as a long-term investment, rather than a delivered-and-done project, means you can more quickly act on new business trends, test your propositions, and adapt to your business’ needs.
A healthy app keeps you safe in the knowledge that when services on which your app depends change (e.g. Facebook, Google, Mailchimp, SendGrid, Heroku…), your code is ready and can be quickly updated to keep working.
What People are Saying“I really enjoyed the book. A lot of quick wins for me to implement and makes me realise I can do more with guard.”
– Ben (@r0_0tKat)“I’ve been writing Rails apps for 10 years and learned enough in the first chapter to justify higher a price…”
– Jonathan (@jot)
Who wrote this course?
Keep Your Ruby on Rails App Healthy is written by Chris Blunt, a software consultant and developer based in Plymouth, UK. Chris has been using Rails to build web applications since 2008.
Today, Chris works with clients to design and support their apps for the long-term. He also provides consulting and technical training for software businesses and developers who are building products with Ruby on Rails and supporting technologies.
100% Satisfaction Guarantee
The course comes with a 100% satisfaction guarantee. If within 30 days of purchase, you're not entirely satisfied with the course for any reason, let me know and I'll refund your money, no questions asked.
Can I get a Free Chapter / Sample?
If you want more, head to healthyrailsapps.com to get the free Healthy Rails Apps Fundamentals course which includes several free lessons.
- Why Keep your Rails App Healthy?
What is a Healthy App?
- Designing Healthy Apps
A Quick Health Check
Building a Test Suite
- What to Test
- Feature Tests
- Scenarios Coverage
Looking for Code Smells
- What is a Code Smell?
- Securing Your App and its Dependencies
- Your App's Dependency Graph
- Updating Outdating Gems
- Auditing Gems
- Checking Your Code for Security Vulnerabilities
- Other Vulnerabilities
Coding Standards and Best Practice
- What are Rails Best Practices?
- Automating Your Code Checks
- Setting up Guard
- Configuring a Regular Audit
Configuring Application Secrets
- Using Environment Variables
- Encrypted Secrets (Rails 5.1)
- Why delegate transactional email?
- Checking Email Deliverability
Use Object Storage for Assets
- Why use Object Storage?
- Using Amazon S3 to Store Your App's Assets
- Setting up a Bucket
- Permissions and Policies
- Create a new user for your app
- Create the Bucket
- Configure a Bucket Policy
- Configure Your App
- Serve Assets over CDN
- Create a Distribution
- Configuring Carrierwave for CDN
Hosting on Heroku
Hosting Your App
Hosting on Your Own (Virtual) Server
- What is Heroku?
- Things to Consider
Host Your App on Docker
- Which Provider?
- PreRequisite: Your SSH Key
- Getting Started
- Basic Configuration
- User accounts
- Deploying Your App and its Requirements
- Getting Started with Docker
- Writing Your Dockerfile
- Connect your app's container to other services
- Publish Your Docker Image to a Registry
- Choosing a Registry
- Pushing Your Image
- Pull and Run Your Image
Automate Your Server Configuration
- A Basic Server
- The Hosts File
- Writing a Playbook
- Setting up a Firewall
- Create a new user
A Simple Rails Application Server
- Creating a Ruby Role
- Creating a PostgreSQL Role
- Creating an Nginx Role
Enforce SSL across your app
Encrypt Your App's Traffic
Configure and Install SSL
- Your Own Server
Monitoring Your App
- Why Monitor?
- Availability & Performance
- Errors and Crashes
- Monitoring Scheduled (Cron) Jobs
Be Smart About Notifications
- Types of Notification
- Notification Channels
- Getting Started
- Test Your Backups!
I have another question...