Blog posts and books can make refactoring look easy. "Here's the synthetic example, now use X scripted transformation." Unfortunately, codebases in the wild do not come with the right refactoring patterns hyperlinked.
In this course you be introduced to techniques and tools to help you decide where to begin refactoring in a large, legacy codebase. You will practice moving those first shovel-fulls of code without triggering an avalanche of test failures.
We will practice identifying issues, explore strategies to attack them, and put them into practice. This is not a walk-through of every refactoring in the cannon; this is practical application of great techniques
What You’ll Learn
In this online course you will refactor real production code that is ripe with code smells, tight coupling, leaky encapsulation, and missing abstractions.
- Getting Started: How to explore a large code base
- Design: Practice identifying refactoring targets
- Testing: How to ensure that your tests have your back
- Refactoring: How to safely reshape your application using step-by-step transformations
What’s In a Class?
This is not “sit back and watch slides” — all Jumpstart Lab courses are hands-on. We work with real applications and you’ll implement these tools and techniques yourself. By the end of the class, you’ll have real experience, real skills, and real code to reference.
Who’s this for?
This course is built for experienced developers who feel comfortable with Ruby and Rails.
What equipment is needed?
For this session you'll need:
- a computer with Mac, Linux or Windows
- Ruby 2.0 and Rails 3.2 and 4.0 installed
- The join.me local client installed
- a stable internet connection for video streaming
- external headphones and microphone
- a webcam
Detailed setup instructions will be sent out a week before the class takes place.
Who we are
We have the most experienced instructional team in the Ruby/JS world. Learn more about us.
As always, this class is backed by our 110% money-back guarantee.
Learn a new skill
This online class runs across three days of two sessions each.
- Session 1 starts at 8am PT / 11am ET
- Session 1 ends at 11 PT / 2pm ET
- Session 2 starts at Noon PT / 3pm ET
- Session 2 ends at 3pm PT / 6pm ET
|Day 1||Day 2||Day 3|
Design & Refactoring fundamentals
Extracting Domain Objects
Controllers & Views
Private / On-Site Course
This course can be run as a dedicated course for your team, either online or on-site. Send an email to firstname.lastname@example.org and tell us whether you're interested in online or in person, how many participants you expect, and a bit about what kind of work you're doing. We'll get right back to you with a quote and customized plan.
Katrina Owen is an experienced web developer focusing on Ruby, Rails, Testing, and PHP. When programming, her focus is on automation, workflow optimization, and refactoring. Katrina is a regular contributor to the Ruby Rogues podcast. At Jumpstart Lab she serves as the Refactoring mastermind, crafting both curricula and courses to help others write tests for foolproof code.