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 - Bug-Driven Development by Ylan Segal _______________________________________________________________________________________________ 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 _______________________________________________________________________________________________ This is a sponsored talk by Procore. Have you ever gotten a bug report that is hard to believe and seemingly impossible to reproduce? Fixing these type of bugs can be draining, but often improves your understanding of the system. Come and learn the nuts and bolts of writing a good regression test that exposes the bug at the right level of abstraction. We will pay close attention to the structure of our code after the bug fix. Through incremental changes, we will drive improvement. I’ll show you how you can have code that is simpler to understand, follows project conventions, and is easier to test.
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 the talk "Bug-Driven Development" at RailsConf 2019, Ylan Segal discusses how bug reports can drive improvements in software development and testing methodologies. The main theme revolves around the identification, reproduction, and resolution of a complex bug impacting user functionality in a Rails application. Key points include: - **Introduction to Bug-Driven Development:** Ylan introduces the concept, emphasizing the educational value of tackling difficult bugs. - **Case Study Presentation:** He narrates a real-world scenario involving a bug where user statuses did not correctly reflect changes made in the web interface due to discrepancies between the web and API behavior, particularly under different account settings. - **Challenges in Debugging:** The debugging process was complicated due to restrictions on accessing production data, making it hard to replicate issues that were confirmed only under certain conditions, such as regional account differences. - **Code Analysis and Bug Identification:** Through the exploration of the code, Ylan reveals that the root of the bug was linked to the incorrect assignment of user account characteristics due to inadequate equality checks. - **Testing as a Solution:** He emphasizes the importance of writing regression tests that accurately capture the necessary conditions to replicate the bug, advocating for thorough testing across different scenarios to ensure robustness. - **Refactoring for Improvement:** Post-bug fix, he discusses how the process of understanding the bug led to improvements in the system architecture, such as creating better abstractions and adhering to design patterns, which ultimately facilitates simpler code maintenance. - **Emphasis on Continuous Learning:** The conclusion underscores that every encountered bug is an opportunity for learning and improvement, reinforcing that robust testing practices are essential in guiding effective system design. Overall, Ylan illustrates how confronting bugs not only leads to immediate fixes but also contributes to long-term enhancements in application structure and development processes.
Suggest modifications
Cancel