Известные компьютерные ошибки

Самые дорогие и судьбоносные ошибки в ИТ-индустрии

Время на прочтение
8 мин

Количество просмотров 78K

Досадные ошибки в программном обеспечении могут стоить компаниям очень дорого и даже ставят под угрозу существование их бизнеса. Однако ошибки, которые допускает сам «бизнес», влияют на судьбу ИТ-индустрии и судьбы целых поколений.

Первый баг был зафиксирован 9 сентября 1945 года: в вычислительной машине Mark II Aiken Relay Calculator нашли мотылька, застрявшего между контактами электромеханического реле, что приводило к ошибкам. Извлеченное насекомое было вклеено в технический дневник с сопроводительной надписью: «First actual case of bug being found». Этот забавный факт и положил начало использованию слова «баг» в современном значении.

Ракета «Маринер-1»: ущерб в 18,5 млн долларов

21 июля 1962 с Мыса Канаверал был произведен запуск ракеты-носителя «Атлас», несущей аппарат «Маринер-1», который должен был отправиться к Венере. Через несколько минут после взлета ракета отклонилась от курса и была подорвана из соображений безопасности.


Фото: NASA

«Инженеры, проанализировавшие записи телеметрии, вскоре обнаружили, что причиной послужили две независимых ошибки. Антенна ведения на „Атласе“ была изготовленна некачественно, с параметрами ниже заявленных. Когда получаемый ракетой сигнал стал слабым и зашумленным, ракета потеряла привязку к сигналу с Земли, посредством которого передавались команды поворота. Такая возможность была предусмотрена; в случае потери сигнала радиоведения бортовой компьютер должен был игнорировать сигналы с неисправной антенны и выполнять собственную программу, которая, возможно, смогла бы обеспечить успешный запуск. Однако, в этот момент проявилась вторая ошибка. Каким-то образом в программе ведения оказался пропущенным дефис, что привело к некорректному управлению ракетой — уходу влево и опусканию носа. Дефис был пропущен и во время предыдущих успешных запусков „Атласа“, но эта часть программы не использовалась, т.к. не происходило разрыва радиосвязи. Таким образом, первая попытка Штатов осуществить межпланетный перелет потерпела крах из-за пропущенного дефиса.» (Oran W. Nicks, NASA, 1985)

Этого могло и не случиться, если бы антенна аппарата не потеряла связь с наводящей системой на Земле. В результате управление взял на себя бортовой компьютер, программа которого и содержала роковую ошибку.

Cтадион «Хартфорд Колизей»: ущерб в 90 млн долларов

18 января 1978 года болельщики чудом избежали смерти на стадионе «Хартфорд Колизей». Через несколько часов после того, как они покинули стадион, его стальная крыша рухнула на трибуны.

Причина случившегося – ошибка в расчетах при проектировании конструкции. Уже в то время для строительного проектирования создавался специальный софт. Программист не учел такие факторы, как мокрый снег и ветер при расчете прочности балок, поддерживающих крышу. Он исходил только из веса самой крыши. В результате одна из опор неожиданно прогнулась под воздействием снега, это вызвало цепную реакцию, которая сложила всю конструкцию вместе с другими участками крыши как костяшки домино.

15 января 1990 года ошибка в новой версии прошивки междугородних коммутаторов привела к сбою 114 коммутаторов

Из-за этого более 60 тысяч человек остались без междугородней связи на 9 часов. Согласно программе, коммутатор должен перезагрузиться, если получит соответствующий сигнал, однако этот сигнал по ошибке пересылался каждый раз при восстановлении после сбоя какого-либо коммутатора.

Все началось с падения и перезагрузки коммутатора в Нью-Йорке, который вызвал масштабную цепную реакцию, в результате которой 114 коммутаторов перезагружались непрерывно каждые 6 секунд. Сначала компания обвиняла хакеров, однако позже выяснилось, что причиной стала одна неверная строка кода, в которой реализовывалась отправка сигнала.

Баг в процессоре Pentium: ущерб в 475 миллионов долларов

В 1994 году профессор математики Линчбургского колледжа Томас Найсли обнаружил баг в популярном процессоре Pentium и опубликовал об этом статью.

Ошибка Pentium FDIV — это ошибка в модуле операций с плавающей запятой в оригинальных процессорах Pentium, выпускавшихся фирмой Intel в 1994 году. Ошибка выражалась в том, что при проведении деления над числами с плавающей запятой при помощи команды процессора FDIV в некоторых случаях результат мог быть некорректным.

Согласно заявлению Intel причиной проблемы послужили неточности в таблице поиска, используемой при проведении операции деления.

Компания Intel в ответ на это замечание заявила, что готова заменять процессоры по требованию пользователей, которые смогли бы доказать, что пострадали в результате этой ошибки.

По прогнозам Intel, вероятность её возникновения была столь низкой, что подавляющее большинство пользователей даже не заметили бы её. Однако возмущённые клиенты потребовали заменить процессоры всем желающим. Финансовые потери Intel в результате составили около 475 миллионов долларов.

Ракета Ariane 5: ущерб в 8,5 млрд долларов

4 июня 1996 года случился неудачный запуск ракеты-носителя Ariane 5, которая была разработана Европейским космическим агентством. Ракета разрушилась на 39-й секунде полета из-за неверной работы бортового программного обеспечения. Эта история запомнилась, как одна из самых дорогостоящих компьютерных ошибок.

В системе управления полетом новой ракеты Ариан 5 использовались фрагменты программного обеспечения ракеты Ариан 4, в частности системы инерциальной навигации. Однако при переносе этой системы для использования на новой ракете, разработчиками не были учтены все особенности. Из-за другой траектории выведения ракеты на 30-й секунде после запуска значение горизонтальной скорости превысило установленные в программе ограничения и вызвало сбой в работе компьютера.

В результате ракета получила ложную команду на отклонение сопел ускорителей, а позже и основного двигателя. На 39-й секунде полета ракета стала разрушаться под действием аэродинамических сил и самоуничтожилась.

Программное обеспечение, установленное на борту Ariane 5, было разработано для более ранней модели – Ariane 4. Более мощный двигатель Ariane 5 спровоцировал баг, не встречавшийся в предыдущих версиях ПО.

В сущности, программа попыталась записать 64-разрядное число в 16-разрядное пространство. Возникло переполнение, в результате которого отказал и основной, и резервный компьютер (поскольку на обоих компьютерах выполнялись одни и те же программы).

