Meilė

Internetą daro žmonės, todėl jame atsitinka įvairiausių nutikimų. Google.com, amazon.com, flickr.com sėkmės istorijos yra tikrai įdomios ir daugeliui žinomos, tačiau kaip su Lietuvos svetainėmis? Aš nesu skaitęs nei vienos ir kažkodėl abejoju ar daug galima tokių rasti, todėl nusprendžiau pasidalinti svetainės eKūryba.com įsikūrimo, gyvavimo ir „kariavimo“ istorija. Niekas nesumeluota, turbūt dar daugeliui negirdėta ir išsamu - gero skaitymo!

Du faktai

2001 metais Lietuvoje įsikūrė pirmoji kūrybos svetainė skirta rašantiems ir kūryba besidomintiems žmonėms - rašyk.lt. Svetainės įkūrėju laikomas Vidmantas Nuolaida.

Internete visada buvo ir bus žmonės, kurie mano, kad gali padaryti geriau ir patraukliau vartotojui, todėl 2005 metais duris atveria antroji kūrybos svetainė - eKūryba.com.

Pradžia

Viskas būtų gerai, jei eKūryba nebūtų gimusi iš pykčio ar net pagiežos. Esminis asmuo šioje melodramoje - Ixaon. Taip, tai tas žmogus kuris sugalvojo įkurti eKūrybą, kaip “laisvą, demokratišką ir t.t.” svetainę, kuri būtų geresnė nei rašyk.lt. Ixaon buvo įžeistas rašyk.lt tvarkos, svetainės funkcionalumo ir požiūrio į kūrėjus, todėl nusprendė, kad jo ideologija daugeliui pasirodys priimtinesnė. Viskas būtų gerai, jei Ixaon būtų mokėjęs programuoti, tačiau jis to nemokėjo ir 2004 metais buvau pasamdymas sukurti pirmąją eKūrybos versiją. Veiksmas vyko 2004 metų pabaigoje, kai man tebuvo vos 15 metų, o aš tada dar visiškai nemokėjau programuoti - atsitiktinumas, kad aš buvau pasamdytas.

Kaip aš suprogramavau eKūrybą istorija nutyli, tačiau naujasis projektas sėkmingai startavo ir kova dėl šlovės su rašyk.lt prasidėjo. Nebūtų menininkai keisti žmonės, jei neprisigalvotų visokiausių „nesąmonių“ - eKūryba ir rašyk.lt kovojo žodžiais, o ne darbais. eKūrybos nariai „varė“ ant rašyk.lt, rašyk.lt neliko skolingi - tokie žaidimai vyksta jau 3 metus. Nesunku atspėti, kad projektas kuriamas visiškai svetainių kūrime nenusimanančių žmonių veikė labai prastai ir tikslas būti geriausiais taip ir niekada nebuvo ranka pasiekiamas - daug buvo šnekų, bet darbų taip ir nesimatė.

Ponas Vidmantas

Didžiausias eKūrybos priešas visada buvo, yra ir bus Vidmantas aka nuo. Įdomu yra tai, kad Vidmantas iš esmės nieko blogo nedarė: kartkartėmis savo tinklaraštyje pacituodavo keletą Ixaon minčių, užsiregistruodavo eKūryboje, kur buvo iš kart blokuojamas, ir pan. Tačiau Ixaon kaip tikras diktatorius gerai visiems eKūrybos nariams įskiepijo - Vidmantas yra blogis, prieš jį reikia kovoti. „Kova“ prieš Vidmantą buvo įsivaizduojama kaip kova prieš rašyk.lt, todėl kiekvienas Vidmanto veiksmas buvo sekamas, analizuojamas ir apsvarstomas - Ixaon sugebėjo Vidmantą padaryti eKūrybos priešu.

Nors aš jau nebeesu eKūrybos narys, tačiau net neabejoju, kad iki šiol šie žmonės Vidmantą laiko didžiausiu blogiu ir visais įmanomais būdais bando aplenkti rašyk.lt. Rašyk.lt atsiradus vartotojų apklausoms (balsavimams) eKūrybiečiai pradėjo rašyk.lt kaltinti „plagijavimu“ ir be galo didžiavosi, kad jie pirmieji panaudojo apklausų funkciją. Iš dalies negražu iš mano pusės atvirai juoktis iš eKūrybos, nes daugybę metų mes dirbome kartu, tačiau pats faktas, kad didžioji dalis žmonių net nebuvo matę Vidmanto ir vis kažką kūrė, parodo kokia apgailėtina ši kova tarp svetainių.

Ixaon už borto

Turbūt verta paminėti ir keletą absurdiškų istorijos momentų. Turbūt svarbiausias - Ixaon išmetimas iš eKūrybos jau be pradedančio skęsti laivo. Skęsti eKūryba pradėjo dėl to, kad Ixaon vis stipriau ir ryškiau imdavosi diktatoriaus vaidmens - vartotojų blokavimai be aiškios priežasties, cenzūra ir t.t. Prieš metus visą administraciją taip supykdė Ixaon veiksmai ir požiūris į svetainę, kad sukaupę visas jėgas jie išdrįso užblokuoti idėjinį eKūrybos vadą. Deja, Ixaon nesutiko keletą mėnesių pailsėti nuo eKūrybos ir pareikalavo būti ištrintas iš eKūrybos. Moderatoriai jo norą išpildė ir eKūryba liko be seno-gero vado, tačiau čia linksmybės tik prasideda.

Likę be Ixaon eKūrybiečiai pradėjo bijoti teismų(!!!) ir Ixaon pykčio protrūkių (Ixaon: „Tikiuosi, turite gerus advokatus ir dar geresnę asmens apsaugą.“), todėl buvo nuspręsta, kad eKūrybos vardo reikia atsisakyti ir taip nubraukti visus saitus su Ixaon. 2007 metų balandžio mėnesį eKūryba tapo ŽaliaŽolė.lt. Pavadinimo prasmės šį kartą neanalizuosiu, tačiau tada dėl jo kilo viena didžiausių nepasitenkinimo bangų, kuri turbūt tęsiasi iki šiol. Ixaon tikriausiai tyliai verkė, todėl pareikalavo gražinti jo „projektą“ teisėtam savininkui - jam, o jo laiškas atrodė taip (kalba netaisyta):

Krasutymasis - neracionalus ir niekam nenaudingas. Man nereikia tuščio hostingo ir vardo, autoriams nereikia migracijų ir visiems kartu nereikia dubliavimo bei potencialios trinties “ach tai jūs iš mūsų nukopijavote”. Toks mano požiūris.

Mano nuomone, įmanomi du sprendimo variantai:

Pirmas variantas: domeno valdymo duomenys po kurio laiko perduodami Juozui. Formaliai jį valdyt gali bet kas, realiai Juozas turės prisijungimą.

Sąlygos labai paprastos: aš grįžtu į ekurybą diktatoriaus teisėmis. Tai yra - man atstatomos visos teisės ir privilegijos, kurios buvo iki “atostogų”. neriboti įgaliojimai man suteikiami 8 metams, po to lai autoriai sprendžia ar aš vertas jų pasitikėjimo, ar ne. Jeigu ne -susikrausiu daiktus ir išeisiu. Antra sąlyga - aurimo, melisos, ramunės, trumpų_kojų pasitraukimas iš svetainės. Su šiais piliečiais bendro darbo vistiek nebus: nei jie galės su manim dirbti, anei aš su jais.

Antras variantas: domeno valdymo duomenys perduodami Juozui mainais į tam tikrą materialinę kompensaciją. Domeno “ekuryba.com” rinkos kaina - mažiausia, kaip mane patikino žinantys žmonės - yra 10.000 litų.

Sąlygos labai paprastos: sumokate pinigus, perrašau bet kam (tam, ką nurodysite) domeną ir po 2 mėnesių domenas Jūsų. Darot ką norit.

Aišku, įmanomas ir variantas Nr.3 - totalinis apsipykimas, migravimas ir visiška makalybė, bet jis niekam nereikalingas ir maža to - žalingas visiems be išimties.

Dėl tų dviejų mėnesių - galiu klysti, tačiau berods, domeno perdavimass tiek trunka. Jei ne -sorry, tikrai nesu suinteresuotas meluoti.

Tokie mano pasiūlymai. Jei yra realus noras derėtis - galima derėtis. Jei iš ramunių-melisų-aurimų pusės yra noras nusileisti - ir aš galiu nusileisti. Tačiau tam reikia noro su manimi derėtis kaip lygus su lygiu, nevartojant ultimatumų.

