Vartiklis Nr. 1. 1996 metų vasario 23 d.. Elektroninis laikraštis Motto: Vasaris - bjaurus mėnuo, kurio reikia vengti visur, kur tik įmanoma. ------------------------------------------------------------------------- ------------------              ---------------------------- ------------------------------------------------------------------------- Turinys Prisistatymas Skyrelis "Internet kiekvienam" ------------------------------ Be maudymosi kelnaičių (apie naujokus tinkluose) Mirtis alyvoms (apie JAV Kongreso atakas prieš Internet) Verslo filosofija (Kas yra kontora ir kas esu aš) JĖGA. Perlas: Žaiskite, kur pamatysite šį ženklą. (apie Apple galimą pardavimą ir šio veiksmo galimas pasekmes) Skyrelis "Tik programuotojams" ------------------------------ Tėviškės vieškelių vingiais (ar yra progresas kompiuterių pasaulyje?) Kur žiemoja jūrų žvaigždės? (nuostatos) 32 bitai: Procesai ir gijos (Win95 ir NT programavimo elementai) Skyrelis "Recenzijos" ------------------------------ Knygos, knygos... (apie "Minčių audras") Skyrelis "Mąstymui palavinti" ------------------------------ Toro (odė kurmiams) Skyrelis "Šposai, šposeliai" ------------------------------ Pavasarinės staigmenos programuotojams: Nauja operacinė sistema ------------------------------------------------------------------------- ------------------              ---------------------------- ------------------------------------------------------------------------- Prisistatymas Štai ir išvydote pirmąjį "Vartiklio" numerį. Jis bus toks, kokie būsite ir Jūs. Pasižiūrėk į šį veidrodį ir išvysi savąjį veidą, savąjį "Ego". Ir jeigu nori pagerinti save, paimk kūjį, arklą ir pjautuvą ir išeik į tėviškės lankas. Tavo sugrėbtas šienas bus pagalba visiems mums. Ir man. Ir "Vartikliui". Ir tau pačiam. Laukiu atsiliepimų, pasiūlymų, nuomonių, naujienų. Pamislyk, berneli, "Enter" paspausdamas.... Redaktorius ------------------------------------------------------------------------- ----------- I N T E R N E T K I E K V I E N A M ---------------- ----------- B E P R O Č I A M S N E S K A I T Y T I ---------------- ------------------------------------------------------------------------- Be maudymosi kelnaičių Naujokai tinkluose, - nieko nežinantys ir nejaučiantys jokios atsakomybės. Tai neramina. Dauguma jų beveik nieko nežino apie telekomunikacijas ir kompiuterinę bei programinę įrangą. Tačiau dabar jie "kieti" ir viską daro C00L. Jie turi sukurti BBS ir valandomis plepėti (apie niekus) "Internet". Jie "žinovai" ir jiems reikia paklusti. Aišku, jie nepadaro didelio blogio savo naiviu pranašumo jausmu ir noru į save patraukti dėmesį. Tačiau sugeba sukelti nepasitenkinimą, nes gaila specialistų žinių nuvertinimo. Žmonės yra nepastovūs ir greitai didžioji dalis jų paliks "Internet", nes jiems pasirodys, kad žymiai įdomiau ir pelningiau yra pardavinėti marškinėlius ir maudymosi kelnaites (čia vasaros ilgesys). Tačiau kol kas tęsiasi bumas ir jo metu priežastys ir pasekmės sunkiai nusakomos. Tai daugiau psichologinis reikalas. Žinoma, jis padėjo tiems, kuriems iš tikro jis reikalingas, gauti šią galimybę. Kai praeis karštligė, šios srities veikla stabilizuosis. Kaip bebūtų, pakvaišimas niekad nebūna amžinas. ------------------------------------------------------------------------- Mirtis alyvoms Vos tik kyštelėjęs nosį į pasaulį iškart apkursti nuo riksmo - "Internet" tuojau mirs. Šį vasarį jis pasiekė savo lemties tašką, - JAV Kongresas priėmė CDA aktą, draudžiantį tinkluose laikyti nepadorią (net ir potencialiai) informaciją. Pasirašytas ir prezidento, aktas laukia verdikto, patvirtinančio, kad jis nepažeidžia konstitucijos. Bet ne tai žada galą "Internet" tinklui. Jis tik paaštrino amžiną klausimą: ar tai realus pasaulis ar gyvenimas tik iliuzijų ūkuose? Skaitmeninės nirvanos mitas Manoma, kad kiber-erdvė gyvuoja nepriklausomai nuo realaus pasaulio, nes į ją nepereina mūsų kūnai. O jei ji geresnė, tai valdžia yra kvaila. Ir kuria vieta ji mąsto? Kodėl atrodytų rimti vyrai yra akli lyg vos gimę kačiukai. Ar neraštingas gali patarti, ką man skaityti? Dėjom ant jų! Bet jie skelbia karą kiber-erdvei. Ar būsime pakankamai klastingi ir stiprūs, kad apsigintume? Taip skelbiama "Kiber-erdvės nepriklausomybės Deklaracijoje". Bet toks požiūris neteisingas, nes skatina ignoruoti realybę. Ar tinka sėdėti prieš terminalą su užrištomis akimis. Juk nuo praeitų metų "Internet" _tiesiogiai_ finansiškai remiamas per JAV vyriausybines agentūras, kurios, panaudodamos "Internet" skleidžia informaciją "tautai". Viena iš tokių institucijų yra NASA! Visi naudojami protokolai (FTP, TCP/IP, HTTP) yra nustatyti standartų komiteto ir yra kaip ir vyriausybės nuosavybė. Ir ar ne vyriausybės (tiksliau Pentagono) pastangomis nuo 1969-ų atsirado bei vystėsi "Internet"? Tėvai pagaliau prisiminė savus vaikus! Tai ne gamtos reiškinys, kaip kad lietus ar kamuolinis žaibas. Jis išaugo ant realių pinigų, o ne ant žydrų svajonių apvalkalo. Bet kas ginčo įkarštyje žiūri istorijai į akis? Siūlomi sprendimai yra panašūs į socialinių kontraktų (savotiškos konstitucijos) sudarymą. Skamba gražiai, kol visa tai yra teorija. "Teisinės nuosavybės, išraiškos, asmenybės, judėjimo sąvokos neturi prasmės. Jos galioja tik materija. ČIA NĖRA MATERIJOS." Tai Bezdonių bobelės mąstymas. Jos kiemas - visa apimanti visata. Kituose kiemuose (realiame pasaulyje) tėra blogis, o manajame - vien tiesa! Ar visi mes norime gyventi Bezdonyse? Nėra vienos kiber-erdvės - jų yra daugybė. Pasaulis platus. Kieno tiesa didesnė: krikščionio, musulmono, budisto ar laisvamanio? Kai kurios tautos kariauja ar siekia nepriklausomybės. Koks vienas socialinis kontraktas gali jas visas patenkinti? Štai kiber-erdvėje yra privatūs laiškai ir vieši laiškai. Vieši didina visuomenės teises, privatūs didina asmenybės teises. Realiame pasaulyje gyvenimas yra pastovus nuolaidų darymas vienas kitam. O gal tegu nugalėtojas paima viską arba miršta? Bet kam tos protingos šnekos. Džiaukimės šia diena ir artėjančiu pavasariu! ------------------------------------------------------------------------- Verslo filosofija Firmos dar nera zmones, - ir firmos nera tinkama vieta laimei ar dziaugsmui. Jos skleidzia tai, ka turi savyje. Pavoju ir baime. Netikrumo jausma. Abejones. Pries vartotoja - nors issirenk! Nereikia pasiduoti verslo planu spaudimui ir paaukoti savaitgalius stengiantis neatsilikti nuo srities naujoviu. Nes jie visi milziniskame transe, - jie tiki, kad tas nuobodus meslas is tikro dar kazka reiskia... ------------------------------------------------------------------------- JĖGA. Perlas: Zaiskite, kur pamatysite si zenkla. IBM nutrauke savo 3 metus trukusias kancias bandant pritaikyti Varpa "PowerPC" procesoriui. Uzdavinys neivykdytas! Ir IBM vystys produktus tik Inteliukams. Ka gi, JegosPC priglaus Mac OS. Bet sklando gandai, kad Obuoliuka uz 4 mlrd. perka Saulyte. - ir jeigu Mac OS bus pritaikyta Saulytes Riskams, - Motorola praras VISA rinka! Na ir makaronai... Na ir tinkliukai... Kur Jus zuvytes dideles ir mazos... Novell'iui - chana! Borland'ui - chana! Aplui - chana! IBM - ??? CHANA! Silicio slenis! Na ir zmones! Ir visi jie BALTIEJI! Visi smarkus ir daro didelius pinigus. Jie visada kelyje. Jie niekam neaukoja. Jie sako svarbias kalbas. Juos be paliovos cituoja. Jie perka daiktus, apie kuriuos neturi jokio supratimo. Jie ziuri tik i tai, kas siuo metu karsta, - ir ta dalyka atsaldo. Ir kad tai padarytu, i subines sukisa begales pinigu... (Jie ZYDAI! Tik nereikia apie tai garsiai....) ------------------------------------------------------------------------- ----------- T I K P R O G R A M U O T O J A M S ---------------- ----------- B E P R O Č I A M S N E S K A I T Y T I ---------------- ------------------------------------------------------------------------- Tėviškės vieškelių vingiais Įvykiai, iš pirmo žvilgsnio atrodantys chaotiškais ir atsitiktiniais, atidžiau panagrinėjus, paklūsta sinusoidės dėsniams. Ne, tai jokiu būdu nereiškia, kad pavasarėjant pradeda varvėti nosys (kaip ir varvekliai). Upės, pralaužusios apsaugines dambas, irgi nubėga vingiuodamos nauja vaga. Traukinių avarijose vagonai, pažvelgus iš paukščio skydžio, irgi sudaro sinusoidę. Paleiskime vandens paviršiumi plokščią akmenuką, - ir jis nukryps nuo tiesios linijos. Ar tai pritaikoma ir kompiuterių srityje? Ar mes visada tik pergalingu žingsniu darniomis gretomis žygiuojame į technologines aukštumas? Nė velnio, mes vaikštome vingiais ir ratais! Sumažėjus monstrų ("mainframes") pardavimo tempams, išaugo jų vertų terminalų paklausa, - tik dabar jie pavadinti įmantriai, IPC reiškia "Internet PC". Šie buki kompiuteriai prijungiami prie tobulų ir neišsemtų galimybių ryšių procesorių, - iš tikro tokių pat dinozaurų kaip ir "mainframes". Nieko naujo nesuranda pavasarėjanti saulė kompiuterių pasaulyje. Tik pažvelkime, kaip mes programuojame. Savo karjeros pradžioje mes "Fortran" kalba sukurdavome tikrus spageti iš GOTO sakinių. Tik vėliau "Pascal" išmokė mus naudotis higieniniais struktūriniais paketais, kuriuos vėliau iš inercijos taikėme ir C kalbai. Nors, tiesą sakant, mes pavesdavome kompiliatoriui juodą darbą - paversti mūsų programą JMP raizginiu. Tačiau savo programoje parašyti GOTO reiškė kriminalinį nusikaltimą (o kaip tada aš dažnai nusikalsdavau, ko gero nebuvo nė vienos rimtesnės programos, kurioje nebūtų GOTO arba asemblerinių intarpų). O kas dabar? Technologijos viršūnė - HTML "Web" puslapiai! Ir kokia dominuojanti HTML savybė? Aišku, GOTO sakiniai. Nuostabiai sukurtas "Web" puslapis iki viršaus prifarširuotas tų pačių nelemtų GOTO su "kietai įkaltais" kitų puslapių adresais. Ir Webmasteris yra atsakingas, kad nuosavomis rankytėmis pakaitaliotų šias nuorodas, kai tik pasikeičia adresai. Tikra likimo ironija. Dar neįtikino? Tada nors vieną akimirką žavią susimąstykime apie vartotojo sąsajos kūrimą. Kiek šioje srityje buvo tobulinimų. Mes nužygiavom keliu nuo vienspalvių tekstinių monitorių iki grafinės "Windows" terpės. Įvairių šalių piliečiai, pasikinkę "Visual Basic", tol kūrė ryškius ir persungtus raudona spalva dialogo langus, kol vieni kitus ėmė perspėti, kad atvėstų nuo tokių "saulučių". Po ilgo bandymų ir paklydimų kelio, vėl sugrįžome prie pilkų metalo tonų suteikdami trimatį vaizdą daugeliui klavišiukų. Tačiau šiandien kiekvienas prietranka nori kurti WWW puslapius. Ir vėl atrodo, kad kiekvienam reikia šaukti kuo garsiau iki užkimimo. Vėl reikia kurti kuo ryškesnius, rėžiančius akis, pulsuojančius ekranus, surinktus iš atsitiktinių ir nesuderintų elementų. Taigi, kur tas išgirtasis progresas? ------------------------------------------------------------------------- Kur žiemoja jūrų žvaigždės? Dar tais laikais, kai visi programavo vien Turbo C++, aš pajutau, kad su Borland firma bus nelabai gerai. Jai gyvuojant, buvo aukštų skrydžių, ir nuopolių... Ir vėl skrydžių, kol praeitų metų gale ištiko tokia krizė, kad iš jos pasitraukė ilgus metus vadovavęs Filipas Kanas. Jis dabar vadovauja nedidelei firmai "Starfish" (išvertus, "jūrų žvaigždė"), kuri iš tos pačios Borland išpirko du puikius, tačiau vegetuojančius produktus: veiklos tvarkymo pagalbininką "SideKick" ir užduočių valdymo sistema "Dashboard". Kyla mintis, kas liko Borland, iš kurios jau seniau Novell firma nupirko geriausią produktą ("melžiamą karvutę") - skaičiuoklę Quadro Pro? Ko gero, tik priemonės programuotojams... Tačiau naujų produktų (pvz., Borland C++) kokybė tokia, kad firmai prigijo pravardė "Bugland" (t.y. "vabzdžių (klaidų) šalis"). O naujoji firma "Starfish" pagrindinį dėmesį sutelkė į "slimware" tipo programas, t.y. tokias, kurios puikiai atrodo ir sprendžia labai konkrečius uždavinius. Aš nusprendžiau jai skirti dėmesio "Monitoriuje", nes kai kurios jos nuostatos nuostabiai sutampa su manomis (ar atsimenate straipsnius, kuriuose piktinausi vis labiau plintančiomis prastai parašytomis programomis ir pagirdavau nors senas, bet mažos apimties ir gerai parašytas). Ir tai, gal būt, vienintelė firma, kuri atsisakė griozdų, o kuria mažos apimties, tačiau nepaprastai greitas programas, kurios, maža to, yra reikalingos "masiniam" vartotojui. Pagrindinė taisyklė: produktas turi tilpti į diskelį! O kad taip būtų galima padaryti, programuotojai privalo ne "vizualizuoti" arba teigti "svarbu, kad veikia, bet padaryta per 10 minučių" (Manęs tokie paklausia, o kiek tu darytum? Aš sąžiningai atsakau, kad kelias dienas, tačiau kodas užimtų 10 kartų mažiau vietos ir veiktų kelis kartus greičiau. Tačiau jie vis vien atkerta, "O kam to reikia?"). Tokie programuotojai turi būti išradingi! Ir "būti minimalistu" nereiškia atsisakyti į objektus orientuotų technologijų. Netgi atvirkščiai! Gerai sukurtų (o ne vien sukurtų) objektų bibliotekos leidžia išvengti pasikartojimų ir palengvina programų derinimą. Jeigu taip mąstytų visi, tai, gal būt, ir Word for Windows užimtų ne 20 MB, o sutilptų į vieną diskelį. Juk pagalvokime, kad tėra mitas tai, kad dauguma vartotojų tvarko tekstus. Iš tikro, jie terenka laiškus, rašo sutartis ir kitus nedidelės apimties tekstus. Štai ir aš Vilniuje vis daugiau sutinku firmų, kuriose tenaudojamas Write, ir net jo visos galimybės nėra išnaudojamos. O tekstų tvarkymui yra maketavimo programos. Panašiai pasižiūrėjus, vartotojui nereikalinga ir skaičiuoklė. Juk iš tikro, dažniausiai, jam tereikia sudėti kelis skaičius stulpelyje arba "suvesti" biudžetą. Ar visam tam reikia paketo, kuris dažnai sveria daugiau už patį kompiuterį? Tačiau yra viena problema, juk iš tikri rašyti mažas programas yra daug sunkiau, negu "iškepti" griozdą. ------------------------------------------------------------------------- 32 bitai: Procesai ir gijos "Win32" terpėje (priminsiu, kad "Win32" nėra operacinė sistema, - tai sąveikos forma 32-ių bitų "Windows" terpėse. Šią sąsają turi bent kelios terpės, pradedant NT ir baigiant "Windows 95") PROCESAS yra veikianti programos kopija - ji turi savo virtualią adresų sritį ir savus sisteminius resursus: atmintį, langus ir atidarytus failus. Kai "CreateProcess" funkcija sukuria procesą, automatiškai sukuriama ir pradinė gija. Papildomas gijas sukuria funkcija: HANDLE CreateThread (LPSECURITY_ATTRIBUTES lpSA, DWORD cbStack, LPTHREAD_START_ROUTINE lpStartAddr, LPVOID lpThreadParm, DWORD fdwCreate, LPDWORD lpIDThread); Kiekviena gija turi savo vartotoją ir steką, kurio dydį galima nurodyti "cbStack" parametru. Jei jis lygus 0, jo reikšmė "perleidžiama" iš EXE modulio, t.y. naudojama reikšmė, kuri įrašyta programos surinkimo ("link") metu. Na o "saugumo komitetui" galima pasakyti NULL, kad būtų paimta reikšmė nutylint. Funkcija, kurios adresas nurodytas "lpStartAddr" parametru, turi būti aprašyta taip: DWORD WINAPI ThreadProc (LPVOID lpvParm); NT terpėje gijos gali turėti 32 prioritetų lygius. Paskirstytojas ("dispetčeris") pagal juos išrenka, kurią giją pirmiausia vykdyti. Tačiau pačios gijos gali pasikeisti savo prioritetą, pvz., SetThreadPriority (GetCurrentThead(), THREAD_PRIORITY_LOWEST); "GetCurrentThead" funkcija grąžina tą pačią gijos valdiklio reikšmę kaip ir "CreateThread". Ją žinodamos, kitos gijos gali sustabdyti šios gijos darbą (Jei tik ji turi THREAD_SUSPEND_RESUME atributą, "SuspendThread" funkcija padidina stabdymų skaitliuką. Jį mažina "ResumeThread", o kai skaitliukas vėl pasidaro 0 - gija gauna valdymą.) Gija savo veikimą gali nutraukti keliais būdais ("gera" gija visada turėtų prieiti šį liepto galą): a) grįžti iš pradinės gijos ("return"); b) numarinti save ("ExitThread" funkcija); c) ją gali numarinti kita proceso gija ("TerminateThread" funkcija). Gijai baigiant darbą apie tai pranešama visoms kitoms gijos, kurios laukia šio proceso pabaigos. Taip priėjome prie gijų darbo sinchronizacijos klausimo. Juk tą patį objektą (langą ar "hook"-filtrą) gali naudoti kelios gijos. Kai gija baigia darbą, sunaikinami visi jos sukurti objektai. Yra ir kitų situacijų, kai reikia derinti gijų veiksmus. Visos to paties proceso gijos naudojasi ta pačia adresų erdve. Todėl joms labai lengva tarpusavyje keistis duomenimis, tačiau iškyla pavojus, kad šios bendros duomenų sritys gali būti pažeistos (kai kelios gijos modifikuoja tų pačių kintamųjų reikšmes). Kritinių kodo vietų (t.y. vietoms, kurių vykdymo metu yra keičiami arba naudojami duomenys ar būsena) eiliškumui pažymėti yra naudojami "muteksai" ("mutual exceptions" - abipusės išimtys). Kadangi tik viena gija gali vykdyti kritinę kodo dalį, jie yra savotiškas rakinimo būdas. Blogiausias atvejis, kurį programuotojas gali padaryti, - tai "užmiršti" paduoti raktą! Jeigu kritinės sritys tėra aktualios tik vieno proceso gijoms, galima paprastai (ir tai greičiausias būdas) jas "apskliausti" "EnterCriticalSection" ir "LeaveCriticalSection" funkcijomis. Pvz., tai iliustruoja toks schematiškas fragmentėlis: int WINAPI Winmain (...) { ..... CRITICAL_SECTION g_Kritine_Sekcija; HANDLE hThreads[2]; ...... InitializeCriticalSection (&g_Kritine_Sekcija); hThread[0] = CreateThread (...); hThread[1] = CreateThread (...); // Laukti, kol bus užbaigtos abi gijos WaitForMultipleObjects(2, hThreads, TRUE, INFINITE); .... } int nIndex, max_Index; DWORD WINAPI PirmaGija (LPVOID lpvParm) { EnterCriticalSection(&g_Kritine_Sekcija); if (nIndex > max_Index) { // Kai kurie veiksmai, o taip pat keičiamas nIndex } LeaveCriticalSection(&g_Kritine_Sekcija); return 0; } // end PirmaGija DWORD WINAPI AntraGija (LPVOID lpvParm) { EnterCriticalSection(&g_Kritine_Sekcija); // Keičiamas nIndex LeaveCriticalSection(&g_Kritine_Sekcija); return 0; } // end AntraGija Jei reikia sinchronizuoti kelių procesų gijas, naudojančias bendrus objektus, gali panaudoti bendresnį "muteksų" mechanizmą. Prieš audžiant gijas reikia sukurti "muteksą", pvz.: HANDLE g_Mutex; g_Mutex = CreateMutex(NULL, FALSE, NULL); Pasiekęs kritinę sekciją, procesas paklausia ("WaitForSingleObject"), ar neužimtas dominantis objektas ir laukia, kol jis atsilaisvins (kita gija iškvies "ReleaseMutex" funkciją) arba pasibaigs nurodytas laukimo laikas. Tačiau bendriausias yra semaforų mechanizmas. Jie labai panašūs į "muteksus", tačiau neturi priklausomybės jokiam procesui. Kiekvienas iš jų turi nuosavą skaitliuką, o tai leidžia vienu metu į jį kreiptis kelioms gijoms. Pavyzdžiui, įsivaizduokite kompiuterį su trimis nuosekliais uostais su kuriais gali vienu metu dirbti ne daugiau kaip trys gijos. Tokia situacija puikiai tinka organizuojant darbą su semaforais. Tik vietoje "mutekso" valdiklio "WaitForSingleObject" funkcijai perduodamas semaforo valdiklis. Pavyzdžiui, jei gija kopijuoja duomenis iš vieno uosto į kitą, ji turi užimti uostų semaforą dukart (o po to dukart atlaisvinti): WaitForSingleObject(g_hSerial, INFINITE); WaitForSingleObject(g_hSerial, INFINITE); // Kopijavimo veiksmai ReleaseSemaphore (g_hSerial, 2, NULL); // Iškart dukart Didžiausias trūkumas, kad negalima sužinoti, kiek kartų jau užimtas semaforas (nepakeitus jo reikšmės). Tad belieka trumpai pažvelgti į ketvirtą objektų, kuriuos galima naudoti gijų sinchronizacijai, rūšį, kuri visiškai skiriasi nuo aukščiau minėtų. Tai ĮVYKIAI, kad operacija užbaigta, ir jų objektai. Jie yra dvejopi, iššaukiami tiesiogiai (signalizuojant kelioms gijoms vienu metu) arba automatiškai (signalizuojant vienai gijai). Pavyzdžiui, viena gija iš modemo užpildo buferį ir praneša kitai, kad ši gali jį apdirbti (o pati tuo pat metu gali pradėti pildyti kitą buferį). Tai, suprantama, tebuvo paviršutiniška šių sąvokų ir klausimų apžvalga. Na ar reikia tą atlikti detaliau, - tesprendžia ateitis. :) ------------------------------------------------------------------------- ----------- R E C E N Z I J O S ---------------- ----------- B E P R O Č I A M A N E S K A I T Y T I ---------------- ------------------------------------------------------------------------- Knygos, knygos... Atrodo, šie metai man yra recenzijų rašymo metai. Tarp daugelio lietuviškai išleistų prastų (o kartais, atrodo, ir nesąžiningų) kompiuterinės tematikos knygų, staiga apakino pora nuostabių leidinių. Tamsoje išvydus šviesą, iš pradžių labai skauda akis. Vasarą išvydome didelio formato Viginto Šakio "Skaičiuoklę Excel 5". Joje iš karto į akis krenta ne tik dėmesys knygos apipavidalinimui, vaizdui, bet ir teksto kokybei. Skaitant kitą rašliavą (tame tarpe dažnokai ir "Monitoriuje"), pastoviai manai, kad Lietuvoje rašinėja tik visiški beraščiai. Tuo tarpu nuo šios knygos tiesiog dvelkia pagarba mūsų kalbai. Tačiau ne todėl ji susilaukia palankios nuomonės. Nors iš pirmo žvilgsnio gali atrodyti, kad tai tėra puikus vadovėlis pradedantiems dirbti su Excel skaičiuokle (knygos autorius turi didelę patirtį dėstant šią sistemą studentams). Joje prie kiekvienos temos rasite ne tik anglų-lietuvių žodynėlius, tačiau ir pratimus bei užduotis. Juk visi žino, kad skaitant niekada nieko neišmokstama. Tik konkretus "pačiupinėjimas" ir džiaugsmas, "atradus naujas žemes", gali iš tikro padėti įsisavinti šią puikią programą. Tačiau įsigilinus į tekstą, greitai paaiškėja, kad dažnai užčiuopiamos tikros "gelmės" ir paaiškinami labai subtilūs momentai. Nors knyga ir nėra žinynas, nagrinėjamų klausimų ratas yra labai platus. O dabar aš vartau dar kvepiančią spaustuvės dažais (taigi, "šiltą") Kristinos Sprindžiūnaitės išverstą ir "Žaroje" išleistas įprastinio formato Seymouro Paperto "Minčių audras". Kaip ir ankstesnė knyga, ji atkreipia dėmesį jau minėtomis dorybėmis: išvaizda ir puikia kalba. Gal iš dalies ir dėl to, kad abi šias knygas redagavo Audronė Klupšaitė. Tačiau šioje knygoje (kaip nėra jokioje kitoje) ypatingai aiškiai "prasimuša" knygos rengėjų MEILĖ knygos medžiagai. Nors pagrindinis knygos veikėjas yra LOGO vėžliukas (nieko bendro neturintis su vėžliukais-nindzėmis), tačiau tai nėra šios kalbos aprašymas arba vadovėlis (kuriuose dažniausiai tėra aiškinamos vėžliuko valdymo komandos, pavyzdžiui, aiškinama, kaip nubrėžti kvadratą: nuleidi plunksną, paeini 20 žingsnių, pasuki už (90 laipsnių) kampo ir, čia man norisi rašyti "nusišlapini". Deja, panašiai galima įvertinti ir absoliučią daugumą knygų apie kitas sistemas bei programavimo kalbas - tikrą vadovėlį tegali parašyti tik tas, kuris tam turi Dievo duotą gyslelę). Šiai knygai geriausias apibūdinimas būtų pedagoginė filosofija. Logo tėra tik instrumentas (kaip joga pratimai tėra priemonė, padedanti suvokti aukščiausią Tiesą). Visas žinias žmogus turi įgyti PATS. Mokytojas (man čia labiau patiktų žodis "guru") gali tik padėti vaikui. Aš pasiūlyčiau perskaityti šią knygą visiems (ne tik mokiniams ar mokytojams), nes visų mūsų sąmonė yra "užteršta". Vienų galvose - veržimasis prie lovio (valdžios ar Gariūnų), kitų komunizmas arba kita politinė pakraipa, treti yra "kiauri" technokratai, o likusieji išvis atpratę mąstyti. Jau jau nesistebiu, kai matau, kad ketverių metų vaikas žino daugiau, negu Universitetą baigęs specialistas. Ir šios recenzijos pabaigoje pateiksiu ištraukėlę iš šios knygos (praleisdamas porą piešinėlių ir neperteikdamas maketavimo subtilybių, p.114-116). ATRADIMAS - Piešk paukščių pulką taip: PAUKŠTIS ČIUOŽK PAUKŠTIS ČIUOŽK. - Aš noriu šešių paukščių ir naudosiu komandą KARTOK. (piešinuko paieškok knygoje) - Juokinga. Aš norėjau, kad visi šeši paukščiai skristų į tą pačią pusę. - Bet tai gražu. Jei taisysime, reikėtų pasilikti ir tokią kopiją. Eik tuo pačiu keliu, kaip Vėžliukas. - Iš pradžių jis žiūri į šiaurę, piešia paukštį... dabar žiūri į rytus - čia klaida. - O penktasis paukštis uždengia pirmą. Jei nori pašalinti klaidą, pasuk Vėžliuką į šiaurę po to, kai jis nupiešė paukštį. - Ir padarykim juos mažesnius. (piešinuko paieškok knygoje) - Štai pulkas. - Dar nebaigta. Nurodykime PULKUI parametrą ir padarykime kelis pulkus. - O kaip padaryti, kad paukščiai skristų? - Aš radau kai ką gražaus. PAUKŠTYJE vietoj komandos DEŠINĖN parašyk SUK... dar yra klaidų, bet bus gražu. Gal būt, kai kam gali susidaryti įspūdis, kad šias kelias pastraipas parašiau "pagal užsakymą" arba būdamas kaip nors kitaip susijęs su minėtomis knygomis. Todėl kenčiančius tikėjimo stoka galiu užtikrinti, kad bet kuriomis aplinkybėmis aš stengiuosi visada sakyti vien SAVO nuomonę. ------------------------------------------------------------------------- ----------- M Ą S T Y M U I P A L A V I N T I ---------------- ----------- B E P R O Č I A M S N E S K A I T Y T I ---------------- ------------------------------------------------------------------------- Toro (odė kurmiams) Visur - parduotuvėse, įstaigose ir laukuose man atrodė, kad gyventojai tūkstančiais įmantriausių būdų atgailauja už savo nuodėmes. Esu girdėjęs apie brahmanus, kurie sėdi prieš keturius laužus ir vis tiek žiūri tiesiai į Saulę; arba kybo galva žemyn virš liepsnos; arba stebi dangų per petį tol, kol nepajėgia atgauti normalios padėties, ir tik skystis gali patekti į pilvą per jų iškreivotus kaklus; arba visan gyvenimui prisikausto grandine prie medžio kamieno; arba nelyginant vikšrai savo kūnais matuoja didžiausių imperijų platybes; arba stovi viena koja ant stulpo, - tačiau netgi šie savanoriško kankinimo būdai kažin ar įspūdingesni už tuos vaizdus, kuriuos aš regiu kasdien. Dvylika Heraklio žygių - niekai, palyginti su mano kaimynų triūsu; anų tebuvo 12 ir visi turėjo tikslą, o man niekada neteko matyti, kad šitie žmonės būtų nugalabiję arba bent pagavę kokią pabaisą, arba užbaigę kokį nors darbą. Jie neturi draugo Jolos, kuris įkaitinta geležimi nudegintų hidros galvą, be to, kai tik viena nukrinta, bemat išdygsta dvi naujos. Aš matau jaunus žmones, mano žemiečius, kurie, savo nelaimei, paveldėjo fermas, namus, klėtis ir žemdirbystės įnagius: šiuos dalykus lengviau įsigyti, nei jais atsikratyti. Geriau jie būtų gimę plyname lauke ir išauginti vilkės, tuomet gal geriau matytų, kokiuose laukuose yra pašaukti dirbti. Kas juos pavertė dirvos vergais? Kodėl jie turi suvalgyti tuos savo šešiasdešimt akrų, kai žmogui yra skirta suvalgyti tik savąją purvo saują. Kodėl vos gimę, jie jau turi pradėti rausti sau kapo duobę? <...> Bedaliams <...> pakanka darbo, maitinant ir prižiūrint kelias kubines savo pačių kūno pėdas. Žmonių triūsą ženklina klaida. Geresniąją savęs dalį jie bemat užaria į dirvą vietoj trąšų. Tariamas likimas, paprastai vadinamas būtinumu, verčia juos kaupti turtus, kuriuos, kaip sakoma vienoje senoje knygoje, kandys ir rūdys suės arba įsilaužę vagys išvogs. Tai kvailių gyvenimas - priėję jo galą, o kartais ir anksčiau jie patys tuo įsitikina. Sakoma, kad Deukalionas ir Pira sukūrė žmones, svaidydami per petį akmenis: Inde genus durum sumus, experiensque laborum, Et dokumenta damus qua sumus origine nati. Arba, kaip tą patį skambiai rimuoja Relis: From thence our kind hard-hearted is, enduring pain amd care, Approving that our bodies of a stony nature are. Štai ką reiškia aklai paklusti paikam orakului, mėtyti atgal akmenis ir nežiūrėti, kur jie krenta. ------------------------------------------------------------------------- ----------- Š P O S A I , Š P O S E L I A I ---------------- ----------- B E P R O Č I A M S N E S K A I T Y T I ---------------- ------------------------------------------------------------------------- Pavasarinės staigmenos programuotojams: Nauja operacinė sistema Atsižvelgdama į daugelio vartotojų poreikius turėti patikimesnę sistemą už OS/2, IBM vasario į rinką "išmetė" OS/VV - Virtualios Visatos Operacinę sistemą. Jos dėka, kiekvienas vartotojas ne tik turės privačią mašiną, bet visą Visatą, kurioje galės be apribojimų krauti savo programas, duomenis, įvairius tinklus, - net nuosavas planetų sistemas bei naujas gyvybės formas. Tereikia jam pasirinkti, kurią Visatą pasirinkti, ir be galo paprasta diegimo programa "OS/Jehova" atliks visus būtinus veiksmus. Ši programa yra saugoma "SYS/Devai" segtuve. Minimalus laikas paprasčiausios Visatos sukūrimui yra 6 dienos ir dar vieną dieną reikia paskirti sistemos patikrinimui. Visos darbinės programos yra susegamos "SYS/Mesijas" segtuve. Visos jos neturi jokių parametrų ir niekas nežino, kaip jomis naudotis. Tačiau jas pašalinus, sistemą suardo meteoritų spiečius. Žinoma, naujokas turi įdėti kažkiek pastangų šios sistemos įsisavinimui. Pernelyg dažni skrydžiai į tolimas galaktikas, pavyzdžiui, gali labai sulėtinti visą sistemos veiklą. Tačiau IBM, subsiduojama valstybės, kurioji ji yra rezidentinė, papildomai dirba, kad šviesos greitį padidintų dar bent penkis kartus. Tai leistų sumažinti antžemyninio kelių matavimų operatyviosios atminties puslapiavimo sąnaudas. Tačiau šiuo atveju vartotojai turės stengtis nepažeisti pagrindinių Gamtos dėsnių. Globalaus sistemos sutrikimo atveju Žmonijai gręsia pražūtis. Tačiau vartotojams yra išduodamas išsamus žinynas, kurio kopija saugoma "SYS/Jono/Senasis/Testamentas" byloje. Išsamus Žinyno studijavimas nepalieka laiko darbui su Sistema ir pašalina grėsmę. OS/VV galima įdiegti į bet kurį kompiuterį, turintį "x0xx/Power" procesorių su padidintu "Varpos" ("Enhanced Warp") režimu. Jo grįžtamosios sąveikos greitis neturi būti mažesnis už 1,23 mln. dolerių už manosekundę. Mikrobranduolys padės perkelti šią sistemą į bet kurią platformą su netiesiniais procesoriaus darbo greičio pakitimais. Ši galimybė leis plačiau naudoti sistemą terpėse, reikalaujančiose nepaprastai tikslios ir greitos reakcijos, pavyzdžiui, branduolinėje energetikoje ir Pentagono greito reagavimo SKAT pajėgose. Kai tik bus sukurta vieninga išorinių įrenginių sąsajos tvarkyklė, bus pereita prie žymiai galingesnės "Virtualios realybės 2001" sistemos kūrimo. Tačiau jau dabar galima persikelti gyventi praktiškai į visas menamas Visatas. Vartotojams geriau orientuotis susiduriant su terminais "Virtuali realybė" ir "Reali realybė" padeda pirmoji eksperimentinė versija, kuri buvo įdiegta LAIB'e ("Akciniame Inovaciniame", kurio pats pavadinimas sako apie polinkį į naujoves). Džiaugiamės gražia dovana! Šlovė Jiems! O visi norintys įsigyti demonstracines versijas gali skambinti į "Seka" BBS ir siurbti failą FY96_IS_FUN.EXE. Papildomą informaciją suteikia IBM atstovybė Vilniuje, Šv. Jono gatvėje. Kreipkitės, ir Jums bus atsakyta. ------------------------------------------------------------------------- ------------------              ---------------------------- ------------------------------------------------------------------------- Laikraščio "Vartiklis" Redaktorius: Jonas SKENDELIS E-mail: j.skendelis@elnet.lt Visa medžiaga, pateikta šiame laikraštėlyje yra šio laikraštėlio autorinė nuosavybė, kurią draudžiama kopijuoti, cituoti ir kitaip naudoti be šio laikraštėlio redaktoriaus asmeninio leidimo. ------------------              ----------------------------