Šį darbą atlikti svarbu jau vien todėl, kad šiuo metu galiojantys reguliavimai yra įdiegti 1995 metais, kai tik 1% Europos populiacijos naudojosi internetu. Daug kas pasikeitė nuo devym penktų ir Lietuvoje[1] ir Europoje. Štai Lietuva Europoje pirmoje vietoje pagal interneto greitaveiką.
Tada gi (1995) buvo priimta duomenų apsaugos direktyva (o ne reguliavimas). Direktyva nuo reguliavimo skiriasi tuo, kad šalys narės direktyvą adaptuoja taip, kaip joms atrodo teisinga, o reguliavimas veikia daug maž vienodai visoms šalims. Reguliavimas čia labiau ir tinka, nes dabar ir pačios įmonės, naudojančios asmens duomenis susiduria su gan bjauria ir gausia biurokratija, jeigu nori dirbti keliose ES šalyse (kiekviena gi turi skirtingo lygio apsaugas, kurios buvo sukurtos vadovaujantis direktyva).
Tai štai, anot Access’o (apie juos jau rašiau truputėlį) visokie lobistai su giliomis kišenėmis labai stengiasi mūsų euro-parlamentarams padėti priimti tokį reguliavimą, pagal kurį jie galės mus išrenginėti nuogai:
Aš pats asmeniškai nematau didelių problemų atiduoti savo kai kurią asmeninę informaciją korporacijoms, kurios iš to pasidaro pelno, bet tuo pačiu užtikrina man įvairių paslaugų tiekimą[2]. Bet su sąlygomis – aš noriu žinoti kokia korporacija žino apie mane šią informaciją ir kur gali ją panaudoti. Taip pat noriu turėti galimybę nebeleisti naudotis mano asmenine informacija – galbūt ir atsisakyti kažkurių labai naudingų tiesiogiai nemokamų paslaugų. Man to reikia, nes manau, jog tai vienintelis dalykas, kuris neleis manimi naudotis, kaip vieša paslauga.
– O labas! Kalbėjomės anądien Gplius’e… Štai, lyg tyčia, gmaile mačiau reklamą iš proktologijos klinikos – žiūriu matytas veidas! Tai… kaip ten? Išpjovė sėkmingai? Čia va man kaip tik irgi išaugo… Nori parodysiu?
Kažkodėl nenoriu tokio pokalbio… O jeigu jūs irgi nenorite kažko panašaus, tai:
Nusiųskite mūsų parlamentarams žinutę, apie tai, jog privatumas jums svarbus. Aš parašiau tokį tekstą, jei tingite rašyti, copy/pastinkit:
Prašau apginti mano privatumo teisę
Ne už ilgo jūs balsuosite dėl Komisijos pasiūlymo: “General Data Protection Regulation” (pagrindinis duomenų apsaugos reguliavimas).
Aš jums rašau norėdamas paskatinti jus apsaugoti vieną iš pagrindinių – mano privatumo teisę. Kad apgintumėte mano teisę valdyti savo asmeninę informaciją.
Svarbu, kad svarstydami šį dokumentą, užtikrintumėte, jog:
– bus apsaugota visa mano privati informacija, įskaitant ir tą, kuri padėtų mane išskirti iš žmonių eibės ar identifikuoti kaip vartotoją;
– bus užtikrinta aiški galimybė leisti ar neleisti įmonėms naudoti mano privačią informaciją, aiškiai ir vienareikšmiškai nurodant kur šią informaciją įmonės gali panaudoti;
– bus užtikrinta galimybė ištrinti mano informaciją iš įmonės saugyklų ir ją pasiimti į savąją;
– turėsiu galimybę apriboti mano elgesio sekimą informacinėje aplinkoje (Internete, mob. telefonų tinkle ir pan.);
– turėsiu galimybę uždrausti perduoti informaciją apie mane užsienio valstybėms ar jų atstovams.
Iš anksto dėkoju, už supratimą ir mano teisių atstovavimą Europos Parlamente. Aš jūsų pasirinkimą atsiminsiu sekančiuose EP rinkimuose.
Donatas dirba BlueBridg’e. Jis yra programuotojas, jaunas tėvas ir labai iniciatyvus Lietuvos pilietis.
Kiek aš supratau iš jo pasakojimo: šis projektas atsirado kaip šalutinis mokymosi proceso produktas. Programuotojas sumanė išmokti kažkokį naują dalyką. O juk besimokant kokio nors naujo dalyko reikalinga praktika. Kadangi išmokti reikėjo kažkokių programų kažkokių ten komponentų (ar tai pačios programavimo kalbos), tai praktikuojantis reikia kažką suprogramuot naudojant tuos elementus. Na, pavyzdžiui socialinį tinklą.
Iš kur tai žinau? Ogi iš paties Donato Šimelio. Jis gi yra ir projekto vadovas ir direktorius. Kažkurią čia dieną (gal prieš kokį mėnesį) susisiekė su manimi ir sutarėme susitikti, kad jis papasakotų daugiau apie tai.
Socialinis tinklas su labai praktine paskirtimi
E-demokratija, e-įstatymai, e-piliečiai, e-… eee… E. Žodžiu, tai yra socialinis tinklas skirtas rimtos tetoms ir dėdėms kalbėtis rimtomis temomis. O jei tų kalbų rezultatas virstų kokiu nors įstatymo projektu ar įstatymo pakeitimu, ar teisės akto kokio nors gal pavyzdžiui pakeitimu ar net pačiu teisės aktu tai, matyt, būtų dar puikiau.
Vienas pagrindinių šio projekto privalumų ir pagrindinė prielaida rimtumui – galimybė prisijungti prie tinklo su savo elektroniniu parašu (pavyzdžiui išduotu registrų centro). Tuoj bus galima prisijungti ir per kai kurių visų bankų paskyras.
Skamba kiek keistai ir gal net baugiai: socialinis tinklas ir asmens duomenys, o dar ir e-bankas! Bet nebijokite. Viskas legalu ir pagal taisykles: yra leidimas, kažkoks sprendimas ir net kodas!
Net pats įžymusis blogeris patikrino ir patvirtino, jog viskas tvarkoje!
Bent jau aš ramus – prisijungiau savo e-parašu ir pamėginau išsiaiškinti kas ten ir kur ir kaip. Aš netgi ėmiau ir sukūriau sumanymą:
Tai viskas ten taip ir veikia: sukuri sumanymą, aprašai problemą ir galimus jos sprendimo būdus…. Ai prieš tai dar, kai susikuri paskyrą, tai sužymi varnelėm kuom planuoji domėtis – pagal tuos tag’us vėliau bus dėliojami prioritetai ir vėliau siunčiami į “Veikalapį”.
Jei mėgintumėm surasti analogijų su FB, tai būtų siena. Jei su G+, tai “home”.
Iš esmės tai bet kas ten gali prisijungti ir nebūtinai naudodamasis tikruoju vardu/pavarde ir nebūtinai autorizuodamasis savo ar banko sertifikatu. Bet paties soc. tinklo idėja – rimti reikalai. Be jokių jãučių ekskrementų, be jokių ten fermų, piktų paukščių, katyčių su arbūzais ar be arbūzų.
Aktyviausi visuomenės nariai gali laisvai jungtis ten ir siūlyti pačias fantastiškiausias idėjas (aš retkarčiais patikrinsiu ir gal ką į KPŠ tada įdėsiu). Bet tai, kad kiekvienas su iniciatyva gali ten bet ką sukurti turi ir neigiamų pusių…
Iš savo patirties mūsų DNSB galiu pasakyti, kad ne visi, kurie su iniciatyva kùria. Kai kurie iš jų neša tik destrukciją ir anarchiją – tada mažiau kantrybės turintys spjauna ir išvis nedalyvauja veikloje, o mažiau pakantūs plūstasi ir paskui irgi nedalyvauja veikloje.
Dar apie projekto užkulisius
Projektas naujas ir niekas nežino kaip ten bus: pavyks sėkmingai įsukti – arba nepavyks. Patys Lietuva 2.0 kūrėjai yra daugiausiai programuotojai ir IT specialistai. Kiek aš supratau jų darbo metodus ir strategavimą, tai jiems svarbiausia, kad veiktų, kad būtų funkcionalu. Nesu tikras ar jie turi aiškų vystymo planą ar numatė visas grėsmes ir galimybes.
Aš taip pat nesu tikras ar visas grėsmes bei galimybes įmanoma numatyti. Tai yra naujas dalykas. Kaži ar apskritai įmanoma nuspėti kaip čia bus iš tiesų. Todėl, galbūt pati geriausia strategija čia ir yra neturėti strategijos.
Tas dalykas, kurio mokėsi Donatas buvo kažkokios .net‘o galimybės. Kažką ten karktelėjo jis programuotojų kalba, tad nesu tikras ar tikrai .net’as ten svarbiausias.
Serveris hostinamas ten kažkur pas jį darbe. Koks jis – matyt nesvarbu. Svarbu, kad veiktų.
Projektas, kiek supratau, yra ne pelno siekiantis ir visi jo kūrėjai dirba iš idėjos. Lietuvą 2.0 kuria ir daugiau Donato kolegų ir ne kolegų.
Kas būtų jeigu būtų
O kas jeigu taip nutiktų taip, kad Lietuva 2.0 labai išpopuliarėtų ir daugybė svarbių sprendimų būtų priimama vadovaujantis Lietuva 2.0 soc. tinklo informacija? Manau, jog kažko panašaus ir tikisi visos šios košės virėjai.
Ar atsirastų suinteresuotų pusių, norinčių ir turinčių resursų įtakoti Lietuva 2.0 serverį irba jo programinę įrangą? Na, pavyzdžiui paslėpti nenaudingus pasiūlymus taip, kad pačiam kūrėjui jis būtų matomas, o kitiems ne? Arba padaryti taip, kad neskaičiuotų visų balsavimų kaip nors gudriai, kad patys balsuojantieji to nesuprastų… Arba pateikti pasiūlymą, kuris surinktų didžiulį kiekį palaikymo, nors niekas už jį nebalsuotų. Ar tiesiog išjungtų serverį.
Čia, manau, turime tą pačią e-balsavimo dilemą (leisiu sau save pacituoti):
Plika akimi nepamatysite, ką daro jūsų kompiuteris ir niekaip nesuprasite, kas jame vyksta. Tai padaryti galima tik naudojant įvairius interpretatorius-dekoderius, kurie sugeba informaciją iškoduoti ir pateikti mums suprantama forma (dažniausiai ekrane arba garsiakalbyje).
Interpretatorių–dekoderių kiekio informacijos perdavimo ir apdorojimo greičiai reikšmingai (nagrinėjamame kontekste) neriboja, tad informacijos perdavimo kanale jų darbo jūs savo receptoriais negalėsite niekaip pamatyti ar užfiksuoti. Tam specialistai telkiasi pagalbon įrankius, kuriuos jie manosi visiškai valdą, t.y. susiprogramuoja kažką ir iš įvairių požymių bei kitų loginių operacijų pagalba išsiaiškina, ar mato šaltinį, ar tik eilinį interpretatorių, kuris emuliuoja šaltinį.
Bet, o kaip gi galimybė greitai bet kuriam piliečiui dalyvauti savo valstybės valdyme? Kaip gi tie genialūs pasiūlymai, kurių valdžiažmogiai niekada nesugalvos? Gal tiesiog paimti ir paskambinti kokiam seimo nariui? Ar parašyti el. žinutę?
Gal ir suveiktų… Bet abejoju. Kitas reikalas – didelė ar dar didesnė grupė žmonių pateikusi jau neblogai apkramtytą idėją. Juk visai neblogų politinių dividendų iš to būtų galima gauti.
Be to problema čia šiuo atveju gal kiek mažesnė vien dėl to, kad pats socialinis tinklas yra visiškai NE anonimiškas. Čia žmonės gali patvirtinti savo asmenybę elektroniniais sertifikatais. Čia žmonės gali patikrinti ar jų pateikta informacija nebuvo pakeista ar ištrinta. Galbūt, pateiktą pasiūlymą dar vertėtų patikrinti atsitiktine tvarka paskambinėjus žmonėms pritarusiems pasiūlymui. Na, dėl viso pikto. Bet čia jau daugiau būtų paties Seimo prerogatyva.
Išvados
Visai smagus dalykas. Galima kalbėti rimtomis ar pseudo-rimtomis temomis, rodyti savo išmintį ir pulti komentuoti bei siūlyti geresnius problemų sprendimo būdus. Kurti galima savo sumanymus.
Gal dar kiek painokas dalykas – daug visokių mygtukų-šmygtukų, ten pasiūlymų, sumanymų, argumentų, balsavimų, susijusių balsavimų, komentarų, palaikymų, kritikos, sutikimų, išsaugojimų kaip pasisakymų, aprašymų plačiau, redaguojamų/neredaguojamų laukelių…
Bet daug-maž intuityvu. Informacijos reitingavimas atrodo irgi visai neblogas ir lankstus. Esmė – imti ir naudoti ir tuo pačiu kurti.
Serveris priklauso BlueBridge’ui (kiek supratau) stovi jis tos pačios firmos serverinėje.
Šitą gavau iš Neriaus per Gplius. Jau senokai, bet kažkodėl tik dabar sumąsčiau pasidalinti. Tai apie nelabai sėkmingus atsitiktinumus/sutapimus lauko reklamoje. Čia atrinkau keletą, bet verta peržiūrėti visus:
O čia jau vienas kitas belekokio nerūšiuoto KPŠ’o:
Botnetas, tai tinklas sudarytas iš įvairių įrenginių. Bot – robot arba robotas, net – network arba tinklas.
Kai sakoma “Botnetas” tai dažniausiai turima omenyje tinklą, sudarytą iš įvairių kompiuterių ir galbūt kitokių įrenginių, gebančių apdoroti IP informaciją. O tą tinklą valdo žmogus ar organizacija ir naudoja tai įvairiems blogiems kėslams.
Vienas fizikas, geras linuksistas, jis gi vardu Nerijus parodė man tokią nuorodą.
Toje nuorodoje parašyta, kaip vienas protingas žmogus, išmanantis tinklo technologijas ir Internetą sukūrė gerąjį botnetą. T.y. tokį robotų tinklą, kuris neatlieka nieko blogo, ką išvardinau čia aukštėliau. Šis žmogus tiesiog surinko šiek tiek statistikos apie Internetą ir tai paskelbė.
Bet pats įdomiausias dalykas tai, kaip jis gavo prieigą prie visų 420 000 kompiuterių ar šiaip įrenginių (maršrutizatoriai, video stebėjimo kameros ir taip toliau) prijungtų prie interneto.
O prieigą gavo vien naudodamas patį paprasčiausią dalyką: standartinį vartotojo vardą ir slaptažodį, kurie būna nustatyti įvairiuose įrenginiuose ir tokiais lieka, jei kas nors jų nepakeičia.
Tie vartotojų vardai:slaptažodžiai yra: root:root, admin:admin ar tiesiog šie vartotojų vardai apskritai be slaptažodžių.
Kadangi šis žmogus ne šiaip sysadminas, kuris svaidosi pergėriančiosiomis ataskaitomis ir žiūrinėja nepadorią video medžiagą, o rimtas sysadminas, tai jis linksminasi gaudamas pažinimo džiaugsmo.
Visus kompiuterius, ar įrenginius, prie kurių jis prisijungė, įdarbino IP adresų skanavimui, statistinės informacijos apdorojimui ir saugojimui. Kiekvienas iš tų robotų skanavo IP adresus, radęs neapsaugotą įrenginį, į ten įdiegdavo programinį kodą, o šis tada darė tą patį.
Tinklas plėtėsi ir jo paieškos bei statistikos rinkimo greitis didėjo geometrine progresija (t.y. labai greitai). Greitai, tai reiškia, kad per vieną parą nuskanavo 3,6 milijardo IP adresų (milijardas tai čia tikriausiai 10^9). Vikipedija sako, kad dabar žemėje yra ~7 milijardus gyventojų.
Šis žmogus surinko gan įdomios vizualinės informacijos. Man labiausiai patiko (gal dėl to, kad šį labiausiai supratau) šis gif’as:
Visai smagus dalykas dar ir tai, kad kol šis protingas žmogus leido savo botnetui (pavadino jį Carna) dirbti, jis savo apkrėstuose įrenginiuose aptiko kito botneto (Aidra) pėdsakus. Aidra gi, pagal įvairius požymius, pasirodė esąs tuo bloguoju… Tai štai, šis tinklo specialistas su savo Carna darė taip, kad ta Aidra taptų neveiksnia.
Ir dar vienas įdomus dalykas, iš visos surinktos statistikos: 2012 metais Carna aptiko 1 327 852 IP adresų, kurių rDNS yra *.lt. Daugelis jų turi šiuos sub-domenus:
Ping’us tarp IP adresų – 52 milijardai įrašų, nesuspausta info užima 1.8 TB
DNS (IP adresų skaičiukai pakeisti raidikėmis) informacija – 10.5 milijardų įrašų, nesuspausta info užima 366 GB.
Service probes (nesu tikras ką tai reiškia, bet lyg ir įrenginių atvertus portus įvairioms paslaugoms, pvz. http, ftp ar pan.) – 180 milijardų įrašų, nesuspausta info užima 5.5 TB
Host probes (irgi nesu tikras, gal tai įrenginiai gebantys leisti programas, valdyti kitus įrenginius) – 9.5 milijardai įrašų, nesuspausta info užima 771 GB.
Sinchronizacijai skirti skanavimai – 2.8 milijardai įrašų, nesuspausta info užima 435 GB
TCP IP informacija – 80 milijonų įrašų, nesuspausta info užima 50 GB
IP ID seka (šita savoka man išvis nauja, bet kiek supratau kiek paskaitinėjęs, tai kiekvienas IP paketas turi identifikatorių, tai čia gal yra informacija apie tai kiek IP paketų išsiuntinėjo Carna užkrėsti įrenginiai) – 75 milijonai įrašų, nesuspausta info užima 2,7 GB.
Traceroute (informacija apie IP paketų nukeliautą kelią) – 68 milijonai įrašų, nesuspausta info užima 18 GB.
Tokia gausybė informacijos turėtų būti didžiuliu saldainiu statistikos mėgėjams. Gal kas susigundysite ją patyrinėti? Aš kiek per skystas tokiai gausybei informacijos. Bet numanau, jog iš šios informacijos galima pasidaryti tokių išvadų, už kurias kas nors sumokėtų kažkiek nemažai. Galbūt 2012 metų informacija nėra per daug pasenusi net ir Internetui.
Taip pat raginu jus pasitikrinti savo įrenginius ir pakeisti standartinius root:root ir admin:admin dabar. Gali būti, kad kitas protingas žmogus bus mažiau geranoriškas.
Vietoje P.S.
Ten tą gif’ą pasižiūrėjus didesnėje rezoliucijoje ir patyrinėjus Šiaurės Korėjos žemėlapį, tai aktyvumas yra viename taške, bet ne sostinėje. Arba tai paklaida žemėlapio. Bet jeigu tai ne paklaida, tai gan įdomu. Kur ten Kim Jong-un’as browsina? Kodėl ne sostinėj?
[1]– Nepaminėjai kelių “tradicinių” botnetų užsiemimų: Ad-clicking (dabar dažnai nesimato, nes minimizuoja IE langą) ir PC resursų išnaudojimo (Bitcoin minning) kaip pvz. Lietuvoje tikrai ne vienintelis “blogas” botnetas. Beje, IRC – gerasis botnetas irgi 🙂 (Ačiū Giedriui iš G+)
Manęs klausė – kas čia tokio KPŠ šiame video siužete. O aš tada perklausiu: kas per KPŠ, kad nematote čia KPŠ?
Čia yra metalas. Metalas nėra KPŠ. Bet tas inkilas tai truputį. Nors atrodo, tai įspūdingai. Man asociacijos su varpine ir su karstais:
Štai čia yra Estų Eurovizijos atrankoje dalyvavusi grupė Winny Puhh:
Čia dar vienas jų audiovizualinis kūrinys (priedainis man labai gražus):
Tiek tas inkilas, tiek tie estai tai yra pozityvus KPŠ’as. Aš noriu, kad tokio būtų daugiau mūsų gyvenimuose.
Na, o šio viso KPŠ’o vinis tai Edgaro iš G+ surastas blogas, kuriame yra labai puikūs komiksai. Daugelis jų priverčia susimąstyti ir šiaip pažvengti, o kitų tai visai neina suprast:
Seku tokį Access’o blogą. Kiek aš suprantu ir kiek skaičiau jų “about’ą”, tai jie yra žmogaus teisių aktyvistai. Organizacija veikia iš aukų ir iš idėjos.
Daug kur, kai dirbama iš idėjos yra šiokių tokių ir fanatiškumo požymių – čia jų truputėlį matau.
Bet tai yra tas raktinis matavimo taškas, kuriame aš matau mūsų Interneto laisvės saugiklį. Nesu tikras ar yra daugiau tų saugiklių ir kur jie, bet šitas tai tikrai vienas iš tų.
Šiandien gavau jų išplatintą akciją, kur jie prašo pasirašyti peticiją dėl CISPA. Pats pavadinimas šio daikto man kelia įtarimų: kyber informacijos dalinimosi apsaugos aktas – toks itin laisvas vertimas, bet jo prasmė yra ta, jog remiantis šiuo aktu, telekomunikacinių paslaugų tiekėjai gali teikti valstybei (o ir bei ypač jėgos struktūroms) bet kokią informaciją apie bet kurį savo klientą. Tai, anot to akto, nėra liepiama daryti, bet priežasties nesidalinti paslaugų tiekėjai neturės, nes jokios atsakomybės užtai neturės, o lobizmas tai praverstų.
Tai spauskite ant paveiksliuko ir pasirašykite:
Jeigu pasirašysite, tai prisidėsite prie spaudimo šioms didelėms kompanijoms nepripažinti CISPA.
Jeigu šie du JAV gigantai nepatvirtins CISPA, tai tikėtina, jog šis teisės aktas neturės galimybės plisti tolyn. Ir priešingai, jeigu JAV jis atsiras, tai didelė tikimybė, jog atsiras ir EU, o ir Lietuvoje tuo pačiu. Be to yra didžiulė tikimybė, kad serveris, esantis užsienyje, kuriame yra mėgstamas jūsų turinys, yra pasiekiamas per vieno iš šių tiekėjų stuburinį tinklą. Tai yra tokie gigantai.
Jeigu pavyktų, tai pristabdytumėm visokių MAFIAA, MPAA ir Monsanto lobistų kuriamą lotoliukų laviną dar pačioje pradinėje jos stadijoje.
Mano žiniomis ta kopyraiterių bjaurastis į Youtube buvo įdiegta kur kas anksčiau. Aš jau skundžiausi, kad dėl kažkokių kopyraitų man youtūbė nuėmė unlisted videos galimybę:
Tai čia aš jau turiu pirmą straiką:
Dar pranešė ką patys užremūvino.
Pagal copyraiterių propagandą pirmi straikai turi būti ideologiniai: aš turiu peržiūrėti ten medžiagos apie tai kas yra copyraitai ir pan.
Tai taip jau ir buvo – spaudžiant youtūbe ant mano accounto buvau redirektintas į kažkokį video, aš peržiūrėjau, tada liepė išlaikyti testą, iš kažkurio karto išlaikiau, bet vistiek man apribojimus taiko, nes matyt dar kažko nepadariau. Nepadariau, nes ten viskas labai sudėtinga. Užtingau gilintis.
Paspaudžiau tą nuorodą, kuri apibraukta ten viršuje ir anava ką radau:
Kai man tuos notice’us siuntė, tai aš visur paspaudžiau “Acknowledge”. Nes supratau, kad šitaip būsiu geras ir manęs nebaus. Aknowledžinau, kad:
KKK finale yra panaudotas garso takelio ištrauka iš Zaratustros
Ten kur PAG blabla fone kažkoks big bandas groja
Ten kur TOC seminare šoka žvėrės, tai ten garso takelis kažkoks įmantrus tango yra.
Ten kur Sputniko žlugimas tai įdėjau garso takelio ištrauką iš Gojira Art of Dying.
Gal tie visi 6 straikai Googlui negalioja? Gal jie turi savo specifinę sistemą, kuri griežtesnė? Gal čia jie ją taip propaguoja ir JAV buvo priimta švelnesnė jų forma? Ar čia jie tik šitaip stengiasi būti labai geri visokiems lobistams?
Ne ką blogesnis KPŠ yra Google. Tiksliau jų mandravonės su soc. tinklu Google Plus. Padarė kažkokią baisybę ir kiekvienas dabar galime pasidaryti žiauriai didelį coverį. Nei vienas man pažįstamas normalus žmogus nesupranta kam to reikia. Na, taip, bičiniam pirmai progai pasitaikius ant bet kokio Gplius’o pasikeitimo, bet tai kad nieko gero nedaro. Arba pasenom. Ta proga atsinaujinau savo Gpliuso coverį:
Aš nesu programuotojas. Ir man toli iki jų sugebėjimų (na ir gal truuuuputėlį atvirkščiai).
Taip gavosi, kad mano brolis yra programuotojas ir mokėmės (aš telekomunikacijas mokiausi) mes su juo tame pačiame universitete (2 metų skirtumas). O nesangi brolis gyveno programerių bendrabutyje (II KTU barakas), tai ir aš ten gyvenau. Doom’ą Quake’ą pliekiau, heroes nesupratau, IRC pliurpiau…
Gali būti, kad dar man studentaujant atsirado ir terminas „lameris“. Žinoma, šis terminas buvo dažnai naudojamas apibūdinti mane.
Nežiūrint tokių baisių įžeidimų – man pasisekė. Aš gyvenau dviejuose pasauliuose: programuotojų ir kitų žmonių. Todėl aš truputį suprantu ir vieną ir kitą. Arba, jeigu tiksliau: prisitaikyti galiu ir viename ir kitame pasaulyje. Ar bent jau trumpam apsimesti, jog esu savas ir būti prie chebros.
Manau, jog dėl to esu visai neprastas HelpDesk’as[1] ir šią savybę sėkmingai išnaudoju darbe.
Žodžiu sekasi neblogai. O kadangi turiu šią savybę, tai noriu su jumis pasidalinti savo know-how paaiškindamas jums kaip aš suprantu programuotojų žargoną[2].
Tačiau paaiškinimai, mano supratimu, vis dar nėra pritaikyti paprastiems pasaulio gyventojams. Todėl aš dar pridėsiu nuo savęs papildomų, mano nuomone reikalingų paaiškinimų.
Taigi, pradedame (jų bus trisdešimt).
1. Joda sąlygos (Yoda Conditions)
Būti šitas ir gali nesuprantamas lietuviams, žodžius maišyti kalboje nes sakinyje galima, vistiek lieka o prasmė reikalinga.
O Joda, tai toks „Žvaigždių karų“ (toks filmas fantastinis senas) personažas, kuris kalbėdamas kaitaliojo žodžius sakinyje, nes buvo ypatingas.
Programuodami programuotojai tiesiog gali sukeisti vietomis tam tikras sąlygas. Tai jie daro dažnai specialiai ir matyt tam, kad galėtų kažką išskirti ir vėliau rasti lengviau arba tiesiog šiaip dėl smagumo.
Pavyzdžiui, kintamasis k turi reikšmę 2, tai vietoje to, jie pasako, kad reikšmė 2 turi kintamąjį k. Cha-cha!
2. Pokemonų išimčių valdymas (Pokémon Exception Handling)
Čia be programuotojų pagalbos man jau sunkiau. Čia, matyt, yra kažkokios išimtys, kaip pavyzdžiui koks nors šąla, bąla, sąla, mąžta, glęžta, tręšta ir panašiai. Tik programuotojai rašydami kodą privelia, matyt, kokių nors išimčių ir paskui staiga paaiškėja, kad reikia jas visas sugaudyti, nes išsilakstė kaip kokie pokemonai.
Čia gal kai su vaikais eini į parduotuvę ir jie išsilaksto, o tada, kol vieną gaudai, kitas jau saldainius šlamščia saldainių skyriuje…
O iš tiesų tai:
Pasirodo tie „exceptions“ tai tan visai ne išimtys, kaip išimtys, o tokie ekscepšinai, kur specifiniai. Tai yra programos veikimo sudėtinė dalis, kai įvyksta kažkokie neplanuoti, iki šiol neaprašyti programoje procesai. Ir juos visus reikia sugaudyti
O Pokemonai tai tokie keisti padarai, kurie gyvena savo pasaulyje, o pokemonų treneris turi visus juos surinkti, nes tik tada galės vadintis Pokemonų šeimininku.
Na, o realaus gyvenimo pavyzdys galėtų būti kokio nors renginio organizavimas, kur reikia numatyti vegetarišką meniu, nes gali atvažiuoti vegetarų, kad lauko kavinėje skėtis kiauras, o lija, kad multimedinis projektorius auditorijoje omega neturi applo sąsajos, o auditorijoje sigma per daug karšta…
3. Egipto skliausteliai arba papai (Egyptian Brackets)
Tai toks specifinis būdas rašyti skliaustelius. Kai mes rašome skliaustelius tekste, tai atidarome (skliaustelius ir uždarome) skliaustelius. O programavimo kalbų sintaksėje kiekvienas skliaustelio tipas turi savo reikšmę. Antai figūriniai skliaustai kartais nurodo kokia turi būti vykdoma komanda, jeigu kokio nors kintamojo reikšmė atitinka tam tikrą sąlygą.
Pavyzdžiui:
Tai dėl to, kad tų sąlygų gali būti visa daugybė ir tam, kad nepasimestų pats programuotojas tarp tų sąlygų, jis skliaustus dėlioja taip, kad būtų labai aišku, kur baigiasi sąlyga, o kur vykdoma funkcija.
Pavadinimas tai kilo iš to kaip atrodo rankos aukščiau esančiame paveikslėlyje.
Antai, neseniai sužinojau, kad kiti programuotojai dar ir pačius figūrinius skliautus vadina papais. Čia štai jums pavyzdys to, kad žmonės dirbdami su savo įrankiais su jais ilgainiui taip susidraugauja, kad net ima vadinti įvairiais vardais.
4. Pasipūtėliška ataskaita (Smug Report)
Tokių esu ir pats pateikęs programuotojams.
Čia taip nutinka, kai jau atrodo pačiam, jog viską apie programą ir jos veikimo principą jau žinai ir pastebi kažkokią nu tiesiog sveiku protu nepaaiškinamą nesąmonę ir tada, naudodamas įvairius epitetus, bei vaizduotėje sukurtus vaizdinius, paaiškini programuotojams ką apie juos ir jų programą, bei jų direktorių galvoji.
Dažniausiai po visų tų pasipūtėliškų ataskaitų tenka kiek paraudonuoti ir net pažagsėti. Todėl stengiuosi tokių neberašyti.
Dar būna tokių: narkomaniškoji ataskaita (tokia nesuprantama ir neaiški, kad tas, kuris ją rašė – tikrai vartojo narkotikus), bespringstanti ataskaita (kai ataskaitos rašytojui ši ataskaita buvo paskutinis lašas jo kantrybės taurėje) ir gūžčiojančioji ataskaita (kai parašo, jog kažkas neveikia, bet nesivargina paaiškinti nei kur nei ką darė, nei kas neveikia).
O iš tiesų tai:
Bespringstančia“ pavadinau ataskaitą, kuri yra šiaip jau yra „pergėrusi ataskaita“. Čia tokia ataskaita, kur rašė žmogus išgėręs vienu bokalu ar taurele per daug.
5. Antis (A Duck)
Tai metodas, kurį taikyti galima visur, kur yra visokių niekadėjų, kurie nieko neveikia, bet stengiasi sudaryti įspūdį, jog pašėlusiai daug ir svarbiai dirba. Tokie tipai sugeba sugadinti ir sužlugdyti bet kokį gerą dalyką.
Antis tai specialiai padaryta pusiau paslėpta klaida, kuri pusiau akivaizdžiai matosi. Tad, kai duodamas dokumentas ar programos kodas kokio nors lygio kokiam nors vadovui, kuris nieko neveikia, bet jaučiasi labai svarbus, tai jis būtinai tą klaidą pastebi ir paliepia pašalinti. Jei tos klaidos nebūtų, tai pašalinti ar pataisyti reiktų ką nors kitką, ko šalinti ar taisyti visai nereikia.
Šis terminas puikiai siejasi su lietuviškąja antimi spaudoje ar kitose žiniasklaidos priemonėse. Bet programeriai šitą fenomeną aiškina taip, kad vienas kūrėjas kurdamas savo žaidimą, vienam iš pagrindinių herojų visur įkišdavo antį, kuri tai ten tai šen pasirodydavo per daug netrukdydama, kad neatrodytų akivaizdžiai. Tai štai, kažkoks prodiuseris gavęs peržiūrėti tą produktą pasakė, kad viskas yra gerai, bet va reikia atsikratyti tos anties.
Kažkadais dar žiūrėjau filmą apie krokodilo odos batus. Tiksliau apie šios dainos (“Crokodile skin shoes”) kūrėją, kuris sukūrė kažkokią dainą ir garso įrašų studijoje pasakė, kad labai nepatrukdytų saksofonas. Tai jo prodiuseris pasakė, kad ne, nereikia. O tada nuėjo pas kažkokią leidybinę firmą, kur irgi kažkoks ten dalyvis pareiškė, jog reikia saksofono partijos ir tada tą veikėją tas gudrus prodiuseris pagyrė ir tas kūrėjas staiga viską suprato…
6. Nutobulinimas arba Supirdolinimas (Refuctoring)
Tai kai yra parašyta gera programa su geru kodu, bet jai pritaikoma daug visokių pataisymų. O tuos pataisymus darant viskas taip supirdolinama, kad niekas nebesupranta kas kur darosi apart paties pirdolintojo ir tada tą kodą tenka perrašyti.
Čia panašiai būna, kai iš kokios nors įmonės išeina kokia nors Irutė, kuri ten viską tvarkė, o daugiau niekas nė neįsivaizduoja kaip ten ką padaryti ir kas daroma, nes tai kas yra dokumentuse – jau seniai ne tiesa.
7. Stipriai prispausdinta (Stringly Typed)
Su šiuo man taip pat sunkiau. Galbūt atsiras komentarų, kurie sugebės išversti tai į žmonių kalbą.
Kiek pavyko susiprast, tai būna programuotojų, kurie, vietoje labiau parankaus ir situacijai priimto kintamojo tipo naudoja string. Kas reiškia, jog tai tiesiog žodžiai.
Programavimo kalbose yra naudojama tam tikra sintaksė, pagal kurią kompiuteris arba mašina nusprendžia ką jam reiks daryti. Pavyzdžiui, žodis print galėtų reikšti, jog duotą rezultatą reikia pateikti ekrane. O string tipo duomenys mašinos yra suprantami kaip nulių/vienetų, t.y. duomenų seka, kuri neturi jokios kitos reikšmės – t.y. tiesiog duomenų paketas, kurį kitos vėliau esančios komandos gali liepti mašinai padėti į vieną ar kitą vietą.
Tai va, jeigu koks programuotojas nutartų suprogramuoti kokią nors programą, kuri tikrintų tam tikrą sąlygą, pavyzdžiui, “ar šiandien šviečia saulė?”, tai atsakymai būtų “šaldytuvas” arba “radiatorius” vietoje “taip” arba “ne”.
Nors šis gif’as ir kitu kontekstu, bet tinka ir čia:
8. Heisenbugas (Heisenbug)
Werner Heisenberg tai žmogus kartu su kitais žymiais fizikais aprašė vieną iš kvantinių dalelių/bangų savybių. T.y. kuo tiksliau yra žinoma dalelės vieta, tai tuo labiau neaiški kvantinės dalelės masė ar greitis, o kuo tiksliau žinomas greitis ar masė, tai tuo labiau nežinoma kur ji yra. Ši kvantinių dalelių savybė dar vadinama Heisenbergo principu.
Bug arba vabalas tai programos klaida ar tiksliau savybė ar jų rinkinys, kuri (ar kurios) trukdo programai vienaip ar kitaip atlikti jos pradinę paskirtį.
Gaunasi heisenklaida. Tai tokia klaida, kuri išsiduoda, kad yra, nes programai neleidžia atlikti tai, kam ji parašyta, bet kuo labiau bandoma aiškintis kur ta klaida, tuo labiau neaišku kur ji yra.
Taip nutinka, kai viskas būna neteisinga – net išeitinės sąlygos. Taip neteisinga ir aplinkybės taip sutampa, kad kad tam tikras prielaidas patvirtina, o kitų ne.
Būna taip ir gyvenime – tokios heisen-diskusijos, kai oponuojančios pusės pasakoja viena kitai savo tiesas, jos oponuoja viena kitai, bet oponuoja taip chytrai, kad joms atrodo, jog ne oponuoja o pritaria. Pavyzdžiui:
– Nu tu šiandien ir atrodai!
– O tu irgi graži…
9. Doktipo dekoracija (Doktype Deocoration)
Šis žargonas išskiria vieną iš dažnai pasitaikančių konfliktų tarp dizainerių ir programuotojų, kurie turi tą dizainą suprogramuot.
Matyt dizaineriai pateikdami savo darbo rezultatus programuotojams turi jiems papasakoti kur ką jie įsivaizduoja ir pateikia tai dokumentuose. Tai jie ten parašo kur koks dokumentas ką reiškia, bet pačiame dokumente nesivargina aprašyti jo detalių, kurios labai svarbios programuotojams.
Gyvenimiškas pavyzdys galėtų būti kokia nors dokumentų ir protokolų šūsnis, kurią numeta naujam darbuotojui, su palydėjimu: „skaityk, čia viskas parašyta“.
Pataisykite, jei klystu.
O iš tiesų tai:
Čia šiaip jau yra žodžių žaismas: deklaracija ir dekoracija. Ir čia, kiek supratau iš Aistės paaiškinimo, tai naudojama Interneto svetainėms programuoti: dokumento tipo deklaracija labai svarbi naršyklei, kuri tada „žino“ kaip tą dokumentą vaizduoti. O jei kas nors ten parašo „Now on sale!“, tai virsta tik dekoracija:
10. Džimis (Jimmy)
Čia galima būtų vietoje Džimio užrašyti Petrą Petraitį arba Joną jonaitį, arba Vardenį Pavardenį. Nu arba asilą. Palikau Džimį.
O tai toks žmogus, kuris perėmė pareigas iš prieš tai dirbusio darbuotojo. Tai toks žmogus, kuris nežino proceso vystymosi istorijos, bet turi minimalias žinias apie tai ką jam daryti dabar arba rytoj. Džimis nežino, kad istoriškai taip susiklostė, jog norint paspausti va tą mygtuką prieš tai reikia paskambinti duomenų bazių administratoriui, kad šis uždisaiblintų vieną trigerį, kuris, paspaudus tą mygtuką laužia (t.y. ateina piktos kolegės ir verkia, kad dabar nežino ką daryt, nes rytoj sąskaitos klientams turi išeiti) visą sistemą.
Tai geri programuotojai savo programą padaro Jimmy-proof, t.y. atsparią Džimiui. Džimis atėjęs gali spausti bet kurį mygtuką ir trigeris užsidisaiblina automatiškai ir neateina piktos kolegės su rytojaus sąskaitų išėjimo klientams problema.
Kaip padaryti, kad sistema būtų atspari Džimiui? Programuojant reikia paklausti: “O ką jeigu Džimis ateis ir …”.
11. Higso bugsonas (Higgs-Bugson)
Peter Higgs, tai fizikas teoretikas, kuris sugalvojo Higso bozoną. Tai tokia fig… dalelė, kurios ieško mokslininkai pačiame didžiausiame pasaulyje dalelių greitintuve, dar vadiname LHC. Čia šito daikto žmonės bijo, nes jis padarys juodąją skylę, kuri prarys visą Žemę su viskuo kas joje yra.
Tai štai tas Higso bozonas tai dalelė, kurios egzistavimą nuspėjo tas pats fizikas teoretikas Peteris. Ta dalelė, kiek aš suprantu, yra masės ir gravitacijos paaiškinimas, kurio ieško intensyviai mokslininkai. Jūs sakysite, kad jums ir taip aišku kas ta masė ir kad žemė traukia prie savęs daiktus, bet, štai mokslininkams ne visai vis dar aišku…
O apie bug jau paaiškinau.
Tai štai, tai tokia klaida ar programos savybė, trukdanti normaliai programos veiklai, bet ji tokia neaiški ir nesuprantama, kad niekas specialiai jos atkurti nesugeba. Nutinka tai retkarčiais, kai vartotojai, kurie savo pasipūtėliškom ataskaitom nieko aiškaus neparašo, pati programa veikdama lyg ir duoda kažkokius neaiškius simptomus, bet visiškai neaišku ar ta klaida yra ir kas jos buvimą sąlygoja.
Gyvenime tai kaip paslėptas automobilio gedimas: kol vienas važiuoji tai lyg ir girdi kažkokį pašalinį triukšmą variklyje, o servise, žinoma, niekas nieko negirdi ir viskas būna gerai.
12. Nopingas (Nopping)
Ta sulietuvinimo galūnė -as šiam žodžiui suteikia savotiško nešvarumo. Negaliu paaiškinti kodėl… Bet pats žodis tai iš asemblerio[3] operacijos NOP (No-operation). T.y. operacijos, kuri nedaro jokios operacijos[4] ir kito žodžio naping – snaudžia (angliškai).
Lietuviškai dar mes tai vadiname snaudimą atviromis akimis: kai regis matai kažką, bet ir nematai, o pažadintas iš tokios būsenos negali pasakyti ką čia ką tik galvojai.
Nieko šmaikštesnio ar aiškesnio, kaip šitas paaiškinimas nesugalvoju: “Stanislav sat watching the screensaver and nopped for a while.” (Stanislovas sėdėdamas ir žiūrėdamas į ekrano užsklandą panopino mažumėlę).
O iš tiesų tai:
NOP‘ai reikalingi, pasirodo, tam, kad tiesiog užtempti šiek tiek laiko, kad susitvarkytų atmintis ir panašiai.
13. Vienaragiškai (Unicorny)
Vienaragis tai mitinė būtybė, kuri virtualioje erdvėje įgavo dar vieną mitiškumo atspalvį. Panašiai kaip Chuck Norris.
Šiuo būdvardžiu apibūdinamos būsimos programos ar projekto savybės. Bet tai daroma taip anksti, tai yra taip per anksti, kai dar visiškai neaišku nei koks bus projektas, nei kokie jo rezultatai, nei ar apskritai tas projektas bus įgyvendintas.
Pavyzdžiui, Vilniaus gondolos bus pailgos agurko formos ir spindės Vilniaus padangėje ryškiomis spalvomis su Vilniaus taksi numerių reklama. Tai va tos visos spalvos, formos ir numeriai yra labai vienaragiški.
14. Bakchlavos kodas (Baklava Code)
Bakchlava, tai toks turkiškas desertas iš daugybės plonyčių tešlos sluoksnių suteptų medumi.
Gi programos kode taip pat gali būti daug sluoksnių. Štai deserte tų sluoksnių plonumas yra labai skanus, bet programoje tai daug naudos neduoda.
Neduoda, nes norint analizuoti jį – kiekvieną sluoksnį reikia dėtis galvon ir atsiminti analizuojant sekantį, o kai tų sluoksnių prisidaro daug, tai medus tarp tų sluoksnių persisunkia. Tai yra tie sluoksniai ima lietis ir tada sugriūva galvoje visa struktūra ir viską reikia pradėti iš naujo arba spjauti į tą purviną reikalą.
Tai gali iliustruoti ir šis paveiksliukas:
15. Hindenbugas (Hindenbug)
Tai toks bug‘as, kuris sunaikina visus duomenis ir neįmanoma to atstatyti.
Hindenburgo katastrofa, tai tokia katastrofa, kurios metu susprogo didžiulis vokiečių dirižablis, kuris buvo pilnas vandenilio dujų ir, žinoma, sprogo taip, kad maža nepasirodė niekam.
Prisimenant pastarųjų savaičių įvykius blogosferoje ir tų įvykių poveikį kai kuriems žmonėms, tai šį bug’ą galima būtų pavadinti ir vėsastrofa, vėsavabalas.
O jei pabandytumėm sutapatinti su kuo nors, kas baisaus įvyko Lietuvoje tai galėtumėm tai pavadinti ribentromolotostrofa, t.y. ribentromolotovabugas.
16. Baimės motyvacija (Fear Driven Development)
Tai tokia motyvacija, kai dirbama dėl to, kad bijoma jog atleis. To pasekmės yra vaizdo sudarymas, jog dirbama, o iš tiesų nieko nedaroma – kas dažnai taikoma valdiškose įstaigose. Tokios motyvacijos pasekmių yra ir daugiau, bet tai jau atskiro posto tema.
Šitas būdas taikomas gan dažnai Lietuvoje ir programavimas ar programeriai čia bendroje krūvoje. Ypač išpopuliarėjo ekonominės recesijos metu.
17. Hidros kodas (Hydra Code)
Hidra, tai mitinė būtybė, kuriai nukirtus galvą, jos vietoje išauga dvi. Tai kai programoje matoma aiški klaida, ji pataisoma, bet pasekmėje gaunamos dar dvi problemos. Tokį kodą taisyti neapsimoka – tenka perrašyti.
O gyvenime čia, matyt, taip bus su mūsų švietimo sistema. Vieną vietą bando taisyti – atsiranda dar daugiau problemų.
18. Precedento teisės fenomenas (Common Law Feature)
Precedentinė teisė, tai kai kokiame nors teisme įvyksta precedentas, tai tas teismo precedentas taikomas ir kitose bylose, t.y. sprendimas priimamas panašus į prieš tai buvusį.
Tai programos bug‘as, kuris programoje taip seniai ir vartotojai prie jo taip pripratę, kad tas kreivas veikimas yra jau reikalaujamas vartotojų ir jo egzistavimas turi būti palaikomas (prižiūrimas, kad veiktų).
Čia labiau gal juokais[5] galima būtų palyginti su mokamų programų valdiškose įstaigose naudojimu: visi priprato prie jų ir keisti į pigesnes, bet atliekančias tas pačias funkcijas, deja, niekas nenori ir tenka atnaujinti tuos pačius brangius programų paketus, o pinigus atiduoti užsieniečiams.
O iš tiesų tai:
Čia, pasirodo, neteisingai interpretavau „common law“ reiškinį. Čia jis, pasirodo, visai tiesiogiai susijęs su savo reikšme: žmonės pakankamai ilgai gyvenantys kartu įgauna vedusiųjų statusą. Save paaiškinantis pavadinimas.
19. Lochneso bugas (Loch Ness Monster Bug)
Lochneso pabaisa, tai kažkokiame dideliame ežere gyvenanti pabaisa, kuri yra daugiau mitologinė nei reali. O jeigu ją kas ir matė tai koks vienas ar du lunatikai.
Tai Lochneso bugo atkurti niekaip neįmanoma, o jį pastebėjo ir jo pasekmes aprašė tik vienas asmuo, kuris to įrodyti vėl nebegali.
Na, galbūt tai būtų įmanoma sulyginti su Merkinės piramidės apsireiškimais jos statytojui.
20. Ninzių komentarai (Ninja Comments)
Tai tokie komentarai kurių nesimato. Tai tokia ironija. Komentarų nėra – reiškia tai yra ninzių komentarai. Jie yra tik jų nesimato.
Aš kiek suprantu tai programuojant kodą komentarai yra ypatingai svarbūs ne tik kitam programuotojui, kuris galbūt sumanys analizuoti ką pridirbo pirmasis, bet ir tam pačiam programuotojui turi padėti nepasimesti kas kur.
Tvarkinga dokumentacija, ar tiksliau meta-duomenys yra būtini, jei norime pasiekti bent jau šiokio tokio suderinamumo arba ilgesnio išlikimo.
Realiame gyvenime, manau, aiškinti nebūtina kaip svarbūs yra dokumentai. Retkarčiais žmogaus dokumentai būna svarbesni už patį žmogų.
Nežinau kaip jūs, bet aš smurfus mačiau. Per TVP1. Tai animacinis filmas kurio pagalba išmokau lenkų kalbą. Dar man padėjo “Dinasty” ir, žinoma “Liolikas ir Bolekas“.
Bet čia ne šiaip apie multikus. O apie tuos žalius nykštukus. Nesu tikras, nes nepamenu, bet jų pasaulyje viskas buvo smurfiška: smurfalopšys, smurfauogos, smurfakūdikis ir panašiai.
Panašu, jog Smurfai turi pavadinimų kūrimo konvensiją pagal kurią visur prideda žodį “-smurf-“. Tai štai programuotojai retkarčiais irgi savo funkcijas, kurios gali būti sudedamosiomis programos dalimis pavadina taip, kad pirmas žodis visada tas pats, o skiriasi tik pabaiga:
SmurfOperatoriausApžvalga, SmurfOperacijųKontroleris, SmurfIstoriniaiDuomenys ir pan.
Realiame gyvenime tokio smurfiško pavadinimų galvojimo matau valdiškose įstaigose, kur prie pavadinimo prideda “Lietuvos”, “Valstybinė” ir dar ten kažko. Ir kur reikia ir kur nereikia.
22. Protodukcija (Protoduction)
Kai prototipas pereina į produkciją.
23. Pasitarimas su protingu žmogumi (Rubber Ducking)
Tai nutinka tada, kai žmogus (na, kad ir aš pats) įsiveržia pas kolegas ir garsiai paklausia ko nors, tada kiek luktelėjęs į ją pats ir atsako. Padėkoja ir išeina.
Mes tai vadiname pasitarimu su protingu žmogumi (savimi pačiu). Na, o guminė antis irgi gali būti ta būtybė, kuri padės jums išspręsti problemą. Jums tereikia jai garsiai pasakyti kas negerai ir pačiam problemą išspręsti.
Gyvenime su šiuo fenomenu pats susiduriu gan dažnai, tikiuosi kad ir jūs. Tikiuosi, jog taip pat suprantate, jog tai yra ne vien tam kad pasijuokti. Vieną iš šio fenomeno aspektų gan gerai išnaudoja ir pasaulyje stipriai plintanti TB metodologija.
Dėl šito irgi abejoju. Bet tiek kiek pavyko suprasti, tai bananas bananas bananas apibrėžia tiesiog žodžių seką (t.y. string’ą), kuris naudojamas tada, kai programuotojas nenori komentuoti savo aprašytos funkcijos, o visokie klaidų tikrinimo įrankiai reikalauja, kad ten būtų komentarai.
Čia, matyt, pasekmė yra tų pačių ninzių komentarų, kurių labai nemėgsta programuotojų darbo rezultato gavėjai. Tai tie gavėjai paprašė kitų programuotojų suprogramuoti įrankį, kuris tam tikrose vietose tiesiog reikalautų komentarų. Tad, tie pirmieji, kurie mėgsta ninzių komentarus (arba ten tų komentarų visai nereikia) rašo: bananas bananas bananas.
Pamenu studijų laikais turėjome tokias filosofijos (o gal ir kito dalyko) paskaitas, tai ten reikėjo kursinius rašyti. Dėstytoja buvo labai gudri ir buvo susigalvojusi sau haką[6] – tikrindavo tik įžangą ir išvadas, t.y. pradžią ir pabaigą. Keletas studentų tą sužinojo ir padarė kontr-haką: parašė įžangą ir išvadas, o į vidurį nukopijavo ir įklijavo pasaką apie Raudonkepuraitę. Gandai sklido, kad gavo gerus pažymius.
Tai štai, ta Raudonkepuraitė ir yra bananas bananas bananas.
O iš tiesų tai:
Čia programuotoja Aistė sako, jog yra paprasčiau: tiesiog yra vietų, kur komentarai būtini, bet dar nesuspėjo (neturėjo laiko/noro atsitraukti nuo kito galvojimo) programuotojas sugalvoti tinkamų, tai įrašo, kad bus komentarai vėliau.
25. Bikrementas (Bicrement)
Dar vienas mistinis dalykas, kurį suprasti, o ir paaiškinti sunku. Čia gali būti taip, kad programuotojai programuodami savo programas labai dažnai naudoja visokius pagalbinius ar nepagalbinius kintamuosius, prie kurių dažnai prideda reikšmę 2.
Gyvenime, prisimenu, tai liepdavo dar mokykloje išsiskaičiuoti kas antrais. O tada kas antras eidavo į vieną komandą, o kas pirmas – į kitą. Tai tie, kur vienoje komandoje yra bikrementai, o kur kitoje solkrementai gal kokie…
26. Šlamštdarbis (Reality 101 Failure)
Tai puikiai veikianti programa. Veikianti taip kaip numatyta, bet kai jau įdiegta į procesą, paaiškėja, kad problema buvo suprasta neteisingai ir tas geras programos veikimas yra visiškai nereikalingas.
Gyvenime taip būna, kad kai imi taupyti energiją šilumos gamybai kur nors Vilniaus daugiabutyje, paaiškėja, kad taupyti energiją Vilniaus daugiabutyje yra šlamštarbis, nes VE tada tiesiog padidina sąskaitas už bendrųjų patalpų šildymą. Tai nors energija šilumos palaikymui bute yra sutaupoma, bet naudos taupytojui iš to jokios, nes problema kitur.
27. Piktos merginos bugas (Mad Girlfriend Bug)
Tai gali būti ir piktos žmonos, ir piktos meilužės, o ir šiaip piktos moters bugas. Tai toks bugas, kai matosi, jog kažkas negerai, bet programa sako, kad viskas gerai.
28. Megamotas (Megamoth)
Kiekviena programa susideda iš smulkesnių dalių, kurios vykdo smulkesnes funkcijas. Tai yra problema išskaidoma į daug mažesnių, tos mažesnės išsprendžiamos ir šitaip išsprendžiama didžioji problema:
Tai yra pasaka apie voverę, kuri vieną po kito nešė riešutus į savo drevę ir šitaip rūpinosi savimi žiemą. T.y. didžiulė problema – žiema ir maisto ieškojimas žiemą buvo išspręsta į drevę nešant po vieną riešutėlį.
Tai štai, megamotas yra panašiai, bet atvirkščiai. Tai yra programos kodo dalis, kuri sprendžia visas keliamas problemas, todėl labai sudėtingas ir sunkiai analizuojamas[7].
Na, o gyvenime dažnai susiduriame su regis neišsprendžiamomis problemomis, nes susijaudiname ir atrodo, jog nieko gero mūsų gyvenime daugiau nutikti nebegali, nes yra visiška katastrofa. Bet kai problemą imi analizuoti, skaidyti į sudedamąsias dalis – ji neatrodo tokia baisi. Kiek esu girdėjęs ir matęs, tai pats geriausias metodas įvairių problemų sprendimui yra TOC.
29. Stervos kodas (Hooker Code)
Būna programa, kuri veikia taip specifiškai, kad kartais nulūžta kompiuteris (na, arba sistema). Sakoma, kad toje programoje, matyt, yra užsilikęs stervos kodas, kuris priverčia tą programą taip bjauriai elgtis.
Čia prisiminiau vieną filmą, kuris galėtų paaiškinti daugiau apie tai ką blogo gali padaryti stervos kodas:
30. Jenga kodas (Jenga Code)
Jenga tai toks žaidimas, kai sudėliojamos kaladėlės ir reikia paeiliui traukti kaladėlę iš žemiau negu pirmi sluoksniai. Tam, kuriam sugriūna bokštas, reikia atlikti kokią nors užduotį. Geras žaidimas – geri prisiminimai…
Na, o Jengos kodas, tai kai bandoma pataisyti kokią nors smulkmeną, bet tada staiga viskas griūna.
***********************************************
Nesu tikras ar perskaitėte viską iki galo, bet man ši pramoga (skaitant angliškąjį variantą) labai patiko.
Tikiuosi, kad čia visko nesupirdolinau ir per stipriai neprispausdinau.
Tikiuosi, jog programuotojai jums dabar atrodys kiek žmoniškesni, nors ir keistuoliai, kuriems nerūpi paprasto žmogaus dalykai.
O jeigu dar kuriam pasakysite, kad sugaudytų savo kode pokemonus, nes jo antys jums nedaro įspūdžio – netgi atvirkščiai, priverčia noopinti, kai tiek daug vienaragiškų metodų. Lai dabar gaudo stervas pats, kol nenutiko hindenbugas, nes jo bananais paslėpti ninzių komentarai tik jam pačiam suprantami, o į smurfinių pavadinimų konvenciją irgi tegul daugiau nebe važiuoja. Kitaip tariant pritaikykite baimės motyvaciją dar pridurdami, jog jo megamotiškas šlamštas niekada netaps protodukcija. Kavos jūs atsigerti nueisite o, jis su kol tarsis žmogumi protingu.
Tai jis jūsų greičiausiai nesupras vistiek.
_______________
[1]– Tai pagalbos stalas. Pagalbos stalas tai ta vieta, kur žmonės ateina su problemomis ir jas sprendžia. Pavyzdžiui: jums neveikia internetas ir jūs skambinate savo tiekėjui į jo HelpDesk’ą, kuris tuo pačiu dar yra Calling Center’is ir ten esančios merginos bei vyrukai jūsų problemos nesupranta, o jūs nesuprantate jų problemos, o tada niekas nesupranta kame problema ir jūsų problemos išsisprendžia, kai pakeičiate interneto tiekėją ir jei kam reikia pagalbos keičiant interneto ar televizijos tiekėją, tai kreipkitės į mane 😉
[2]– Visi turėtumėte žinoti tą anekdotą apie tai kaip programuotojas troleibuse pardavinėjo savo mamą. Tai buvo juokinga kokias 1998 metais.
[3]– Asembleris tai toks dalykas, kuris gavęs iš programos instrukcijas paverčia jas mašininėmis instrukcijomis. T.y. reikalingus žodžius programoje paverčia elektroninių signalų seka, kurios yra “suprantamos” įrenginiui (pavyzdžiui monitoriui), kuris gavęs tuos signalus (galimai per įvairius moduliatorius/tarpininkus) pakeičia savo savybes (pavyzdžiui, monitorius pakeičia tam tikroje vietoje esančių skystųjų kristalų poliarizaciją ir priklausomai nuo komandos monitoriuje sužimba ryškiau arba blankiau taškas).
[4]– Kam reikia operacijos kuri nedaro jokios operacijos? Aš nežinau. Bet matyt reikia. Gal, pavyzdžiui, vien tam, kad žinoti, jog įrenginys veikia ir laukia komandos.
[5]– Juokais, nes bandančius kalbėti apie tai rimtai išvadina fanatikais ir jų bijo.
[6]– tai nuo žodžio „hack“ arba „nulaužti“, arba apeiti standartinį procesą ir gauti rezultatą trumpesniu būdu negu įprasta.
[7]– megamotui tikriausiai yra naudojamas bahkchlavos kodas, o bandymai megamote ištaisyti kokią nors klaidą gali virsti ribentromolotostrofa.