На разработку Ariane 5 было потрачено около 8 миллиардов долларов. Общая стоимость спутников, которые должна была вывести на орбиту эта ракета, составляла 500 миллионов долларов.

Cпутник «Mars Climate Orbiter»: ущерб в 125 млн долларов

Из-за фатальной ошибки аппарат оказался слишком близко к поверхности Марса.

Аппарат летел к Марсу 9 месяцев. Mars Climate Orbiter 23 сентября 1999 года должен был выдать тормозной импульс и перейти на высокоэллиптическую орбиту с периодом 14 часов, а затем в течение двух месяцев с помощью ряда аэродинамических маневров в верхней атмосфере Марса довести орбиту до круговой. В расчетное время на высоте 193 км аппарат включил двигатели на торможение. Через 5 минут MCO запланировано ушел за Марс и больше никаких сигналов с него не поступало. Из анализа данных было предположено, что аппарат прошел над поверхностью Марса на высоте 57 км вместо расчетных 110 км и распался в атмосфере.

Субподрядчик, который работал над многими инженерными задачами, не выполнил простейшего преобразования английских единиц измерения в метрическую систему. Диспетчеры пришли к выводу, что спутник на большой скорости вошел в марсианскую атмосферу, где из-за возникших перегрузок его системы связи вышли из строя.

Бизнес-ошибки в ИТ

Часто возникают вопросы — отчего в мире информационных технологий некоторые крупнейшие сделки так и остаются нереализованными, а самые перспективные продукты не развиваются? Обычно причина в том, что их лидеры не могут предугадать будущее развитие событий.

А ведь события могли сложиться так, что не появились бы ни Microsoft, ни Apple. В альтернативном мире главным поисковым сервером был бы не Google, а Yahoo. Самым распространенным компьютером был бы Xerox, самой популярной социальной сетью – CompuServe. А музыку мы слушали бы через RealPod.

Спасение Apple

В конце 1990-х годов продажи компьютеров Apple Mac существенно снизились. Этому способствовали более дешевые конкуренты – Power Computing и Radius. Цена акций Apple упала до $5. Но неожиданно помощь пришла от Microsoft: помощь в размере $150 миллионов. Кроме того, Microsoft пообещала продолжить разработку своего пакета офисных программ для MacOS.

Из-за такого решения Microsoft лишила себя определенных перспектив. Вполне возможно, сегодня на рынке царили бы WinPhone, музыку на них мы бы качали через WinTunes. А все пользователи до сих пор с нетерпением ожидали бы выхода достойной альтернативы Windows.

Потерянный рынок

В середине 1990-х годов, еще до появления Google, самой продвинутой поисковой машиной была даже не Yahoo, не AltaVista, не Lycos или Hot Wired. Система Open Text, как и Google сегодня, работала максимально быстро, точно, охватывая весь объем информации. В 1995 году менеджеры компании Open Text небезосновательно утверждали, что их система смогла проиндексировать каждое слово из 5 миллионов документов, которые на тот момент и составляли Всемирную сеть.

Однако в 1997 году разработчики Open Text посчитали рынок поиска недостаточно перспективным и занялись системами управления корпоративными данными. Ну а через год появилась компания Google, которая показала, что они ошибались на счет перспектив этого рынка.

Ситуация могла сложиться иначе, а сам Google мог бы не занимать сейчас лидирующую позицию. Скорее всего, сервисы работы с информацией в Интернете были бы другими.

CompuServe и упущенное лидерство

CompuServe 24 сентября 1979 года запустила первый информационный сервис MicroNET, доступ к которому осуществлялся по телефонным линиям. Сервис позволял участникам сети передавать файлы, получать доступ к новостям и событиям, обмениваться сообщениями и присоединяться к дискуссионным форумам. В 1980 году сервис был переименован в CompuServe Information Service (CIS).

Конечно, пользователей сервиса привлекали прежде всего не новости, а возможность общаться, и появившаяся в 1980 году программа CB Simulator, обеспечивающая чат в реальном времени, стала невероятно популярной. В начале 1981 года число пользователей CIS перевалило за 10 тысяч, а к началу 1990-х исчислялось миллионами, в то время сервис был самым популярным в США. Компания имела базу лояльных клиентов, обилие информации об их вкусах, полезная база знаний и практически полное отсутствие каких-либо конкурентов в этой нише.

Однако сервис все еще имел текстовый интерфейс и поминутную тарификацию. Именно это позволило AOL, которая предложила более интересное интерфейсное решение и возможность неограниченного по времени общения за небольшую месячную абонентскую плату, потеснить CompuServe.

Сервис не смог укрепиться на рынке по простой причине — компания не хотела вкладывать в свои преимущества деньги, чтобы потом монетизировать результаты.

Компьютеры Xerox

Alto от компании Xerox был первым в мире компьютером с пользовательским интерфейсом в виде окон. Он был создан за 10 лет до появления персональных компьютеров под управлением Windows и Maс, задолго до микрокомпьютеров MITS Altair.

Alto поставлялся с мышью, имел возможность подключаться к локальной сети. Кроме того, на нем был предустановлен текстовый редактор, работавший по принципу WYSIWYG («получаешь то, что видишь»).
К сожалению для компании Xerox, в 1973 году рынка персональных компьютеров просто не существовало. Компания создала несколько тысяч таких компьютеров, которые были размещены в университетах страны. Но дальше этого распространение этих машин не пошло, а Xerox никак не пыталась их продвигать.

Когда в компании поняли, что допустили серьезную ошибку, было уже поздно. Была начата работа по продвижению графической рабочей станции Xerox Star, но это уже не могло изменить ситуацию: в результате на рынке прочно закрепились персональные компьютеры с Windows и Mac OS.

Непроданный Facebook

В 2006 году, когда Facebook было всего два года, широкая общественность относилась к ней, как к узкопрофильной социальной сети для студентов. В то время на Facebook было зарегистрировано 8 миллионов пользователей. В то время как аудитория MySpace превышала 100 миллионов.

Компания Yahoo предложила Марку Цукербергу $1 миллиард за его детище. В июне 2006 года Цукерберг подписал контракт о продаже Facebook.