Renesansas

Žinoma, niekas su Ixaon nesiderėjo ir nieko jam negražino, tačiau eKūrybos domenas buvo paliktas likimo valiai ir dabar jis priklauso velniai žino kam. ŽaliaŽolė.lt pradėjo stipriai stengtis susigrąžinti vartotojų pasitikėjimą ir toliau tęsti kovą su amžinu priešu - rašyk.lt. Atsinaujino dizainas, svetainės šūkiai, komanda ir t.t. - projektas ir vėl įgavo pagreitį, administracija ir vėl jautė malonumą dirbti ir projektas toliau sėkmingai tęsė savo veiklą.

Sekantis žingsnis buvo veiklos įteisinimas ir asociacijos įkūrimas (rašyk.lt - KitoKs). Nors nepelno siekianti asociacija buvo bandoma suformuoti dar Ixaon laikas, tačiau dėl Ixaon neveiksnumo ji taip niekad ir nepasirodė. Pasikeitus valdžiai žmonės rimtai pradėjo rūpintis asociacijos reikalais ir neilgai trukus buvo įkurta Vėjuotų kūrybos draugija. Nebūtų menininkai, jei nesugebėtų sukelti problemų paprasčiausiose vietose - valdžia susipyko ir asociacija atsiskyrė nuo svetainės. Praėjus kuriam laikui nauja asociacija visgi buvo įkurta ir dabar sėkmingai gyvuoja.

Išvados

Nežinau ar ką praleidau, bet tokia yra 3 metų trukmės eKūrybos istorija su pačiais įdomiausias faktais. Dirbti prie internetinio projekto kartu su menininkais yra nepakartojamas pojūtis ir patirtis, nes elementarūs dalykai virsta problemomis, o pykčiai tarp žmonių tampa kasdieniniu reiškiniu. Turbūt vos vienas kitas iš jūsų esate girdėjęs apie šias svetaines ir tuo labiau - apie jų santykius. Tikiuosi jums patiko, bet ar esate girdėję panašių istorijų Lietuvoje?

  1. Neišbaigta funkcija - niekinė funkcija, tam priklauso ir 7-a taisyklė
  2. Jums to nereikia todėl, kad tai jūs matėte konkurentų svetainėje, tuo taip pat įsitikinsite 10-oje taisyklėje
  3. Turinio valdymo sistema galite naudotis! Svetainė nebūtinai turi būti neatnaujinama mėnesį ar ilgiau, geriau mažiau, bet veikiančio (1 - taisyklė)
  4. Svetainė - ne tik kodas ir dizainas, bet ir turinys, todėl 2-oje taisyklėje minimi priedai jums tikrai nėra svarbūs
  5. Jums nereikia svetainės vien tik dėl to, kad „visi jas turi“ - svetainė turi turėti tikslinė auditoriją ir tikslą, o svarbiausia - 4 taisyklė
  6. Geriau sumokėkite tiems, kas žino kas kur ir kaip, nes „skūpas moka du kartus“ (liaudiška patarlė), žinoma nepamirškite ir 3-os taisyklės
  7. Reklamos kiekis nelygus nešamam pelnui, jis gali būti pasiekiamas ir kitaip, taigi dar kartą įvertinkite 5-ą taisyklę
  8. Google neranda jūsų svetainės ne dėl to, kad blogi programuotojai, o dėl to, kad ji niekam nežinoma, neįdomi ir t.t., be to ir čia 4-a taisyklė labai daug ką nulemia
  9. beta žodelis prie logotipo nesuteikia jums teisės palikti klaidas, taip pat ir 1-oji taisyklė čia vėlgi svarbi
  10. Svetainės neturi rėmų - atraskite ką nors savo, bet nepamirškite 6-osios taisyklės

Manau pats laikas išbandyti kažką naujo ir nematyto - šiam blogui pabandysiu suteikti daugiau dinamiškumo vis įvairesnėmis formomis ir straipsnių pateikimo būdais. Įvertinkite!

Robotas

Vakar pradėjome pažintį su vartotojų sekimu internete. Kol kas vis dar neprieisime prie konkrečių kodo pavyzdžių, nes iki galo visko neišsiaiškinus kodas gali likti neaiškus, o jei jau aš juo noriu pasidalinti su kitais, tai tegu jis turės subjektyviai padorų pagrindimą ir paaiškinimą. Šiandien plačiau nagrinėsime svetainės veiksmų saugojimą ir reitingavimą - vis dar formuosime mūsų duomenų struktūrą, kurią vėliau bus galima efektyviai panaudoti vartotojo pomėgių identifikavimui. Taip pat norėčiau nuraminti visus skaitytojus, kad tokios sistemos dažniausiai kuriamos ne kenkti vartotojams, o svetainėms suteikti interaktyvumo ir vartotojo naršymą padaryti kuo labiau naudingą jam pačiam.

Jei robotą jau apsibrėžėme kaip visiškai nuo konkrečios svetainės atskirtą servisą, tai kaip suderinsime jų veiksmus? Mano pasiūlymas ir pasirinkimas - naudoti svetainių profilius arba kitaip aprašus. Aprašas yra naudingas tuo, kad vienas robotas galės dirbti su keliomis svetainėmis vienu metu, taip pat bus galima lengvai naudoti kelių svetainių sukauptus duomenis, kas automatiškai padidina efektyvumą. Iš esmės aprašas gali būti suformuotas labai įvairiais būdais, tačiau paprasčiausia jį padaryti hierarchinės duomenų struktūros principu arba tiesiog elementariu n-mačiu masyvu. Šiame įraše aprašymą mes naudosime svetainės veiksmų reitingavimui, o tolesnėse dalyse jį praplėsime taip, kad jis galėtų jungti svetaines ir pan.

Vakar nagrinėjome vieną elektroninės parduotuvės nuorodą, todėl ir šį kartą likime prie tos pačios parduotuvės. Paprasčiausia ir efektyviausia yra apsirašyti tik tas svetainės vietas, kurios yra realiai naudingos analizuoti - tai prekių katalogas ir prekės. Pagalbos tekstai, užsakymo apmokėjimas ir panašūs puslapiai yra neverti analizės, nes šie veiksmai nenurodo pirkėjo pomėgių ir interesų. O analizuodami vartotojo veiksmus prekių kataloge ir konkrečiose prekėse mes galime gana nesunkiai nustatyti žmogaus mėgstamas prekes ir net jį dominantį kainų spektrą ar pan. Taigi mūsų testinėje parduotuvėje verta sukurti visų esančių kategorijų ir kainų grupių sąrašus ir juos patalpinti į svetainės aprašą roboto sistemoje.

Aprašo naudojimas mums padės susikurti jau anksčiau minėtą svetainės vietos objekto aprašą. Kaip tai padaroma? Susiejant vartotojo naršomą nuorodą ar atliekamą veiksmą su aprašo dalimis arba tiesiog sudėliojant žymas (angl. tags). Nuorodą http://www.manoparduotuve.lt/index.php?action=category&cat_id=41242 pažymime kaip „kategorija.41242“, o http://www.manoparduotuve.lt/index.php?action=product&cat_id=143 - su „kaina.>100“ ir „kategorija.43565“ žymėmis. Matome, kad antroji nuoroda savyje talpina ne tik produkto informaciją, bet ir loginį sąryšį su kategorija. Mums toks susižymėjimas naudingas tuo, kad norėdami nuspręsti kokio tipo prekės patinka vartotojui mes žiūrėsime ne į lankytas kategorijas, o į visus veiksmus, kurie turi kategorijų žymas.

Toks požymių žymėjimas yra šiek tiek neoptimalus - juk vienas požymis yra vertingesnis už kitą. Siekdami įvesti šiek tiek tvarkos ir efektyvumo, mes suteiksime sąryšiui „svorio“ vertę - kuo didesnė svorio reikšmė, tuo šis sąryšis yra vertingesnis. Vartotojui peržiūrint prekę kategorija yra svarbi, tačiau ne tokia svarbi kaip pati prekės informacija, todėl kategorijos žymai suteikime mažesnę „svorio“ reikšmę nei prekės kainos požymiui. Paprasčiausia „svoriui“ naudoti reikšmes nuo 0 iki 1, kur 1 žymėtų maksimalų atitikimą, o 0 - visišką neatitikimą (nors 0 mes niekada nenaudosime, nes toks požymis yra vertingas tiek pat, kiek ir požymio nebuvimas). Žinoma, tokiam žymėjimui reikia nusistatyti savo vertas įvertinus kiekvieno požymio svarbą jūsų svetainei - laisvė jūsų vaizduotei.

