Для некоторых мне известны возможные решения. Некоторые изредка встречаются на собеседованиях, реже чем об обедающих философах. Интересно было ознакомиться, как развлекаются в МассТехе.
User
А-машина Тьюринга и кофе-машина Хоара пит-стоп
7 min
16KВсякий, кто полагается на практику, не зная теории, подобен кормчему, вступающему на судно без руля и компаса, – он не знает, куда плывет.В Священных Языковых Войнах в качестве окончательного аргумента нередко приводят — поскольку языки полны по Тьюрингу, постольку они и равноценны. Под катом попытка уточнить этот тезис для тех, кто уже справился с Python и теперь планирует изучить Erlang или Haskell по спецификации. Материал обзорный, не методичный с картинками.
Леонардо да Винчи
+19
Категория: суть композиции
7 min
61KTranslation
Это вторая статья в цикле «Теория категорий для программистов».
Категория — очень простая концепция.
Категория состоит из объектов и стрелок, которые направлены между ними. Поэтому, категории так легко представить графически. Объект можно нарисовать в виде круга или точки, а стрелки — просто стрелки между ними. (Просто для разнообразия, я буду время от времени рисовать объекты, как поросят а стрелки, как фейерверки.) Но суть категории — композиция. Или, если вам больше нравится, суть композиции — категория. Стрелки компонуются так, что если у вас есть стрелка от объекта А к объекту B, и еще одна стрелка из объекта B в C, то должна быть стрелка, — их композиция, — от А до С.
Категория — очень простая концепция.
Категория состоит из объектов и стрелок, которые направлены между ними. Поэтому, категории так легко представить графически. Объект можно нарисовать в виде круга или точки, а стрелки — просто стрелки между ними. (Просто для разнообразия, я буду время от времени рисовать объекты, как поросят а стрелки, как фейерверки.) Но суть категории — композиция. Или, если вам больше нравится, суть композиции — категория. Стрелки компонуются так, что если у вас есть стрелка от объекта А к объекту B, и еще одна стрелка из объекта B в C, то должна быть стрелка, — их композиция, — от А до С.
+35
Адреса памяти: физические, виртуальные, логические, линейные, эффективные, гостевые
6 min
107KTutorial
Мне периодически приходится объяснять разным людям некоторые аспекты архитектуры Intel® IA-32, в том числе замысловатость системы адресации данных в памяти, которая, похоже, реализовала почти все когда-то придуманные идеи. Я решил оформить развёрнутый ответ в этой статье. Надеюсь, что он будет полезен ещё кому-нибудь.
При исполнении машинных инструкций считываются и записываются данные, которые могут находиться в нескольких местах: в регистрах самого процессора, в виде констант, закодированных в инструкции, а также в оперативной памяти. Если данные находятся в памяти, то их положение определяется некоторым числом — адресом. По ряду причин, которые, я надеюсь, станут понятными в процессе чтения этой статьи, исходный адрес, закодированный в инструкции, проходит через несколько преобразований.
На рисунке — сегментация и страничное преобразование адреса, как они выглядели 27 лет назад. Иллюстрация из Intel 80386 Programmers's Reference Manual 1986 года. Забавно, что в описании рисунка есть аж две опечатки: «80306 Addressing Machanism». В наше время адрес подвергается более сложным преобразованиям, а иллюстрации больше не делают в псевдографике.
При исполнении машинных инструкций считываются и записываются данные, которые могут находиться в нескольких местах: в регистрах самого процессора, в виде констант, закодированных в инструкции, а также в оперативной памяти. Если данные находятся в памяти, то их положение определяется некоторым числом — адресом. По ряду причин, которые, я надеюсь, станут понятными в процессе чтения этой статьи, исходный адрес, закодированный в инструкции, проходит через несколько преобразований.
На рисунке — сегментация и страничное преобразование адреса, как они выглядели 27 лет назад. Иллюстрация из Intel 80386 Programmers's Reference Manual 1986 года. Забавно, что в описании рисунка есть аж две опечатки: «80306 Addressing Machanism». В наше время адрес подвергается более сложным преобразованиям, а иллюстрации больше не делают в псевдографике.
+47
Могут ли нейронные сети помочь скопировать мозг?
2 min
26KЖаль только — жить в эту пору прекрасную уж не придется — ни мне, ни тебе. Н.Некрасов.
Говорят, что мозг-де можно смоделировать на компьютере, нейронные сети есть модель мозга, можно скопировать сознание человека.
Вообще-то, это совсем не так. К сожалению, в мозге сигналы передаются электрохимическим путем. Каждый нейрон при этом содержит от тысячи и до сотен тысяч связей. В течение дня тысячи связи разрушаются, при этом образуются новые.
Но и это еще не все! Сами по себе электрические импульсы лишь побуждают нейрон к определенной реакции.
Дело в том, что электрохимический способ передачи информации говорит о том, что в передаче информации в мозге используются специальные химические реакции. Механизм достаточно детально описан в этом посте.
В целом добавим, что нейронов в мозге до 100 миллиардов, и получается такая комбинация вариантов, что смоделировать эту систему нельзя на данном этапе развития человека.
Говорят, что мозг-де можно смоделировать на компьютере, нейронные сети есть модель мозга, можно скопировать сознание человека.
Вообще-то, это совсем не так. К сожалению, в мозге сигналы передаются электрохимическим путем. Каждый нейрон при этом содержит от тысячи и до сотен тысяч связей. В течение дня тысячи связи разрушаются, при этом образуются новые.
Но и это еще не все! Сами по себе электрические импульсы лишь побуждают нейрон к определенной реакции.
Дело в том, что электрохимический способ передачи информации говорит о том, что в передаче информации в мозге используются специальные химические реакции. Механизм достаточно детально описан в этом посте.
В целом добавим, что нейронов в мозге до 100 миллиардов, и получается такая комбинация вариантов, что смоделировать эту систему нельзя на данном этапе развития человека.
0
Нейробиология и искусственный интеллект: часть первая — ликбез
6 min
126KТак уж получилось, что я уже давненько читаю Хабр и особенно раздел про искусственный интеллект, однако до сих пор так и не отважился внести свою лепту в общий уровень энтропии.
Оживленные дискуссии в комментариях показывают живой интерес к теме и одновременно большое разнообразие точек зрения, мнений и уровней подготовки. Просмотрев историю публикаций, я как-то не нашел важного отправного пункта для многих рассуждений, а именно – какого-нибудь описания механизмов передачи сигналов в мозге. Те, кто пишут про нейронные сети и прогресс в компьютерных моделях интеллекта обычно вскользь упоминают про синапсы и медиаторы (что вполне достаточно для их целей), те же, кто пытается понять природу естесственного интеллекта в основном рассуждают философскими категориями. В результате, множество коментариев содержат отсылки к популярным домыслам и мифам, не находящим подтверждения в современных исследованиях.
В данной статье я в сжатой форме попытаюсь дать ответы на следующие вопросы:
— что же такое нейрон, как он устроен и работает?
— что происходит в синапсах, когда нейроны общаются друг с другом?
А в следующей (-щих):
— как интеллект и сознание связаны с активностью нейронов? (здесь же про то, как информация обрабатывается мозгом, нейропластичность, квантовую теорию сознания, сон и т.д.)
Оживленные дискуссии в комментариях показывают живой интерес к теме и одновременно большое разнообразие точек зрения, мнений и уровней подготовки. Просмотрев историю публикаций, я как-то не нашел важного отправного пункта для многих рассуждений, а именно – какого-нибудь описания механизмов передачи сигналов в мозге. Те, кто пишут про нейронные сети и прогресс в компьютерных моделях интеллекта обычно вскользь упоминают про синапсы и медиаторы (что вполне достаточно для их целей), те же, кто пытается понять природу естесственного интеллекта в основном рассуждают философскими категориями. В результате, множество коментариев содержат отсылки к популярным домыслам и мифам, не находящим подтверждения в современных исследованиях.
В данной статье я в сжатой форме попытаюсь дать ответы на следующие вопросы:
— что же такое нейрон, как он устроен и работает?
— что происходит в синапсах, когда нейроны общаются друг с другом?
А в следующей (-щих):
— как интеллект и сознание связаны с активностью нейронов? (здесь же про то, как информация обрабатывается мозгом, нейропластичность, квантовую теорию сознания, сон и т.д.)
+60
Почему я ушел из Google
5 min
61KTranslation
Ну хорошо, я сдаюсь: все хотят знать почему я ушел. А так как ответить каждому отдельно невозможно, вот вам изложение в длинной форме. Прочтите немного (я дойду в кульминации в 3-м абзаце) или прочтите всё. Но начну с предупреждения: здесь нет ни драмы, ни сверхинтересных деталей, ни избиения бывших коллег, и вообще нет ничего, о чем вы не могли бы догадаться сами из того, что ходит в прессе вокруг Google и ее отношения к разработчикам программ и конфиденциальности пользовательских данных. Это просто мой личный рассказ.
Покинуть Google было непростым решением. За время моей работы там я стал довольно страстным поклонником компании. Я выступал на четырех Google Developer Day, на двух Google Test Automation Conferences и был плодовитым участником блога Google Test. Рекрутеры часто просили меня помочь уговорить очень перспективных кандидатов на работу в компании. Меня никто не должен был просить дважды для поддержки Google, и никто более меня не удивился тому, что я не смог это продолжать. На самом деле последние три месяца работы в Google были вихрем отчаяния в тщетной попытке вернуть прошлую страсть.
Покинуть Google было непростым решением. За время моей работы там я стал довольно страстным поклонником компании. Я выступал на четырех Google Developer Day, на двух Google Test Automation Conferences и был плодовитым участником блога Google Test. Рекрутеры часто просили меня помочь уговорить очень перспективных кандидатов на работу в компании. Меня никто не должен был просить дважды для поддержки Google, и никто более меня не удивился тому, что я не смог это продолжать. На самом деле последние три месяца работы в Google были вихрем отчаяния в тщетной попытке вернуть прошлую страсть.
+344
Фобос-Грунт. Уроки для оставшихся на Земле
11 min
26KНапомню историю вопроса. 9 ноября прошлого года, после почти 15 лет разработки, нескольких приостановок проекта и переносов запуска, с Байконура была запущена ракета-носитель Zenit-2SB с новым российским космическим аппаратом «Фобос-Грунт». Цели были поставлены весьма амбициозные: запустить автоматическую станцию к Марсу, достичь его спутника — Фобоса, взять с него пробы грунта, которые затем были бы возвращены на Землю. Это бы были первые пробы внеземного материала, физически доставленные в руки исследователей (ну, буквоеды бы тут мне попеняли японским «Хаябуса», из-за постоянных задержек «Фобоса» доставившим несколько лет назад отдельные микроскопические частицы межпланетной пыли ранее нашего аппарата), со времен исследований Луны «в прошлом веке». А с учетом того, что, по сегодняшней теории, Фобос — это захваченный Марсом астероид, то есть образец того самого исходного материала, из которого вообще образовалась все планеты Солнечной Системы (Луна — это все же отколотый в прошлом «кусок» Земли, а не настоящая «планета»), эта экспедиция имела и беспрецедентное научное значение. Это был бы также первый «возврат» аппарата от Марса и его спутника.
Немаловажным был также вопрос престижа и открытого возвращения России в «глубокий космос», к межпланетным исследованиям, прекратившимся еще во времена СССР.
+275
Обзор наиболее интересных материалов по анализу данных и машинному обучению №3 (обзор онлайн курсов)
7 min
27KДанный выпуск обзора наиболее интересных материалов по анализу данных и машинному обучению полностью посвящен онлайн-курсам по тематике Data Science. В прошлом выпуске был представлен список онлайн-курсов, стартующих в ближайшее время. В данном выпуске я постарался собрать наиболее интересные онлайн-курсы по теме анализа данных. Стоит отметить, что некоторые курсы уже закончились, но у большинства таких курсов можно посмотреть архив всех учебных материалов.
Начинается обзор с набора курсов от Johns Hopkins University на Coursera, которые объединены в одной специализации «Data Science Specialization», поэтому имеет смысл рассмотреть их отдельно от остальных курсов. Это 9 официальных курсов специализации и два дополнительных Mathematical Biostatistics Boot Camp 1 и 2, которые официально не входят в специализацию. Важно отметить, что весь набор данных курсов регулярно начинается заново и в общем-то можно достаточно гибко построить свой график продвижения по специализации. Большинство курсов длятся 4 недели. Язык R является основным языком программирования в данном наборе курсов. Далее идет список курсов из специализации Data Science от Johns Hopkins University:
+24
Intel GPA для Android — оптимизируем графику в мобильных приложениях
8 min
8.8K В продолжение серии статей, посвященных Intel INDE, хочу рассказать об уникальном (не побоюсь этого слова) инструменте для разработчиков, созданном компанией Intel — Intel GPA (Graphics Performance Analyzers). Я уже упоминал его в обзорной статье, посвященной Intel INDE.
В состав Intel GPA входят средства, позволяющие анализировать производительность, находить узкие места, оптимизировать работу приложений. При этом инструменты имеют интуитивно понятный, удобный графический интерфейс, что дает разработчикам возможность стартовать «с места в карьер», даже не обладая большим опытом в оптимизации и отладке графических приложений.
Intel GPA поддерживает анализ производительности приложений для Windows и Android. Версия для Windows (DirectX) существует на рынке давно, о ней написано много статей; версия же для Android, предназначенная для приложений, использующих OpenGL, появилась сравнительно недавно, и многие разработчики даже не подозревают о ее существовании. Этот пробел я и собираюсь восполнить.
В состав Intel GPA входят средства, позволяющие анализировать производительность, находить узкие места, оптимизировать работу приложений. При этом инструменты имеют интуитивно понятный, удобный графический интерфейс, что дает разработчикам возможность стартовать «с места в карьер», даже не обладая большим опытом в оптимизации и отладке графических приложений.
Intel GPA поддерживает анализ производительности приложений для Windows и Android. Версия для Windows (DirectX) существует на рынке давно, о ней написано много статей; версия же для Android, предназначенная для приложений, использующих OpenGL, появилась сравнительно недавно, и многие разработчики даже не подозревают о ее существовании. Этот пробел я и собираюсь восполнить.
+19
Открытие компании в зарубежной юрисдикции для айтишника, фрилансера, разработчика мобильных приложений
4 min
166K«Право налогоплательщика избегать уплаты налогов с использованием всех разрешенных законом способов никем не может быть оспорено. Каждый имеет право вести свои финансовые дела таким образом, чтобы свести соответствующие платежи к минимуму…»
Дж. Сандерленд,
Судья Верховного Суда США
После моей статьи про поиск инвестиций, я получил много просьб рассказать подробнее про открытие компании за рубежом, и осветить финансовые вопросы. В данном топике я попытался изложить основные моменты, не претендуя на истину в последней инстанции.
Дж. Сандерленд,
Судья Верховного Суда США
После моей статьи про поиск инвестиций, я получил много просьб рассказать подробнее про открытие компании за рубежом, и осветить финансовые вопросы. В данном топике я попытался изложить основные моменты, не претендуя на истину в последней инстанции.
+142
Отладка Android CMake проекта по-взрослому
6 min
14KПосле перевода наших проектов на CMake, встал вопрос об отладке нативной части Android. Так как инструменты NDK стали неактуальны, пришлось залезть в дебри и научить Eclipse запускать удалённую отладку CDT-проекта, что называется, вручную. В идеале, чтобы это выполнялось в один клик.
Если вам не чужда разработка с использованием Android NDK, и вы хотите познать некоторые тонкости отладки, велкам под кат.
+26
Lock-free структуры данных. Основы: Модель памяти
18 min
94KВ предыдущей статье мы заглянули внутрь процессора, пусть и гипотетического. Мы выяснили, что для корректного выполнения параллельного кода процессору необходимо подсказывать, до каких пределов ему разрешено проводить свои внутренние оптимизации чтения/записи. Эти подсказки – барьеры памяти. Барьеры памяти позволяют в той или иной мере упорядочить обращения к памяти (точнее, кэшу, — процессор взаимодействует с внешним миром только через кэш). “Тяжесть” такого упорядочения может быть разной, — каждая архитектура может предоставлять целый набор барьеров “на выбор”. Используя те или иные барьеры памяти, мы можем построить разные модели памяти — набор гарантий, которые будут выполняться для наших программ.
В этой статье мы рассмотрим модель памяти C++11.
+66
Разбор всех задач и результаты Яндекс.Алгоритма
17 min
116KБуквально пару часов назад в Санкт-Петербурге завершился открытый чемпионат по программированию Яндекс.Алгоритм 2013. Состязания состояли из нескольких онлайн-раундов по 100 минут, за победу боролись более 3000 программистов из 84 стран. По результатам трёх отборочных раундов в финал вышли 25 лучших.
Финалисты должны были решить шесть алгоритмических задач за 100 минут. Первое место занял недавний победитель ACM ICPC 2013 в составе команды НИУ ИТМО Геннадий Короткевич (tourist), который набрал меньше всего штрафного времени. Второе место досталось выпускнику НИУ ИТМО Евгению Капуну (eatmore). Третье место занял представитель Тайваня Ши Бисюнь.
В подготовке заданий для чемпионата участвовали специалисты из нескольких стран: России, Беларуси, Польши и Японии. Главными составителями задач стали разработчики минского офиса Яндекса (как и все сотрудники компании, к участию в состязаниях они не допускались). Мы попросили всех авторов разобрать задания, которые они подготовили для участников Яндекс.Алгоритма. Кстати, все задачи не удалось решить никому, лучший результат — три решённые задачи — показали только три участника.
Финалисты должны были решить шесть алгоритмических задач за 100 минут. Первое место занял недавний победитель ACM ICPC 2013 в составе команды НИУ ИТМО Геннадий Короткевич (tourist), который набрал меньше всего штрафного времени. Второе место досталось выпускнику НИУ ИТМО Евгению Капуну (eatmore). Третье место занял представитель Тайваня Ши Бисюнь.
В подготовке заданий для чемпионата участвовали специалисты из нескольких стран: России, Беларуси, Польши и Японии. Главными составителями задач стали разработчики минского офиса Яндекса (как и все сотрудники компании, к участию в состязаниях они не допускались). Мы попросили всех авторов разобрать задания, которые они подготовили для участников Яндекс.Алгоритма. Кстати, все задачи не удалось решить никому, лучший результат — три решённые задачи — показали только три участника.
+71
Первый высокоуровневый язык программирования для квантовых компьютеров
2 min
78KХотя квантовые компьютеры существуют пока только в теории, но это не мешает делать обоснованные предположения об их будущей архитектуре и, что более важно, об интерфейсе взаимодействия с ними. Таким образом, уже сейчас есть возможность проектировать программные симуляторы квантовых компьютеров — и писать софт.
Группа американских учёных, получив финансирование от исследовательского центра Национальной разведки США (IARPA) разработала высокоуровневый язык программирования Quipper. Он создан на основе Haskell и лучше подходит для реализации квантовых алгоритмов, чем QCL (основан на C).
На сегодняшний день известно как минимум 45 алгоритмов для квантовых компьютеров. Все они описаны в научных статьях, но ни один не был реализован в программном коде. С появлением Quipper появилась такая возможность. В дальнейшем программисты смогут просто использовать готовые библиотеки для квантовых компьютеров, как они это делают сейчас на высокоуровневых языках для классической архитектуры.
Группа американских учёных, получив финансирование от исследовательского центра Национальной разведки США (IARPA) разработала высокоуровневый язык программирования Quipper. Он создан на основе Haskell и лучше подходит для реализации квантовых алгоритмов, чем QCL (основан на C).
На сегодняшний день известно как минимум 45 алгоритмов для квантовых компьютеров. Все они описаны в научных статьях, но ни один не был реализован в программном коде. С появлением Quipper появилась такая возможность. В дальнейшем программисты смогут просто использовать готовые библиотеки для квантовых компьютеров, как они это делают сейчас на высокоуровневых языках для классической архитектуры.
+60
DOOM 3 BFG — обзор исходного кода: введение (часть 1 из 4)
6 min
73KЧасть 1: Введение.
Часть 2: Многопоточность
Часть 3: Рендеринг (Прим. пер. — в процессе перевода)
Часть 4: Doom classic — интеграция (Прим. пер. — в процессе перевода)
26 ноября 2012 ID Software выпустила исходный код Doom 3 BFG edition (всего через месяц после появления игры на прилавках магазинов). Движок idTech4, которому уже почти 10 лет, был обновлен решениями, используемыми в idTech 5 (Rage — первая игра на этом движке), и с его исходным кодом ознакомиться было очень интересно.
Я бы назвал движок «idTech4 улучшенный», т.к. по сути это idTech4, но с использованием элементов idTech5:
Часть 2: Многопоточность
Часть 3: Рендеринг (Прим. пер. — в процессе перевода)
Часть 4: Doom classic — интеграция (Прим. пер. — в процессе перевода)
26 ноября 2012 ID Software выпустила исходный код Doom 3 BFG edition (всего через месяц после появления игры на прилавках магазинов). Движок idTech4, которому уже почти 10 лет, был обновлен решениями, используемыми в idTech 5 (Rage — первая игра на этом движке), и с его исходным кодом ознакомиться было очень интересно.
Я бы назвал движок «idTech4 улучшенный», т.к. по сути это idTech4, но с использованием элементов idTech5:
- Систему управления потоками (Threading system)
- Звуковую систему (Sound system)
- Систему управления ресурсами (Resources system)
+105
Продвижение мобильного приложения: с чего начать
4 min
61KСкажем откровенно, сделать хорошее мобильное приложение не так уж и просто. И вы нигде не найдете готового рецепта, который поможет в этом. Но, провести рекламную кампанию, которая поможет получить много установок и даже выйти в топ, вполне реально.
Есть свои особенности продвижения Android и iOS приложений. Но в данном посте я хочу затронуть именно общие этапы.
Итак, с чего начать?
Продвижение начинается до публикации приложения. Прежде чем приложение опубликовано, надо подготовить сайт, пресс-релиз, пресс-кит, видео, сообщества в социальных сетях. Не обязательно использовать все из вышеперечисленного. Но обязательно нужно обеспечить какое-то онлайн присутствие (информация о приложении, возможность связаться с разработчиком, информация для журналистов). На этом же этапе связываемся с прессой и договариваемся о публикации релиза или обзора приложения.
Немного подробнее остановимся на каждом пункте.
Есть свои особенности продвижения Android и iOS приложений. Но в данном посте я хочу затронуть именно общие этапы.
Итак, с чего начать?
Продвижение начинается до публикации приложения. Прежде чем приложение опубликовано, надо подготовить сайт, пресс-релиз, пресс-кит, видео, сообщества в социальных сетях. Не обязательно использовать все из вышеперечисленного. Но обязательно нужно обеспечить какое-то онлайн присутствие (информация о приложении, возможность связаться с разработчиком, информация для журналистов). На этом же этапе связываемся с прессой и договариваемся о публикации релиза или обзора приложения.
Немного подробнее остановимся на каждом пункте.
+13
Voldemort типы в D
4 min
17KTutorial
Данный пост расскажет об уникальной фишке D — Voldemort типы. Типы, которые можно использовать, но нельзя назвать. Данное название не очень подходит им, но Walter Bright очень любит так их называть. Voldemort типы очень часто встречаются в стандартной библиотеке Phobos, особенно в модулях std.algorithm и std.array. Осваивающие D могут часами штудировать документацию в поисках типа, возвращаемого из splitter или joiner, а возвращают они именно Voldemort типы. После этого поста можно смело открывать исходники std.algorithm, ибо никакие Сами-Знаете-Кто вам будут не страшны.
Иногда, взаимодействие существующих возможностей может привести к неожиданным сюрпризам. Мне нравится считать, что мы изначально заложили Voldemort типы в D, но на самом деле они были найдены Андреем Александреску. Что это за Voldermort типы? Читайте дальше.
Иногда, взаимодействие существующих возможностей может привести к неожиданным сюрпризам. Мне нравится считать, что мы изначально заложили Voldemort типы в D, но на самом деле они были найдены Андреем Александреску. Что это за Voldermort типы? Читайте дальше.
+32
Портирование кода на мобильные устройства iOS/Android
13 min
20KЧто вам кажется привлекательней: сталкиваться с новыми интересными задачами и разрабатывать нетривиальные алгоритмы или переписывать с одного языка на другой уже существующую логику и воевать со странными особенностями конкретных API? Я занимаюсь мобильной разработкой уже лет 8, и, не раздумывая, выбираю первый вариант, но и повоевать с API тоже люблю. Тем, кто со мной согласен, но еще не знает, как заниматься первым и сводить к минимуму второе, будет интересно заглянуть под кат.
+38
Мягкое введение в Coq: начало
3 min
21KTutorial
Предисловие
Ни для кого не секрет, что ошибки в программах могут привести печальным последствиям. История знает множество случаев, когда переполнение счетчика или необработанное исключение приводило к большим материальным затратам и человеческим жертвам. Так, например, 4 июня 1996 года европейская ракета-носитель «Ariane 5» буквально развалилась на части на 39-й секунде полета. Анализ инцидента показал, что авария произошла из-за ошибки в программном обеспечении. Ущерб составил около $7 млрд. В феврале 1991 года ракета «Patriot» промахнулась мимо цели из-за ошибки округления, успела пролететь лишние 500 метров. Ущерб: 28 убитых и более сотни раненых. Подобного рода ошибки встречаются и в аппаратном обеспечении. Недавний баг в процессорах Pentium, связанный с неправильным делением чисел с плавающей точкой, вынудил Intel пойти на замену бракованных чипов. Эта ошибка стоила компании $475 млн.
+20
Information
- Rating
- Does not participate
- Location
- Санкт-Петербург, Санкт-Петербург и область, Россия
- Date of birth
- Registered
- Activity