Однако, на фоне резкого ухудшения финансового положения Yahoo, ее тогдашний гендиректор Терри Сэмел сбавил сумму до $800 миллионов. Цукерберг отказался продавать компанию за эти деньги. Через два месяца Yahoo вернулась к предыдущим условиям сделки, но было уже поздно. После этого дела этой компании шли все хуже. Теперь она продана холдингу Verizon. В начале 2000-х годов капитализация Yahoo превышала $125 миллиардов. Теперь Verizon купила компанию всего за $4,83 миллиарда.

Странная идея

Информация о том, что iPod придумал Стив Джобс, не совсем верна. Руководство компании Real Networks не оценило идею Тони Фэделла о создании совершенно нового типа музыкального плеера. К тому времени рынок был уже насыщен MP3 плеерами.

Но его плеер был тоньше и меньших размеров, а система доставки контента давала меломанам простые способы наполнить свой плеер новой музыкой. Так, в 2000-ом году Стив Джобс согласился сотрудничать с Тони Фэделлом. Джобс доработал дизайн плеера, а другие специалисты Apple доработали систему доставки контента, которая получила имя iTunes.

В результате около 80% рынка цифровой музыки сегодня принадлежит компании Apple. Сам Тони Фэделл проработал в отделении, разрабатывающем iTunes до ноября 2008 года. А компания Real Networks все так же производит обычные плееры. Однако ее доходы не идут ни в какое сравнение с тем, сколько iTunes приносит корпорации Apple.

В истории программирования не всегда все было легко и безоблачно. Ведь любому программисту, вне зависимости от опыта и технического бэкграунда, трудно уберечься от ошибок и порой даже небольшого количества плохого кода хватало, чтобы вызвать серьезную проблему. «Библиотека программиста» немного полистала ИТ-летописи и нашла для вас 10 самых худших ошибок в истории кодинга. Поехали!

1. Ошибка 2000 года

⚠️💻 10 самых известных ошибок в коде в истории программирования

Более двух десятилетий назад, в канун нового 2000 года, весь развитый мир охватила паника из-за проблемы способной привести к сбоям в работе компьютеров, падению самолетов, прекращению работы медицинского оборудования и разрушению глобальной финансовой системы.

Суть проблемы заключалась в том, что большинство устаревших информационных систем, созданных еще в 70-х и 80-х, использовали только две цифры для исчисления года. Это значит, что часы внутри микропроцессоров различного аппаратного ПО регистрировали 1999 год как «99», основываясь на ошибочном предположении разработчиков прошлого, что мы всегда будем жить в 20-м веке и цифра «19» в обозначении года никогда не изменится.

Тогда все полагали, что в 2000 году у всех нас наверняка будут реактивные ранцы, еда в форме таблеток, футуристическая серебристая униформа и человечество к этому времени откажется от старых компьютерных систем середины века. Но чуда не случилось!

И в канун всеми любимого праздника мир охватила полномасштабная паника. Кто-то усердно работал над внедрением обходных путей, выделяя на эти цели колоссальные средства. Другие же вообще не чинили, не исправляли и не обновляли свои системы. Кто из них был прав, сейчас сказать сложно, но когда наступил рубеж тысячелетий, глобальной катастрофы не произошло. Однако у всей этой шумихи, все же был положительный эффект. До общественности наконец начало доходить, как много жизненно важных систем зависит от компьютеров и микропроцессоров и как важно следить за их ПО и своевременно его обслуживать.

2. Терак-25

⚠️💻 10 самых известных ошибок в коде в истории программирования

Плохой код на самом деле может убить. Такая катастрофа произошла с аппаратом лучевой терапии Therac-25, произведенным компанией Atomic Energy of Canada, ставшего причиной гибели не менее шести пациентов. Расследование выявило недоработку системы, вызвавшую передозировку радиацией. Связано это было с трудностью проведения автоматизированных тестов такого специфического программного обеспечения. И поэтому машина, призванная помочь людям, стала машиной для убийств из научной фантастики. Этот случай заставил разработчиков ПО медицинской отрасли крайне ответственно подходить к тестированию такого оборудования.

3. Сеть AT&T выходит из строя

⚠️💻 10 самых известных ошибок в коде в истории программирования

15 января 1990 года около 50 процентов мобильной сети AT&T вышло из строя. За девять часов простоя более 75 миллионов звонков остались без ответа. И хотя в первоначальных отчетах следствия по этому делу значилось хакерская атака, на самом деле, виновником сего происшествия стало стандартное обновление ПО. Ошибка всего в одной строке кода стоила компании огромных денег. Все организации, целиком зависящие от наличия и качества связи, выставили AT&T иски с внушительными суммами. К примеру, крупнейший авиаперевозчик American Airlines, понес колоссальные финансовые убытки из-за того, что получил наполовину меньше звонков своих клиентов из-за сбоя. Авария 1990 года до сих пор служит прекрасным примером важности тестирования программного обеспечения и служит напоминанием о неразрывной связи между технологиями и экономической деятельностью большинства компаний.

4. Досрочное освобождение заключенных

⚠️💻 10 самых известных ошибок в коде в истории программирования

В 2005 году в США штате Мичиган произошел сбой тюремной программы, отвечающей за расчет срока наказания заключенных, в результате чего более 20 заключенных досрочно вышли на свободу. Программа ошибочно посчитала смягчающий коэффициент и снизила срок пребывания отбывающих наказание людей в несколько раз. Ошибку в коде заметили не сразу, а лишь по прошествии некоторого времени. И поэтому меру пресечения счастливчикам никто не пересчитывал. Среди них, к слову, не было матерых гангстеров и маньяков. В основном это были мелкие правонарушители, отбывавшие срок за неуплату алиментов, махинации с налогами и незаконное хранение психотропов.

Произошедшее показывает, что в погоне за автоматизацией процессов и сокращением количества ручных операций программисты зачастую забывают о грамотной настройке разработанной системы и ее тестировании. А мы с вами в очередной раз убеждаемся, что даже незначительная ошибка может привести к серьезным последствиям.

5. Взрыв Ariane 5

⚠️💻 10 самых известных ошибок в коде в истории программирования

Случай произошел 4 июня 1996 года при первом запуске Ariane 5 — одной из самых надежных беспилотных ракетных установок, целью которой было изучение взаимодействия между солнечным ветром и магнитосферой Земли. Через 37 секунд после старта ракета, вылетевшая с космодрома, находящегося на берегах Французской Гвианы, развернулась на 90 градусов и всего через несколько секунд превратилась в огромный огненный шар.