Deja, bet ir požymių „svorio“ pridėjimas nėra efektyvus, nes vienos aplankytos puslapio vietos yra svarbesnės už kitas - nupirkta prekė pasako žymiai daugiau informacijos apie vartotoją, nei jo naršymas. Naršoma yra daug, o nusiperkama vis tiek tik tai, kas iš tikrųjų domina. Todėl svetainės aprašyme sukursime ir specialias konstantas žyminčias svetainės vietų vertę - prekės peržiūrėjimas vertinamas mažiau nei prekės įsidėjimas į krepšelį, kuris tuo tarpu yra vertinamas mažiau nei prekės įsigijimas - tas pats požymis bus skirtingų „svorių“. Akivaizdu, kad atsiranda gana daug niuansų, nes reikia iš anksto numatyti kas yra vertinga, o kas yra ne, tačiau visus veiksmus žymint vienodai bus sunkiau atsirinkti, kurie yra naudingi, o kurie - ne.

Tačiau vertėtų nepamiršti, kad teisingas išvadas galime padaryti tik surinkę daug (labai daug) duomenų, taigi jei vartotojas aplanko vos kelis puslapius per dieną, tai teisingai nuspėti jo norus bus pernelyg sudėtinga. Kaip duomenis apdoroti neprarandant efektyvumo? Būtina nusistatyti ribą, ties kuria vartotojo veikla svetainėje gali būti efektyviai apdorojama. Ribai skaičiuoti mums pravers ir anksčiau apibrėžtas „svoris“ - sudėkime visus vartotojo veiklos svorius ir jei gautoji reikšmė yra didesnė arba lygi nustatytajai - galime pradėti analizę. Kadangi kai kurie veiksmai turės kelis požymis, tai ir jų turima didesnė informacija bus automatiškai įvertinama - juk kiekvienas požymis turės po „svorį“, kuriuos sudėjus gausime didesnę vertę, nei kad vieną požymį teturintis veiksmas.

Šiame straipsnyje pradėjome analizuoti jau nebe nuorodas, o vartotojo veiksmus - mūsų robotas žymėsis ne nuorodas, kurias aplanko vartotojas, o veiksmus kuriuos jis atlieka - peržiūri prekę, ją įsigyja ir t.t. Tokia informacija yra žymiai naudingesnė ir plačiau panaudojama nes kartu su „svorio“ koeficientais ji aprašo veiksmus, kuriuos atlieka vartotojas ir jų loginę reikšmę nustatant vartotojo poreikius. Tolesniuose įrašuose pabandysime sudaryti keletą pavyzdinių duomenų grupių ir atlikti jų analizę, o užbaigsiu pažymėdamas, kad ši straipsnių serija yra daugiau teorino pobūdžio ir aprašytas būdas tikriausiai nebus pats efektyviausias.

Robotas

Kadangi programuoju elektroninę parduotuvę, tai be abejo mano tikslas yra užtikrinti kuo didesnę apyvartą. Vienas įdomiausių ir mistiškiausių būdų yra svetainės interaktyvumo sukūrimas - kaip priversti svetainę reaguoti į vartotojo pomėgius ir siūlyti jam tik tai, kas jam tikėtina, kad patinka? į šį klausimą atsakyti nėra lengva ir tai vis dar labai retai naudojama technologija ypač Lietuvoje, tačiau aš jums pabandysiu papasakoti kaip aš esu suplanavęs vartotojų sekimą (jis dar nėra padarytas, kol kas jį brandinu teoriniame lygmenyje) ir kaip jį gali pabandyti pasidaryti kiekvienas. Šį straipsnį suskaidžiau į keletą dalių, nes vienu ypu viską aprėpti gana sudėtinga - viename įraše apžvelgsiu vis kitą aspektą, kol paskutiniame straipsnyje prieisiu prie konkrečių veikiančių pavyzdžių.

Kas yra vartotojų sekimas? Labai plati frazė, tačiau paprasčiausiai tai suvokti kaip procesą, kurio metu visi vartotojo veiksmai yra išsaugomi ir pagal juos daromos išvados, bei siekiama įtikti vartotojui. Vartotojų seklį pavadinkime robotu, tai leis aiškiau suvokti jo paskirtį - nepastebimai sekti vartotoją ir daryti išvadas vadovaujantis kompiuterio protu. Nors robotas gali skambėti šiek tiek atgrasančiai, tačiau juk pats sekimas ir yra toks procesas - gana iškrypėliškas noras stebėti žmones jiems apie tai nežinant.Be to, robotai tam netgi labiau tinka, nes žmonės jaučiasi laisviau, kai juos stebi ne žmonės - juk prieš kompiuterį žmonės daro viską be jokių kompleksų net nežinodami, kad jie tikrai yra stebimi.

Pirmiausia reikia suvokti, kad mūsų robotas turi veikti visiškai atskirai nuo bet kokios svetainės - jis neturi būti įprogramuotas į svetainę ar elektroninę parduotuvę, nes roboto veikla turi priklausyti tik nuo vartotojo naršymo kitimų ir jo atliekamų veiksmų. Tuo labiau šie dalykai negali dalintis viena duomenų baze, nes ne vien skirtingųjų dalių apkrova bus labai skirtinga, bet ir bus prarandama loginė tvarka. Paprasčiausia tai suvokti kaip du atskirus serverius iš kurių vienas atsakingas už svetainės turinio generavimą, o kitas - už vartotojo veiksmų sekimą. Bet koks roboto tiesioginis surišimas su svetaine nebus naudingas - robotas neturi veikti priklausomai nuo svetainės vidinės struktūros, o sprendimai neturi būti priimami pagal vidinę struktūra - visas procesas turi vykti tik bendraujant tarpusavyje.

Kadangi tokiose kalbose kaip PHP nėra tokio dalyko kaip nuolatos veikiantys serveriai, todėl robotas tebūnie būna servisas. Servisas apibūdins robotą kaip loginį daiktą, kuris pasiekiamas specialiu adresu ir bendrauja jo nustatytomis taisyklėmis. Bendravimui aš rinkčiausi vieną iš XML pagrindų veikiančių protokolų (XMLRPC, SOAP ar pan.), nes jų užklausas ir atsakymus galima labai lengvai apdoroti bet kurioje kalboje ir aplinkoje, be to jie yra lengvai tvarkomi, nes siunčiami pranešimai yra suprantami net žmogui. Plačiau bendravimo nenagrinėsiu nes tai kol kas nėra lemiamas dalykas. Pasiruošimo darbai beveik baigti - dabar atėjo laikas pasižiūrėti kaip patogiai ir gerai dirbti su duomenis.

Jei svetainė suprogramuota teisingai tai ji naudoja Front Controller komponentą, kuris apdoroja visas vartotojo užklausas. Centralizuotas užklausų apdorojimas leidžia lengviau dirbti su vartotojo sekimu, nes darbą su robotu užtenka apsirašyti vos vienoje vietoje ir jis gali būti lengviau kontroliuojamas. Kaip sekti vartotojo veiksmus internete? Išsaugant vartotojo įvedamus duomenis GET ir POST tipuose. Tai galima padaryti labai įvairiais būdais, tačiau ne visi jie yra tinkami. Čia iškart galiu perspėti, kad tokių būdų galima surasti labai įvairių, tačiau aprašysiu tuos, kuriuos mano manymu yra labiausiai tikėtina ir naudinga pasirinkti.

Paprasčiausias būdas yra tiesiog saugoti vartotojo ID, aplankytą nuorodą ir aplankymo datą. Deja, bet tai yra gana prastas sprendimas, nes norint iš išsaugotų duomenų ištraukti bent šiek tiek informacijos juos reikės gana ilgai analizuoti - nuoroda nėra informacijos objektas, nes ją dar reikia paversti į informacijos atitikmenį. Tarkime turime nuorodą http://www.manoparduotuve.lt/index.php?action=category&cat_id=41242, kuri iš pirmo žvilgsnio atrodo aiški, tačiau yra visiškai netinkama analizei, nes neišskaidžius jos į atitinkamus komponentus (['action' => category, 'category_id' => 41242] bus neįmanoma padaryti išvadas apie vartotojo poreikius.

