Talks
Speakers
Events
Topics
Sign in
Home
Talks
Speakers
Events
Topics
Leaderboard
Use
Analytics
Sign in
Suggest modification to this talk
Title
Description
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 'What Could Go Wrong? The Science of Coding For Failure' by Daniel Fone at Paris.rb Conf 2020, the speaker emphasizes the significance of examining potential risks in software development by asking two critical questions: 'What could go wrong?' and 'How likely is it, and how bad would it be?'. Fone draws from his background in environmental chemistry to propose a simple framework for assessing danger, defined by its likelihood and severity. He illustrates this framework using relatable metaphors and personal anecdotes, enhancing our understanding of human cognition in relation to risk assessment. Key Points Discussed: - **Concept of Danger**: Fone describes danger as comprising two factors: likeliness and badness, reinforcing that dangers are not solely about risk frequencies, but also about potential consequences. - **Micromorts**: Introduced as a quantifiable measure of risk, where one micromort signifies a one-in-a-million chance of death. This helps contextualize everyday risks in travel and activities. - **Common Perception Errors**: He elaborates on cognitive biases like complacency (underestimating risk) and hysteria (overestimating risk), highlighting how these can skew our decision-making processes. - **Application in Coding**: Fone outlines how to apply this risk consciousness in coding by systematically questioning what could go wrong at each step. He provides a coding example to examine a method for fetching a file from a URL, evaluating potential failures and their implications. - **Real-world Examples**: He reflects on prior experiences with automated testing, UUID generation, and authentication timing attacks, demonstrating that acknowledging potential failure is crucial for maintaining software integrity. Conclusion and Takeaways: Fone encourages developers to adopt a mindset that continually questions potential failures in their coding practices. By integrating risk assessment into development processes, programmers can enhance decision-making, mitigate unforeseen dangers, and ultimately create more robust systems. The overarching call to action centers on continuously asking 'What could go wrong?' to foster a culture of awareness and preparedness in software development.
Suggest modifications
Cancel