Специальная группа прочесала место происшествия, собирая обломки, чтобы попытаться выяснить, что произошло. Через некоторое время техническая комиссия установила, что авария была вызвана программным сбоем.

Отказ системы произошел из-за полной потери информации о точности наведения ракеты и ориентации ее в пространстве, поступающей в центральный процессор. Потеря — следствие ошибки проектировщиков ПО и вызвана она была некорректным преобразованием 64-битного числа с плавающей запятой в 16-битное целое число.

К слову, целочисленное переполнение является широко распространенной ошибкой в ​​​​компьютерном программировании.

6. Ошибка Paypal

⚠️💻 10 самых известных ошибок в коде в истории программирования

Что бы вы сделали, если бы PayPal случайно зачислил на ваш счет 92 квадриллиона долларов? Крису Рейнольдсу, 56-летнему американцу, продающему автозапчасти на eBay, не пришлось долго об этом думать. Ведь он даже не успел ощутить себя первым в мире квадриллионером и самым богатым человеком в мире, так как ошибка была устранена в течение нескольких минут. Поэтому, прежде чем мужчина начал мечтать о новом кадиллаке и золотой карте члена королевского яхт-клуба, сумма на его счету вернулась к привычному балансу. Конечно, стоило бы потребовать с компании хотя бы часть этой суммы за моральный ущерб, но, видимо, шок от увиденного не позволил ему сделать это.

7. Калькулятор Windows

⚠️💻 10 самых известных ошибок в коде в истории программирования

Эта ошибка, существующая в большинстве версий Windows (кроме Windows 10), которую вы сможете проверить самостоятельно.

Для этого нужно:

  1. Открыть калькулятор Windows и ввести 4.
  2. Извлечь из этого числа квадратный корень и получите 2.
  3. Вычесть из него 2 и вместо нулевого результата в разных версиях Windows вы увидите разные результаты.

Причиной ошибки является недоработка, вызванная некорректным обращением калькулятора с операциями sqrt. В итоге результаты сохраняются как числа с плавающей запятой, а не целые числа, вызывая ошибку точности при дальнейших вычислениях, которую вы можете видеть.

Microsoft признала эту ошибку в приложении калькулятора и исправила ее в Windows 10.

8. Проблема 2038 года

⚠️💻 10 самых известных ошибок в коде в истории программирования

Ошибка 2038 будет вызвана использованием 32-разрядных процессоров в 32-разрядных системах. Проще говоря, 19 января 2038 года наступит в 03:14:07. Компьютеры, которые все еще используют 32-разрядные системы для управления датой и временем, не смогут справиться с этим изменением. Как и в случае с ошибкой 2000 года, компьютеры не смогут отличить 2038 год от 1970 года.

Однако волноваться не стоит: почти все современные процессоры в настольных ПК имеют 64-битные системы с 64-битным программным обеспечением и в 2038 году само существование 32-битных систем будет под вопросом.

9. Видео Gangnam Style «сломало» YouTube

⚠️💻 10 самых известных ошибок в коде в истории программирования

Счетчик YouTube ранее использовал 32-битное целое число для определения максимального количества просмотров видеоролика, и равно оно было 2 147 483 647.

Однако корейская поп-группа PSY, выложившая на сервис свой клип с зажигательной песней Gangnam Style благополучно его сломала, превысив допустимую планку.

«Когда мы его делали, никогда не думали, что какое-нибудь видео посмотрят столько раз, но это было до Gangman Style», — написал на своей странице в сети один из разработчиков портала.

Клип PSY опубликовали 15 июля 2012 года и к концу мая 2014 года он стал единственным видеороликом, которой просмотрели больше 2 млрд раз.

В настоящее время YouTube использует 64-битное целое число для счетчика видео, что означает, что максимальное количество просмотров видео составляет 9,22 квинтиллиона.

10. Синий экран смерти

⚠️💻 10 самых известных ошибок в коде в истории программирования

BSOD или «Синий экран смерти» — жаргонное название фатальной системной ошибки Windows, показывающей системный сбой, при котором операционка достигала состояния, в котором она больше не могла надежно работать. Как правило, вызывалась она в Windows 95-98 после неожиданного завершения важного процесса или общего сбоя оборудования. Старожилы наверняка помнят этот баг, который довольно часто возникал на заре становления ИТ-культуры.

16 марта 2000 года Microsoft выпустила обновление для системы безопасности, устраняющее эту неполадку, однако и сейчас на форумах изредка можно встретить сообщение от пользователей об этой проблеме.

***

Людям свойственно совершать ошибки. Однако, будьте внимательны — всегда нужно помнить, что даже одна плохо написанная строчка кода может привести к печальным последствиям. Удачи!

Материалы по теме

  • ⚠️ 10 самых распространенных ошибок, ежедневно допускаемых каждым программистом
  • ⚠️ Как не нужно учить TypeScript: 5 распространенных ошибок
  • 😢 Дорогостоящие ошибки: почему нам пришлось отказаться от Firebase

6 сентября 1989 года парижанам запомнилось надолго — в этот день более 41 тысячи жителей французской столицы получили из полиции официальные письма о том, что они совершили жестокие убийства и грабежи, хотя на самом деле адресаты всего лишь нарушили правила дорожного движения.

Причиной казуса оказался сбой в компьютерной системе парижской жандармерии, добавивший седых волос простым обывателям. Этот инцидент стал далеко не первым в истории высоких технологий, и уж конечно — не последним.

А сегодня, в день тестировщика, давайте вспомним самые громкие и широко известные компьютерные ошибки, которые привели к забавным, а иногда — довольно печальным последствиям.

Ни одна программа в мире, за исключением, пожалуй, “Hello World!” полностью не застрахована от ошибок. А что уж говорить о больших приложениях, состоящих из миллионов строк кода, разработкой которых занимаются целые команды программистов. Да, прежде чем попасть в продакшен, такие программные продукты тщательно документируются и проходят через заботливые руки тестировщиков, но суровая реальность все равно вносит в логику их работы свои коррективы.

Иногда на стабильность софта оказывают влияние внешние обстоятельства и условия эксплуатации, гораздо чаще причина проблем располагается где-то в пространстве между офисным креслом и клавиатурой. И очень хорошо, если сбой приведет всего лишь к потере парочки важных отчетов. Иногда последствия могут быть куда более серьёзными.

Крупнейшая банковская ошибка в истории Америки