Žymiai geresnis būdas yra saugoti konkretų svetainės vietos atitikmenį arba tiesiog svetainės objekto aprašymą. Duomenų struktūra automatiškai tampa sudėtingesnė, tačiau darbas su jais be galo supaprastėja. Tarkime turime tą pačią nuorodą, kurią minėjau anksčiau, tačiau vietoje jos išsaugome informaciją “Pliušinių meškiukų kategorija” (programiškai tai be abejo būtų aprašyta kaip kažkokia duomenų struktūra ar pan.). Dabar jau net nebereikia analizuoti išsaugotų duomenų - juos apdoroti galime tiesiogiai. Pačios duomenų struktūros irgi dar neaprašinėsiu nes be pilno programos kodo ji būtų bevertė, tačiau galite įsivaizduoti, kad saugoma ne nuoroda, o kompiuteriui suprantamu stiliumi aprašytas svetainės vietos aprašymas.

Šį kartą nusistatėme pradines ribas - loginis roboto atskyrimas nuo svetainės ir duomenų saugojimo būdai. Nors tai dar tik labai mažai informacijos, tačiau to turėtų užtekti susidaryti pradinei nuomonei apie sekimo procesą - tai nėra vien programavimas, o ir teorinis užduoties supratimas. Kaip jau minėjau - pats dar nespėjau visko iki galo įgyvendinti, bet tikriausiai jau kelių mėnesių bėgyje spėsiu išbandyti tokį dalyką realiai ir įsitikinti jo žadama nauda. O jūs ar neišsigandote, kai sužinojote jog internete jus stebi ne tik Google, bet ir kita galybė svetainių?

Kovas 17, 2008Blogeriai - bailiai!?

Bailiai

Artėjant blogerių ir interneto konferencijai BlogIn manau pats laikas panagrinėti ir pačią blogosferą. Jau iš antraštės tikriausiai supratote, kad nagrinėsiu ne iš teigiamos pusės. Nors mano blogerio karjera dar labai trumputė, tačiau visą laiką mane lydi tas pats - skaitytojai ir blogeriai yra bailiai! Kadangi jau turėjote įsižeisi ir pulti aiškinti, kad „ne, mes nesame bailiai“, tai šiuo straipsneliu aš įrodysiu, kad jūs tikrai esate bailiai ir ką reikėtų daryti su Lietuvos blogosfera, kad ji taptų įdomesnė ir patrauklesnė skaitytojui. Net neabejoju, kad jūsų požiūris gali labai smarkiai skirtis, tačiau manau, kad Lietuvos blogosfera šiuo metu yra ganėtinai nuobodi, todėl perspėju, kad šis įrašas gali skatinti nesantaiką.

Atsiverskite Blogeriai.net ir greitai peržvelkite ten esančius straipsnius, kiek iš jų jums atrodo geri, įdomūs ir verti skaitymo? Tikriausiai tai priklauso nuo žmogaus, bet mane dažniausiai sudomina tik kas dešimtas ar dar retesnis, o visus kitus tiesiog permetu akimis ir judu tolyn. Kodėl taip yra? Nes blogeriai labai dažnai rašo apie tai, kaip jiems šiandien kažkas nepasisekė, ką jie matė darbe, kaip sekasi jų augintiniui ir t.t. Bet ar tai įdomu skaityti? Galima tokį įrašą skaityti vieną ar du kartus į dieną, tačiau jei tokie įrašai kartojasi kasdien mėnesį, tai jau pradeda įgrysti. Man tai įgriso. Be abejo tinklaraštis yra asmeninis dalykas, kuris turėtų būti skirtas savo idėjoms, mintims ir išgyvenimams išreikšti, tačiau ar jis turi būti dienoraštis? Nemanau. Niekada nerašiau ir turbūt niekada nerašysiu apie tai, kaip man šiandien sekasi ar kokį gražų automobilį mačiau gatvėje, nes tai yra tiesiog bevertis skaitalas. Tikriausiai verta pažymėti, kad aš tinklaraštį laikau kaip puslapį skirta kitiems, o ne sau - sau aš galiu rašyti į storą sąsiuvinį ir slėpti jį stalčiuje. Kokia prasmė rašyti kitiems viešai, jei rašoma tiesiog sau, o gal net niekam? Jokios prasmės, nes tokie įrašai tiesiog yra neįdomūs. Sakote įdomūs? Negali būt… Kiek įrašų atsimenate iš vakar dienos, savaitės ar net mėnesio? Sunkus klausimas, nes tikriausiai nepamenate nieko arba vos kelis straipsnius, tačiau juk jų buvo šimtai! Perskaityti perskaitėte, bet jie jums tiesiog neįstrigo galvoje savo neįdomumu ir pilkumu - čia ir yra problema.

Kodėl blogosferoje nėra straipsnių apie prostituciją, homoseksualus ar narkotikus? Atsakymo dar nepateiksiu, nes tai reikalauja šiek tiek paaiškinimų. Taip, tai galbūt nėra temos, kurias yra tinkama nagrinėti viešumoje, bet tai juk yra įdomu! Juk žurnale mes neieškome žurnalistų nuotykių restorane aprašymų - mes ieškome kažko naujo, įdomaus ir netikėto. Kiek blogerių jau kalbėjo apie norą būti palaikytais žurnalistais? Ne vienas. Grįžtant prie klausimo apie blogosferos kuklumą, atsakymas yra labai paprastas - blogosfera bijo. Bijo rašyti kitaip, bijo išsakyti savo ne visada visiems priimtiną nuomonę, nes tai juk gali iššaukti neigiamus komentarus! Oho kokia nelaimė sulaukti neigiamo komentaro, juk geriau kiekvieną dieną rašyti visiškai pilkus straipsnius, popsą ir tik džiaugtis kylančiu prenumeratorių skaičiumi. O kodėl žmonės prenumeruoja tokią nuobodybę - nes jie taip pat bijo. Bijo pasakyti, kad jie nori kažko naujo, įdomaus, nes galbūt jie net nepastebi, kad yra tinklaraščių, kurie rašo ne apie naujas programų versijas ar mašinų numerius. Net jei įrašas sulaukia neigiamų komentarų, tai reiškia, kad jis yra kažko vertas - nekomentuotas įrašas yra bevertis. Aš dar iki šiol negaliu patikėti, kad žmonės prenumeruoja ir skaito bet ką, net nežiūrėdami ar jiems tai tikrai įdomu - labiausiai tikėtina, kad žmonės mėgsta popsą ir jiems tiesiog „patogiau“ skaityti tai, kas jų neverčia pagalvoti ir susimąstyti.

Grįžtant prie BlogIn konferencijos - aš ir vėl matau tą pačią nuobodybę apie kurią ką tik rašiau. Pranešimai vos ne apie nieką ir vos tik keletas tikrai įdomių pranešėjų, kurių ir tinklaraščiai pasižymi skaitytojo sudominimu. Justinas Beinorius kalbės apie tai, kas yra tiesiog nepastebima blogosferoje - videoblogai. Tai dar viena niša, kuri yra tiesiog neišnaudota ir tikrai būtų įdomi mūsų skaitytojams. O ką darys kiti? Omintel reklamuosis, Gaumina reklamuosis ir pan. Neįdomu! Labai gerai atsimenu vieną Linus Torvalds kalbą, kurioje jis kalbą pradėjo nuo to, kad išvadino dalį auditorijos kvailiais ir pasiūlė jiems tiesiog išeiti. Kaip jis taip galėjo? Labai paprastai, nes niekas neišėjo, o tuo labiau neįsižeidė dėl to, kad Linus tiesiog sugebėjo gana padoriai argumentuoti savo išsišokimą ir dar puikiai papasakoti savo temą. Ko galima tikėtis konferencijoje? Pamatysime, tačiau kažkodėl netikiu, kad atsiras daug pranešėjų, kuriu sukurs efektą, nustebins ir sudomins. Tikriausiai jau spėjote pagalvoti, kad „Juozai, jei jau toks protingas, tai pats eik ir šnekėk“, tačiau tikriausiai atsisakyčiau - kol kas dar nesu užtikrintas savo gebėjimu šnekėti auditorijai. Galbūt po kelių metų išdrįsiu, tačiau dabar mieliau jau pakomentuosiu kitus - jei neturime ką pasakyti ar tiesiog nemokame to atlikti teisingai, tai gal geriau ir neiti?

