Poprzedni artyku/l | Koniec artyku/lu | Spis artyku/l/ow | Nast/epny artyku/l
Technika kontra nauka
Bogus/law Jackowski

Nauka i technika -- s/lowa te /l/aczy silny zwi/azek frazeologiczny, zupe/lnie jakby istnia/l mi/edzy nimi oczywisty zwi/azek semantyczny. Niewykluczone, /ze w pocz/atkach rozwoju technologicznego rozw/oj nauki istotnie szed/l w parze z rozwojem techniki. Niewykluczone, /ze jeszcze kiedy/s tak b/edzie. Ale na razie wygl/ada na to -- szczeg/olnie w informatyce -- /ze nauka sobie, a technika sobie. Odr/ebno/s/c obu /swiat/ow wyra/xnie wida/c w dziedzinie zajmuj/acej si/e teoretyczn/a analiz/a wielko/sci danych i szybko/sci algorytm/ow, zwanej z/lo/zono/sci/a obliczeniow/a. Czy kto/s z Pa/nstwa zetkn/a/l si/e z dokumentacj/a, w kt/orej znalaz/lo si/e teoretyczne oszacowanie zasob/ow niezb/ednych do funkcjonowania programu oraz czasu pracy w zale/zno/sci od danych wej/sciowych? W/atpi/e. A przecie/z obyczaj zamieszczania w dokumentacji oszacowania z/lo/zono/sci stosowanych algorytm/ow m/og/lby stymulowa/c wzrost jako/sci software'u.

Obowi/azuje wszak/ze inny obyczaj: program dzia/la za wolno -- dokupujemy troch/e pami/eci; program dzia/la jeszcze wolniej (co, o dziwo, nie dziwi) -- dokupujemy wi/ekszy dysk; nic nie pomaga, ale si/e nie przejmujemy, bo niebawem kupimy now/a wersj/e programu, z natury wi/eksz/a i wolniejsz/a, a wi/ec wymagaj/ac/a mocniejszego hardware'u, i zabawa zacznie si/e od pocz/atku.

Pami/etajmy jednak, /ze p/oki u/zytkownicy b/ed/a sk/lonni wierzy/c, /ze oprogramowanie gigantyczne i /slamazarne to oprogramowanie nowoczesne, p/oty producenci nie b/ed/a wykorzystywa/c metod analizy z/lo/zono/sci obliczeniowej do optymalizacji sprzedawanego software'u. Trudno mie/c to producentom za z/le. Przy braku nacisku ze strony klient/ow oznacza/loby to dla nich nieuzasadnione koszty.

W systemie MS DOS przez wiele lat program ,,sort'' korzysta/l z algorytmu o z/lo/zono/sci proporcjonalnej do kwadratu liczby wierszy do posortowania, to znaczy dwukrotnie wi/eksze dane algorytm przetwarza/l czterokrotnie d/lu/zej, dane trzykrotnie wi/eksze -- dziewi/eciokrotnie d/lu/zej, itd. Tymczasem znacznie efektywniejszy algorytm sortuj/acy powsta/l ju/z w latach czterdziestych i w/la/sciwie powinien by/c znany tw/orcom systemu DOS. Nie s/lysza/lem jednak, /zeby ktokolwiek utyskiwa/l na nieefektywno/s/c dosowego sortowania. W systemie Windows 95 -- nie wiedzie/c czemu -- sortowanie dzia/la przyzwoicie (w czasie prawie proporcjonalnym do liczby wierszy do posortowania), ale tak jak poprzednio nikt nie narzeka/l, tak teraz nikt nie chwali poprawy stanu rzeczy. By/c mo/ze u/zytkownicy systemu WIN/DOS rzadko korzystaj/a z sortowania, ale to z kolei oznacza, /ze dla wi/ekszo/sci u/zytkownik/ow program ,,sort'' to po prostu zb/edny /smie/c na dysku.

Teoria z/lo/zono/sci obliczeniowej, jak wspomnia/lem, zajmuje si/e nie tylko szybko/sci/a algorytm/ow, ale tak/ze wielko/sci/a zasob/ow wykorzystywanych przez program. Tu tak/ze nietrudno o przyk/lady niefrasobliwego potraktowania kwestii z/lo/zono/sci -- wystarczy zastanowi/c si/e nad wielko/sci/a plik/ow produkowanych przez niekt/ore popularne programy, takie jak CorelDRAW czy MS Word. W przypadku tych program/ow praktycznie nie ma mo/zliwo/sci zapanowania nad ilo/sci/a bezu/zytecznej informacji, przechowywanej w plikach. Szczeg/olnie dotkliwie odczuwa si/e to przenosz/ac dane mi/edzy r/o/znymi wersjami czy cho/cby tylko instalacjami. Je/sli szcz/e/sliwie uda si/e te dane przenie/s/c, to na og/o/l rozmiar pliku ro/snie, bywa, /ze kilkakrotnie. /Latwo sprawdzi/c, czy plik zawiera ,,/smieciow/a informacj/e''. Wystarczy podda/c go kompresji, na przyk/lad za pomoc/a programu ZIP: je/sli kompresja jest znacz/aca, to wolno przypuszcza/c, /ze producent niestarannie zaprojektowa/l format danych i /ze nieoszcz/ednie gospodaruje pami/eci/a dyskow/a, czyli -- m/owi/ac wprost -- /ze szasta pieni/edzmi u/zytkownika.

Kompresja danych to r/ownie/z bardzo stary wynalazek informatyczny -- k/laniaj/a si/e lata czterdzieste i pi/e/cdziesi/ate. Zwa/zmy przy tym, /ze informatyka teoretyczna nie spocz/e/la na laurach w tamtych czasach i -- przynajmniej do niedawna -- nie strzeg/la zazdro/snie swoich osi/agni/e/c, w odr/o/znieniu od techniki, /ze wspomn/e par/e spektakularnych proces/ow s/adowych o prawa autorskie do niekt/orych rozwi/aza/n software'owych.

Tak wi/ec technika -- jak na razie -- kroczy w/lasn/a drog/a. Jest to zrozumia/le: po co cyzelowa/c programy i dane, korzystaj/ac z dorobku nauki w tej dziedzinie, skoro wystarczy do/lo/zy/c par/e ,,gwizdk/ow i dzwonk/ow'' i zaleci/c nabycie komputera wi/ekszej mocy? U/zytkownik ch/etnie wyda pieni/adze, by mie/c lepszy komputer i nowszy program -- to poprawi jego samopoczucie. I tak hardware z softwarem maszeruj/a r/eka w r/ek/e, stawiaj/ac kroki na przemian: rozrasta si/e software -- zwi/eksza si/e moc hardware'u -- rozrasta si/e software -- zwi/eksza si/e moc hardware'u... Tylko co ja poradz/e, /ze ten marsz dw/och tytan/ow ku /swietlanej przysz/lo/sci dziwnie mi si/e z porzekad/lem ,,wi/od/l /slepy kulawego'' kojarzy?


Poprzedni artyku/l | Pocz/atek artyku/lu | Spis artyku/l/ow | Nast/epny artyku/l