Тёплым майским днем 1996 года инкассатор частной чикагской компании по обслуживанию газового оборудования «Peoples Gas Light and Coke» Сильвестр Дорси отправился на обед. По пути он решил завернуть к ближайшему банкомату, чтобы проверить остаток на счете своей банковской карты. Получив чек с выпиской, Дорси не поверил собственным глазам. Он оказался владельцем скромного состояния размером 924,8 миллионов долларов США. «Я показал чек другу, который находился рядом, и мы просто закричали от восторга», — вспоминал потом этот случай Дорси.

Еще одним счастливчиком стал компьютерный инженер из компании «Zenith Electronics» Джеф Феррера, который позвонил в банк в пятницу утром в попытке уточнить свой баланс. Прослушав сообщение автоматического информатора, Джеф перезвонил еще раз, записал голос робота на диктофон и установил эту запись в качестве приветствия на своем телефоне. Теперь каждый звонящий Феррере абонент слышал в трубке следующее сообщение: «доступный остаток на вашем основном счете в настоящее время составляет 924 844 208 долларов США и 32 цента…». Можно только представить, какие чувства испытывал сам Джеф, когда автоинформатор впервые произнес эти слова.

Такая же участь постигла 825 других клиентов «Первого национального банка Чикаго» — все они неожиданно стали мультимиллионерами. Правда, счастье длилось недолго: всего один день. К вечеру которого сотрудники банка выяснили, что источником неимоверного богатства владельцев счетов стал досадный компьютерный сбой. Обслуживавшая дебетовые карты программа неправильно рассчитала параметры последних транзакций и перевела клиентам ошеломляющую сумму денег — 763,8 миллиарда долларов, что более чем в шесть раз превышало общую стоимость всех активов «Первого национального банка Чикаго».

Уже к вечеру счета новоявленных миллионеров были заморожены, а ошибочно зачисленные суммы — благополучно списаны. По словам представителей банка, никто из клиентов не успел сбежать с неожиданным кушем на острова Карибского архипелага, поэтому реальные финансовые потери компании оказались минимальными. Но этот инцидент и по сей день считается крупнейшей банковской ошибкой в истории США, к которой привел сбой в компьютерной программе.

К слову, за два года до описываемых событий нечто подобное случилось в нью-йоркском Chemical Bank, правда, с обратным математическим знаком. Заглючивший компьютер ополовинил все депозиты и вклады, информация о которых хранилась в базе данных головного офиса, и вместо нескольких сотен счастливых миллионеров банк получил целую армию разгневанных клиентов. Последствия этого сбоя технические специалисты разгребали несколько дней.

Но это же палка!

Впрочем, и Сильвестр Дорси, и Джеф Феррера, и все остальные 825 клиентов чикагского банка выглядят жалкими нищебродами по сравнению с человеком по имени Крис Рейнольдс из Пенсильвании. Развитие электронных платежных систем и цифровых валют сделало денежные транзакции более простыми, удобными и быстрыми, но вместе с тем увеличило риск возникновения проблем, связанных с ошибками в обслуживающих эти платежи программах.

Как и многие другие американцы, Крис Рейнольдс пользовался платежной системой PayPal, и наивно считал ее лучшим финансовым сервисом в мире. Его высокое мнение о достоинствах и возможностях PayPal многократно укрепилось, когда однажды утром 30 июня 2013 года он обнаружил на своем счете 92 233 720 368 547 800 долларов США.

Еще раз: 92 квадриллиона долларов. Для торговца подержанными автозапчастями на eBay это была довольно приличная сумма: состояние самого богатого человека планеты того года — телекоммуникационного магната Карлоса Слима — слегка не дотягивало до богатства Рейнольдса, и насчитывало всего лишь жалкие 67 миллиардов долларов.

BBC // Chris Reynolds’ PayPal account was erroneously credited $92,233,720,368,547,800.

Крис даже распечатал на память выписку по своему счету. Однако после того как он воспользовался мудрым советом из телесериала «Компьютерщики», а именно, «попробовал выйти и снова войти», чудесное наваждение рассеялось. На его балансе снова числилось 145 баксов и 25 центов, а Карлос Слим вновь вернулся на почетное место главного богатея Земли. Сказка закончилась, и несметные сокровища превратились в тыкву.

В PayPal признали сбой своего серверного ПО, и в качестве компенсации предложили расстроенному Рейнольдсу перечислить любую разумную сумму на какие-нибудь благотворительные цели. Когда журналисты ВВС спросили несостоявшегося квадриллиардера, на что он потратил бы эти деньги, если бы получил их в реальности, тот ответил: «погасил бы внешний долг США».

Вам счёт, сэр!

Впрочем, финансовые ошибки допускают не только компьютеры банков, в чем смогла лично убедиться семья Бразертон из графства Ланкашир, что расположено в Англии на берегу Ирландского моря. Линда и Найджел Бразертон решили сменить поставщика электроэнергии: раньше они пользовались услугами компании Scottish Power, но однажды подумали, что выгоднее будет покупать электричество у фирмы Npower. Однако они ошибались.

Сотрудник Npower осмотрел установленный в доме Бразертонов электросчетчик и обнулил его показания. Но компьютер компании посчитал, что значение «0» на индикаторе означает: с момента последней передачи сведений об израсходованной электроэнергии счетчик открутил полный цикл, и доступные ему цифры просто закончились. В следующем месяце почтенное семейство получило квитанцию, гласившую, что их платеж за электроэнергию слегка увеличился — с 87 фунтов стерлингов до 53 480 062 фунтов, что составляет примерно 90 миллионов долларов США.

BBC // The monthly direct debit was set to increase from £87 to £53,480,062

Проведенное расследование показало: в используемом Npower программном обеспечении просто не была предусмотрена такая операция, как обнуление показаний электросчетчика вручную, а представитель компании этого не знал. Ошибка программистов стоила Найджелу Бразертону и его жене изрядного количества нервных клеток, но 53 миллиона фунтов им платить все-таки не пришлось.

Минус 460 миллионов за 45 минут

В среду, 1 августа 2012 года офис инвестиционной компании Knight Capital как всегда начал работу в 8 утра. Включив компьютеры, сотрудники первым делом проверили электронную почту, и среди спама обнаружили автоматические сообщения о том, что запущенная на сервере программа Power Peg настроена неправильно. Никто не обратил внимания на эти предупреждения, потому что Power Peg не использовалась уже без малого 10 лет, с 2003 года. И совершенно напрасно.