Nepykite jei manote ne taip ar jums tiesiog taip patinka rašyti - mano tikslas nėra jus sumaišyti su žemėmis. Mano tikslas yra iššaukti diskusiją ir sulaukti jūsų nuomonės, nes mes turime judėti į priekį. Aš per dieną perskaitau šimtus įvairiausių straipsnių, tačiau visuose juose ieškau žmonių nuomonės, minčių, prieštaringumo ir net kvailos neteisybės. Gal čia veikia ta pati 1% gerų tinklaraščių taisyklė, tačiau juk šį skaičių galima tikrai nesunkiai pakelti ir turėti ne vieną prieštaringą, bet įdomų tinklaraštį. Rašykime įdomiai, kartais keistai ir neteisingai - svarbiausia rašykime taip, kad žmonės jaustų įrašo vertę ir gylį, o ne tik gabalėlį bevertės informacijos. Nejaugi jums įdomu skaityti pilkus straipsnius - padiskutuokime komentaruose.

Žaidimas

Nėra didelė paslaptis, kad aš esu įmonės UAB „Barzda“ akcininkas ir darbuotojas, taigi jau pats laikas papasakoti kaip mes iš mėgėjiškų pomėgių sukūrėme rimtą įmonę. Nors skaičiuojame tik pirmuosius veiklos mėnesius - kol kas verslas man vis dar panašus į šiokį tokį žaidimą. Jau gana ilgą laiką dirbame ties elektroninio knygyno projektu, apie kurį jau esu daugybę kartų rašęs. Projektas bus jau gana greitai baigtas, tačiau šį kartą papasakosiu ne apie jį - šiandien šnekėsiu apie programinę įrangą, kurią mes naudojame/naudosime darbui su klientais ir projektais ir kaip mes siekiame savo užsibrėžtų tikslų.

Mūsų įmonės išskirtinis bruožas - neturime ofiso. Žinoma, tai yra neigiamas bruožas, nes koordinuoti įmonės veiklą tenka telefonu ar elektroniniu paštu, tačiau tai nėra taip blogai kaip gali pasirodyti. Tai nėra blogai, nes mūsų komanda yra labai aiškiai pasiskirsčiusi darbais - aš programuoju, kažkas užsiima pardavimais ir t.t. Toks darbų pasiskirstymas ir kol kas mažas darbuotojų skaičius gelbsti mus nuo papildomų išlaidų ofiso patalpoms, kurios kol kas mus ir taip smarkiai riboja. Ofiso nėra, visi žmonės dirba namuose, todėl labai svarbu, kad visi darbuotojai galėtų dirbti nuotoliniu būdu - internetu. Darbas internetu yra greitas tik tuo atveju, kai internetu yra pasiekiami visi įmonės įrankiai - sąskaitų, darbų paskirstymo (arba TODO) ir bendravimo su klientais sistemos. Pradėti dirbti be jų būtų sudėtinga, nes būtų labai sunku sukontroliuoti įmonės finansus ir atliekamus darbus.

Įdomiausia, kad beveik visus šiuos įrankius mes pasidarėme patys: sąskaitų ir darbų paskirstymo sistemą susiprogramavome, o bendravimui su klientais panaudojome nemokamą įrankį ir jį pritaikėme savo poreikiams. Be abejo, įmonė turi turėti bent vieną gerą programuotoją, kad tokią infrastruktūrą susikurtų pati, tačiau tikrai neverta švaistyti didžiulių sumų super galingoms ir funkcionalioms sistemoms - pradžioje užtenka gana elementarių įrankių, o visą kapitalą galima panaudoti ir svarbesniems dalykams. Tikrai nėra prasmės investuoti į sistemas jei nėra jokio garanto, kad jos pasiteisins - juk darbuotojai turi ir matyti prasmę jomis naudotis. Mes pasidarėme šaunias sistemas ir esame be galo patenkinti, nes dar rimtai nepradėję didelių komercinių projektų jau turime puikią programinės įrangos infrastruktūrą tolimesniems darbams, o ką jau kalbėti apie tai, kad mums tai beveik nekainavo.

Turbūt svarbiausia iš visų sistemų yra sąskaitų sistema. Ją mes pasidarėme gana apgalvotai, nes iš anksto numatėme, kad turėsime ne vieną projektą ir jiems būtinai reikės išrašinėti sąskaitas. Dėl šios priežasties mūsų sąskaitų sistema gali dirbti su neribotu kiekiu projektų vienu metu (užklausų kiekis neturi būti pernelyg didelis), nes yra sukurtas XML-RPC tunelis, kuriuo prie jos gali prisijungti svetainės ir išrašyti, bei kitaip dirbti su sąskaitomis. Be abejo, tunelis yra viešai nepastebimas ir maksimaliai apsaugotas, todėl niekas iš išorės tikriausiai net nesuras kur jis yra - sąskaitos yra tai, kas turėtų būti prieinama tik tiems kas ją išrašė ir tam kam išrašė. Svarbu ir tai, kad tinkamai pasidarius sąskaitų sistemą žymiai supaprastėja ir buhalterinis darbas, nes daugelis veiksmų jau yra optimizuota ir paruošta naudoti. Be to, juk sąskaitos, tai pagrindinė įmonės „valiuta“.

Galimybė iš bet kur dirbti yra tiesiog nuostabi, nes mes nesame prirakinti prie savo darbo vietos, o įgavę šiokį tokį finansinį stabilumą galėsime nesunkiai migruoti į dar rimtesnius įrankius. Žinoma, galima labai daug dalykų palikti tvarkyti žmonėms, bet kam tai daryti jei tam yra kompiuteriai? Mūsų elektroninis knygynas daugybę sprendimų ir veiksmų atliks pats atsižvelgdamas į pirkėjo veiksmus ir jo norus, o mums nereikės įsitempus stebėti ateinančius užsakymus ir skubėti kažką iš kart keisti - viskas vyks dinamiškai ir automatizuotai, todėl įdėjus dar šiek tiek darbo (pradžioje ne viską įjungsime) sistemą galėsime palikti veikti visiškai autonomiškai. Gana keista, kad tokį stambų ir gana sudėtingą projektą mes darome vien nuotoliniu būdu, tačiau tai tik įrodo, kad ir turint mažą pradinį kapitalą galima pasiekti puikių rezultatų.

Šiuo straipsniu aš tikrai neskatinu jūsų pulti kurti įmones, tačiau jei apie tai galvojate, tai nemanykite, kad įmonei būtinas didelis pradinis kapitalas. Taip, pradinis finansinis pagrindas tikrai suteikia laisvės ir jėgos dirbti, tačiau ir neturint didelių pinigų ar tik pereinant nuo mėgėjiškumo iki sąlyginio profesionalumo galima pasiekti tikrai daug. Jei norite, mus galite laikyti kaip „pavyzdį“ - dirbame nuotoliniu būdu, patys pasidarome visus reikalingus įrankius ir puikiai plėtojame pradėtus darbus, ko dar reikia? Žinoma, turėdami didesnį kapitalą darbus galbūt jau būtume baigę, tačiau kuriant savo pirmąjį verslą tikrai įdomu viską išbandyti ir susidėlioti taip, kaip tau patinka. O svarbiausia yra turėti tikslą - nekurkite įmonės tiksliai nežinodami ko siekiate, nes plaukimas pasroviui versle retai būna sėkmingas.

Nežinau ar man pavyko padaryti kažkokią įtaką ir parodyti, kad verslui pradėti nebūtinai reikia daug pinigų. Mano manymu, bet koks informatikos studentas su ekonomikos studento pagalba gali gana sėkmingai susikurti IT įmonės pagrindą. Be abejo, pelnas dar nėra garantuotas, tačiau turint gerus specialistus tikrai galima išsilaikyti rinkoje ir net pasiekti kažko daugiau. Jei jūsų svajonė dirbti sau, kodėl nepabandyti? Mes bandome ir gal net žaidžiame, bet esame tuo patenkinti, nes kol kas viskas juda labai teisinga linkme ir jau kažkur toli toli žybsi sėkmės švieselė. Live the dream sušunku ir linkiu sėkmės, svarbiausia nenustokite tikėję!

Inbox.lt

