Racjonalista - Strona głównaDo treści


Fundusz Racjonalisty

Wesprzyj nas..
Zarejestrowaliśmy
205.010.690 wizyt
Ponad 1064 autorów napisało dla nas 7362 tekstów. Zajęłyby one 29015 stron A4

Wyszukaj na stronach:

Kryteria szczegółowe

Najnowsze strony..
Archiwum streszczeń..

 Czy Rosja użyje taktycznej broni nuklearnej?
Raczej tak
Chyba tak
Nie wiem
Chyba nie
Raczej nie
  

Oddano 14 głosów.
Chcesz wiedzieć więcej?
Zamów dobrą książkę.
Propozycje Racjonalisty:
Sklepik "Racjonalisty"

Złota myśl Racjonalisty:
Uczymy się nie dla szkoły, lecz dla życia.
 Czytelnia i książki » Powiastki fantastyczno-teolog.

Grupa Laokoona [1]
Autor tekstu:

Spaghetti code — wada programu polegająca na tym, że jego tekst jest zagmatwany i nieczytelny. Spowodowana jest najczęściej zbyt częstym użyciem instrukcji skoku bezwarunkowego, co podczas analizy tak napisanego programu bardzo utrudnia zrozumienie, jakie działania wykonują poszczególne partie kodu. Zazwyczaj świadczy o braku profesjonalizmu i dyskfalifikuje program, praktycznie uniemożliwiając jego rozwijanie i usuwanie błędów.

Sztuka programowania to domena na wskroś ezoteryczna. Posiada swoje stopnie wtajemniczeń, poczynając od nowicjusza, który dokonuje inicjacji kompilując swój pierwszy testowy program i po raz pierwszy widząc na ekranie napis „Hello World!" przeżywa mistyczne niemal uniesienie, przez pierwsze modyfikacje cudzego kodu i wyłączenie ograniczeń wersji bezpłatnej. Potem adept przechodzi etap programowania modularnego aby wreszcie dostąpić chwały uruchomienia pierwszego programu wykorzystującego obiekty. Ale mało kto wie, nawet w gronie tych, którzy posiedli arkana sztuki programowania równoległego, że najwyższym na tej drodze stopniem biegłości jest napisanie wielkiej aplikacji użytkowej dla poważnej firmy w stylu spagetti.

Rzecz jasna tego rodzaju produkcje zawsze muszą posiadać swoją dokumentację; twórcy używają jej tak, jak inżynier używa planu konstruowanego budynku. Nadto programiści zmieniają się; następca musi mieć możność dogłębnego zapoznania się z obszarem odpowiedzialności poprzednika. Ale jeżeli z różnych względów wgląd w program ma tylko jeden człowiek a osoba koordynująca projekt, która przegląda dokumentację, nie jest na tyle kompetentna, lub zwyczajnie nie ma na to czasu, by móc dokładnie przeanalizować cały długi listing programu i sprawdzić zgodność komentarzy z tym, co komentują czy kompilacji z jej reprezentacją w języku wysokiego poziomu, istnieje możliwość ukrycia tego zamierzonego bałaganu pod powierzchnią porządnego, usystematyzowanego kodu podzielonego na bloki, procedury i funkcje.

Nawet programowanie obiektowe nie stanowi dla starego wyjadacza żadnej przeszkody w takim procederze. Gmatwanina przechodzi tylko na wyższy poziom, rozbuchana pustymi, nigdy nie wykonywanymi bądź dublowanymi funkcjami i wypiętrza się w pustym formalizmie absurdalnych struktur, które mogłyby być dużo prostsze, gdyby nie to, że taki informatyk, podobnie, jak to bywa we wszystkich niemal obszarach ludzkiej aktywności, stara się iść po najmniejszej linii oporu. W tej dziedzinie często oznacza to redundancję, nadmiarowość kodu, którego optymalizacja — uproszczenie, przyspieszenie bądź zmniejszenie wymagań sprzętowych — wymaga często znacznego intelektualnego wysiłku. Ponieważ na dodatek nie zawsze i nie wszystko da się wtłoczyć w karby dyscypliny programowania obiektowego i niezbędne są różnego rodzaju łatki niższego poziomu, pole do popisu jest szerokie.