В 9 утра открылась нью-йоркская фондовая биржа, и автоматические системы трейдинга Knight Capital начали создавать заявки на покупку и продажу активов. Уже спустя 45 минут компания потеряла более 4,5 миллионов долларов, а вскоре общий убыток, полученный фирмой благодаря заключенным бездушными программами сделкам, достиг 460 миллионов долларов США, поставив Knight Capital на грань банкротства. Автоматические алгоритмы других игроков использовали возникшую ситуацию, из-за чего акции некоторых компаний на нью-йоркской бирже подскочили в цене аж на 300%.

Проведенное позже исследование показало: накануне этого злополучного дня на серверы Knight Capital было установлено обновление ПО, которое по недосмотру разработчиков включило устаревшее приложение Power Peg, уже давно отключенное за ненадобностью. В тестовом режиме это приложение продаёт акции по текущей цене и тут же покупает их обратно по рыночной ставке (которая обычно выше цены продажи), совершенно не обращая внимания на стоимость ценных бумаг — в его задачу входит провести как можно больше сделок в единицу времени. После вывода этой программы из эксплуатации разработчики удалили из ее кода проверку того, запущено ли приложение на тестовом сервере в локальной сети, или оно действует в реальной рабочей обстановке.

Как оказалось, установленное обновление запустило Power Peg на сервере, подключенном к нью-йоркской фондовой бирже, после чего программа заработала в тестовом режиме и начала регистрировать огромное количество безумных сделок, стремительно сливая капиталы компании. Чуть позже комиссия по ценным бумагам еще и оштрафовала Knight Capital на 12 миллионов долларов за нарушения правил управления финансовыми рисками.

Яблочные карты

Некоторые ошибки в софте вроде бы не приводят к возникновению прямых финансовых убытков, но иногда влекут за собой косвенные. На первых моделях iPhone использовались карты и навигация от Google, но в борьбе со своим главным конкурентом корпорация Apple решила избавиться от приложения Google Maps. В 2012 году в Купертино разработали собственную версию карт для iOS, однако в отличие от Google, которая потратила на создание своего сервиса много лет и миллионы долларов, в Apple решили, что задачу можно решить быстрее и намного экономнее. Информация о дорогах, мостах, архитектурных объектах и достопримечательностях стекается в Google из тысяч различных источников, хранится в нескольких распределенных базах данных, а сборку всех этих сведений воедино выполняет мощный программный комплекс. У Apple на начальном этапе не было всех этих ресурсов.

В результате на экранах iPhone и iPad многие озера, мосты и вокзалы отсутствовали на своих привычных местах, монумент Вашингтона переехал на соседнюю улицу, супермаркет Publix в городе Джексонвилл, штат Флорида, стал больницей, а главный вокзал столицы Новой Зеландии, города Окленд, и вовсе очутился посреди океана. В трехмерном представлении некоторые участки карт и вовсе выглядели фантастически: шоссе складывались гребёнкой, устремлялись вертикально в небо и скручивались лентой Мебиуса, мосты уходили под воду, а здания громоздились посреди водной глади.

Безусловно, никто из пользователей карт Apple не нырнул на своем автомобиле с оклендской набережной в попытке догнать уходящий поезд, но доверие к программам этой компании все же было слегка подорвано. А репутация в наши дни стоит очень дорого.

Заключение

Чаще всего от ошибок в программах страдают не только компании, но и обычные пользователи. Иногда разработчики пытаются загладить свою вину и компенсировать людям доставленные неудобства. Правда, порой они делают это весьма странным образом. Например, звонок в службу поддержки клиентов «Первого национального банка Чикаго» стоил целых три доллара. После инцидента с ошибочным зачислением на дебетовые карточки 924,8 миллионов руководство банка сделало задушевные беседы со своими сотрудниками бесплатной услугой. Но только для тех клиентов, которые сами сообщили в учреждение о свалившемся на них нежданном богатстве и добровольно вернули деньги. Неслыханная щедрость, не правда ли?

Думаем, каждый из нас так или иначе сталкивался с различными ошибками в софте. Будем рады, если вы поделитесь самыми интересными багами из вашей практики в комментариях!

В начале сентября весь мир праздновал день тестировщика и день бага. Именно по этому случаю вам будет предоставлен интересный материал касательно наиболее культовых системных ошибок и багов, которые очень долгое время были у всех на устах.

Реальный баг

На первое место можно смело поставить случай, который произошел 9 сентября 1947 года. В этот день группа Гарвардского университета, проверяющая работу электромеханического компьютера Mark 2 Aiken Relay, обнаружила бабочку, которая застряла между двумя контактами реле. Именно нахождение мотылька в системе вызывало короткое замыкание, следовательно это привело к неверной работе всей запрограммированной машины.

Мотылек был аккуратно извлечен из системы и вклеен в технический журнал университета. Под останками насекомого появилась табличка с надписью: «Первый случай обнаружения бага». К слову, с того времени все системные ошибки в работе любого запрограммированного ПО и начались называться «багами».

Проблема Y2K

Ошибка Y2K в народе еще известна под названием «Проблема 2000 года». Создатели ПО в XX веке обычно использовали для обозначения года в дате последние 2 цифры вместо того, чтобы отображать все четыре.

Подобный формат сохранения данных был очень эффективен. Раньше каждый байт был на счету, а БД могли сохранять до 1 тысячи дат одновременно. В подобном случае сокращение было хорошей практикой. Или нет?

С 1 января 2000 г. в некоторых больших городах начались перебои с подачей света, воды и прочих благ цивилизации. Все потому, что начался процесс сокращения формата года. После 1999 начался 2000, но машины «принимали» этот год как 1900. И в один миг произошел сбой в работе множества систем по всему миру.

Поломка телефонной сети AT&T

Один из коммутаторов телефонной сети AT&T был поломан, но все же смог передать данные другим коммутаторам. Но проблема в том, что информация была неверной, и это сделало невозможной работу данного оператора на целых 9 часов, оставив более 60 тысяч человек без возможности использования телефонного общения.

Причина бага была в последнем обновлении ПО для системы коммутаторов. Если из строя выходил один из коммутаторов, он сообщал соседним коммутаторам, чтобы они перехватывали на себя его трафик.

Остальные коммутаторы должны периодически перезагружаться в новые режимы функционирования и порой проверять, не стал ли первый работать корректно.

