
DevOps Paradox DOP 301: Exploring OpenRewrite and the Future of Code Modernization
Feb 5, 2025
Jonathan Schneider, from Moderne, specializes in large-scale software refactoring and is a key figure behind OpenRewrite. He discusses the challenges organizations face in modernizing extensive legacy codebases, emphasizing the importance of automation. Jonathan explores how OpenRewrite assists in upgrading Java versions and repairing security vulnerabilities. The conversation also touches on AI's role in software development and the upcoming Code Remix conference, focusing on practical applications for modern development and leadership.
AI Snips
Chapters
Transcript
Episode notes
Type Attribution
- OpenRewrite uses "type attribution," layering semantic information onto ASTs.
- This allows it to understand the meaning of code symbols, enabling more accurate and complex refactoring.
Incremental Upgrades
- Incrementally upgrade dependencies and language versions.
- Avoid large jumps to minimize complexity and risk.
Pull vs. Push Change
- Favor "pull-based change," empowering product teams to initiate code modifications using provided automation.
- Avoid "push-based change," where central teams issue pull requests, as it often leads to low merge rates.