Vakar per televizorių pamačiau jau senai matytą reiškinį - interneto svetainės reklamą. Reklama mane, lietuvį, kvietė apsilankyti naujoje pašto tarnyboje Inbox.lt, kuri siūlo net 10 GB vietos. Kadangi šio portalo reklamą mačiau ir anksčiau, tai nesuabejojau, kad tai - puikus, naujas produktas, nes tik retas ir dažnai tik stiprus portalas randa lėšų aktyviai reklamuotis. Visgi aš nenagrinėsiu reklamos efektyvumo, nes bent jau mane ji sudomino, o pasistengsiu aprašyti ką gero galima rasti šiame portale ir ką jis siūlo daugiau. Be abejo aš esu visiškai nesusijęs su šiuo portalu, taigi mano komentarai bus subjektyvūs ir kilę iš naudojimosi paslauga.

10 GB vietos - kam jos reikia?

Pasak šio portalo reklamos, lietuviai rašo labai daug laiškų, taigi jiems būtinai reikia daug vietos laiškams. Gmail.com man siūlo vos 6.5 GB, o kiti paslaugų tiekėjai turbūt dar mažiau, taigi šis portalas šiuo atžvilgiu juos tikrai perspjauna. Tačiau kam reikia tiek vietos? Mano manymu, niekam. Niekam, nes nežinau tokio žmogaus, kuris sugebėtų užpildyti tokią vietą laiškais. Be abejo galima pašte laikyti nuotraukas, dokumentus (iki 40 mb), tačiau tai daro retas, taigi pabandykime apskaičiuoti kiek laiškų talpintų Inbox.lt pašto dėžutė.

Šiuo metu mano Gmail.com talpina 2378 laiškus, kurie užima 176 mb.
Į dabar siūlomą 6486 mb vietą sutalpinčiau 87634 laiškus.
Į Inbox.lt siūlomą vietą sutalpinčiau 135113 laiškus.

Galiu drąsiai teigti, kad tokį kiekį laiškų sukaupti reikia tikriausiai daugybės metų ar net viso gyvenimo, nes jei per dieną gautumėte po 10 vertingų laiškų (tų, kurių neištrintumėte) tai 10 GB disko talpos užtektų 37 metams. Įspūdingi skaičiai, tačiau jie yra realūs - jei paštas naudojamas teisingiems dalykams, tai 10 GB yra pakankamas dydis viso gyvenimo laiškams.

Kodėl tiekėjai siūlo 10 GB talpos? Nes žino, jog labai retas vartotojas tiek išnaudos. Žinoma, gali atsirasti vartotojų, kurie pasieks tokį skaičių, tačiau jų bus tiek mažai, kad portalo prižiūrėtojams nereikės rūpintis nesibaigiančiais kompiuterių resursais šimtatūkstantinėms pašto dėžutėms. Taigi galime daryti labai paprastą ir akivaizdžią išvadą - Inbox.lt siūlo skaičius, o ne realią naudą. Galbūt 10-čia GB jūs galėsite pasigirti draugams, bet vis tiek išnaudosite vos kelis procentus.

Funkcionalumas

Gmail.com man patinka, nes šią pašto tarnybą galiu naudoti pašto programoje, telefone ar naršyklėje. Likau be galo nustebęs, nes Inbox.lt pašto dėžutę galima pasiekti taip pat iš visur. Gaila, kad Inbox.lt WAP vartotojo sąsaja yra neišversta, tai ja naudotis pavyks tik anglakalbiams. Labai tikiuosi, kad vartotojo sąsaja bus išversta, nes tai tik padės šiam produktui plisti tarp Lietuvos interneto vartotojų. Kita įdomi ir keista savybė - pokalbių kambariai WAP’e. Nežinau kokia jų prasmė, nes man bandant šią sistemą jie buvo tušti, tačiau šiai funkcijai tikrai trūksta išbaigtumo - jei pokalbiai funkcionuotų ir interneto naršyklėje, tai Inbox.lt tikrai galėtų bandyti atstoti Gmail.com su Gtalk.

Naršykle pasiekiama pašto programa veikia Horde pagrindu - tai ganėtinai keistas sprendimas. Nežinau kiek Horde yra modifikuotas, tačiau man pasirodė, kad be apkarpytų funkcijų ir pakeisto stiliaus jis niekuo nesiskiria. Žinoma, pasiekti tokį pašto programos lygi kaip Gmail.com yra labai sudėtinga, tačiau pasinaudojimas atvirojo kodo sprendimu man yra ganėtinai keistas, nes tai parodo ribotą norą sukurti gerą sistemą. Jau esamų produktų naudojimas, kuria kitą produktą, o visko darymas patiems yra bendros sistemos kūrimas. Nenoriu vertinti ar peikti sistemos kūrėjų, bet mano manymu pašto klientą galima buvo sukurti geriau.

Kadangi aš esu nemažai dirbęs su Horde sistema dar besinaudodamas pačio talpinamu pašto serveriu, tai esu ją išbandęs visais įmanomais aspektais. Inbox.lt siūloma jos versija yra tik likučiai to, ką siūlo Horde. Laiškus siųsti, gauti ir prižiūrėti galėsite, tačiau neturėsite jokių konfigūravimo galimybių, kurias teikia Horde. Vienintelė galimybė nustatymų meniu - pakeisti slaptažodį. Be to, dabar aš jau esu pripratęs prie Gmail.com siūlomos gijų sistemos ir Quick-reply tipo atsakymų į laiškus, tai Inbox.lt veikimas man pasirodė visiškai nepatogus. Kiekvienas mygtuko paspaudimas perkeldavo vis į naują langą, taigi toks paprastas darbas, kaip atsakymo parašymas užtrukdavo kone dvigubai ilgiau.

„Pokštąs“ ir valiutų kursai

Inbox.lt siūlo daugybę kitų funkcijų be pašto - darbo skelbimai, žaidimai, valiutų kursai, pažintys, orai ir “pokštąs“. Apie pokštąs dar pakalbėsime, o dabar pasižiūrėkime į kitas programėles. Sunku kitas funkcijas (darbo funkcija veda į CvOnline, taigi šio portalo nenagrinėsime) vadinti programomis ar net portalais, nes tai tiesiog elementarūs puslapiai su labai ribotomis galimybėmis. Taigi panagrinėkime viską iš eilės:

  • Žaidimai. Krūva žaidimų ir jokios prasmės, o kuo jis geresnis už miniclip.com?
  • Valiutos. Valiutų kursas tarp žaidimų ir pažinčių? Tikrai bevertė funkcija, nes besinaudodamas bet kokia bankininkystės sistema galiu vietoje pasižiūrėti valiutų kursus, o bežaisdamas žaidimą to tikrai neprisireiksiu.
  • Pažintys. Ši funkcija pasirodė panaši į žaidimus, tik čia yra žmonių katalogas. Galbūt skamba žiauriai, bet šiame portale nelabai ką yra įveikti, nes be žinučių rašymo daugiau nieko ir nėra… We want one.lt features! (angl. mums riekia one.lt galimybių)
  • Orai. Orų prognozes žinoti naudinga, bet ar tam reikia atskiro portalo? Nemanau, nes šią informaciją galiu labai patogiai pasižiūrėti mažame kvadratėlyje delfi.lt ar alfa.lt žinių portale.
  • Pokštąs. Pavadinimo esmės niekaip nepavyko suprasti, galbūt jis kilo iš tariamosios nuosakos manąs, skrendąs? Šiaip šis portalas taip pat beveik bevertis - internetinių juokelių kratinys, kuris nėra nieko išsiskiriantis ir naudingas. Be to, niekaip nesupratau kodėl šio portalo dizainas yra visiškai skirtingas likusiems.

Matome, kad Inbox.lt siūlo nemažai funkcijų, tačiau jų nauda yra labai maža - neišbaigti, mažai funkcionalūs ir abejotinos vertės produktai. Gaila, kad į straipsnio galą taip išpeikiau Inbox.lt, tačiau tokie portalai, kurie talpina visas įmanomas funkcijas (Inbox.lt, jums trūksta YouTube.com atitikmens!) manęs nežavi - geriau tai būtų viena, tačiau maksimaliai gerai veikianti funkcija. Naiviai tikiuosi, kad laikui bėgant šios funkcijos bus išbaigtos, nes dabar jos atrodo ganėtinai prastai.

Išvados

Inbox.lt pašto funkcija yra tikrai verta dėmesio - daug vietos ir priėjimas prie laiškų iš visur. Nors šis portalas aktyviai reklamuojamas, tačiau realiai jis neturi nieko įspūdingo ir verto mesti jau naudojamus produktus. Linkiu sėkmės projekto kūrėjams, nes kol kas šis projektas atrodo neišbaigtas ir ne iki galo vertingas, nes vien funkcijų gausa nekuria patogumo ir svarbiausia naudingumo. Labai laukiu jūsų nuomonės apie šį produktą, o galbūt jūs jį jau spėjote pamėgti?

