Найти в Дзене

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


В 1946 году, во время разработки компьютера Mark-II мотылек попал между контактами машины, что вызвало ее сбой. Этот случай был задокументирован в отчете в следующем виде: "First actual case of bug being found" (Первый случай нахождение жучка"). Так что можно считать, что таким образом и закрепилось данное жаргонное понятие. Однако еще в 1878 году Томас Эдисон "багами" называл "небольшие неудачи и трудности, возникающие при решении задач".

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

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

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

А бывают баги такие, из-за которых гибнут люди. Например, из-за ошибки в ПО Toyota погибли 89 человек, а 50 были ранены. Недавно в сети гуляли видео, на которых автомобили Tesla некотролируемо разгонялись и убивали водителей.

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