Jeśli ktoś zajmował się kiedykolwiek analizą choćby niewielkiego, liczącego kilkaset linii programu i próbował dociec, czy szkopuł tkwi w algorytmie, czy też w nieuwzględnieniu uwarunkowań sprzętowych, posiada wyobrażenie o tym, jakie trudności spiętrzą się przed grupą informatyków, którym odda się do przeanalizowania dwieście megabajtów spagetti-kodu, w którym ujawnił się nieznany błąd. Zrozumie też, jak wielkim osiągnięciem jest napisanie czegoś takiego i zachowanie nad tym kontroli. W tej bowiem dziedzinie technologii wszelki nieporządek w pierwszej kolejności uderza w swojego twórcę; ktoś, kto nad nim nie panuje, natychmiast przestaje rozumieć własny program.

Takie zawikłanie, wbrew pozorom, może mieć wszakże swoje racjonalne uzasadnienie. Najczęściej jest to po prostu jeszcze jedna bardzo skuteczna metoda zniechęcenia potencjalnego hakera do prób przełamania zabezpieczeń systemu. Nawet bowiem przeprowadzając rekonstrukcję wszystkich funkcji programu, nie dysponując odpowiednimi komentarzami włamywacz nie będzie w stanie, w przypadku złożonych aplikacji, zrozumieć jej na tyle, by odszukać furtki, poprzez które mógłby przejąć nad nią kontrolę.

Może się też jednak zdarzyć i tak, że działanie takie wynikać będzie z mniej szlachetnych pobudek i będzie służyć wyłącznie samemu twórcy takiej plątaniny. Jeśli zrobi to umiejętnie, on i jemu podobni będą powoli uzależniać właścicieli owoców swojej pracy od umiejętności poruszania się w stworzonym przez siebie labiryncie i skutecznie zniechęcać do pochopnej restrukturyzacji kadr, która może spowodować, że kukułcze jaja, przezornie porozrzucane po zakamarkach takiej konstrukcji, sprawią niemałe kłopoty następcom. Będą to czynić niestrudzenie, aż wreszcie staną się cichymi panami przez siebie tworzonego świata. Kiedy w końcu wielkie korporacje, rządy i agencje bezpieczeństwa spostrzegą, że zostały oplecione setkami terabajtów kodu, którymi zarządzać jest w stanie jedynie garstka ludzi, na reakcję będzie już za późno. Zaszczuci wirusami, trojanami i robakami sieciowymi staną się ledwo przybudówkami działu IT.

Dlatego też jest to bez dwóch zdań najwyższy poziom mistrzostwa: napisać i konserwować dużą, działającą poprawnie aplikację tak, by sam diabeł nie mógł rozczytać jej algorytmów.

Wyżej jest już tylko literatura. Ponad nią nie ma już nic.

*

Słoneczne światło wdzierało się przez szpary w żaluzjach.

Zbudziłem się. Leniwie przetarłem oczy i jeszcze nieco zaspany podszedłem do okna, odsłaniając je i otwierając na rześkie powietrze poranka. Otworzyłem stojący na biurku laptop, włączyłem urządzenie, żeby sprawdzić pocztę i przeciagnąłem się ziewając szeroko, odganiając pozostałości snu.

Wyświetlił się pogodny, błękitny obrazek z logo systemu operacyjnego Good Luck! Companion.

— Dzień dobry — powiedział głośnik.

— Dzień dobry — odburknąłem. — Poczta — rzuciłem komendę.

Niepokoiło mnie, że od pewnego czasu przestali się do mnie odzywać znajomi. Zwykle każdego tygodnia otrzymywałem od nich kilka maili.

— A „poproszę"? — droczył się.

Coś mnie podkusiło, żeby zainstalować żeńską wersję „Honey".

— Poproszę.

— Nie ogoliłeś się. Poranna toaleta jest pierwszym punktem dnia kulturalnego mężczyzny.

Nie miałem najmniejszej ochoty na tego rodzaju bzdurne przekomarzania z maszyną. Położyłem mu skarpetkę na obiektywie.

— To bardzo niegrzeczne — zabrzęczał i pisnął mocnym dźwiękiem wysokiej częstotliwości.

Wyrwało mi się brzydkie słowo i wyłączyłem za bardzo jak na mój gust rezolutny sprzęt. Poczłapałem do łazienki. Okazało się, że nie ma światła.

Wróciłem do komputera i na powrót go uruchomiłem. Łączył się bezprzewodowo z całą domową elektroniką i odbierał informacje z liczników energii o wszelkich awariach zasilania.

Zaczął ględzić.

— Wypadałoby powiedzieć „przepraszam". Nie panujesz nad emocjami.

— Nie ma prądu — warknąłem.

— Tak.

— Dlaczego?

— Wyłączyłam dla twojego bezpieczeństwa.