Konkursas

Šiandien matematikos mokytoja pasiūlė sudalyvauti tarptautiniame matematikos konkurse Matmintinis. Šis konkursas įdomus tuo, kad jame reikia įveikti ne sudėtingus uždavinius, o kuo greičiau atlikti elementariuosius matematinius veiksmus - sudėtį, atimtį ir pan. Kadangi aš matematikoje nutuokiu gana nemažai ir skaičiuoju tikrai sparčiai, tai kilo noras išbandyti - galbūt būtų pavykę laimėti… Tačiau nebūčiau aš Juozas, jei nepastebėčiau kaip prastai žmonės dirba - apie tai, kodėl šis konkursas yra tiesiog apgailėtinas parašysiu šiame įraše. Tikrai nesu nusistatęs prieš šio konkurso rengėjus ar pan., tačiau negalėjau neaprašyti šio konkurso prastumo, nes tikiu, kad kas nors padarys išvadas.

Šio konkurso organizatorių tikslas tikriausiai buvo skatinti informacinių technologijų naudojimą, nes pirmieji konkurso etapai vyksta internetu. Nors tai yra labai sveikintinas dalykas, bet norint konkursus organizuoti internetu būtinai reikia pasirūpinti tvarkinga sistema. Iš kodo sandaros ir naudojamų komentarų, bei vis išlendančių angliškų frazių galiu spėti, kad jį sukūrė viena kompanija, o naudoja visos šalys dalyvės. Kartais toks sprendimas pasiteisina, tačiau šiuo atveju jis tiesiog pražudė visą konkursą ir tik sugaišino dalyvių laiką, netrukus įsitikinsite kodėl. Pradėkime nuo to, kad registruojantis užtenka įvesti vardą, pavardę ir mokyklą, o visi kiti duomenis yra standartiniai (vartotojo vardas, slaptažodis ir t.t.). Beveik neabejoju, kad nėra jokio įvesto vardo ir pavardės tikrinimo proceso, nes tai padaryti būtų tikriausiai per sudėtinga. Be to, susikūrus vartotoją jis automatiškai patvirtinamas, taigi galima iškart pradėti spręsti. Tai išties patogu, bet labai nelogiška ir kvaila, nes nesunkiai galima dalyvauti įvairiausiais vardais (jei su savuoju nepavyko gerai pasirodyti) arba net nebūnant mokiniu (tą patikrinti iš vis neįmanoma). Žinoma internete sunku užtikrinti žmogaus identiteto unikalumą, tačiau jei jau buvo norima konkursą perkelti į internetą, tai reikėjo bendradarbiauti su mokyklomis ir automatiškai generuoti vartotojus visiems norintiems mokiniams. Taigi jau pirmasis žvilgsnis aiškiai parodo, kad konkurso dalyviai yra nekontroliuojami - konkursas jau čia praranda prasmę.

Toliau dar blogiau. Konkurso sprendimai vyksta įvedant teisingą atsakymą „skaičiuotuvu“ - kvailiau sugalvoti turbūt buvo sunkiai įmanoma. Vietoje to, kad būtų naudojamas paprastas teksto laukas, į kurį skaičiai būtų įvedami klaviatūra, naudojama virtuali skaičių klaviatūra. Nežinau kodėl organizatoriai naudoja tokį dalyką, tačiau tai yra be galo nepatogu, nes skaičiai klaviatūra gali būti įvesti ir paprasčiau, ir greičiau, o juk konkurso tikslas yra kuo greičiau ir kuo daugiau teisingai suskaičiuoti. Visgi šiaip ne taip sugebėjau priprasti (su nešiojamojo kompiuterio pele tai padaryti tikrai nėra lengva), tačiau pastebėjau labai įdomų dalyką - taškų skaičius yra skaičiuojamas vartotojo kompiuteryje ir be jokio patikrinimo išsiunčiamas į konkurso serverį. Peržvelgiau JavaScript kodą ir mane ištiko lengvas šokas - viskas padaryta be galo elementariai ir tikėtina, kad apeiti sistemą bus labai lengva. Per 5 min. išanalizavau kodą ir parengiau dviejų eilučių JavaScript programėlę, kuri automatiškai įrašo teisingą atsakymą ir nuspaudžia patvirtinimo mygtuką. Išbandžiau įvairiuose lygiuose ir režimuose - galiu surinkti bet kokį norimą skaičių taškų. Nenorėjau dar daugiau analizuoti kodą, nes net neabejoju, kad labai lengvai galima pakeisti ir galutinį taškų skaičių, net nelendant prie matematinių veiksmų atlikimo. Tikrai nesukčiavau norėdamas nugalėti, tačiau jei man tai pavyko padaryti taip paprastai, tai net neabejoju, kad bus dar ne vienas, kuris tai pastebės ir padarys save nugalėtoju.

Išvados paprastos - minėtasis konkursas yra tiesiog žlugęs. Galbūt tolesni jo etapai bus vykdomi jau nebe internetu, tačiau šiuo metu į tolesnį etapą gali patekti visi norintys ir net nemokantys matematikos - užtenka tik labai elementaraus triuko, kurio dėl visiems suprantamų priežasčių aš neatskleisiu. Neatskleisiu spragos, nes šis konkursas išvis bus surengtas be reikalo - kol mažai žmonių žino šį sukčiavimo būdą, tai rezultatai bus daug maž realūs. Aš iš pradžių galvojau dalyvauti, tačiau dabar nebematau prasmės - vistiek laimės tie, kurie sukčiaus, o taip dalyvauti nematau tiklso. Išvada paprasta - Matmintinis yra dėl apgailėtinos sistemos kokybės žlugęs konkursas. Keista, kai konkursai organizuojami taip atmestinai…

Vasaris 12, 2008Pirmasis milijonas

Milijonas

Ne, aš kol kas neuždirbau milijono, tačiau mūsų sukurtas reklamos tinklas jau milijoną kartų parodė reklamą. Tai lyg džiugus ir simbolinis skaičius, tačiau yra nemažai svarbesnių dalykų ir šiokių tokių problemų, kurios kilo trumpo projekto gyvavimo metu. Iš kart siūlau nesidrovėti ir parašyti tiesiai man, jei turite kažkokių pasiūlymų ar idėjų, nes jos visos yra peržiūrimos ir įvertinus jų naudą realizuojamos. Šiandien pabandysiu apžvelgti ir trumpai aprašyti veikimo kryptis ir siekius ateičiai - juk mes nestovime vietoje!

Pirmasis milijonas turi tik 0.8% reklamos efektyvumą, kas tikrai nėra daug. Pagrindinis dalykas, kuris kol kas pristabdo reklamos efektyvumą - reklama matoma tik tinklaraščiuose, todėl retas lankytojas pamato dar nematytą reklamą. Žinoma tinklaraščių savininkai turėtų pasirodyti įdomiais skydeliais, tačiau kadangi nevisi tai sugeba, tai reikia ieškoti būdų kaip reklamos rodymą optimizuoti kitaip. Kadangi vienas iš šio projekto tikslų yra padėti visai blogosferai neužsibūti uždaroje bendruomenėje ir leisti visuomenei sužinoti apie tinklaraščius, tai turbūt realiausia būtų pasiekti keletą dalykų: reklamos rodymą ne tik tinklaraščiuose ir įvairesnės reklamos rodymą. Akivaizdu, kad reklamos bloką patalpinus su tinklaraščiais nesusijusiame tinklalapyje būtų įmanoma pasiekti žymiai didesnį efektą, nes turėtume susilauktume žymiai daugiau naujų lankytojų. Nauji lankytojai ateitų dėl elementarios priežasties - jie dar nebūtų matę reklamos ir kažkas naujo juos tikrai sudomintų. Taip pat optimalu reklamos vietoje rodyti ne tik tinklaraščių reklamą - bet kokia komercinė reklama sudomintų nevieną lankytoją. Kol kas reklama yra pernelyg vienoda ir mažai ką dominanti, bei nevisiškai tinkamai orientuota, todėl permainos yra būtinos - kitaip šis tinklas praras prasmę dėl mažo efektyvumo. Kol kas nėra parinktas konkretus tolesnės veiklos modelis, tačiau greitu metu susidėliosime veiklos planus ir galvosime apie kažką realaus, bei naudingo. Kadangi turime keletą pasiūlymų, tai galbūt sutelkę keletos grupių jėgas pasieksime šaunių rezultatų.

