My work is onboard people in a large Ruby codebase, and most of the time, I'm showing code or hunting for some code examples.
While developing some educational RuboCop cops, I found the RuboCop node pattern very useful to target code offenses. Then, I developed a similar tool to search and allow refactoring code based on node pattern concept.
Live coding: Grepping Ruby code like a boss
Our favorite language allows us to implement the same code in a few different ways. Because of that, it becomes tough to search and find the target code only with regular expressions.
I'd like to present fast, a searching DSL that can help you build complex searches directly in the AST nodes as regexes does for plain strings.
The presentation will be a live coding tour of how to use the tool and create your searching patterns.
I'll also show how to manipulate the code in the target AST nodes, allowing us to refactor the source code in an automated way. I'll share a few funny stories about how I refactored thousands of files in a week.