Komputerowy "bug" ma 76 lat. Wszystko zaczęło się od ćmy

Chociaż wielu osobom rozwój i testowanie oprogramowania komputerowego kojarzy się z dynamicznym okresem z ostatnich dziesięcioleci, warto wiedzieć, że "błąd komputerowy", zwany potocznie "bugiem", ma już swoje lata. Termin ten ma swój początek w połowie ubiegłego wieku, kiedy pracowano przy komputerze Harvard Mark II.

Ćma usunięta z komputera Mark II
Ćma usunięta z komputera Mark II
Źródło zdjęć: © Wikimedia Commons
Oskar Ziomek

W świecie informatyki słowo "bug" oznacza potocznie błąd w kodzie, a więc innymi słowy pomyłkę programisty, w efekcie której komputer nie działa właściwie. Słowo to nie jest przypadkowe. W języku angielskim oznacza m.in. "owada, robaka" i odnosi się do prac przy komputerze Harvard Mark II w połowie ubiegłego wieku. To sprzęt, który służył głównie do wykonywania obliczeń balistycznych.

Harvard Mark II potrafił dodawać liczby w czasie około 1/10 sekundy i mnożyć w niespełna sekundę. Był przy tym kilkukrotnie szybszy od swojego poprzednika - modelu Mark I, który powstał 5 lat wcześniej i wykorzystywał do działania ponad 760 tys. elektromechanicznych komponentów.

Harvard Mark I - poprzednik Mark II, zbudowany w analogiczny sposób
Harvard Mark I - poprzednik Mark II, zbudowany w analogiczny sposób© Wikimedia Commons

Co istotne, zarówno Mark I, jak i Mark II nie były komputerami jakkolwiek przypominającymi współczesne urządzenia czy choćby te z końca lat 90. Harvard Mark II zajmował powierzchnię 370 metrów kwadratowych i ważył ponad 20 ton, a za działanie odpowiadała masa podzespołów elektrycznych, w tym przekaźniki. Kiedy pewnego dnia komputer przestał właściwie działać, okazało się, że jeden z przekaźników został fizycznie zablokowany przez ćmę - tak znaleziono pierwszego "buga". Owad został przyklejony na kartkę dziennika, w którym zapisano, że odnaleziono go w 70. przekaźniku na panelu F komputera.

Dalsza część artykułu pod materiałem wideo

Kluczowa jest tu również data. Usterkę komputera wykryto podczas prac 9 września i to "na cześć" tego wydarzenia dzisiaj tego dnia obchodzimy Dzień Testera Oprogramowania (choć wiadomo też, że określenie "bug" w kontekście błędu było stosowane również znacznie wcześniej przez Thomasa Edisona). Warto podkreślić, że poza potocznym określeniem "szukania bugów", trudno szukać innych części wspólnych między działaniami dzisiejszych testerów korzystających z oprogramowania do programowania a wyzwaniami, jakie mieli operatorzy komputerów zajmujących kilka pomieszczeń wiele lat temu.

Bugi w świecie IT

Ćma z ubiegłego wieku sprawiła, że dzisiaj dla wszystkich programistów naturalne jest określanie błędów w kodzie "bugami", procesu krokowego sprawdzania kodu programu - "debugowaniem", a programów pozwalających zarobić na wskazywaniu luk oprogramowania - bug bounty. W ten sposób twórcy liczą na rzetelność zaawansowanych użytkowników swojego oprogramowania, którzy zamiast upubliczniać informacje o wykrytej luce, będą woleli dać znać producentowi o błędzie, za co ten zapłaci realne pieniądze. Stawki, zależnie od skali zagrożenia, bywają wielotysięczne.

Jak podaje Bleeping Computer bazując na danych Google'a, łączna suma nagród wypłacona za odnalezione luki w oprogramowaniu w 2022 roku przekroczyła 12 milionów dolarów. Pokazuje to, jak cenna jest to dziedzina dla gigantów odpowiadających za oprogramowanie i potwierdza, że przy dzisiejszej skali po prostu nie sposób wykryć wszystkich błędów w oprogramowaniu przed jego udostępnieniem na rynku - zwłaszcza błędów logicznych i niedopatrzeń związanych z bezpieczeństwem.

Oskar Ziomek, redaktor prowadzący dobreprogramy.pl

Programy

Zobacz więcej
oprogramowaniesprzętit.pro
Wybrane dla Ciebie
Komentarze (30)