🐛 ТОП-5 самых страшных багов в истории
Мы привыкли, что баг — это «кнопочка съехала» или приложение показало 500. Но иногда ошибка в коде стоит сотни миллионов долларов, космический аппарат или человеческие жизни.
💀 5. Mars Climate Orbiter — перепутали единицы измерения В 1999 году NASA потеряло аппарат у Марса: одна часть системы работала с английскими единицами измерения, другая ожидала метрические. Ошибка в расчётах траектории отправила аппарат слишком близко к планете — связь с ним была потеряна.
🚀 4. Ariane 5 — 37 секунд полёта В 1996 году новая европейская ракета Ariane 5 потеряла данные системы навигации из-за ошибок в ПО, резко отклонилась от курса и была уничтожена системой безопасности. Всё закончилось примерно через 37 секунд после старта.
💸 3. Knight Capital — минус сотни миллионов за 45 минут В 2012 году после неудачного развёртывания торгового ПО система начала отправлять миллионы ошибочных заявок на биржу. За первые 45 минут компания получила огромные нежелательные позиции и потеряла более $440 млн. Самое жуткое для любого QA: система успела выдать десятки сообщений об ошибках ещё до открытия рынка.
☢️ 2. Therac-25 — когда баг становится смертельным В 1980-х программные ошибки в аппарате лучевой терапии Therac-25 при определённых условиях позволяли пациентам получить огромную передозировку радиации. Зафиксировано шесть таких передозировок; как минимум три пациента умерли. Среди проблем были race condition, переполнение переменной и отказ от части аппаратных защит в пользу программных.
🎯 1. Patriot — ошибка, которая накапливалась со временем В 1991 году система Patriot в Саудовской Аравии не смогла перехватить ракету Scud. Погрешность вычислений времени постепенно росла, а установка к тому моменту работала более 100 часов подряд — система стала искать цель не там, где она находилась. Ракета попала в казарму, погибли 28 человек.
И вот что объединяет почти все эти истории: страшный баг редко бывает просто одной опечаткой в коде. За ним обычно стоит цепочка — неучтённый сценарий + слабое тестирование + архитектурное решение + предупреждение, которое кто-то пропустил.
Так что фраза тестировщика «а что будет, если?..» иногда гораздо важнее, чем кажется. 🐈⬛
#ИИшная #программирование #тестирование #QA #баги #историяIT