Skip to main content

Grab Bag Tutorial Series

How to Build a Slack Slash Command App with Rails
#268 · Pro

Learn how to implement a Slack Slash Command App in Rails using webhooks

Writing Tests for Rack Middleware
#241 · Pro

In this episode, we add tests for our Basecamp 3 style urls that we built using a Rack middleware

Debugging & Fixing a Bug in Rails 5.2 Active Storage
#237 · Pro

A walkthrough of how I debugged and fixed an issue with Rails ActiveStorage that we discovered in the last episode building a Previewer for Powerpoint files

Building A Hosting Platform in Ruby
#228 ·

A talk I recently gave for Remote Ruby explaining some of the approaches I use to build

Uploading Files to DigitalOcean Spaces
#213 ·

Learn how to upload files to DigitalOcean's Spaces which is an Amazon S3 compatible file storage API

Testing Emails in Development with Mailcatcher
#203 ·

Learn how to send emails to a local SMTP server called Mailcatcher for testing and designing emails

Fixing Counter Caches in the Paranoia Gem
#177 · Pro

A walk through of the process of fixing a popular gem and learning how ActiveRecord and the Paranoia gem works

Advanced Counter Caching
#176 · Pro

Add advanced counter caching for soft deletable models, scopes, and has_many relationships

Adding Turbolinks Compatibility to SimpleMDE Markdown Editor
#152 · Pro

Learn how to use Javascript constructors and destructors with Turbolinks to add compatilibty to any Javascript library you want

Organizing Your Asset Pipeline in Development for Speed
#151 · Pro

Speed up the Rails asset pipeline in development by organizing your assets correctly

Shrine Backgrounding and Video Transcoding
#150 · Pro

Transcode videos in the background using Shrine

Protecting from XSS with Sanitize
#149 ·

Protect your Rails application from Cross Site Scripting (XSS) attacks using the sanitize helper

Receiving Webhooks in Development with Ngrok and Docusign
#148 · Pro

How to develop against webhooks on your local development machine using ngrok and Docusign's API

Electronic Signatures with the Docusign API
#147 · Pro

Request documents to be signed electronic using the Docusign API in your Rails app

Direct Messages in Realtime with ActionCable
#143 · Pro

Add realtime direct messages between users in our chat application using ActionCable

File Uploads in Rails With Shrine
#142 ·

Add file uploads to your application with the Shrine gem

Sending Emails with SMTP and Sendgrid
#134 · Pro

Setup Rails to send emails over SMTP using your Sendgrid account

Solving FizzBuzz in Ruby
#127 ·

See how different approaches can affect the code you write using FizzBuzz as an example

Wrapping Business Logic with Plain Old Ruby Objects
#123 · Pro

Learn how to pull business logic out of your models and put them into Plain Old Ruby Objects (POROs) in order to clean up your code and keep chunks of business logic in reusable bits.

Custom will_paginate Methods
#121 · Pro

We take the Leaderboard gem and wire it up with custom code to work seamlessly with will_paginate

Inviting Users with devise_invitable
#120 · Pro

Learn how to invite users to your application with devise_invitable

Sentiment Analysis with the Sentimental Gem
#117 ·

Learn how to use sentimental analysis against text inside your application and cache it so you can query against it later

Turbolinks 5 Forms for Mobile
#116 · Pro

Learn how to setup forms to work with Turbolinks iOS and Android adapters

How to Upgrade to Turbolinks 5
#107 ·

Learn how to upgrade your Turbolinks 2.5 or 3.0 app to the newest Turbolinks 5

Mitigating Spammers with Recaptcha
#106 · Pro

Learn how to integrate Google's Recaptcha API into your forms and registration process with Rails

#101 ·

A Ruby microservice to generate tweet quote images for sharing on social media like Twitter and Facebook

Metaprogramming Virtual Attributes
#99 · Pro

Learn the basics of metaprogramming by creating some Rails 5 code on your own

Virtual Attributes And Rails 5 Attribute API
#98 ·

Learn how you can use virtual attributes to make forms cleaner and how the Rails 5 attribute API can save you a bunch of time

Integrating Braintree (and PayPal)
#97 · Pro

Learn how to accept payments with Braintree, PayPal, Venmo, and Coinbase in Rails

Background Workers with ActiveJob and Sidekiq
#95 · Pro

Learn how to add background workers to your Rails app using ActiveJob and powering it with Sidekiq

Admin Interfaces with Administrate
#94 ·

The new admin gem from Thoughtbot shows some promise for easy to customize admin interfaces in your Rails app

Contributing To Open Source: Fixing A Bug In Devise
#92 ·

See how I discovered and fixed a bug in the Devise open source project

Scheduled Cron Jobs with the Whenever Gem
#87 · Pro

Learn how to run scheduled (nightly, weekly, monthly) jobs using cron on your server with the Whenever gem

What Is A State Machine?
#84 ·

Learn what a state machine is and how it can help you keep track of everything

Usability And Video Autoplay With Wistia
#82 · Pro

Learn about video autoplaying with Wistia and how it improves usability

Redirect To Current Page After Login
#80 · Pro

Learn how to redirect your Rails app users to the current page after they login

Debugging Performance Problems In Your Views
#54 · Pro

Learn how I discovered and solved a performance bug in's view partial

PDF Receipts
#51 ·

Learn how to add PDF receipts to your application so users can easily download receipts of their purchases

ActiveSupport Concerns: Making a Soft Deletable module
#42 · Pro

An introduction to Ruby on Rails ActiveSupport concerns where we build a Soft Deletable module like the Paranoia gem

Upload Progress with Refile Javascript
#38 · Pro

Add background uploads and progress easily with Refile's JS library

File Uploads with Refile
#37 ·

Learn how to upload files with the newest file upload library on the block: Refile

API Tokens with Devise Token Authenticatable
#35 · Pro

Learn how to create simple API tokens for authentication with Devise

Sign In With Twitter using Omniauth and the Twitter gem
#33 ·

Learn how to use Omniauth And omniauth-twitter to let your users authorize and connect to the Twitter API using their Twitter account with your Rails app

Consuming an API Using HTTParty and Creating a Gem
#23 ·

Learn how to use HTTParty to consume an API and package your library into a gem

Rails 4.2 Introduction
#21 ·

A quick look at the new features of Rails 4.2 in the first beta that was recently released

jQuery UJS Callbacks
#18 · Pro

An advanced look into jQuery UJS and how to use callbacks to improve your UJS workflow and debugging

jQuery UJS and AJAX
#17 ·

A quick introduction to jQuery UJS and how we can use it to make an AJAX request to render a javascript template from the Rails server

Button Loading Animations with jQuery UJS
#16 ·

Learn how to easily disable the submit button and display a loading animation when a user submits the form