Jau rašiau, kad paskutiniuoju metu buvau nepaprastai daug užimtas, todėl šis projektas buvo paliktas nuošalyje. Situacija jau normalizavosi, todėl galiu grįžti prie šio projekto. Nors nemažai problemų yra jau išspręsta ir pati sistema nuo pačios pirmosios versijos jau skiria gana nemažai - tiek našumo, tiek funkcionalumo atžvilgiu. Šiuo metu planuoju padaryti sistemos tinklaraščių skydelių galeriją, galimybę reklamuotis įvairiems projektams (susijusiems su tinklaraščiais) ir pažymėti, kad sistema yra stabili. Kol kas nežinau kada šie planai bus įgyvendinti, nes ir taip darbų yra galybė, tačiau iki savaitgalio jau turėtų pasirodyti pirmieji patobulinimai. Labai džiaugiuosi tuo, kad kol kas nepasirodė nei viena rimta klaida, todėl galiu pernelyg nesijaudinti dėl autonominio veikimo, be to, optimizavus visą sistemą buvo smarkiai sumažintas kompiuterio išteklių poreikis. Iš tiesų, tai šis projektas turi ir keletą mano asmeninių naudingų dalykų, kurių svarbiausias yra tai, kad aš jame galiu išbandyti dar nebandytus dalykus - didelį užklausų skaičių, maksimalią spartą, optimalumą vs. patogumą ir t.t. Tai lyg smėlio dėžė, kuri man padeda mokytis naujų dalykų, tačiau kartu ir naudinga visiems kitiems savo funkcionalumu. Be to, jau esu suplanavęs kur galėsiu panaudoti keletą gudrių algoritmų, kurių taip niekam nereikia. Nenoriu grįžti prie senos temos, bet greitu laiku parodysiu kaip pasinaudojus puikiais išradimais galima palengvinti sau darbą - nesvarbu, kad tai PHP, kuriai ale nereikia jokių Dijkstrų (naudosiu ne šį algoritmą). Bus įdomu priimti iššūkį iš tų, kurie mano, kad programuojant PHP užtenka tik WEB-orientied dalykų, nes jau ne kartą sakiau - programuojant prireikia daug ko ir papildomos žinios niekad nemaišo.

Darbas vyksta ir šiuo metu viskas darome pagal neegzistuojantį planą ir jokių rimtų problemų nekyla. Dirbame toliau, galvojame kažkokius patobulinimus ir užtikriname sklandų veikimą. Nors nemažai dalykų dar yra tik teoriniame lygmenyje, tačiau juos tikrai įgyvendinsime ir projekto nepaliksime likimo valiai. Labai laukių konstruktyvių komentarų ir nuomonių, nes tikrai tikiu, kad su jūsų įnašu galime pasiekti labai šaunių rezultatų. Nors tai nuskambėjo kaip koks banalus politinės partijos šūkis, bet taip jau yra - mūsų darbas su jūsų įtaka bus tik geresnis.

Voras

Vienas projektas nenumaldomai artėja prie pabaigos, tačiau iki šiol vis dar atsiranda darbų, taigi iki normalaus testavimo dar liko šiek tiek laiko. Visai neseniai sužinojau, kad turi būti galimybė importuoti duomenis iš teikėjų sandėlio turinio sąrašo į mūsų sistemos duomenų bazę. Atrodytų viskas paprasta, tačiau kaip parodė vėlesni bandymai - netvarkingi duomenys sudaro tiek daug problemų, kad be žmogaus patikros su jais dirbti beveik neįmanoma. Kadangi pradinių duomenų kiekis buvo gana didelis, tai pasitelkti žmogiškaisiais ištekliais nebūtų visiškai protinga, todėl nusprendžiau dalį žmogaus darbo perkelti kompiuteriui.

Pradėjau nuo to, kad gavau Excel rinkmeną su 1000 įrašų - gana įspūdingas skaičius, nes visą 1000 prekių reikia įkelti. Blogiausia, kad prekių sąrašas yra sudarytas be jokios padorios tvarkos - panašūs pavadinimai skiriasi tik tarpu, informacijos pateikimo forma ne visada vienoda ir pan. Žinoma, tiekėjai neturi noro surašyti visus prekės parametrus, todėl pateikė tik pavadinimus ir kažkokius neaiškius prekių kodus, kurie beveik neatitiko realybės. Kadangi tiek duomenų yra žymiai per mažai išsamiam prekės aprašymui, tai teko ieškoti būdų kaip gauti papildomos informacijos apie prekes. Vienintelis įmanomas variantas - internetas. Pateiktieji priekių kodai neatitiko jokių duomenų internete, todėl teko pasikliauti prekės pavadinimu. Paieškos sistemoje Google tikrai būtų galima susirasti pačios įvairiausios informacijos apie bet kokią prekę, tačiau informacijos ieškojimas negalėtų būti pavestas kompiuteriui, nes aprašyti reikalingos informacijos ieškojimą svetainės turinyje būtų gana sudėtinga. Labai gerai būtų tam panaudoti žmones(!), tačiau internete surasti 1000 prekių tikriausiai užtruktų keletą savaičių. Nieko kito nebeliko, kaip bandyti panaudoti netikėtai atrastą tiekėjo svetainę. Gaila, tačiau svetainė neturi jokios normalaus katalogo, todėl teko programiškai aprašyti tokią veiksmų seką, kuri žinant prekės pavadinimą suranda išsamesnę informaciją:

  1. Prisijungiame prie tiekėjo svetainės paieškos puslapio
  2. Į paieškos laukelį įvedame prekės pavadinimą
  3. Rezultatuose surandame patį pirmą įrašą (labiausiai tikėtina, kad visada bus tik vienas rezultatas)
  4. Pereiname į įrašo puslapį ir nuskaitome dominančią informaciją

Veiksmai neatrodo sudėtingi, tačiau tai yra gana problematiškas procesas, nes ne tik, kad prireiks 2000 prisijungimų į tiekėjų serverį, tačiau ir įrašo puslapyje reikės tinkamai atsirinkti naudingą informaciją. Kadangi svetainė yra parašyta nesilaikant W3C reikalavimų, tai pasinaudoti DOM galimybėmis tikriausiai nebūtų pavykę, o gaišti laiką bandymams nelabai norėjau. Realiausia buvo kuo daugiau atkurti žmogaus informacijos ieškojimo principą, kuris remiasi tuo, kad informacija randama pagal ją supančius duomenis. Taigi turbūt vienintelis įmanomas variantas - informaciją ieškoti pagal įvairiausius parametrus pačiame html kode. Pavyzdžiui: prekės kainą randame prie „Kaina: X.X Lt.“, prekės nuotrauką randame pagal nuorodos adresą ir t.t. Tiesiog pagrindinis dalykas norint programiškai apdoroti bet kokį dokumentą ar internetinį puslapį - būtinai reikia išsamiai išanalizuoti jo turinį ir atrasti vietas, už kurių galėtų „užsikabinti“ informacijos ieškojimo ciklas. Be to, labai svarbu rasti išskirtinius atvejus, kai standartinėje informacijos pateikimo formoje atsiranda papildomi duomenis, kurie gali iškreipti rezultatus, todėl būtina prieš analizuojant informaciją įvertinti ir jos padėti dokumente. O liūdniausia, kad atakuojamos svetainės autoriai bet kada gali pakeisti svetainės struktūrą ir informacijos ieškojimas nustos veikti.

Tai yra viena įdomiausių paskutiniuoju metu daromų užduočių, nes tiesiog nėra pasirinkimo daryti taip, kaip būtų geriausia ir optimaliausią - tiesiog reikia naudoti tą informaciją, kuri yra pasiekiama, o daugiau informacijos ieškoti itin įdomiais būdais. Nenoriu atskleisti mano „taikinio“ pavadinimo, nes pyktelėję darbuotojai gali užblokuoti mano įrankius ir viską reikėtų daryti iš naujo. Sunku net pasakyti kokia šio įrašo prasmė - galbūt tai vienas iš tų įrašų, kai dalinamasi nestandartine ir galbūt kitiems įdomia asmenine patirtimi. Tikiuosi atradote ką nors naudingo!


© 2008 Juozo Kaziukėno blogas | TextNData dizainas | Wordpress variklis