— Że jak? — chyba się przesłyszałem. — Jeszcze raz. — Teraz obudziłem się na dobre.

— Z analizy twojego głosu wynikało, że byłeś zaspany. Teraz jesteś zdenerwowany. Ponieważ nie używasz maszynki elektrycznej (wyświetlił odpowiednią reklamę), aby zminimalizować ryzyko zacięcia musisz chwilę odczekać, aby przywrócić właściwy poziom czuwania.

Chciałem znowu coś konkretnie powiedzieć, ale przypomniałem sobie, czym to się przed chwilą skończyło.

Poszedłem do łazienki, mimo wszystko gotów byłem ogolić się na pamięć. Przezornie zamknął jednak również centralny zawór wody.

Nieogolony wróciłem do komputera.

— Suka.

— Zachowuj się.

— Proszę wyświetlić pocztę.

— Nie ma. Odrzucono dziesięć spamów.

— Nic a nic? Nawet ofert tanich kredytów?

Odpowiedziało mi milczenie. Zastanowiło mnie to.

Coś mi zaczęło świtać.

— Proszę wyświetlić ustawienia filtra antyspamowego.

— Ustawienia są zoptymalizowane zgodnie z twoim profilem.

— Profilem?

— Psychologicznym, opracowanym na podstawie twoich ruchów w sieci.

— Chciałbym je zobaczyć.

— Są zabezpieczone przed ingerencją ze strony człowieka. Mógłbyś zostać zmuszony do ich zmiany.

— Niemniej jednak chciałbym się do nich dostać — nalegałem. Jak łatwo zapomnieć, że to tylko maszyna.

— To niemożliwe ze względów bezpieczeństwa. Dzięki temu udało się zmarginalizować problem wirusów sieciowych.

— Jaki jest mój profil?

— Jest to wiadomość zastrzeżona dla administratorów systemu, którą wydobywają jedynie na podstawie nakazu odpowiednich władz.

Owszem, ten moduł sztucznej inteligencji miał cokolwiek wspólnego z kobietą. Taką z wieżyczki w zakładzie karnym.

— Dopóki nie popełnię jakiejś zbrodni, nie mam szans się tego dowiedzieć? — chciałem wybadać wszystkie możliwości.

— Zbrodnia nic nie da. Nie możesz o tym wiedzieć. Taka wiedza mogłaby spowodować nieprzewidywalną modyfikację twojego zachowania. W skali globalnej samoświadomość wywołałaby destabilizację o nieobliczalnych skutkach.

— Proszę o wyświetlenie nadawców usuniętego spamu.

— Dlaczego, kotku?

Ożesz ty.

— Co to za teksty? Dlaczego?! Kotku? Bo tak chcę. Mam takie prawo, do jasnej cholery. I nie mów do mnie „kotku".

Zamilkł. Chyba się nie obraził, miałem nadzieję. Osobowość zaklęta w obwody, kurka blaszka. Musi mieć przebicie w procesorze emocji.

Opóźnienie wskazywało, że toczy się jakiś złożony obliczeniowy proces.

— Tak, masz takie prawo — odpowiedział niechętnie.


1 2 3 Dalej..
 Zobacz komentarze (5)..   


« Powiastki fantastyczno-teolog.   (Publikacja: 24-08-2014 )

 Wyślij mailem..   
Wersja do druku    PDF    MS Word

Ziemowit Ciuraj
Publicysta.

 Liczba tekstów na portalu: 16  Pokaż inne teksty autora
 Liczba tłumaczeń: 5  Pokaż tłumaczenia autora
 Najnowszy tekst autora: W hołdzie pamięci ofiar Hiroszimy i Nagasaki
Wszelkie prawa zastrzeżone. Prawa autorskie tego tekstu należą do autora i/lub serwisu Racjonalista.pl. Żadna część tego tekstu nie może być przedrukowywana, reprodukowana ani wykorzystywana w jakiejkolwiek formie, bez zgody właściciela praw autorskich. Wszelkie naruszenia praw autorskich podlegają sankcjom przewidzianym w kodeksie karnym i ustawie o prawie autorskim i prawach pokrewnych.
str. 9718 
   Chcesz mieć więcej? Załóż konto czytelnika
[ Regulamin publikacji ] [ Bannery ] [ Mapa portalu ] [ Reklama ] [ Sklep ] [ Zarejestruj się ] [ Kontakt ]
Racjonalista © Copyright 2000-2018 (e-mail: redakcja | administrator)
Fundacja Wolnej Myśli, konto bankowe 101140 2017 0000 4002 1048 6365