Но из-за дефекта в программном коде поломанный коммутатор отсылал сразу 2 сообщения. Второе сообщение достигало цели во время перезагрузки. По этой причине они начинали думать, что сами неисправны и слали сообщения следующим коммутаторам.

ЧС с ракетой Ariane 5

В 1996 году случилась авария с ракетой Arian 5. Уже после 40 секунды запуска ракета разрушилась из-за неверно настроенной работы бортового программного обеспечения. Данный баг — самая дорогая ошибка в мире на данный момент. Ее ущерб составил от 360 до 550 миллионов долларов.

Проблема была в том, что некоторые элементы ПО для новой ракеты были взяты с ее предыдущей версии. Но систему забыли качественным образом протестировать для новой версии программного функционала.

Некоторые исчисления в скорости не смогли корректно наложиться друг на друга, и это стало причиной тому, что произошла авария с ракетой, которая строилась и разрабатывалась около 10 лет.

Microsoft Bob

Определенное время существовала операционная система под названием Microsoft Bob – система с минимальной графической оболочкой. Она являла собой небольшой виртуальный дом с простыми комнатами: кухня и комнаты для гостей.

Размещенные в ней предметы в точности соответствовали тем функциям, которые они могли исполнять. К примеру, ручка и бумага открывали графический редактор.

Проблемы были с системой безопасности. Если пользователь с 3 раза не мог авторизоваться, ПО у него спрашивало, не забыл ли он свой пароль.

Если клиент отвечал положительно, система пропускала его и просила создать новый пароль. То есть, любой человек мог получить доступ к локальной машине другого человека.

К слову сказать, по версии портала CNE.com, данная ОС стала худшим продуктом за десятилетие.

Бесплатно и всем

На заре существования империи торговой площадки Amazon, пользователи могли запросто заказывать отрицательное количество товаров на сайте. Деньги по покупке не списывались, а наоборот, пересчитывались на карту пользователя. Такая проблема возникла из-за частого выхода новых версий ПО, которое не успевало быть протестированным.

Подобные примитивные баги часто встречаются и в иных Интернет-ресурсах. Так, к примеру, некоторые торговые площадки могли хранить данные пользователей в файлах cookies. Это значило, что хакеры могли совершать покупки от имен других людей путем простого редактирования ID покупателя.

Поэтому всегда будьте бдительны и тщательно все тестируйте.

#подборки


  • 0

Иногда ошибки в программах стоят миллионов долларов и даже уносят жизни людей. Расскажем о самых дорогих багах в истории IT.

Иллюстрация: Meery Mary для Skillbox Media

Антон Сёмин

Пишет об истории IT, разработке и советской кибернетике. Знает Python, JavaScript и немного C++, но предпочитает писать на русском.

Закон Мёрфи гласит: если что-то может пойти не так, это обязательно произойдёт. Яркий пример — фильм Стэнли Кубрика «2001: Космическая одиссея». По сюжету военные зашили в бортовой компьютер HAL 9000 жёсткую инструкцию, которая должна была скрывать от астронавтов истинные цели экспедиции. В результате искусственный интеллект перебил почти всех членов команды и сорвал операцию.

Но такие сюжеты встречаются не только в кино — в реальности дорогие компьютеры не раз сходили с ума и даже убивали людей. Расскажем о самых громких ошибках в ПО.

Этот баг изрядно потрепал нервы владельцам яблочных смартфонов, хотя всё закончилось хорошо и устройства удалось восстановить.

В 2016 году резвые пользователи reddit.com пронюхали фичу: если в 64-битной версии iOS установить время на 00:00:00 часов 1 января 1970 года, а потом перезагрузить смартфон, он больше не включится. Устройство буквально превращалось в кирпич: пользователь видел только логотип Apple, а повторная перезагрузка не помогала.

Шутка разлетелась по интернету, и даже незнакомые с Reddit пользователи стали экспериментировать. Кто-то разыгрывал знакомых владельцев айфонов и айпадов.

Во «ВКонтакте» и на форумах моментально появились «добрые» розыгрыши:

Подписчики «Двача» и МДК одними из первых в России протестировали «новую фичу» :) Скриншот: МДК

Опытным путём всё-таки удалось восстановить смартфоны: надо было подождать, пока они полностью разрядятся, или отключить аккумулятор вручную. После этого система запускалась с заводскими настройками.

Причина «окирпичивания» яблочной техники — UNIX-время и некачественное тестирование. Время в iOS отсчитывается от 1 января 1970 года — это условный ноль в UNIX-подобных системах.

В зависимости от часового пояса устройства добавляют смещение — прибавляют или отнимают необходимое количество часов. По одной из версий, когда пользователи из регионов с отрицательным смещением устанавливали злосчастную дату, время «уходило в минус». Например, в Нью-Йорке iPhone показывал бы −4 часа.

В итоге iOS не понимал, что делать с отрицательным временем, а инструкции, которые используют время, выкидывали белый флаг и просто-напросто ломались.

Но этой версии противоречат несколько фактов:

  1. На баг жаловались и в регионах с положительным смещением времени.
  2. Проблема вскрылась только на 64-битной версии.
  3. Неужели разработчики Apple могли не поставить элементарную проверку на отрицательные значения? WTF?!

По другой версии, операционная система «подавилась» слишком большим числом. Главная программа использует переменную времени при настройке окружения и действительно вычитает из неё какие-то константы.

И когда пользователи устанавливают время в ноль, оно не попадает в отрицательный диапазон, а становится равным 18 446 744 073 709 551 616 — это максимальное целое положительное число в 64-битной операционной системе.

В индекс Доу Джонса заложена стоимость акций 30 самых больших американских компаний — например, Apple, Coca-Cola и Intel. Ещё есть индекс S&P 500 — в него входит 505 компаний. По этим показателям оценивают «здоровье» экономики США: индексы «зеленеют» — экономика растёт, «краснеют» — экономика падает.

В октябре 1987 года индекс Доу Джонса упал на 22,6%, а S&P 500 — на 20,5%. Это вызвало эффект лавины на мировом фондовом рынке. Вслед за США обвалились Гонконг (на 46%), Австралия (на 42%), Канада (на 23%) и другие развитые экономики. Событие стало финансовой трагедией, а вину опять повесили на разработчиков.

Так выглядит чёрный понедельник инвестора. Скриншот: Ycharts

