Talks
Speakers
Events
Topics
Sign in
Home
Talks
Speakers
Events
Topics
Leaderboard
Use
Analytics
Sign in
Suggest modification to this talk
Title
Description
RailsConf 2019 - Terraforming legacy Rails applications by Vladimir Dementyev _______________________________________________________________________________________________ Cloud 66 - Pain Free Rails Deployments Cloud 66 for Rails acts like your in-house DevOps team to build, deploy and maintain your Rails applications on any cloud or server. Get $100 Cloud 66 Free Credits with the code: RailsConf-19 ($100 Cloud 66 Free Credits, for the new user only, valid till 31st December 2019) Link to the website: https://cloud66.com/rails?utm_source=-&utm_medium=-&utm_campaign=RailsConf19 Link to sign up: https://app.cloud66.com/users/sign_in?utm_source=-&utm_medium=-&utm_campaign=RailsConf19 _______________________________________________________________________________________________ Rails has been around for (can you imagine!) about 15 years. Most Rails applications are no longer MVPs, but they grew from MVPs and usually contain a lot of legacy code that "just works." And this legacy makes shipping new features harder and riskier: the new functionality have to co-exist with the code written years ago, and who knows what will blow up next? I've been working on legacy codebases for the last few years, and I found turning legacy code into a legendary code to be a very exciting and challenging process. I want to share the ideas and techniques I apply to make legacy codebases habitable and to prepare a breeding ground for the new features.
Date
Summarized using AI?
If this talk's summary was generated by AI, please check this box. A "Summarized using AI" badge will be displayed in the summary tab to indicate that the summary was generated using AI.
Show "Summarized using AI" badge on summary page
Summary
Markdown supported
The video titled 'Terraforming Legacy Rails Applications' features Vladimir Dementyev at RailsConf 2019, discussing strategies for enhancing legacy Rails applications. The main theme revolves around transforming legacy codebases into healthy, maintainable ones, analogous to terraforming Mars to make it habitable. The speaker emphasizes the challenges posed by legacy code, including technical debt and the difficulty in integrating new features. Key points discussed include: - **Defining Legacy Projects**: For Dementyev, legacy projects are those over one or two years old, often filled with technical debt and unclear coding practices. - **Development Environment Setup**: The importance of setting up a clean development environment using tools like Docker for predictability and ease of use is highlighted. This setup minimizes configuration errors and allows for seamless onboarding of new developers. - **Configuration Management**: Best practices for managing application configurations are presented, focusing on keeping sensitive data secure and organized. Dementyev recommends avoiding excessive use of environment variables throughout the codebase. - **Testing Frameworks**: The necessity of a robust test suite is compared to maintaining a breathable atmosphere for habitation. Tools like 'Test Prof' are discussed to improve test reliability and speed, preventing them from becoming a bottleneck in development. - **Security and Consistency**: The speaker touches on security practices and the importance of consistency between the code and database models. Tools like 'Bundler Audit' and 'Brakeman' are recommended for identifying vulnerabilities. - **Removing Dead Code**: Strategies for identifying and removing outdated or unused code and gems are shared, using specific tools such as Traceroute and Factory Trace. - **Automation Tools**: He introduces automation tools such as 'Danger' for improving code review efficiency, emphasizing the need for a solid development process to ensure project health. In conclusion, Dementyev encourages developers to proactively 'terraform' their legacy Rails applications to create a stable environment conducive to development, similar to the ongoing efforts to make Mars habitable. He assures that the strategies and tools discussed can significantly enhance any legacy codebase.
Suggest modifications
Cancel