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 - Death by a thousand commits by Kyle d'Oliveira _______________________________________________________________________________________________ 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 _______________________________________________________________________________________________ On the 1st commit, things are getting started. On the 10th commit, the feature is live and users are giving feedback. On the 100th commit, users are delighted to be using the application. But on the 1000th commit, users are unhappy with the responsiveness of the application and the developers are struggling to move at the velocity they once were. Does this sound familiar? We will go over some of the pieces of technical debt that can accumulate and can cause application performance and development velocity issues, and the strategies Clio uses to keep these kinds of technical debt under control.
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
In Kyle d'Oliveira's presentation at RailsConf 2019, titled "Death by a Thousand Commits," he addresses the issue of technical debt that accumulates in software development, particularly within Ruby on Rails applications. The session explores various stages companies experience with technical debt, illustrating the challenges that arise as an application evolves through multiple commits. d'Oliveira emphasizes the importance of proactive strategies for managing technical debt to enhance both application performance and development velocity. Key points include: - **Understanding Technical Debt**: d'Oliveira explains that technical debt does not immediately change system behavior but can severely slow down development and negatively impact performance, often leading to emergencies that divert resources from other projects. - **Technical Debt Quadrants**: He references Martin Fowler's technical debt quadrants, which categorize types of technical debt based on whether it is deliberate or inadvertent and reckless or prudent. He advocates for operating in the "prudent deliberate" quadrant where teams recognize the risks and manage them proactively. - **Proactive vs. Reactive Strategies**: The speaker suggests a proactive approach to identify and manage technical debt before it leads to crises, contrasting it with a reactive stance that addresses issues only when they become urgent. - **Practical Lessons from Clio**: d'Oliveira shares four lessons learned at Clio, including: - **Fixing Technical Debt**: Instead of continuously addressing debt after it manifests, create tools that automate elimination of common issues, such as N+1 queries. - **Removing Unused Code**: Develop mechanisms to detect and eliminate dead code, thereby reducing maintenance overhead and potential bugs. - **Dealing with Emergencies**: Improve monitoring and diagnostic tools to quickly identify issues, which helps in addressing performance degradation before it escalates into bigger problems. - **Preventing Bad Patterns**: Implement code reviews and automated tools (like RuboCop) to restrict the introduction of problematic code patterns into the codebase. d'Oliveira concludes by emphasizing the continuous need to address technical debt and the importance of sharing knowledge within the developer community. By building better tools and strategies, teams can focus on delivering value rather than constantly fighting technical debt. The overarching message is that addressing technical debt is critical for maintaining a healthy development environment and community. Overall, the talk underscores the balance between speed and quality in software development, advocating for practices that minimize technical debt while fostering innovation.
Suggest modifications
Cancel