Email the Author
You can use this page to email Tim McNamara about goto fail;.
About the Book
"goto fail; An anthology of software errors and the stories behind them" lifts the veil on the often-overlooked realm of software bugs, unveiling the captivating tales of digital misadventures that have shaped our history. From tragic consequences to unexpected humor, this book traverses the intricate landscape of software development, inviting you to join us on an extraordinary journey through the unforgettable stories of software bugs, glitches, and everything in between.
In an era of technological omnipresence, "goto fail" explores the human element that weaves these remarkable stories together. Behind each of these software blunders lies a narrative of ambition, innovation, and the ever-present possibility of failure. From the infamous "goto fail" bug in Apple's SSL/TLS implementation to the devastating miscalculations of the Therac-25 radiation therapy machine, we delve into the delicate interplay between human ingenuity and fallibility. This anthology not only highlights the immense responsibility that rests upon the shoulders of software developers but also reveals how our digital creations can take on lives of their own, shaping our world in unimaginable ways.
As we navigate through these captivating tales, we uncover the diverse consequences of software errors, striking a balance between cautionary tales and light-hearted anecdotes. The journey takes us to cases of famous software lore, such as when Y2K threatened to take us back to the dark ages (or so we thought), and to some lessor known examples, such as the Zune 30 leap year bug that left music lovers momentarily frozen in time. These stories serve as a testament to the complexity and beauty of software development, as well as a reminder of the unanticipated outcomes that can emerge when our digital creations spiral out of control.
"goto fail" invites you to ponder the often treacherous terrain of software errors, exploring the captivating stories behind them. As we traverse this fascinating landscape, we are reminded of the extraordinary power of software and its ability to shape our world in ways both inspiring and cautionary. Through this anthology, we aim to foster a deeper appreciation for the intricacies of software development and the ever-present potential for failure that accompanies it.
So, buckle up and prepare for a thrilling ride through the fascinating, unpredictable, and sometimes treacherous world of software errors and the enthralling stories behind them. As you turn the pages of "goto fail," we hope that you'll not only gain a deeper understanding of the impact of software errors throughout history but also develop a newfound appreciation for the incredible power and vulnerability of the digital world we inhabit.
Some highlights:
- Therac-25: A race condition in the software caused massive radiation overdoses, leading to severe injuries and multiple fatalities.
- Ariane 5 Flight 501: A data conversion error due to reused software from Ariane 4 caused the rocket to explode shortly after launch.
- Mars Climate Orbiter: Mismatched units of measurement in the software resulted in the spacecraft's disintegration upon entering Mars' atmosphere.
- Knight Capital Group: An obsolete piece of software was accidentally reactivated, leading to a $440 million loss in just 45 minutes.
- Apple's "goto fail": An extra "goto fail" line in the code bypassed a critical security check, making devices vulnerable to man-in-the-middle attacks.
- Heartbleed: A missing bounds check in OpenSSL's implementation of the TLS heartbeat extension allowed attackers to steal sensitive data from vulnerable servers.
- Boeing 737 MAX: Software issues in the Maneuvering Characteristics Augmentation System (MCAS) led to two crashes, grounding the entire fleet.
- Y2K bug: The practice of representing years with only two digits led to widespread computer errors as the year 2000 approached.
- Pentium FDIV bug: A flaw in the Intel Pentium processor caused incorrect floating-point division results, affecting mathematical calculations.
- Zune 30 leap year bug: A software error caused Microsoft's Zune 30 devices to freeze on December 31, 2008, due to an incorrect handling of leap years.
About the Author
Tim is the author of Rust in Action and has extensive experience in using and teaching the language. He has been invited to deliver courses, workshops, and talks across Europe, Oceania, and North America. His background is in AI/ML, specifically natural language processing.