Эксперты всё ещё спорят об истинных причинах падения, но, по официальной версии, к кризису привела ошибка программного трейдинга. Специальная программа автоматически заключала сделки, чтобы инвесторам не приходилось постоянно следить за котировками и проводить все операции вручную. Машины ориентировались на движение рынка: индексы растут — закупаем, падают — продаём. Алгоритмами пользовались только крупные инвесторы вроде пенсионных фондов и центральных банков, поэтому объёмы программного трейдинга были велики.

Когда рынок немного качнуло, машины одновременно стали продавать акции на миллионы долларов. Но покупать их было некому, а потому программа ещё больше снижала цену. Случилось настоящее восстание машин: за один день американский рынок акций потерял около 500 млрд долларов. Вслед за американцами паника перекинулась и на другие страны — их экономики тоже просели на десятки процентов.

«Чёрный понедельник» ударил по развитым экономикам даже сильнее Великой депрессии. Зато государства и финансовые организации разработали правила для защиты частных инвесторов. Теперь биржи прекращают торги при падении S&P 500 на 7%, 13% и 20%, чтобы дать инвесторам принять взвешенное решение.

P. S. Объяснения рыночных воротил звучат красиво и убедительно, но мы-то с вами знаем, что на самом деле виноваты не разработчики, а рептилоиды с иллюминатами :)

Хотя финансовые игроки многому научились в 1987 году, история с «взбесившейся» программой повторилась спустя 25 лет.

Knight Capital была одной из крупнейших финансовых компаний в мире — с её помощью на фондовом рынке торговали страховщики, пенсионные фонды и банки. Через компанию проходила каждая шестая ценная бумага с бирж NYSE и NASDAQ. К тому же Knight Capital торговала собственными акциями и неплохо росла из года в год.

В начале 2010-х стала популярной высокочастотная торговля с помощью роботов. Они совершали сотни и тысячи сделок в секунду по заранее составленному алгоритму и помогали неплохо зарабатывать на минимальных скачках цены. Человек просто физически не мог выставлять столько ордеров в такие короткие сроки.

В 2012 году Knight Capital запустила своего робота — и сразу же всё пошло наперекосяк. Из-за ошибки в коде алгоритм за сорок минут умудрился провести более 2 млн сделок — а это недельная норма для рынка. Менеджеры компании смотрели и ничего не могли сделать: у программы просто не было «выключателя».

Кадр: фильм «Предел Риска»

За сорок минут робот успел потратить полмиллиарда долларов. Правда, из них только 365 млн принадлежало Knight Capital, а остальные деньги были заёмными. Вы удивитесь, но банки и фонды скинулись и спасли компанию от банкротства. Паники на фондовом рынке тоже не случилось — помогли защитные механизмы, которые придумали после «чёрного понедельника».

Первый полёт самой надёжной европейской ракеты Ariane 5 был неудачным. Гордость космической программы взорвалась через 40 секунд после старта из-за ошибки в управляющей программе. Этот баг признан самым дорогим в истории.

В течение 10 лет 10 стран Евросоюза потратили на проект 7 млрд долларов, половину из которых дала Франция. Ракета должна была вывести на геостационарную орбиту спутники для изучения магнитного поля Земли.

4 июня 1996 года миллионы европейцев в прямом эфире наблюдали, как в небе буквально сгорают их налоги. На высоте 4 тысяч метров Ariane 5 отклонился от прямой траектории и самоуничтожился. Оказывается, разработчики скопировали код из управляющей программы предыдущей модели ракеты, которая успешно взлетала больше сотни раз. Только они не учли, что Ariane 4 летел по другой траектории и с другой горизонтальной скоростью.

Фрагмент кода ракеты с ошибкой. Скриншот: moscova — Inria

Скопированный программный модуль неверно прочитал ситуацию и преобразовал 64-битное значение в 16-битное безо всякой проверки. Да, программа перехватила исключение — а вот отреагировала на него неадекватно и отправила на бортовой компьютер сигнал аварийного завершения. При этом с технической точки зрения полёт был абсолютно нормальным.

Евросоюз потерял год исследований и более 500 млн долларов. После аварии страны-участники провели открытое расследование и нашли все «золотые» баги. А спутники быстренько отправили в космос на российском «Союзе». Злополучный код для Ariane переписали на Ada, и ракета успешно стартовала в 1997 году.

Иногда баги приводят к смерти. В Национальном институте рака в Панаме из-за компьютерной ошибки погибли восемь человек и как минимум двадцать получили лучевую болезнь.

Врачи управляли камерой для облучения с помощью специальной программы: устанавливали дозу радиации, длительность терапии и положение четырёх защитных плит, которые укрывали здоровые ткани пациентов. Радиолог попросил добавить пятую плиту для дополнительной защиты, но программа разрешала ставить не больше четырёх. Тогда операторы придумали хитрость: фактически установить две плиты, а программе показать, что она всего лишь одна.

Позже выяснилось, что программа рассчитывала длительность терапии исходя из количества защитных блоков. Она позволяла вводить параметры, но итоговое время устанавливала сама. Поэтому после изменения настроек пациенты облучались в два раза дольше и у всех появились признаки лучевой болезни. Правда, врачи ещё несколько месяцев не обращали внимания на жалобы.

За это время через аппарат прошло 28 человек. Восемь из них скончались почти сразу, а остальные умерли в течение нескольких лет от различных осложнений. Врачей приговорили к тюремным срокам за убийство пациентов и нанесение тяжкого вреда здоровью.

Идеальных программ не бывает, и все сценарии предугадать невозможно. Хакеры каждый день находят уязвимости в приложениях и устройствах, «ломают» небезопасные сайты. Но ошибки можно свести к минимуму, если правильно тестировать приложения и не вносить в них правки или «рацпредложения» по своему усмотрению, без попытки проверить последствия.


Как зарабатывать больше с помощью нейросетей?
Бесплатный вебинар: 15 экспертов, 7 топ-нейросетей. Научитесь использовать ИИ в своей работе и увеличьте доход.

Узнать больше

Понравилась статья? Поделить с друзьями:

Интересное по теме:

  • Идентификатор ошибки 600 при записи к врачу
  • Извините произошла непредвиденная ошибка повторите позже все майки
  • Извлечение ошибка записи файла c users
  • Известная ошибка itil
  • Извините произошла внутренняя ошибка мир пей что делать

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии