Location visible to members
ChicagoRuby welcomes Jason Swett as he presents his talk: Use Tests to Get a Handle on Rails Legacy Projects
Working with legacy projects can be challenging and often frustrating. The developers who originally wrote the code might be gone, and often if we don’t understand the code, we’re afraid to touch it. Tests can help with this situation but there’s often a catch-22 situation: you don’t want to change the code before you write tests but you can’t write tests without changing the code. In this talk Jason Swett will talk about some ways to address these challenges inherent to testing Rails legacy projects.
Legacy codebases present several challenges, like numerous bugs, difficulty of deployment, low predictability, and getting caught in a "Whack-a-mole" situation. Testing legacy codebases brings its own challenges. Often you see interwoven dependencies, and you are constantly dealing with a chicken and egg problem: you can’t change the code without testing it, but also you can’t test the code without changing it. Where does that leave us?
This talk will discuss several possible solutions including:
- Sprout method technique
- Sprout class technique
- Small changesets
- What to do if team/leadership is not sold
6:00 to 6:15 - Food & Mingling
6:15 to 7:45 - Presentation
after - Post meetup mingling @ Elephant & Castle
Jason Swett is a developer, trainer, author and former panelist on the Ruby Rogues podcast.
Since putting his first website online in 1996, Jason has worked with organizations like AT&T, Lenovo, VMware, HP, Dow Jones, Deloitte, Kroger and the University of Chicago.
Jason is also a co-organizer of the GRWebDev Meetup, the largest programming meetup in West Michigan. He lives in Sand Lake, Michigan with his wife and two kids.
FOOD AND BEVERAGES will be provided by our host, 8thlight (https://www.8thlight.com/).
LEVEL UP YOUR SKILLS. WindyCityRails is Chicago's Ruby on Rails conference, happening in 2019.
THIS EVENT WILL BE STREAMED via ZOOM. The presentation will start at 6:15. Join the meeting at https://zoom.us/j/3541015445. A recording will be made available after the event.