Dar vieno analitiko svetainė

Petras Kudaras

Uncategorized

Ar VILIBOR fiktyvus: ką sako forvardai?

Berods dar vasarą su anarchistu diskutavome šia tema. Iš tiesų, 6 mėnesių VILIBOR palūkanų norma gali pasirodyti „fiktyvi“, mat bankai tarpusavyje nesudaro jokių sandorių tokiai trukmei. Tačiau bent jau teoriškai VILIBOR galima išvesti iš euro/lito forvardų kainų. Nežinau, kiek euro/lito 6 mėnesių forvardai (t.y. sandoriai pakeisti eurus ir litus sutarta kaina po 6 mėnesių) yra likvidūs, bet esu tikras, jog ši rinka turėtų būti gilesnė nei „fiktyvus“ VILIBOR. Forwardų kainą galima apskaičiuoti pagal formulę: Skaityti toliau…

Pasakojimas apie rinkas investuotojų asociacijoje

Vakar investuotojų asociacija paprašė pakalbėti apie tai, ką manau apie rinkas. Kadangi prašė kalbėti daugiau apie pasualio rinkas, tai apsiribojau JAV, ir dariau prielaidą, jog ji atsigaus tik tuomet, kai atsigaus JAV vartotojai. Bet jie kol kas pinigų neturi, nes didėja nedarbas, paskolų aptarnavimui reikia skirti vis dar skirti rekordiškai didelę pajamų dalį (mat skolų yra labai daug, tad net sumažintos palūkanos leidžia tik ribotai atsikvėpti), o net ir tie, kurie vis dar turi darbus ir nedaug skolų yra linkę taupyti (taupymo lygis šovė į viršų). Skaityti toliau…

Dave Hitz: How to Castrate a Bull

Puiki trumpa, juokinga, bei įžvalgi knyga apie vadybą (ir šiek tiek apie raguočių priežiūrą). Dave Hitz joje pasakoja apie kompanijos NetApp, kuri užsiima duomenų saugojimo sprendimais, kūrimą ir evoliuciją, nors joje galima rasti ir visiškai nesusijusių su šios kompanijos istorija pasakojimų: tiesiog smagi minčių ir pamąstymų mišrainė, kurią gardžiai galima „suvalgyti“ per keletą valandų. Ypač man buvo įdomu paskaityti apie itin spartaus kompanijos NetApp augimo laikus: keletą metų iš eilės padvigubėjančią kompaniją nelengva suvaldyti. Skaityti toliau…

Nuorodos, nuorodos…

Visgi sesija, ir nėra laiko ilgesniems dienoraščio įrašams, bet štai vėl krūva nuorodų, kurios gal kam bus įdomios: Svetainių permaišos (remixai) – pritaikykite vienos svetainės turinį kitos svetainės dizainui ir rezutatai gali būti gana juokingi ;-) Nokia žada Perl savo mobiliuose telefonuose – gal reikės pasikeisti savo Ericssoną… FavIcon online generatorius Juokingi Apple C kompiliatoriaus įspėjimai 9-asis www čempionatas – taip, esu prikišęs nagus urbandictionary – neblogas online žodynas, šiek tiek panašus į everything2. Skaityti toliau…

Krūva nuorodų

Kasdien atnaujinamos nuotraukos iš Marso zondo Spirit Why I hate webblogs – įdomus pasiskaitymas apie tai, kad weblogai yra nieko neverti Perl6 wiki Biudžetai savivaldybėje – shameless plug ;-) Get the facts on Windows and Linux – Microsoft svetainėje prieš Linux kovojama ir skaičiais Wired: Gates previews the amazing decade – Microsoft vis toliau eina į multimedia produktų rinkas

Nemokami teksto redaktoriai Windows

Atradau nemokamų teksto redagavimo programų Windowsams sąrašą. Gana išsamus: http://www.devzoo.com/index.php?tooltype=WindowsEditor

Perlo objektų pradžiamokslis: pirmoji dalis

Objekto vaizdavimas Dažniausiai Perle Paskalio įrašas arba C struktūra, arba C+ klasė yra saugoma anoniminio asociatyvaus masyvo (hešo) pavidalu. Taip saugoti yra patogu, nes heše galima saugoti neribotą kiekį elementų, kuriuos galima pasiekti per unikalų hešo raktą. Jeigu tik norite kažko panašaus į C struktūrą, tai galima daryti taip: $irasas = { vardas => "Petras", amzius => 21, kolegos => [ "Juozas", "Nikolajus", "Vaidas"], }; Jeigu norite lengviau perskaitomo kodo, galite hešo raktus Skaityti toliau…

ActivePerl build 807

Pasirodė populiaros Perlo distribucijos Windows platformai ActivePerl versija. Ši versija yra kurta 5.8.1 Perlo versijos pagrindu ir turi nemažai atnaujintų modulių. Patys didžiausi atnaujinti moduliai yra XML::Parser ir Archive::Tar. Visi ActivePerl vartotojai turbūt turėtų atsinaujinti Perlo versijas į šią naująją.

Num2LTWord Perlu

Kai kam prireikė funkcijos, kuri verstų skaičius į lietuvių kalbą. Tad parašiau Perlinį moduliuką – gal bus dar kam nors naudingas. (Parsiųsti kaip normalų modulį galima iš čia) #!/usr/bin/perl -w package Num2LTWord; =head1 Num2LTWord -- skaičiai lietuviškai Modulis verčiantis (sveikus) skaičius į lietuvių kalbą =head2 NAUDOJIMAS use Num2LTWord; num2ltword(2003); =head2 FUNKCIJOS =head3 num2ltword ( skaičius ) Ši funkcija grąžina suformuotą lietuvišką skaičiaus pavadinimą. =head2 RIKTAI IR APRIBOJIMAI Funkcija C<num2ltword> supranta tik sveikus skaičius intervale (- 1 000 000 000; 1 000 000 000) =head2 AUTORIUS Petras Kudaras aka moxliukas (moxliukas@delfi. Skaityti toliau…

IE įdomybės ir bluejackinimas

Labai įdomus dalykas, kurį šiandien aptikau benaršydamas internetą buvo Internet Explorerio featuras, kurio pagalba galima išsikviesti Notepad. Tereikia parašyti kažką panašaus į: <img src="view-source:file:///C:/WINNT/system32/shell32.dll"> Ir jei jūsų Windows sėdi kataloge C:WINNT, greit pajausite kaip Notepad pradeda prakaituoti stengdamasis parodyti bylą shell32.dll. O juk galima įdėti ir kelias tokia nuorodas ir staiga swape gali atsirasti kokia pora gigabaitų duomenų. Įdomu dar ir tai, kad tokių dalykų nepagauna jokios Popup blokavimo programos. Tiesiog tai vienas iš Internet Explorer featurų. Skaityti toliau…

Testai perl-dev

Pridėjau šiandien į perl-dev CVS kodo testus. Šiaip atrodo Lietuvoje niekas lyg ir nedaro web aplikacijų kartu su testais (test based programming), nors Perlmonksuose teko girdėti apie tai nemažai. Esmė yra tame, kad pakeitus kažkokį failą automatiškai prasitestuojama ar viskas veikia kaip ir turėtų, ar tie pakeitimai nesugriovė kokio nors kodo kuris seniau jau veikė. Šiek tiek gal ir su eXtreme Programming susiję (ten pradžioj parašomas testas kuris neveikia, o paskui stengiamasi padaryt kad jis Skaityti toliau…

Perlinis alarm()

Turėjau šiokių problemų su perlific, mat jeigu jis kurį laiką nevykdydavo jokios MySQL užklausos, MySQL uždarydavo ryšį su perlu ir duomenų bazė tapdavo nebepasiekiama. Norint išlaikyti atvirą jungtį su MySQL reikia kas kažkiek laiko papinginti duombazę iškviečiant $dbh->ping();. Tai galima padaryti keleta būdu (juk čia Perlas): fork()‘int ir atskirame procese daryti while(1) { sleep(60); $dbh->ping(); }, galima naudotis gijomis (jei Perlas kompiliuotas su jomis) – use<br /> threads;, galima apsirašyti funkciją on_ping (nes juk Skaityti toliau…

Pirmas Bluejack’inimas

Grįždamas namo troleibusu pirmą kartą sėkmingai „nubluejackinau“ vieną merginą. Bluejackinimas yra gana paprastas ir smagus dalykas – paprasčiausiai tai tėra tik žinučių (ar objektų) siuntinėjimas per Bluetooth, kai gavėjai dažnai net nežino, kad pas juos yra tas Bluetooth ;-) (plačiau apie tai http://bluejackq.com). Veiksmo eiga tokia: susikuri savo mobiliajame telefone naują kontaktą, vietoj vardo įrašai žinutę (na, aš kaip neturintis lakios vaizduotės tai įrašiau tik „hi“), eini į „Send Contact“, pasirenki kad siųstų per Skaityti toliau…

Kelios naujienos ir Mac OS X

Pirma naujiena yra apie tai, jog išleistas Perl 5.8.2 Release Candidate 2, krį galima parsisiųsti iš http://www.cpan.org/authors/id/N/NW/NWCLARK/perl-5.8.2-RC2.tar.bz2. Pagrindiniai pokyčiai nuo praeito Release Candidate: mod_perl dabar jau lyg veikia normaliai su šia versija, keletas pataisymų Perlo gijose, UNIVERSAL modulio pakeitimai bei %INC kešavimas buvo išimti, nes manoma jog tai nepakankamai ištestuotas kodas. Galutinė Perl 5.8.2 versija turėtų pasirodyti už kokios pusantros paros, jei nebus rasta kokių nors klaidų. Be to išleistas ir nauja PHP 5. Skaityti toliau…

Išleistas Parrot 0.0.13

Ką tik gavau laišką, pranešantį, jog išleista speciali Parrot versija Halloween proga. Parsisiųsti galima iš http://www.cpan.org/authors/id/L/LT/LTOETSCH/parrot-0.0.13.tar.gz arba per CVS iš http://dev.perl.org/cvs/ Pagrindiniai pokyčiai: imcc dabar buildinamas kaip parrot, objektai vis labiau pabaigti, isa ir does metodai PMC, extension galimybių pradžia, dinaminės operacijų kodų bibliotekos, ekspermentinis tinklo funkcijų palaikymas, ncurses, postgresql ir pcre bibliotekų palaikymas ir t.t.

Mažos naujovės

Noriu jau bėgt iš darbo, tad labai trumpai apie pakeitimus, kuriuos padariau šiandien. Pirma, įdėjau paiešką savo dienoraštyje (ji egzistavo jau senokai, tik apie ją žinojo gal kokie 3-4 žmonės). Kitas dalykas, kurį padariau, tai šiek tiek apsitvarkiau savo /home/moxliukas direktorijoj ir sudėjau viską ką esu parašęs ir kas gali būti kam nors naudinga. Visa tai galima rasti adresu http://moxliukas.esu.as/download.

Pirmasis mano Perlo lopas

Vakar nusiunčiau savo pirmąjį lopą į perl5-porters. Aišku, nebuvo jis susijęs su visokiais sudėtingais perliniais dalykais ar C kodu – lopiau tik perldelta582.pod (Kurio lietuvišką vertimą galima rasti čia). Na, bet vis tiek kažkaip geri jausmai užtvindo kai visgi priima tavo lopą į stable šaką ;-) Pats lopas pradžioje tik uždėjo nuorodą į vieną adresą, kuris buvo paliktas kaip paprastas tekstas, tačiau vėliau paaiškėjo, jog visoje perldeltoje naudojama F<>, kai turėtų būti naudojama Skaityti toliau…

MySQL lietuviška knyga: keletas klaidų

Perskaičiau jau 100 tos pirmos lietuviškos knygos apie MySQL puslapių. Tolimesnis vaizdas šiek tiek pagerėjo, nes pereita prie techniškesnių dalykų su kodo pavyzdžiais. Tiesa, vis dar pasitaiko ne vietoje atsirandančių kvailų juokelių kaip kad štai 24 puslapyje: Kitą rytą direktorius atrodo šiek tiek suglumęs, paraudusiomis akimis ir kažką veblena apie gydytojo paskirtą punšą. Bet bendrai paėmus stilius labiau techniškėja ir gerėja. Jau buvau bepradedąs džiaugtis, kad gal ir būtų galima šią knygą Skaityti toliau…

perldelta582 vertimas

Štai kas pasikeitė Perlo 5.8.2 versijoje: =head1 PAVADINIMAS perldelta - kas naujo perl v5.8.2 =head1 SANTRAUKA Šis dokumentas aprašo skirtumus tarp perlo 5.8.1 ir 5.8.2 versijų. Pirma perskaitykite L<perl58delta>, jeigu jūs atnaujinate perlą iš senesnės versijos (kaip kad 5.6.1). L<perl58delta> aprašo skirtumus tarp 5.6.0 ir 5.8.0 versijų, o L<perl581delta> -- skirtumus tarp 5.8.0 ir 5.8.1. =head1 Nesuderinami pokyčiai Tikimės, kad jokių. =head1 Branduolio patobulinimai =head2 Asiociatyviųjų masyvų atsitiktinė tvarka Pataisyta asociatyviųjų masyvų atsitiktinė tvarka, kuri buvo įvesta 5. Skaityti toliau…

Lietuviškos knygos

Vakar nusipirkau MySQL ir PHP knygas, išleistas Smaltijoje. Dar per daug jų nežiūrinėjau, nors tiesą sakant, per duag ir nesitikiu būtent iš PHP knygos. MySQL knygos perskaičiau apie 10 puslapių ir ganėtinai įstrigo prastas vertimas. Žodžiai atrodo palikti sakiniuose tokia tvarka kaip jie buvo angliškame tekste, o ir terminų vertimai gana keistoki (tarkim file ir palikti failu, o support verčiama kaip parama – neturėtų būti palaikymas ar dar koks nors žodis, Skaityti toliau…

Perl 5.8.2 Release Candidate 1

Štai išleista pirma Perl 5.8.2 testavimo versija . Ją galima parsisiųsti iš http://www.cpan.org/authors/id/N/NW/NWCLARK/perl-5.8.2-RC1.tar.bz2. Pagrindinis pokytis, kuris įvyko nuo 5.8.1 laikų yra binary compatibility su 5.8.0 grąžinimas (visa ta binary compatibility sugriuvo dėl naujo hash randomisation patobulinimo 5.8.1 Perle). Teoriškai dabar turėtų būti šita versija binary-compatible tiek su 5.8.0, tiek su 5.8.1. Pagrindiniai dalykai kuriuos norima išsiaiškinti su šia versija: dvejetainis atitikimas tarp 5.8.2 ir modulių kompiliuotų 5.8.0 versijai dvejetainis atitikimas tarp 5. Skaityti toliau…

Išleistas Perl 5.9.0

Ką tik išleistas Perl 5.9.0 (t.y. bleadperl – unstable versija). Kol kas dar oficialaus pakeitimų sąrašo nėra, bet šį Perlą galima parsisiųsti iš http://cpan.org/authors/id/H/HV/HVDS/perl-5.9.0.tar.gz. Daugiau žinių kai atsinaujins visi CPAN veidrodžiai ir pasirodys pokyčių sąrašas.

Perlific kodas parsisiuntimui

Iš tikrųjų negalvojau pradžioje, jog plėsiuosi rašydamas tą Perlific botą, bet kažkaip taip jau išėjo ;-) Perrašiau jį taip, jog būtų galima (kada nors ir automatiškai, neperkraunant boto) naudotis įskiepiais (pluginais). Visas tas įskiepių kodas dar neturi normalios API, tad viskas iš įskiepių pusės daroma gana sudėtingai. Kada nors turėtų susitvarkyti ;-) Anyway, kodą galite rasti čia.

Googlinis alus: pirmieji rezultatai

pukomuko pastebėjo, kad pirmasis Googlinis alus jau išvirė. Nulėkiau į google pažiūrėti rezultatų. Ieškant „alus“ tik lietuvių kalba google.lt gauti rezultatai: 32. <a href="http://blog.hardcore.lt/ve/archives/000922.html">ve postas apie<br /> alaus takeover</a> bei kartu (google mano jog visas <a href="http://blog.hardcore.lt">yra viena svetainė</a>) ir <a href="http://blog.hardcore.lt/mic/archives/000923.html">mic<br /> postas</a> 33. <a href="http://php.lt/konf-archive/2979.html">PHP<br /> konferencijos laiškas apie alaus gėrimą Kaune</a> 67. <a href="http://dzhibas.php.lt/blogs/">Džibo<br /> LietBlogs</a> 107. <a href="http://lakunas.promedija.lt/">Lakūno<br /> dienoraštis</a> 177. <a href="http://dzhibas.php.lt/">Džibo<br /> dienoraštis</a> 183. <a href="http://god. Skaityti toliau…

Infobaltas nusivažiavo? Nee…

Apie Infobalt girdžiu įvairiausių nuomonių, bet dažniausiai visi sako, jog infobalt tampa nebeįdomus, jis nusivažiavo ir t.t. Na, mano nuomonė ganėtinai skiriasi, nes aš manau jog Infobalt kaip tik tampa solidesnis ir vis labiau naudingas. Aišku tik ne statistiniam dešimtokėliui, kuris atėjo pasirinkti nežinia kam jam reikalingų bukletėlių. Kad ir kaip ten bebūtų, Infobalte dalyvaujančių kompanijų tikslas yra pasireklamuoti taip, jog padidėtų jų pardavimai. Dauguma IT bendrovių klientai visgi yra ne plačioji visuomenė, o kitos verslo bendrovės (jos dirba pagal modelį verlas verslui). Skaityti toliau…

„Infobalt 2003“ įspūdžiai

Buvau Infobalt 2003 parodoje. Kaip ir kiekvienas save gerbiantis kompiuterastas. Įspūdžių tikrai nemažai: parodoje nemaža naujų idėjų (kai kurios jų iš stiliaus „ech kaip genialiai paprasta, kodėl niekas anksčiau nepagalvojo“), naujų produktų ir panašiai. Palyginus su praeitais metais matau vieną esminį pasikeitimą – patys gamintojai nebeatstovauja savo kompanijoms parodoje, parodoje dalyvauja tik jų atstovai (tai negalioja mobiliųjų telefonų bendrovėms Nokia ir Ericsson). Tarkim pernai pamenu dalyvavo atskirame stende tiek HP, tiek Microsoft. Skaityti toliau…

Googlinis alus: Dabartinė situacija

Na, kad jau buvo pradėtas projektas „alus“, tai apsilankiau Google norėdamas apžvelgti dabartinę situaciją. Pirmiausia žodžio „alus“ ieškojau google.com su standartiniais nustatymais. Peržiūrėjau pirmuosius 500 rezultatų ir iš jų tik 218 vietoje buvo viena pažįstama nuoroda – pbg dienoraščio įrašas apie alų. Tuomet nusprendžiau jog reikia eiti į google.lt ir bandyti ieškoti „puslapiuose tik lietuvių kalba“. Štai ką aptikau (vėlgi peržiūrėjęs 500 rezultatų): 197. <a href="http://god.aurus.lt/blog.php/1">godzhirra<br /> dienoraščio įrašas apie alų Čekijoje</a><br /> 255. Skaityti toliau…

Perlific

Užmačiau pas godzhirra idėją apie linkų gaudymą IRC kanaluose, tad ėmiau ir sukodinau Perlinį sprendimą. Tas ant greitųjų sumestas botukas vadinasi Perlific, ir dabar gaudo adresus #perl ir #php kanaluose bei kiša juos į MySQL duombazę. Štai šio boto kodas: #!/usr/bin/perl -w $|++; use strict; use Data::Dumper; use Net::IRC; use DBI; my $config = { 'db' => { 'duombaze' => 'duombaze', 'user' => 'root', 'password' => ''}, 'irc'=> { 'nick' => 'perlific', 'server' => 'irc. Skaityti toliau…

Spamas

Spameriai visai suįžūlėjo. Gavau šiandien spamą subjectu „Bigger penis with new perl patch“ – praėjo pro visus Mozillos Bayeso filtrus net nemirktelėjęs. Tai turbūt pirmas kartas kai taip akivaizdžiai susidūriau su spamerių naudojamais Bayeso filtrų teršimais. Tiesa, kartais ir seniau praslysdavo pro šiuos filtrus nepageidaujami laiškai su įveltais visai atsitiktiniais žodžiais, bet pirmą kartą šie žodžiai buvo tokie visai neatsitiktiniai. Įtariu, kad mano adresą spameriai gavo iš perl5-porters konferencijos, tad Skaityti toliau…

Kodėl turėtumėt išjungti PHP session.enable_trans_sid

Mano bėdos su PHP nesibaigė. Tiesa, tą pačią pirmąją tai išsprendžiau – reikėjo php.ini nustatyti arg_separator.output = "&amp;" (Vis dar nesuprantu kodėl tai nėra nustatyta pagal nutylėjimą :-/ ). Viskas lyg ir puiku, bet štai naujas dalykas. Jeigu puslapyje yra kokia nors forma, tai PHP automatiškai prideda hidden sesijos kintamąjį, bet jį įkiša tiesiog tiesiai po <form>, kas nepatinka validatoriui. (nes reikia kokios nors <p> žymės ar ko nors panašaus Skaityti toliau…

Vėl pykstu ant PHP

Jau antrą kartą šią savaitę esu supykęs ant PHP, nors šį kartą gal ne tiek supykęs bet dar kartu ir pasimetęs. Būtent man sugadino nuotaiką šis PHP vabaliukas. Atrodo jis turėtų lyg būti pataisytas, tik kažkokiu mistiniu būdu man sesijų kintamuosius prie URL prideda su &, o ne &amp; (nors vartoju PHP versiją 4.3.3 – vabaliukas pastebėtas ir ištaisytas 4.0.4 versijoje). Ko pasekoje aišku puslapis nesivaliduoja kaip XHTML. Heh.

Programavimo kalbų saugumas

Perlmonksuose kilo diskusija apie tai kokia kalba yra saugesnė – PHP ar Perl. Atsakymas bent jau mano nuomone yra vienareikšmis (ne, atsakymas nėra Perlas) – saugumas priklauso ne nuo kalbos, o nuo programuotojo. Galima rašyti nesaugias (lygiai taip kaip ir saugias) web aplikacijas tiek su PHP, tiek su Perlu, tiek su C, tiek su Pitonu ar Java. Aišku kaip sako amerikonai „the devil is in the details“ – kai kurios kalbos saugumo prasme leidžia Skaityti toliau…

Ilga pertrauka

Ilgokai čia nerašiau. Kaip pasakė kažkoks Amerikos weblogininkas, internetiniai dienoraščiai dažnai būna pilni atsiprašymų, jog dėl susikaupusių darbų ar dar ko nors nėra laiko juos pildyti. Tad štai man dabar yra panašiai ;-). Pačiame Lietuvos internetinių dienoraščių pasaulyje pradeda jaustis štilis (mada pradeda praeiti?) – štai Džibas neatnaujina savo dienoraščio jau 20 dienų, aubergine miręs visą mėnesį (nors gyvybingumu ir taip nepasižymėjo), blondattack ryškiai sužibo ir greitai perdegė, why2liz primigęs rudens miegu, Skaityti toliau…

Automatiniai CSS generatoriai

Pastaruoju metu labai populiarėja visokie internete pasiekiami automatiniai CSS dizainų generatoriai, kurie leidžia vienu formos užpildymu susikurti standartus atitinkančią svetainę be lentelių. Štai du, kuriuos neseniai atradau: Layout-o-Matic ir Firdamatic. Tikėkimės kažkada ir Frontpage generuos standartus atitinkančius dizainus be lentelių (na, pasvajokim…) Prie to pačio dar šiandien išsibandžiau Style Master programėlę (reiktų kada nors su tais CSS pagaliau susitvarkyt). Atrodo ganėtinai patogus dalykas. Tik aišku mokamas.

Benchmarkai

LG sumąstė labai sick idėją – paaukoti kodo komentarus vardan kodo greičio. Na, nieko čia nuostabaus, kad kodas be komentarų veikia greičiau – juk greičiau jis nuskaitomas iš disko (Nes mažiau skaityt. Logiška.) Šiaip pati kodo greitinimo idėja išimant komentarus yra E V I L – dar išimkit visus tarpus, ir tada bandykit redaguot tą kodą ;-) Pasibenchmarkinau ir aš. Pagrindinis testavimo skriptas yra paleidžamas iš konsolės. Štai jis (nenaudoju Benchmark modulio, nes jis skaičiuoja tik realų Skaityti toliau…

Pirmasis perl-dev kodas

Štai šiandien į CVS įdėjau pirmą perl-dev kodą. Nieko per daug nėra įmantraus, beveik tik Sveikas pasauli. Bet kaip sakant pradžia. Bandžiau šiek tiek ir padokumantuot tai ką padariau, tad čia galite rasti kodo žemėlapį

Perl-dev CVS

Šiandien paleidau CVS serverį perl-dev projektui. Prieiti prie kodo gali visi per http://perl.skopos.lt/cgi-bin/cvsweb arba tiesiai iš konsolės: cvs -d :pserver:anonymous@perl.skopos.lt:/var/lib/cvs login cvs -d :pserver:anonymous@perl.skopos.lt:/var/lib/cvs co perl-dev

Perl-dev susirašinėjimo sąrašas

Kaip jau labai labai seniai žadėjau, šiandien pagaliau pakūriau susirašinėjimo sąrašą perl-dev@skopos.lt norintiems prisijungti prie lietuviškos svetainės apie Perl kūrimo. Norintys prisijungti prie šio sąrašo turėtų atsiųsti elektroninį laišką adresu majordomo@skopos.lt su eilute: subscribe perl-dev Pagrindinis šio sąrašo tikslas yra lietuviškos svetainės apie Perl programavimo kalbą sukūrimas. Kartu tai ir galimybė dalyvauti Perliniame projekte taip išmokstant šią kalbą bei gaunant daugiau patirties. Tikiuosi šis projektas bus sėkmingas ir naudingas visiems, o ne tik jame Skaityti toliau…

Naujasis Perlas

Šiandien pilnai perėjau prie naujojo Perl 5.8.1. Persikompiliavau mod_perl ir panašiai, tad ši svetainė veikia būtent jau su naujuoju Perlu. Nors ir yra angliška perldelta, štai pagrindiniai Perl pokyčiai nuo 5.8.0 versijos: Asociatyviųjų masyvų atsitiktinės tvarkos pagerinimas. Anksčiau asociatyviųjų masyvų (hešų) raktai būdavo saugomi ne visai atsitiktine tvarka, o dėl to atsirasdavo šiokių tokių saugumo problemų (ten viskas labai sudėtinga, bet idėja tame, jog galima kažkaip programėlei padaryti DOS ataką). Skaityti toliau…

Tvarkau stalčių

tvarkiausi šiandien vieną savo stalčių. Veiksmas vyksta kaune, ten jau senokai nebegyvenu. Užtad stalčius prisikaupęs visokių įvairių senienų, krapštantis po jį jaučiuosi kaip archeologas, nes kuo gilyn tuo senesnis kultūrinis sluoksnis. Štai ką radau stalčiuje, pradedant nuo viršaus (naujausi laikai) ir einant gilyn (arba senyn chronologine tvarka): Infrared <=> Serial kabelis. Neaišku iš kur papuolęs. Ryškiai naudotas bet ne mano. Reiks išbandyt. Varžtai nuo monitoriaus, kurį atidaviau mr2 10 kompiuterinių varžtukų. Skaityti toliau…

Krūva nuorodų

Vėlgi prisikaupė visokių nuorodų, kurios gal kam ir pravers. Šiek tiek kompiuterastinės: XFCE – išleista XFCE ketvirtoji versija 012webpages.com – nemokamas hostingas su PHP, Perlu, MySQL, Pitonu ir pan. Šiaip įdomios: New Scientist: Cleverness may carry survival costs – jei esi protingas tai dar nereiškia, jog išliksi evoliucinėje kovoje. Weblogai ir ISSN – hmm… gal ir man paprašyt ISSN numerio? :-) Nokia 7600 – labai keistai atrodantis mobilusis telefonas. Nokia Medallion I – dar keistesnis Nokios produktas. Skaityti toliau…

Išleistas Perl5.8.1

Viskas. Prieš porą minučių išleistas Perl 5.8.1. Kol kas dar nėra oficialaus pranešimo, Jarkko Hietaniemi pranešė tik į perl5-porters sąrašą. Štai ką jis parašė: Grab it: http://www.iki.fi/jhi/perl-5.8.1.tar.bz2 http://www.iki.fi/jhi/perl-5.8.1.tar.gz (or rsync -avz --delete ftp.linux.activestate.com::perl-5.8.x perl-5.8.x) Or in a while: http://www.cpan.org/authors/id/J/JH/JHI/perl-5.8.1.tar.gz perldelta: http://www.hut.fi/~jhi/perldelta-5.8.1.html Thank you to you all. Hopefully the 5.8.1 is better than the 5.8.0 was. Since the release is now out there propagating, there’s precious little I can do anymore, so I will now have a vacation. Skaityti toliau…

Moblogo patobulinimai

Atradau beeksperimentuodamas, kad galima nuotraukas siųsti iš mobilaus ne per MMS, o per paprastą elektroninį paštą (na kaip paprastą… per GPRS tiesiai iš telefono). Tai reiškia, kad nereikės mokėti viso 1,50 Lt už vieną MMS žinutę (nuo spalio pabaigos berods) ir bus galima apsiriboti paprastu GPRS. Kadangi viena nuotrauka užima apie 15KB (su base64 kodavimu matyt apie 20KB), tai vienos nuotraukos siuntimas į moblogą kainuoja apie 0,15 Lt (huh, 10 Skaityti toliau…

Perlo modulių įdiegimas

Čia pateikiu dar vieno PerlMonks straipsnio santrauką lietuvių kalba. Šį kartą apie tai kaip įdiegti Perlo modulius. Paprasti dalykai Daugumą modulių galima rasti CPAN. Jie būna pateikiami taip vadinamuose tarballuose – tar bylose, suarchyvuotose gzip programa. Modulio kodas būna atskiroje direktorijoje, tad tar šią direktoriją sutraukia į vieną bylą, o gzip šią bylą suarchyvuoja. tar sukurtos bylos turi plėtinį .tar, o gzip – .gz, tad dažniausiai modulio bylos pavadinimas atrodys kažkaip taip: Skaityti toliau…

Naujas mobilus – nauji džiaugsmai

Na štai nusipirkau naują mobilų – tikrą kompiuterasto svajonę. Yra visos javos, GPRS, infrared, Bluetooth ir panašiai. Tai Ericsson T610. O kad jei jau yra infraraudonųjų spindulių galimybė, ta galima išsibandyti ir priversti Palmą dirbti su internetu. Na, daug privertinėt nereikėjo, viskas veikia puikiai ir gražiai. Tai yra pats susijungimas veikia puikiai ir gražiai, o vat su internetinėmis programomis tai šiek tiek skurdžiau. Pradžiai ieškojausi IRC klientų. Radau jų keletą, bet visi jie shareware. Skaityti toliau…

Nokia Plugin

Visgi reikėjo pasidaryti telefono backupus. Po vakarykščio apsilankymo Forum Palace vykusiame Nokia Plugin kažkur pradanginau savo mobilų (Pavogė? Pamečiau? Mobilus įgijo sielą ir žaviai mirksėdamas savo diodu išėjo ieškoti merginų?). Kad ir kaip ten bebūtų, mano mobiliam tai turbūt patinka, nes bandant su juo susisiekti atsiliepia mergina vardu „balso paštas“ Vis dar nevalingai siekiu kelnių kišenės, nes vis kyla noras įsijungti WAP ir pasižiūrėti ar šioje svetainėje padaugėjo komentarų ar bent jau pažvelgti į jo logotipą. Skaityti toliau…

Myliu vim

Teko praleisti praeitą naktį prie kompiuterio stengiantis parašyti kuo daugiau veikiančio PHP kodo. Apie kokią antrą valandą nakties sėdejau su vim ir pamaniau kad turbūt nieko į jį nekeisčiau. Yra tekę bandyt ir visokius GUI redaktorius ir mcedit ir nano, ir pico, bet niekas negali prilygti vim (nebent emacs – reiktų tą irgi išbandyt normaliai). Tiesa, vim yra gana baisus naujokams. Prisimenu aš pats nemokėjau iš jo išeit kai pirmą kartą jį paleidau ;) Bet dabar sau Skaityti toliau…

PLP: Perliškas PHP

Šiandien man akis užkliuvo už projekto pavadinimu PLP. Tai labai papratsas Perlo modulis, kuris leidžia naudoti Perlą taip kaip PHP – be jokių chmod ir headerių formavimų bei tiesiai HTML kode. Privalumų yra keletas: labai lengvas įdiegimas (ypač jei mod_perl jau įdiegtas), greitis (2-5 kart greičiau nei PHP) ir aišku pats Perlas ;) Tiesa, galimybėmis PLP vis dar stipriai nusileidžia tokiems projektams kaip HTML::Mason ar embperl, bet kartu jis žymiai paprastesnis ir lengvesnis naudoti. Skaityti toliau…

Patogus Perlo įpraiškų naudojimas

Tarkim jums reikia, kad pritaikyti įpraišką simbolių eilutei ir rezultatus sudėti į masyvą. Perle tai labai lengva: @masyvas = $eilute =~ m/(kazkas)/g; Šitas kodo gabaliukas veikia, nes =~ turi didesnę reikšmę nei = ir todėl įpraiška yra pritaikoma anksčiau. Jeigu reikia sužinoti tik kiek kartų įpraiška atitiko eilutę galima daryti taip: $kiek_kartu = $eilute =~ m/(kazkas)/g; Viskas labai paprasta: jeigu rezultatą priskiriame masyvui, tai gauname atitikmenų masyvą, jeigu rezultatą priskiriame paprastam Skaityti toliau…

Įdomūs rytiniai virusai

Šiandieną ryte gavau porą labai įdomaus viruso kopijų. Štai kaip atrodo headeriai: From - Tue Sep 16 08:37:52 2003 X-UIDL: Y&5!!dV,!!P*V!!?l^!! X-Mozilla-Status: 0001 X-Mozilla-Status2: 10000000 Return-path: <admin@duma.gov.ru> Envelope-to: petras@lietuvoje.lt Received: from [81.7.106.87] (helo=localhost) by www.lietuvoje.lt with smtp (Exim 3.35 #1 (Debian)) id 19z0nf-0003vz-00 for <petras@lietuvoje.lt>; Mon, 15 Sep 2003 23:22:23 +0200 From: "Microsoft" <security@microsoft.com> To: <petras@lietuvoje.lt> Subject: Use this patch immediately ! MIME-Version: 1.0 Content-Type: multipart/mixed;boundary="xxxx" Message-Id: <E19z0nf-0003vz-00@www.lietuvoje.lt> Date: Mon, 15 Sep 2003 23:22:23 +0200 X-UIDL: Y&5! Skaityti toliau…

Switch galimybės Perle

Kaip žinia, Perlo kalboje nėra switch konstrukcijos. Gal kam ir keista, bet yra keletas (kaip visada Perle yra keletas būdų atlikti tam pačiam daiktui ;) būdų kaip apsieiti be to. Pirmas būdas gana man bjaurokas, nes naudoja goto (nors šiaip tai labai primena įprastą switch: SWITCH:{ # switch($option) $_='CASE_'.$option; eval("goto $_"); $_= 'DEFAULT' if ($@); goto $_; CASE_1: print "Case 1\n"; last SWITCH; CASE_4: print "Case 4:\n"; last SWITCH; CASE_FOUR: print "Case FOUR\n"; last SWITCH; CASE_9: print "Case 9\n"; return "Because I can"; CASE_WHAT: ; CASE_STR: print "Case STRING on $option\n"; last SWITCH; DEFAULT: print qq|Undefined Case "$option"\n|; } Dažniausiai naudojama nuorodų lentelė (dispatch table): Skaityti toliau…

XHTML 1.1

Vakar kaip įprasta skaitinėjausi W3C standartus ir pamaniau, kad gal vertėtų pereiti prie XHTML 1.1 standarto. Didžiausias šio standarto skirtumas nuo ankstesnių versijų yra tas, kad reikia nurodyti Content-type: application/xhtml+xml. Pasirodo jeigu nurodomas senas text/html tipas tai naršyklės interpretuoja kodą kaip įprastą HTML košę, net jei tai ir yra standartus atitinkantis XML. Priversti naršyklę dirbti XML režimu nelengva – būtent tam ir reikia specialaus Content-type. Tiesa, XML parseris yra negailestingas – viena Skaityti toliau…

Graži Perlo programėlė

Kas čia vis sako, kad Perlo programos neįskaitomos dėl to kad pilna visokių @$%&*; ? Pasirodo, kad galima rašyti ir labai švarias ir tvarkingas Pelro programas – Perlmonksuose blockhead parašė vieną geresnių „obfuscated“ programėlių: #!/usr/bin/perl not exp log srand xor s qq qx xor s x x length uc ord and print chr ord for qw q join use sub tied qx xor eval xor print qq q q xor int eval lc q m cos and print chr ord for qw y abs ne open tied hex exp ref y m xor scalar srand print qq q q xor int eval lc qq y sqrt cos and print chr ord for qw x printf each return local x y or print qq s s and eval q s undef or oct xor time xor ref print chr int ord lc foreach qw y hex alarm chdir kill exec return y s gt sin sort split Šito kodo pervarymas per O::Deparse irgi neduoda naudos, netgi kaip tik dar viską supainioja: Skaityti toliau…

CSS tekstų dydžiai

pbg rašant apie šriftų dydžius EnC pamanė jog CSS nurodomi šriftų dydžiai yra blogai, nes juos naudojant neveikia šrifto sumažinimo ar padidinimo galimybės naršyklėse. Tai ne visai tiesa. Štai pavyzdys: <style> p.pixeliais { font-size: 14px; } p.emais { font-size: 1em; } p.procentais { font-size: 100%; } p.taskais { font-size: 14pt; } </style> <p class="pixeliais">Čia nurodyta pikseliais</p> <p class="emais">Čia nurodyta emais</p> <p class="procentais">Čia nurodyta procentais</p> <p class="taskais">Čia nurodyta taškais</p> Mozilla didina šriftus visais šiais atvejais (View->Text<br /> Zoom), tuo tarpu IE pikseliais ir taškais nurodytus šriftų Skaityti toliau…

<FIELDSET>

Bevaikščiodamas kažkurioje svetainėje aptikau įdomų rėmelį aplink tekstą. Iš pradžių pagalvojau kad čia su CSS padaryta (na, tekstui uždėt galima position: relative; top: -20px;, truputį pažaist su z-index ir nustatyt background-color: white su padidintomis paraštėmis), bet pasirodo kad naudojamos <FIELDSET> ir <LEGEND> žymės. Kažkaip nemaniau kad jos priklauso W3C standartams , bet klydau – jos yra HTML4.0 standarto dalis. Kasdien vis ką nors naujo sužinai :)

Kibiras nuorodų (3)

Aš vis dr gyvas. Nors beveik palaidotas po darbais, universitetais, mokslais ir šiaip visokia veikla. Čia jau matau sunerimot, kad merginą būsiu susiradęs ;) Tai va, nė velnio, štai jumi krūva nuorodų: Kompiuterastinės: Mozillos Firebird priedų sąrašas – ganėtinai pilnas ir išsamus. Listamatic – viskas, ką galima padaryti su <li> žyme ir CSS Google švenčia 5-ą gimtadienį – Visų pamėgtas paieškos įrankis. Šiaip smagumynai: Optinės apgaulės jūsų akims – žiūrėti išgėrus Pasimetę Skaityti toliau…

Mozillos raktiniai žodžiai

Vakar kilo man nenumaldomas noras pasidaryti taip, kad Mozilloje būtų galima ieškoti ne tik per Google, bet ir per CPAN, nes labai dažnai tenka ten eiti ir įvedinėti paieškos žodžius rankomis. Sprendimą radau, ir jis labai paprastas ir puikus. Einam į Bookmarks->Manage<br /> Bookmarks, darom New Bookmark, į Name įrašom CPAN, o į Location – http://search.cpan.org/search?query=%s&mode=all. Spaudžiam OK, dabar susirandam kur atsirado tas mūsų naujai sukurtas bookmarkas, spaudžiam ant jo dešiniu pelės klavišu, Skaityti toliau…

lwpcook vertimas

lwpcook – libwww-perl bibliotekos receptai Šiame dokumentacijos skyriuje galima rasti tipinius libwww-perl naudojimo pavyzdžius. Išsamesnės informacijos ieškokite individualių modulių dokumentacijose. Visi šie pavyzdžiai yra pilnos programos. GET Naudojantis šia biblioteka labai lengva parsiųsti dokumentus iš tinklo. LWP::Simple modulis turi funkciją get(), kuri grąžina URL turinį: use LWP::Simple; $doc = get 'http://www.linpro.no/lwp/'; Arba tiesiai iš konsolės viena Perlo eilute: perl -MLWP::Simple -e 'getprint "http://www.linpro.no/lwp/";' O štai taip galima parsisiųsti naujausią Perl versiją: Skaityti toliau…

Bangos dienoraščiai

Nagi paskatintas Nightblade komentaro apie lietuvišką blogosferą, nuėjau pasidaryti po Bangos dienoraščius. Yra ten toks patogiai padarytas skyrelis „Populiariausi dienoraščiai“, kuriame surašyti lankomiausi Bangos dienoraščių įrašai (hmm… kodėl įrašai, o ne patys dienoraščiai? Kažkaip toje Bangoje sąvoka „dienoraštis“ ištirpsta, nes ten faktiškai privatus vieno žmogaus forumas gaunasi). Na, įspūdis tai ganėtinai prastas – visiems rūpi tik įrašai, kur yra prisegtos nuotraukos, bet šiaip pliurpalynės apie tai kad kažkas eidamas iš mokyklos namo Skaityti toliau…

RSS Lietuvos komercinėse svetainėse?

Kiekvieną dieną važiuodamas troleibusu į darbą ir iš jo esu įpratęs skaityti arba dienoraščius nusiurbtus į mano Palmą arba lakstyti (na žodis „lakstyti“ čia netinka… tiksliau būtų „šliaužioti“) po WAP svetaines. Lietuviškajame WAP internete nėra labai kažko išskirtinio (na, prieinama visa Banga, bet kažkaip tie visiškai nekontroliuojami ir nuobodūs forumai ten nevilioja, o rimto kompiuterastizmo ten nerasi), tačiau vis tiek kas kartą apsilankau OMNI Laike. Kai kurie OMNI Laiko skyriai atrodo kaip normalios naujienų skiltys, bet labiausiai mane Skaityti toliau…

Nuorodų kibiras

Prisiminęs, kad patys pirmieji interneto dienoraščiai buvo skirti būtent rastų nuorodų pasidalinimui, nutariau ir aš pasidalinti savo atrastosiomis per šiandien dieną. Pradžiai, kompiuterastizmai: FreeTech Books – nemokamos techninės knygos (ir netgi viskas legalu). Yra ir keletas knygų apie Perl, Python, C++, Java, Linux, FreeBSD ir dar daug kitų. Lingua::Romana::Perligata – Perlo modulis, rašytas gasiojo profesoriaus Damian Conway, kuris leidžia rašyti Perlo programas gryna lotynų kalba. Gražu. Rimti dalykai pamąstymui: Globalrichlist.com Skaityti toliau…

Ko dar reiktų lietBlogs…

Štai Džibas pakvietė visus prigalvoti visokių naujų features (hmmm… o visgi kaip lietuviškai yra „feature“?) lietBlogsams. Mano nuomone ten nelabai ko ir trūksta, nebent galimybės ieškotis dienaraščių įrašų pagal kokį nors raktinį žodį. Ir tiesa, galėtų viskas būti saugoma visą laiką duomenų bazėje, tada būtų galima padaryti ir centrinę paiešką per lietuviškų dienoraščių archyvą (nes Google sunkiai susitvarko su dažnai besikeičiančia informacija). Aišku tokia paieška būtų naudinga tik jei tų dienoraščių būtų pakankamai daug (o atrodo jų bus). Skaityti toliau…

Lietuviškoji blogosfera

Per pastaruosius mėnesius lietuviškų internetinių dienoraščių (weblogų) pridygo kaip grybų po lietaus. Dienoraščius pildo jau ne vien kompiuterastai, tai tampa masiniu reiškiniu (na, tas „masiškumas“ dar nėra labai masyvus – be livejournal vartotojų žinau gal kokį 50 žmonių, rašančių internete). Apie visą šitą dienoraščių karštinę jau pasakojo ir „Naujoji Komunikacija“ (ir įtariu prie jos tuo dar daugiau prisidėjo). Jau šiandien lietBlogs stebi virš 30 žmonių dienoraščius. Kai kurie jų neįdomūs (aišku skonio reikalas), kai kurie tiesiog Skaityti toliau…

Tobulesnis XHTML

Truputį šiandien tvarkiausi savo XHTML ir CSS ūkyje. Galima sakyti padariau savo šablonų reviziją ir stengiausi pakeisti kodą taip, kad visos žymės atitiktų tai ką jos ir reiškia. To pasekoje sumažėjo <div> elementų bei visokių <p class="foo">. Vietoj jų atsirado visa krūva<hx>. Šoniniame meniu esančios nuorodos yra ne kas kitas kaip sąrašas, tad jos dabar yra tarp <ul> ir <li> žymių. Tiesa, ne iki galo sutvarkiau pagrindinį stilių, tad geriau būtų jog kol kas naudotumėt alternatyvųjį (kuris kuo toliau tuo labiau man patinka ;-) Skaityti toliau…

CSS pokyčiai

Pastaruoju metu vėl nemažai skaičiau apie HTML bei CSS standartus, ir supratau, jog nuo to laiko kai dariau šio dienoraščio šablonus daug ko išmokau ir visą HTML+CSS daryčiau šiek tiek kitaip. Visų pirma, mano HTML nors ir validuojasi, bet nėra semantiškai tvarkingas – reikia pakeisti visus <p class="title"> į <h3>, šone esančias nuorodas sudėti į <ul> ir <li> žymes. CSS irgi čia nėra visai teisingas, mat beveik viskas nurodyta pikseliais. Tad jei naršyklėje bandysit daryt „increase font size“, tai nelabai kas turėtų keistis (bent jau ant IE). Skaityti toliau…

RSS kovoje prieš spamą

Kažkuriame dienoraštyje aptikau labai įdomią idėją apie tai kad kovoje su pašto šiūkšlėmis gali padėti RSS naujienos. O va šiandien panašia tema rašo ir Slashdot. Pagrindinė idėja tame, kad vietoj informacijos siuntimo (push technologija) pereinama prie informacijos gavimo tik pareikalavus (pull technologija). Mat RSS naujienas gauni tik kai jų paprašai (surenki jų adresą, arba užsiprenumeruoji savo RSS naujienų skaitymo programoje), ir jei tau jos nepatinka – labai lengva jų atsisakyti. Taigi RSS Skaityti toliau…

Perlo konkursas bei kitos naujienos

PlainBlack paskelbė Perlo programavimo konkursą susijusį su perline turinio valdymo sistema WebGUI. Pagrindinis prizas yra $1000, o iš viso priziniame fonde – $3000. Pats konkursas vyks iki gruodžio pirmos. Tiesa, Perlo šiame konkurse nelabai daug ir reikia, nes ten daugiausiai laukiama įdomių komponentų Perlinei turinio valdymo sistemai. Šiaip ganėtinai įdomus šitos kompanijos verslo modelis: pati TVS yra atviro kodo, o tokiais konkursais pritraukiama nemažai programuotojų (kurie priprogramuoja daug visokių įdomių ir naudingų dalykų) Skaityti toliau…

Migravimas į Palm’ą

Šiandien sumąsčiau, jog reiktų pabandyti pildyti = dienoraštį tiesiai iš Palmo. Tam didelių = kliūčių kaip ir nėra – yra galimybė = sinchronizuotis su el.pašto programa, o man daugiau nieko ir = nereikia. Tik problema tame, kad PalmOS nepalaiko lietuviškų = nosinių (o juk norisi rašyti taisyklingai lietuviškai ;) = Štai dabar rašau šį įrašą Palme ir = tikiuosi, kad serveryje teisingai veikia tas mažai naudotas = feature, kuris verčia mano pseudo-HTMLEntities = Skaityti toliau…

„use strict“ logotipas Ericssonui

Vat ėmė why2liz ir man paliepė parsisiųsti naują logotipą Ericsson T65 mobiliam, susijusį su Perlu ir atrodo pritaikytą kaip tik man. Kas įdomiausia, šitą logotipą aš pats dariau, ir jau naudoju porą mėnesių. Esato.com ten turi tokią galimybę, kad jei atsiunti jiem bmp, tai jie gali paverst į Ericsson logotipų formatą. Atrodo prieš mėnesį aš jį įkėliau kaip private, o gal ir ne, nepamenu.. žodžiu, prijaučiantys Perlui ir turintys Ericssonus, Skaityti toliau…

Kaip naudotis CSS float

Turbūt pats sudėtingiausias CSS dalykas yra visi tie float aprašymai (na, šiaip pats sunkiausias dalykas yra parašyti tokį CSS, kurį suprastų IE ;) Tiesą sakant iki šiol man float buvo šiek tiek mistiškas elementas, bet va per kažkurį dienoraštį aptikau puikų float paaiškinimą. Imkiet ir skaitykiet ;)

Suimtas MSBlaster.B kūrėjas

New York Post rašo, kad suimtas Windows MSBlaster.B viruso (kirmino) kūrėjas. Tai aštuoniolikmetis 145-kilograminis Bilo Geitso fanatikas ir vienišius (kaip skaičiau viename dienoraštyje, vertimas paprastai visuomenei: jis atrodo kaip eilinis kompiuterastas, jūs nesuklydote, jie visi visuomenės atstumti, labai protingi ir riebaluotais pirštais). Tiesa, čia ne jis parašė MSBlaster, jis tik modifikavo jį (vertimas visuomenei: gal jis ne toks ir protingas… protingieji vis dar nerasti ir dabar jau galanda kompiliatorius ir ruošiasi smogti naują Skaityti toliau…

Nežymūs WAP pakeitimai

Šiandien patobulinau lietBlogs WAP’inę versija. Pagrindinis naujas dalykas yra dienoraščių įrašų rodymas (imama iš XML viskas). Kartu pataisyti ir du riktai – pataisiau nuorodas į wmlproxy bei patobulinau HTML entities (būdavo problemų, kai ateidavo XML’e pačiame jau &amp; tai sugriaudavo XML struktūrą). Kaip visada, kodą galima rasti http://lietuvoje.lt/~moxliukas/files/lietBLOGS-wap-030827.tar.gz. Taip pat turbūt teko pastebėti, kad perdarytos nuorodos kairėje. Pamaniau, jog nebetenka prasmės kolegų dienoraščių nuorodų rašymas, kai visas tas nuorodas (ir dar daugiau) galima rasti pačiame http://dzhibas. Skaityti toliau…

Galvosūkiai su ++

Vat Perlmonksuose radau tokį įdomų klausimėlį . Štai kodo gabaliukas, pabandykit pasakyt ką jis spausdins (jo nepaleidę): $a = $b = $c = 1; $a = $a++ + $a++; $b = $b++ + $b ; $c = $c + $c++; print "$a $b $c"; Na, aš teisingai atsakiau ką spausdins tik du ;) (na, jei PHP taisyklėmis – tai visus tris). Atrodo kad Perlas čia skiriasi nuo PHP. PHP spausdina kaip ir tikėjausi 3 3 2, tuo tarpu Skaityti toliau…

lietBLOGS WAP versija

Vakar vakare padariau Džibo lietBLOGS WAP’inę versiją. Su WAP didžiausia problema yra ta, kad ribojamas puslapio dydis (kažkur iki 1200 baitų?). taip pat teko pasukt galvą dėl lietuviškų koduočių (WML Unikodas atrodo gana gerai palaikomas, tik reikia paduoti jį koduotą HTML entities (stiliumi &#x123;). Džibo XML yra paduodamas windows-1257 koduote, tad tenka jį konvertuotis į utf-8 (hmm.. kaip būtų paprasta jei visas pasaulis gyvenatų su viena koduote :) Šiaip tai trūksta dienoraščių autorių vardų Džibo pateikiamame XMLe, Skaityti toliau…

Išleistas PHP4.3.3

Štai ir išleistas PHP 4.3.3. Patobulinimai vėlgi gal daugiau kosmetiniai (daugiausia bibliotekų atnaujinimai) ir daug riktų pataisymų. Įdomiausi riktai yra „keletas skaičių ir buferių perpildymų, kurie gali būti pavojingi saugumui“ ir „multibaitinių simbolių su 0x5c antrame baite susigadinimas“. Siūloma visiems saugumo sumetimais pereiti prie naujos versijos. Hmm… vis ta nestabilioji 4.3.x šaka…

Komentarų jubiliejus

Šiuo metu kai rašau šitai šioje svetainėje yra 999 komentarai. Galima sakyt kaip ir koks nedidelis jubiliejus ;) Ta proga padariau šone ten trijų paskutinių komentuotų temų sąrašą – tikiuosi bus lengviau sekti kas ką kur pakomentavo ;) Ta pačia proga išsitraukiau ir statistiką kas čia daugiausiai mėgsta komentuoti – kadangi kompiuteristai dažnai yra statistikos maniakai tai manau bus įdomu: +-----------------+------+ | Vardas | kiek | +-----------------+------+ | moxliukas | 199 | | NB | 70 | | EnC | 47 | | anonimas | 41 | | scooox | 30 | | Lakunas | 27 | | arturaz | 26 | | Brat | 24 | | godzhirra_da_mc | 22 | | ic | 20 | | DzHiBaS | 19 | | azero | 19 | | oryx | 16 | | Emilis | 16 | | Liuksas | 15 | | matis | 15 | | shvln | 15 | | pukomuko | 14 | | dirty_dozen | 10 | | Pumba | 10 | +-----------------+------+

PHP simbolis – drambys?

Atrodo, kad phpclasses.org siūlo PHP simboliu padaryti dramblį (elePHPant). Kai tik skaičiau naujieną apie tai, tai galvojau kad dramblys didelis, nejudrus ir dėl to gi nelabai turėtų tikti PHP (na, Perlo simbolis kupranugaris irgi ne pats greičiausias – bet Perlo simbolis buvo parinktas ne Perlo bendruomenės, o O’Reilly korporacijos knygos viršeliui). Bet paskui prisiminiau jog Linuxo pingvinas irgi ne pats greičiausias gyvūnas pasaulyje. Na, man dar dramblys asocijuojasi su žodžiu Skaityti toliau…

Rikiavimas Ruby kalba

Perlo rikiavimo pavyzdžiai gali atrodyti sudėtingi, nes Perlo sintaksėje daug visokių @$%{}, o ir patys objektai iš tikrųjų tėra tik asociatyvieji masyvai, magišku būdu žinantys kokiam paketui jie priklauso. Tad štai rikiavimo Ruby kalba pavyzdžiai. Paprastas rikiavimas. a = [0,3,5,3,1,2,4,6,2,4,5,7,3] a.sort! a.each{|i| print i, ' '} (Galima tiek Perle, tiek Ruby rašyti tiesiog print a, bet tai išves masyvo narius neatskiriant juos tarpais. Pitonas matyt dumpina visą struktūrą tokiu atveju) Skaityti toliau…

Rikiavimas Perlo programavimo kalboje

Prieš savaitę Džibas aprašė rikiavomus Python kalba, tad sumaniau jog nereikia atsilikti, ir bandysiu pateikti analogiškus Perl rikiavimo būdus ;) Paprasčiausiai rikiuoti masyvo elementus didėjimo tvarka užtenka iškviesti funkciją sort: @a = (0,3,5,3,1,2,4,6,2,4,5,7,3); my @a = sort @a; print "$_ " for @a; Spausdina: 0 1 2 2 3 3 3 4 4 5 5 6 7 Kaip ir Pitone, galima pasirašyti savo rikiavimo funkciją: my @a = (0,3,5,3,1,2,4,6,2,4,5,7,3); @a = sort { $a - $b } @a; print "$_ " for @a; Spausdins tą patį kaip ir prieš tai. Skaityti toliau…

Standartai dienoraščiuose

Pasižiūrėjau kad puikusis naujasis Džibo projektukas „lietuviški dienoraščiai“ kažkaip keistai bendrauja su mano įrašų datomis (laikas rodomas penkiomis valandomis vėlesnis – dėl to mano įrašai puikuojasi visą laiką kaip patys naujausi ;) Esmė tame, kad visuose dienoraščiuose naudojamos dvi datų versijos – Dublin Core datos formatas (einantis <dc:date> lauke ISO 8601 formatu) ir standartinė Netscape (tais gūdžiais laikais kai buvo formuojami pirmi RDF standartai) įvesta RFC822 data (lauke <pubDate>). Aišku prie viso to prisideda dar tie visi džiaugsmai vadinami laiko Skaityti toliau…

Svetainės pokyčiai

Šiandieną kaip ir žadėjau sutvarkiau tą įžymųjį riktą, kai buvo įmanoma rašyti komentarus neegzistuojančioms temoms. Tiesa, padariau taip, kad kiekvienas komentaras, kuris neturi savo temos automatiškai einą į 666 dienoraščio įrašą – kiekviena kompiuterastinė svetainė turi savo keistų įdomybių, tad palieku šitą taip kaip yra (nesinori vienok trint visos tos 666-osios temos ;) Padariau dar vieną kosmetinį pataisymą – dabar veikia XHTML 1.0 standartas komentarų formoje (Trūko kai kurių uždarančiųjų žymių). Skaityti toliau…

Grįžau

Na štai, po kelių dienų bastymosi po Lietuvą, vėl sėdžiu Vilniuje prie savo kompiuterio. Kaip sakant „visur gerai, bet localhoste geriausia“. Na, visų ten įvykių kur ėjau, ką mačiau ir kur buvau nepasakosiu, nes tai niekam neįdomu. Jei trumpai, tai niekas nepasikeitė – nei susiradau merginą, nei ruošiuosi palikti kompiuterius ir išsikraustyti pas aborigenus. Tiesa, šiek tiek išskirtinė buvo paskutinė naktis Palangoje, galbūt verta šiokio tokio jūsų kompiuterastinio dėmesio. Grįžau į Palangą tik kokią 21 valandą (prieš tai buvau Nidoje, bet kelionės Skaityti toliau…

Perl.lt susirašinėjimo sąrašas

Vakar prisiruošiau paskambinti tėčiui į Kauną ir paprašyt kad perkrautų mano serveriuką, nes jis jau kokią savaitę dingęs iš Interneto. Na viskas gerai, viskas pasikėlė, viskas veikia. Tad galvoju pats laikas pakurti mailing listą (susirašinėjimo sąrašą ;) ir CVS. Pradėjau nuo elektroninio pašto. Kiek suprantu tai dažniausiai tokiems dalykams naudojamas GNU Mailman, rašytas Pythonu. Per apt-get susidėt sunkoka, nes man jis bando įgrūst dar ir senesnę Apache, tad ėmiausi standartinių priemonių grūsti viską iš Skaityti toliau…

Apache įdomybės

Kažkaip paskutiniu metu Apache pradėjo keistai elgtis. Na, gal ne paskutiniu metu, bet vis tiek keistai. Nightblade man pasakė, jog jam staiga pradėjo rodyti mano weblogo sourcą. Pagal visus Apache logus tai tik vieną kartą jam buvo persiųsta tiek baitų kiek yra source, o daugiau matyt tik kešuojama kažkur pas jį proksiuose ar dar kur nors. Kas keisčiausia, tai error.log yra visiškai tuščias ir švarus. Hmm… Tiesiog vieną kartą netyčia nesuveikė mod_perl, nes buvo Skaityti toliau…

perlreref pradinis vertimas

Štai pirmasis juodraštinis variantas. Labai sunku versti, nes daug sunkiai išverčiamų terminų ;) Na bet gal kam nors bus naudinga. PAVADINIMAS perlreref – Perlo įpraiškų žinynas APRAŠYMAS Tai trumpas Perlo įpraiškų žinynas. Pilnos informacijos apie įpraiškas ieškokite perlre ir perlop dokumentacijos skyriuose, o taip pat šio žinyno TOLIMESNĖ INFORMACIJA skyriuje. OPERATORIAI =~ nustato kuriam kintamajam taikyti šabloną. Jei nenurodoma, naudoja $_ $var =~ /foo/; m/įpraiška/igmsoxc ieško simbolių eilutėje įpraiškos atitikimo, su šiais galimais nustatymais: i Nekreipiant dėmesio į didžiąsias/mažąsias raides g Globalus - visi atitikimai m Per kelias eilutes - ^ ir $ atitinka vidines eilutes s Taikyti kaip vienai eilutei - . Skaityti toliau…

Perlo dokumentacijos vertimai

Atviro Kodo Lietuvai rūpesčiu atsirado jų serveryje lietuviškos Perlo dokumentacijos direktorija. Kol kas atrodo labai skurdžiai, bet tikiuosi papildyti tuos vertimus. Šiandien verčiau perlreref dokumentacijos skyrių, kuris turėtų Perle pasirodyt su 5.9.0 versija. Skyrius neilgas, tad artimiausiom dienom duosiu tą vertimą visų teismui.

Kaip matuot produktyvumą?

Perlmonksuose radau labai įdomų klausimą: Kaip matuoti programuotojo produktyvumą?. Ganėtinai standartiška yra skaičiuoti per dieną parašomas kodo eilutes, bet kas jeigu vienas programuotojas parašo du kart daugiau, bet palieka penkis kart daugiau riktų? Ar jis produktyvesnis už tą, kuris parašė mažiau, bet tvarkingiau? Kartais per dieną gali būti parašomas ir neigiamas skaičius eilučių – kartais optimizuojant kodas sutrumpinamas. Kaip skaičiuoti produktyvumą tokiu atveju? Atrodo kad geriausia būtų skaičiuoti projektui sugaištą laiką, bet ir Skaityti toliau…

Išleistas Ruby 1.8.0

Atrodo jog vakar buvo išleista Ruby 1.8.0 versija. Parsisiųsti ją galite iš http://www.ruby-lang.org/download-1.8.0.rbx Prisiminiau jog lietuviškos informacijos apie Ruby turbūt geriausia ieškotis mano kažkada pradėtuose versti Ruby manualuose. Viską apie Ruby lietuviškai galite rasti http://lietuvoje.lt/ruby (nors turbūt visus savo asmeninius dalykus reikės persikelti ant asmeninio serverio kada nors).

Naktinėjimai Kaune

Vat vakar su why2liu ir Xawieru buvom papramogaut Kaune. Pradėjom žaisdami pūlą kaip supratau tame pačiame kabake, kur vyko paskutinis kaunietiškas mytas. Man ten baisiai sekėsi, o why2liui teko laimė laimėti tik vieną partiją. Na bet čia neesmė. Kalbos savaime suprantama krypo į kompiuterastines temas. Why2liz susiparinęs dėl www čempionato, nors aš nematau tame jokios tragedijos. Čempionatai lieka čempionatais, juk svetainės daromos ne dėl čempionatų ;) O dėl pono Burgio tai manau irgi visų nuomonė aiški ;) Skaityti toliau…

Perl.lt idėjos

Nepraėjo nei trys dienos nuo to laiko kai parašiau jog gavom perl.lt domeino kontrolę, o jau vis dažniau sulaukiu klausimų kada ten atsiras svetainė. Tad manau reikia paaiškinti kaip aš tai įsivaizduoju. perl.lt yra hostinama pas mr2 KTU barako serveryje. Ten galų gale ir atsidurs visa svetainė. Developinimui galima pilnai naudoti mano serveriuką hacks.perl.lt, kuris tikrai nestebuklingas, bet testavimui jo turėtų pakakti. Juolab nebaisu jog jei kas ir sugrius, nes beveik daugiau niekam tas serveriukas ir Skaityti toliau…

Išleistas PHP4.3.3RC2

Pasiskaičiau šiandien naujieną PHP.lt apie PHP4.3.3RC2 išleidimą. Šiaip man gana keista jog tarp RC1 ir RC2 yra tiek daug pasikeitimų – o ypač kai pradedama naudoti kitas bibliotekų versijas. Kiek teko skaityti apie įvairių open source projektų release cycles, tai kai projektas įeina į „Release Candidate“ statusą joks kitoks naujas kodas nebepriimamas išskyrus bugfixus (o tai reiškia, kad jokios naujos bibliotekos nebededamos, nebevyksta jokie pakeitimai išskyrus tuos kai projektas neveikia taip kaip turėtų – Skaityti toliau…

Perl 5.8.1RC3, egzegezė ir t.t.

Prieš kelias minutes išleistas Perl 5.8.1 RC3. Tai atrodo paskutinis release cadidate prieš galutinį 5.8.1 variantą. Šiame RC3 dar pagerinta asociatyviųjų masyvų atsitiktinumas, bei ištaisyta dar kokia 20 klaidelių (na, kai kurios jų yra tik spellingo klaidos dokumentacijoje ;) RC3 galima parsisiųsti iš CPAN. Taipogi vakar buvo suforkinta 5.6.2 Perlo versija. Planuojama išleisti 5.6.2 už kokio mėnesio ar kito, nes jau yra susikaupę labai daug lopų 5.6.1 versijai, be to kai kurie dalykai iš 5. Skaityti toliau…

Naujienos iš mano gyvenimo

Na ką gi, vasara… Reiškia šiokias tokias atostogas, nežmoniškus karščius ir retesnį sėdėjimą prie kompiuterio ;) Nerašiau jau porą dienų, turbūt atostogų nuotaikų paveiktas. Per pastarąsias keletą dienų įvyko ir daug, ir nieko. Pirkau naują kompiuterį, kuriame dabar sėdi Debianas (hmmm, tik X-sai niekaip nepasileidžia – LCD monitorius jiems nepatinka, bet vakar susikompiliavau 4.3.0 versiją, ir atrodo veiks ;). Iš savo senuko Pentiumo 100 MHz išmečiau Windows95 ir taipogi sudėjau Debianą. Skaityti toliau…

Perlo dokumentacijos atnaujinimai

Vakar gavau patvirtinimą iš PAUSE, jog gavau CPAN ID KUDARASP. Nieko per daug nelaukęs šiandien pasirašiau modulį POD2::LT, kuris atitinka pereitą savaitę perl-documentation@perl.org susirašinėjimo sąraše pasiūlytą sistemą. Atrodo būsiu pirmasis, įkėlęs į CPAN POD2:: modulį. Pereitą savaitę tame pačiame susirašinėjimo sąraše buvo pasiūlytas ir lopas perldoc programai, kad ji galėtų priimti -L kalba opciją, ir rodytų dokumentaciją reikiama kalba. Italai modulyje POD2::IT parašė reikiamus lopus Perl 5.6.0 ir 5.6.1 versijoms. Ta proga aš parašiau lopus ActivePerl 5. Skaityti toliau…

Pagerintas register_globals?

Žaidžiuosi dabar per atostogas šiek tiek su Perl ir PHP ;) Ypač man Perle patinka „taint mode“, kuris tiesiog neleidžia naudoti kintamųjų, gautų iš išorinės aplinkos – ar tai būtų per shellą gauti kintamieji, ar GET/POST/COOKIE HTTP metodais gauti duomenys. PHP šiuo atžvilgiu tik dabar susirūpino šiais dalykais (register_globals gi būdavo On iki 4.2.0 versijos). O jeigu pasirašius savą register_globals atitikmenį? Štai kas man gavosi: <?php define("USE_GET", 1); define("USE_POST", 2); define("USE_COOKIE", 4); $USE_TYPE = array( 'integer' => '/(^\d+$)/', 'hexstring' => '/(^[0-9A-Fa-f]+$)/', 'raw' => '/(. Skaityti toliau…

Perlas gauna eilinį apdovanojimą, PHP portinamas į Parrot

use.perl.org rašo, jog Linux Journal paskelbė Perl5.8.0 geriausiu programavimo įrankiu. Atrodo niekam tai nesukėlė didelių nusistebėjimų. Tarp kitų nugalėtojų yra ir OpenOffice.org, ir PostgreSQL, Webmin, Mozilla1.4, iptables ir t.t Tuo tarpu užtikau Sterling Hughes dienoraštyje straipsniuką apie tai, jog jis pradėjo portinti PHP į parrot platformą. Parrot kada nors pakeis Zend engine?

Projektas „Ponie“

Ne per seniausiai (liepos 16) vyko O’reilly Open Source konferencija (OSCON), kuri yra labai populiari tarp atviro kodo programuotojų. Jos metu tradiciškai Larry Wall (na gi tas pats Perl autorius) perskaito pranešimą apie tai kaip sekasi Perlui. Šis pranešimas visad vadinasi „State of the Onion“ (pašaipa iš Amerikos prezidento metinio pranešimo, kuris vadinasi „State of the Union“). Šįmet tai jau septintasis pranešimas (jį galima rasti čia). Kaip ir visada, jis buvo juokingas, bet kartu atvėrė ir Larry Perlo viziją. Skaityti toliau…

Dar viena CSS pamoka

Užtikau dar vieną labai gerą pamokos stiliaus straipsnį apie CSS meniu. Na atrodo tai tikrai neblogai. Ech.. jei tik nereiktų taikytis prie kreivo IE CSS palaikymo tai tiek visokių gerų dalykų su CSS galima padaryt būtų ;)

Rusiškas Linux

Štai kaip atrodo rusiško Linux logotipas: http://ice.nice.ru/ruslinux.jpeg. Šypsojausi geras penkias minutes ir nesusilaikiau apie tai neparašęs ;)

Perlininkai visur…

Vat nuėjau į IRC tinklą irc.freenode.org pasižiūrėti kaip gyvena pasaulio programuotojai. Užsukau į #php ir #perl, pamačiau klausimą apie tai kaip sužinot ar serveris gyvas ir nepažiūrėjau kuriame kanale esu. Kadangi pasiūliau Perlinį sprendimą, tai buvau ne kaip sutiktas pasaulio PHPistų ;) <hollo> errr.. i cant figure out the most optimal way to deturn wether a server ip running or not <doc|work> hollo: check out curl (is the standard answer for that) <moxliukas> Net::Ping? Skaityti toliau…

Naudinga Perlo pragma

Kažkaip šiandien varčiausi Perlo dokumentaciją ir aptikau labai naudingą Perlo pragmą, kuri padeda geriau išsiaiškinti kaip veikia įpraiškos. Tereikia parašyti use re ‘debug’; ir visas įpraiškų paieškos procesas atsiveria prieš jus ;) Štai pavyzdys: use re 'debug'; my $f = 'foo'; $a =~ /o+/; Spausdina: Compiling REx `o+' size 4 Got 36 bytes for offset annotations. first at 2 1: PLUS(4) 2: EXACT <o>(0) 4: END(0) anchored `o' at 0 (checking anchored) plus minlen 1 Offsets: [4] 2[1] 1[1] 0[0] 3[0] Guessing start of match, REx `o+' against `foo'. Skaityti toliau…

Truputis ASP

Na, galvojau, kad ko jau ko, o VBScript tai nereikės niekad krapštyt. Klydau. Vat prisireikė staiga su ASP padaryt priėjimą prie Access duombazės ir būtent reikėjo daryti tai su ASP. Problemos sprenimą pradėjau pasigooglindamas apie pačią ASP technologiją. Realiai serveryje turėjau pasirinkimą iš VBScript, JavaScript ir PerlScript. Spėkit iš trijų kartų kurią kalbą pasirinkau naudoti. Neatspėjot, ne Perlą. Tiksliau jau buvau beveik viską parašęs PerlScriptu, bet ten tokia kvaila implementacija, kad nelikę iš to PerlScript viso Perlo grožio. Skaityti toliau…

Dar keletas „įvado į Perlą“ formatų

Na, kadangi trūko pdf formato, tai padariau ir jo versiją (bei keletą kitų). Dabar galima rasti pod, html, pdf, txt, TeX, man, doc, rtf ir chm versijas. Beje, labai būčiau dėkingas, jei galėtumėte padėti pataisyti šio įvado stilių ir rasti bei ištaisyti klaidas. Lietuvių kalba nėra mano stipriausia sfera, ir ypač prie galo sunkokai sekėsi versti. Žodžiu labai laukiu pastabų ir pasiūlymų. Aišku šiuo įvadu neapsiribosiu.. Perlo dokumentaciją sudaro 800000 Skaityti toliau…

Įvadas į Perlą įvairiais formatais

Persirašiau savąjį įvadą į Perlą (perlintro vertimą) į POD formatą. POD formatas yra Perlo dalis, juo rašoma visa Perlo dokumentacija, tad nenuostabu kad egzistuoja daug visokių konvertavimo programėlių, kuriomis iš POD galima sukurti HTML, txt, LaTeX, man ir kitokių formatų dokumentus. tad dabar įvadą į Perlą lietuviškai galima parsisiųsti šiais formatais: POD, HTML, LaTeX, man ir txt.

Parrot ir Python lenktynės

Jau seniai buvo kalbėta, jog vienas pagrindinių Parrot kūrėjų (Parrot yra Perl6 virtualioji platforma) Dan Sugalski susilažino su Python kūrėju Guido van Rossum, kad Parrot baitkodas bus greitesnis už Pitono baitkodą (Į Parrot baitkodą bus galima kompiliuoti ne vien Perl, bet ir Python, Ruby, Smalltalk, Basic, ir ką tik nori). Atrodo, jog Dan nori sukurti tokią platformą, kuri laisvai galėtų konkuruoti tarp jau dabar egzistuojančių. Tiesą sakant jau dabar mano 120MHz Pentiume Parrot sugeba vykdyti apie 1-2 Skaityti toliau…

Įvadas į Perl: baigiamoji dalis: įpraiškos ir kita

Įpraiškos Perlas palaiko sudėtingą ir plačią įpraiškų sintaksę. Pilną jos aprašymą galima rasti perlrequick, perlretut ir kituose dokumentacijos skyriuose. Tačiau trumpai: Paprastas tikrinimas if (/foo/) { ... } # 'true' jei $_ yra simbolių seka 'foo' if($a =~ /foo/) { ... } # 'true' jei $a yra simbolių seka 'foo' Įpraiškų operatorius // aprašytas perlop dokumentacijoje. Jis pagal nutylėjimą įprašką taiko kintamajam $_, tačiau tai galima pakeisti, pasinaudojus operatoriumi =~ (kurio aprašymą irgi galima rasti perlop dokumentacijoje). Skaityti toliau…

HTML::Mason

Šiandien susidėjau į serverį HTML::Mason modulį, kurio pagalba galima rašytis Perlinius skriptus PHP stiliumi – t.y. tiesiai įterpiant juos į HTML kodą. Tiesa, viskas ne taip paprasta, kaip tik HTML::Mason turi daugiau visokių ypatybių ir gali būti naudojamas tiek šablonams (jei norima tik tokio funkcionalumo), tiek PHP stiliaus programavimui. Kiek pamenu Nightblade buvo pareiškęs, kad jis stengiasi nebenaudot šablonų, o tik nuosaikiai naudoja PHP kodą pačiame HTML. Tai atrodo jog HTML::Mason filosofija ir yra būtent tokia. Skaityti toliau…

Super pakaitalas phpDevServeriui

Beklaidžiojant po PerlMonksus užtikau nuorodą į vieną neblogą sprendimą Windows platformai. Tai web serveris su visais programavimui reikalingais dalykais. Nors idėja panaši į phpDevServer, bet filosofija radikaliai skirtinga – kai devserver stengėsi būti kuo mažesnis, šitas daiktas stengiasi būti kuo didesnis ;) Štai kas į jį įeina: Apache 2.0.46, MySQL 4.0.13, PHP 4.3.2 + PEAR, Perl 5.8.0, mod_php 4.3.2, mod_perl 1.99_10, mod_ssl 2.0.46, openssl 0.9.7b, PHPMyAdmin 2.5.1, Webalizer 2.01-10, Mercury Mail Transport System for Win32 and NetWare Systems Skaityti toliau…

Perlo skaitymo iš bylų būdai

Perlas leidžia nuskaityti duomenis iš bylų daugybe būdų, kai kurie ganėtinai bjaurūs ir nenaudotini. Štai kad ir šis, sutinkamas dažniausiai: { local $/ = undef; open FH, "<$byla"; $duomenys = <FH>; close FH; } Teigiamos pusės: visiems įprasta. Iš kart nuskaito duomenis iš bylos nenaudojant tarpinių masyvų. Neigiamos pusės: $duomenys negali būti leksinis kintamasis, aprašytas su my, nes specialiai reikia sukurti bloką tam kam lokalizuotume $/ Kitas dažnas pavyzdys: @ARGV = ($byla); my $duomenys = join '', <>; Teigiama: Trumpa ir aišku. Skaityti toliau…

Išleistas Perl 5.8.1 RC1

Atrodo, kad ką tik išleistas Perl 5.8.1 RC1. perldelta dokumentacijoje matosi keletas pakeitimų. Vienas svarbiausių pakeitimų yra asociatyviųjų masyvų atsitiktinės tvarkos pagerinimo algoritmas (ten BugTraq berods rašė jog galima padaryt DOS ataką prieš programą, nes kol kas dauguma asociatyviųjų masyvų ne visai atsitiktiniu būdu sudaro masyvo raktų eilę – sudėtingas tas bugas, tik žinau kad egzistuoja beveik visose kalbose ir programose ir kad gali dėl to gautis Denial of Service, nors atrodo tik teoriniam lygyje) Skaityti toliau…

Įvadas į Perl: trečioji dalis: operatoriai ir I/O

Operatoriai ir funkcijos Perlas turi daug standartinių funkcijų. kai kurias jau matėme šiame įvade (tokias kaip print, sort arba reverse). Pilnas funkcijų sąrašas yra perlfunc dokumentacijoje ir apie kurią nors funkciją lengva pasiskaityti konsolėje įvedus perldoc -f funkcijospavadinimas. Perlo operatoriai pilnai aprašyti perlop dokumentacijoje. Štai keletas dažniau sutinkamų: Aritmetiniai: + sudėtis - atimtis * daugyba / dalyba Matematinio palyginimo: == lygybės != nelygybės < mažiau negu > daugiau negu <= mažiau arba lygu >= daugiau arba lygu Simbolių eilučių palyginimo: Skaityti toliau…

Darbai, darbai…

Jau galvojau, kad baigsis Dainų šventė tai bus kada atsikvėpt. Pasirodo užgriūva nauji projektai, kurie beje susiję labiau su mano darbu (internetas, programavimas, adminavimas ir pan.) Per pastarąsias dienas baiginėju verst perlintro – nėra ten tiek daug, bet visi laiko neturi, tame tarpe ir aš pats, tad gaunasi viskas lėtai. Na tikiuosi ryt poryt papostint paskutines „įvado į Perl“ dalis.

PHP šablonai: kodėl ne HTML?

Pasiskaičius apie lietuviškus (ir ne tik) PHP šablonus pasidarė man labai keista ir įdomu kodėl visuose php šablonuose naudojamos kelių stilių žymos (t.y ir <tplbilekas> HTML stiliaus ir {foo.bar} stiliaus) Kažkaip nesugebu šito pateisint niekaip. Juk gi su tais {} tik problemos su JavaScriptais ir panašiai (pamenat, pukomuko ten changeloge vargai aprašyti? :) Be to su HTML stiliaus žymomis tai jei nesuveikia šablonas dėl kažkokių priežasčių, tai nelenda šiūkšlės į ekraną, nes naršyklės ignoruoja nežinomas HTML žymes. Skaityti toliau…

Įvadas į Perl: antroji dalis: kintamųjų sritys, ciklai ir sąlygos

Kintamųjų sritys** Kol kas visada kintamuosius aprašėme naudodami šią sintaksę: my $kintamasis = "reikšmė"; Tiesą sakant, my nėra būtinas, galima tiesiog rašyti: $kintamasis = "reikšmė"; Tačiau jei praleidžiate my, sukuriamas globalusis kintamasis visoje jūsų programoje, o tai nėra pats geriausias programavimo būdas. my sukuria leksinės srities (lexically scoped) kintamąjį, kuris galioja tik tame bloke, kuriame jis yra aprašytas (bloką sudaro keletas sakinių, apskliaustų figūriniais skliaustais). my $a = "foo"; if ($kazkas) { my $b = "bar"; print $a; # spausdina "foo" print $b; # spausdina "bar" } print $a; # spausdina "foo" print $b; # nieko nespausdina, nes $b galiojimo blokas jau baigėsi Jeigu naudosite my kartu su use strict; jūsų programos pradžioje, Perlo interpretatorius galės pastebėti dažnas programuotojų klaidas ir apie tai jus įspėti. Skaityti toliau…

Dainų šventė

Kaip jau turbūt pastebėjot, paskutiniu metu čia ne dažnai atnaujinu svetainę. Priežastis paprasta – dainų šventė. Dirbu gi kompanijoj, kuri yra organizatorius, tad šią savaitę tikrai pakanka darbo ;)

Įvadas į Perl: pirma dalis: sintaksė ir kintamieji

Kažkada praeitą savaitę buvau pradėjęs versti perlintro dokumentaciją, bet kol kas to nesu baigęs daryti. Na, gal kam bus naudinga ir tai ką jau esu padaręs, tad štai pirmoji įvado į perl dalis ;) Kas yra Perl? Perl yra bendros paskirties programavimo kalba, kuri pradžioje buvo skirta teksto manipuliavimui, o dabar yra naudojama daugeliui užduočių: sistemų administravimui, interneto svetainių, tinklo, grafinių sąsajų programavimui ir kitoms užduotims. Ši kalba yra labiau praktiška (lengva naudoti, efektyvi, pilna) negu graži (maža, elegantiška, minimalistinė). Skaityti toliau…

Frontpage vartotojai

Man nedažnai tenka bendraut su klientais, kuriems reikai atlikti kokius nors internetinių svetainių programavimo darbus, tad šiandien susitikimas su vienu tokiu man pasirodė labai keistas. Užsakovas, firmos vadovas buvo labai malonus, viskas ten su juo sutarta, viskas tvarkoj. Perdavė jis tą visą reikalą tvarkyt vienam tokiam darbuotojui, kuris matyt kompanijoj daugiausiai nusimano apie kompiuterastinius internetinius dalykus (beje, kompanija yra labai maža, gal tik kokie 5 darbuotojai). Visa problema tame, kad jis mano jog nusimano labai gerai, nes minimaliai moka naudotis Frontpage (na, „minimaliai“ tai reiškia „moka įterpti nuorodą grafiniame režime“). Skaityti toliau…

Perl bendruomenė

Vakar po truputį pradėjau grįžinėti į IRC, bet tai kažkaip tai džiaugsmo neteikia. Atrodo kad #perl kanale vyrauja ganėtinai slogi pesimizmo pilna nuotaika. mr2 visai nusivylęs bet kokiomis pastangomis ir idėjomis pasiekti kažką vardan perlo Lietuvoje, nebemato visiškai jokios perspektyvos, nes jo nuomone tiesiog neliko normalių perl programuotojų. Prisiminėm tuos laikus, kai #perl kanale sėdėdavom trise ir tai buvo labai geri laikai. Matyt senstam mes, nostalgija mus apėmusi. Na, dabar kanale yra virš 20 žmonių, bet dauguma jų tik dėl „masės“, nemokantys ir kas turbūt dar baisiau, visai nesidomintys Perlu. Skaityti toliau…

Perl vs PHP mūšis

Na, šiandien užtikau tikrai lyg man paruoštą klausimą php.lt forume. Klausiama, kas geriau mokytis, PHP ar Perl. Aišku nesusilaikiau ir parašiau savo nuomonę. Tad jei norit pasiskaityt Perlinės propagandos iš mano lūpų, tai kreipkit savo naršykles ten ;) Bėgu slėptis nuo PHP fanatikų atakų ;)

„Sveikas, pasauli!“ konkurso rezultatai

Dėkui Sauliui, kuris priminė, kad reikia publikuoti „sveikas pasauli!“ konkurso rezultatus, nes tai jau turėjau padaryti prieš porą mėnesių ;) Iš viso dalyvavo 5 dalyviai, iš kurių viena mergina (kas yra labai malonu). Kadangi konkurso dalyvių ne tiek ir daug, tai sumaniau, kad visiems jiems pastatysiu po bokalą alaus. Kadangi sau statyt alaus kažkaip neišeina, tai šį papildomą atliekamą bokalą skiriu vienintelei dalyvavusiai merginai (manau jūs pilnai sutiksite, kad jos darbas to vertas). Skaityti toliau…

Įpraiškų programėlė

Aptikau ganėtinai įdomią programėlę, kuri vizualiai leidžia sudarinėti įpraiškas. Yra WIndows ir Linux versijos. Turėtų labai padėti rašyti įpraiškas žmonėms kurie nelabai jas dar moka ir supranta, o kartu ir palengvint tų baisių triaukščių įpraiškų rašymą jau pažengusiems. Ši programėlė palaiko „Perl compatible“ įpraiškų sintaksę, tad naudinga ir Perl, ir PHP, ir dar visokiem kitokiem programuotojams.

Svetainės portabilumas

Teko truputį pasukt galvą mąstant kaip reikės padaryt install skriptą šiai svetainei, jei kas norėtų tokį dalyką pasikurti pas save. Atrodo, kad įdiegimo programėlė gali būti sudėtingesnė už pačią svetainę ;) Kol kas šios svetainės įdiegimui reikia root teisių, nes visas dienoraščio pildymas veikia per elektroninį paštą (tad reikia priėjimo prie /etc/aliases). Na, tai nedidelė problema – galima pildymą daryti per HTML formas, apsaugotas slaptažodžiu. Kitas svarbus dalykas yra Perlo moduliai. Skaityti toliau…

Komentarų kodo pokyčiai

Visgi pakeičiau šiek tiek kodą, visiškai jo neperrašydamas. Komentarai nebeturėtų dubliuotis (tikiuosi). Sesijos pilnai dar neveikia (faktiškai iš vienos subrutinos reikia grąžinti ne masyvą, o nuorodą į masyvą, bet tam reiktų keist nemažai kodo ;) Pats didžiausias pokytis turbūt yra šioks toks BBCode įvedimas į komentarus. Sakau „šioks toks“, nes nežinau ar jis stabiliai veikia. Turėtų URL’us automatiškai parodyt su linkais (nieko nereik daryt, viskas turėtų automagiškai, jei URL prasideda http://). Skaityti toliau…

Gresia svetainės perrašymas

Dar savaitę kitą būsiu tikrai užimtas visokiais darbais (dėl to ir IRC nesirodau.. nors šiaip tai manau, kad tiek išsigydžiau šią ligą, jog net nebesinori ten būti. Turbūt vėl tapau normaliu eiliniu piliečiu ignoruojančiu IRC), bet kai atrasiu laiko reikės stipriai prisėsti prie šito dienoraščio kodo sutvarkymo. Pagrindinė problema yra ta, kad jis tapo ganėtinai smagia kodo koše, kurioje net parseris gali dantis išsilaužti (patarimas ateičiai – use CGI::Application). Visą Skaityti toliau…

PHP naujienos

Vakar buvo išleista PHP 4.3.3RC1 versija. Tiesą sakant Changeloge tik riktų pataisymai ir nieko radikaliai naujo. Na, taip ir turėtų būti – tai tik rodo, kad pagaliau 4.3.x šaka tampa stabilia (prisiminus kaip 4.3.0 turėjo greit būti pakeista 4.3.1 dėl kažkokio didelio CGI rikto tai lyg ši 4.3.x šaka nėra labai sėkminga stabilumo požiūriu) O štai pukomuko išleido 1.9 phemplate versiją. Aišku man labai malonu, kad mano teoriniai pamąstymai apie masyvų pririšimą prie šablonų įgijo realesnį egzistavimą (nors kaip ir sakiau, praktinio jų sugalvojimo kol kas nesugalvojau – nebent greičio padidėjimas, bet ir tai reikia patestuot). Skaityti toliau…

Neblogas straipsnis apie kodo optimizavimą

Suradau labai neblogą straipsnį iš MSDN apie kodo optimizavimą. Tiesa, jis daugiausia pritaikytas .NET, bet yra ten neblogų paaiškinimų kaip veikia cache, RAM, kietas diskas ir panašiai. Tas straipsnis labiau gal skirtas ompiliuojamoms į mašininį kodą kalboms, bet pravartu pasiskaityt visiems. Net nekenčiantiems .NET ir Microsoft. Na, aš tai visad dar manau, jog kodas pirma turi gerai veikt, ir tik po to kai nelieka riktų, reikia jį optimizuot. Vienas iš UNIX principų: „first, make it work, then, make it work fast“

Juokingas MS riktas

Čia turbūt juokingiausias Microsoft riktas ;) Error Message: Your Password Must Be at Least 18770 Characters and Cannot Repeat Any of Your Previous 30689 Passwords Sėkmės keičiantis slaptažodį ;)

Išleista Mozilla 1.4RC2

Išleista Mozilla 1.4RC2. Tai lyg ir paskutinis release candidate prieš galutinę 1.4 versiją. Savo ruožtu, 1.4 bus paskutinė Mozillos versija, kuri išleidžiama kartu su pašto klientu, IRC klientu, ir krūva kitų dalykų. Mozillos planuose ruošiamasi 1.5 ir 1.6 versijose įdėti daug „pavojingesnių kodo stabilumui“ patobulinimų bei visą dėmesį sutelkti į Firebird ir Thunderbird.

Sesija baigiasi, darbai tęsiasi

Tai lyg ir sesija eina link galo, šiandien laikiau paskutinį egzaminą. Na, dar liko kursinio gynimas. Tačiau sesijos pabaiga nereiškia darbų pabaigos, o jų prisikaupė sesijos metu nemažokai. Šiandien vėl įsidiegiau XChat, bet kas keisčiausia, atrodo nesu taip pasiilgęs IRC, kaip buvo galima tikėtis. O tai labai gerai, nes kaip minėjau, darbų turiu sočiai. Dar pastebėjau, jog esu ganėtinai atitrūkęs nuo pasaulio įvykių – pražiopsojau visą tą reikalą su SCO ir Linux bei daugelį kitų Skaityti toliau…

IE mirė, tegyvuoja Mozilla?

Nežinau ar tai tiesa, bet sklando gandai, jog Internet Explorer 6-oji versija bus jau paskutinė. Nuo šiol Microsoft nebegamins naujų IE versijų Makintošams bei atrodo kad nebegamins atskiros naršylės versijos. Žodžiu jei norėsit naudotis naujesniu IE, teks atsinaujint visą operacinę sistemą. Iš vienos pusės gal tai ir nieko tokio blogo – IE6.0 ilgam taps standartu, kuriuo visi naudosis (na, juk dar yra žmonių besinaudojančių Windows’98, tad negi jie greit dėsis naują operacinę sistemą tik Skaityti toliau…

Nepasiduok kompiuterio pagundoms

Po labai didelės pertraukos, į mano rankas pateko Kompiuterija. Vos tik atsivertus žurnalą perskaičiau labai juokingą Bronislavo Burgio straipsniuką „Nepasiduok kompiuterio pagundoms“. Idėja ten pagrindinė tame kad autorius bando išgelbėti visuomenę (ir kaip pats prisipažįsta, kartu ir save) nuo sukompiuterastėjimo ir bendravimo stokos. Na, man, kaip save gerbiančiam kompiuterastui, tai aišku sukėlė šypseną. Tokią didelę ir plačią. Tame aprašyti 9 punktai, ko nereiktų daryti prisėdus prie kompiuterio. Štai jie, paeiliui: Skaityti toliau…

Kompiuterinė lietuvybė

Prieš kokią savaitę prisijungiau prie komp_lt konferencijos. Padariau tai dėl to, kad pastebėjau jog man visgi rūpi lietuvybė kompiuterastinėse erdvėse (jeigu dar prisimenat, pamatęs anglišką Edmundo Mišeikio interneto dienoraštį buvau šiek tiek nepatenkintas ;). Aišku iš manęs prastas lietuvininkas. Nemoku nei gražiai stilistiškai lietuviškai rašyt, nei per daug ten laikausi rašybos taisyklių (visi mano sakiniai, nors ir užrašyti, bet skamba kaip šnekamoji kalba – nebus iš manęs rašytojo :) Bet visgi prie komp_lt prisijungiau. Skaityti toliau…

Perlo objektai

Sesija labai užimtas metas. Bet kartu tuo pačiu metu vyksta ir šiaip daug dalykų ir netgi retokai būnu prie kompiuterio. Kaip matau kai kurie (o ypač Nightblade) jau sunerimę, kad aš dingęs arba perėjęs į PHP stovyklą. Tai vat: nė velnio. Šiandien (tiksliau vakar, bet paskui taip išėjo, kad su viena mergina klaidžiojau po miškus, o paskui šiek tiek gėriau su mr2, perl ir Neska, tad Perlui neliko laiko) sumąsčiau, kad parašysiu apie Perlo objektus. Skaityti toliau…

Labai paprasti PHP šablonai

Šiandien kažkas PHP konferencijoj išreiškė mintį, kad kiekvienas save gerbiantis PHP programuotojas turi būti pasirašęs savo lankytojų skaitliuką, duomenų bazės abstrakcijos klasę ir šablonų klasę. Na, skaitliukas turbūt lengviausia :) Duomenų bazės šiokią tokią abstrakciją irgi esu rašęs, šablonus taip pat, tad turbūt galiu prisirašyti save prie tų „save gerbiančių PHP programuotojų“ ;) Tiesa, jokiu būdu nesu šablonų ekspertas. Teko man naudotis tik pukomuko phemplate, bei savo kurtais šablonais (kurie dabar šiek tiek juokingai atrodo, mat rašiau lygiai prieš metus. Skaityti toliau…

Ekstremalus programavimas su PHP

Prisiskaičiau daug visokių dalykų apie ekstremalų programavimą. Kaip žinia, ten labai svarbus programų testavimas. Faktiškai viena svarbiausių idėjų yra „pirma parašyk neveikiantį testą, paskui tik pakeisk programą, kad tas testas veiktų“. Šitaip testuojant kiekvieną programos gabaliuką galima užtikrinti kad programa veiks taip kaip buvo planuota ir liks mažiau nesugaudytų vabaliukų. Ant mano mylimojo Perl yra toks modulis Test::Simple (teko netgi girdėti kad Perlas turi vieną geriausių testavimo įrankų rinkinį – panašus yra lyg tik Javos JUnit). Skaityti toliau…

Funkcinis programavimas su Haskell

Vat šiandien truputį skaitinėjausi apie Haskell programavimo kalbą. Tai grynai funkcinė programavimo kalba (faktiškai pati įdomiausia dalis ten apie tai kas yra funkcinė programavimo kalba) ir bent jau man truputį priminė LISP tik be skliaustelių (na.. aišku priminė tik dėl Lambda funkcijų ir dėl to kad ten kintamųjų priskyrimas neturi reikšmės atrodo ;) Vat quicksort algoritmas Haskeliu: qsort [] = [] qsort (x:xs) = qsort elts_lt_x ++ [x] ++ qsort elts_greq_x where elts_lt_x = [y | y <- xs, y < x] elts_greq_x = [y | y <- xs, y >= x] Tiesą sakant kodas skaitosi gana lengvai jei šiek tiek matematikos mokaisi. Skaityti toliau…

Perkrauta matrica: kompiuterastinis požiūris

Šį penktadienį, atsiklausęs #php kanalo ar niekas neina gerti, supratau kad teks vakarą planuotis kažkaip pačiam. Kadangi vis dar prisilaikau „jokio IRC“ politikos, tai nutariau nueiti į kiną ir pažiūrėti perkrautą matricą. Tai jeigu dar nematėt šio filmo ir nenorit sužinot jo detalių, tučtuojau baikit skaityt. Jei jūs vis dar čia, reiškia norit pasiskaityti mano nuomonę apie filmą. Aš, kaip ir visi (ok, ne visi… pukomuko yra kitos nuomonės) esu nusivylęs filmu. Skaityti toliau…

Kursiniai, Google ir IRC

Na vakar lyg baigiau rašyti kursinį, šiandien priduot jį reikia :) Nors kursinis turėjo būti iš finansų srities, ganėtinai nemažai ten gavosi ekonometrijos ir matematinių skaičiavimų (man kažkaip labiau patinka kai yra krūva mažai kam suprantamų formulių ir statistinių tekstų, o ne daug priskiesta pliurpalizmų) Šiandien darbe pasižiūrėjau kaip lietuvoje.lt serverį suranda google. Atrodo prisidirbau – daugiausiai lankytojų iš google mane pasiekia įvedę paieškoje „decode iso 8859 c#“. Žodžiu kažkaip lyg ir tapau priešingos C# stovyklos pagalbos šaltiniu Skaityti toliau…

Išinstaliavau XChat

Bandydamas pažaboti savo laiko švaistymą sesijos metu, šiandien išinstaliavau visus IRC klientus bei darbe užblokavau 6667-6668 portus. Tad manęs nematysit IRC porą savaičių (išskyrus savaitgaliais…) Tikiuosi tai pagerins mano motyvaciją rengiantis egzaminams :) Einu skaitytis apie SODROS biudžeto sudarymo ir tvirtinimo procesą :/

Perl/CGI vs PHP

Perlmonks vėlgi turi šaunų threadą apie Perl/CGI vs PHP. Šį kartą jis pasižymėjo gana įdomiais posakiais (na, ko gi tikėtis, juk perlo fanatikų klausia nuomonės ;) Every PHP geek will claim PHP is better for so many reasons, but every perl geek knows better. PHP as a language is basically Perl with all the fun parts taken out PHP is easier to learn, Perl is easier to get things done Skaityti toliau…

Darbai, mokslai…

Nagi prasidėjo sesija. Be to ir darbai nesibaigia. Tai reiškia, kad aš čia per daug nesireikšiu kokias porą savaičių. Beje, prašė manęs šiandien parašyti perlinę programėlę, kuri išrinktų visas šių metų dienas, kur yra savaitgaliai. Didžiausias klausėjo nustebimas buvo tas, jog jei pateiki funkcijai Date::Calc->Day_of_Week() blogai suformuotą datą (tarkim 20012 metų 15 mėnesio 89 dieną) tai ji nesikeikia. Na, funkcija tokiu atveju grąžina 0, kai normliai grąžint turi nuo 1 ki 7, Skaityti toliau…

Optimizavau Ruby

Visgi nesinorėjo tikėti, kad Ruby toks lėtas, todėl pasiskaičiau manualą. Pirma, susitvarkiau su tuo nil. Pasirodo, užteko nurodyt reikšmę pagal nutylėjimą (hmmm… įdomu tokie bajeriai kitose kalbose iš vis yra?). Paskui ir patį kodą perrašiau truputį panašiau į Ruby kodą ;) Rezultatas aiškus: kodas sutrumpėjo iki kokių 6 eilučių (atkaklios rungtynės su Perlu ;), o kodo greitis padidėjo penkis (!) kartus. Tiesa, algoritmas šiek tiek pasikeitė. Reikės tuo pačiu algoritmu ant PHP ką nors pabandyt. Skaityti toliau…

Perl vs PHP vs Ruby

Taip jau visad gaunasi kad kai reikia mokytis tai darai bet ką, tik ne mokaisi. Tad šiandien padariau dar vieną benchmarką, kuris gal būt bus įdomus ir kitiems. Problema tokia: reikia programos, kuri nuskaitytų bylą ir suskaičiuotų kiek yra skirtingų simbolių (tarkim „a“ – 152 kartai, „b“ – 189, ir panašiai). Algoritmas paprastas ir visur vienodas: nusiskaitom bylą po eilutę, skaidom į simbolių masyvą, pereinam per šį masyvą, padidindami atitinkamas reikšmes saugomas asociatyviajame masyve (jei skamba sudėtingai, tai žiūrėkit kodą, ten aiškiau ;) Skaityti toliau…

Įpraiškų greičio testai

Šiandien visą dieną rašiau kursinį darbą (tikrai ne apie programavimą… Apie valstybės išlaidų skirstymą pagal valstybės funkcijas bei struktūrinių pokyčių tendencijas :). Tai vakare sugalvojau kad reikia truputį pailsėt ir nuėjau pasibandyt įpraiškų greičių. Tarkim turim stringą „Čia gali būti tiek Perlas, tiek Pitonas“ ir norim patikrint ar jame yra „Perl“ arba „Python“ (šiuo atveju yra tik „Perl“, nes „Python“ parašytas su trumpa „i“). Šiam tikslui tiktų labai paprasta įpraiška (tiems, kas jau nori rėkti „bet čia juk nereikia įpraiškos! Skaityti toliau…

Prisiminiau Ruby

Tai kaip sakiau, pasileidau serveryje mod_ruby. Na, galvoju reikia prisiminti apie ką tas pats Rubinas yra ;) Taigi išsitraukiau senus savo paties verstus manualus ir programėles, kurias galima rasti čia ir pasileidau testinį skriptuką. Jo kodą galima rasti čia. Smagi visgi kalba rubinas. Dar šiek tiek skaitinėjau apie Smalltalk. Atrodo viena objektinio programavimo pradininkių, bet skirta daugiausia vaikams (nu kaip Logo beveik, arba man tik toks įspūdis susidarė). Tačiau smalltalk irgi turi gerų idėjų. Skaityti toliau…

LiveJournal sistema ir jos problemos

Jei kada norėjot sužinoti kaip veikai didelės svetainės, kaip tarkim LiveJournal, tai galit pasiskaityt apie tai čia. Ten taip pat aprašomos problemos, su kuriomis jie susiduria, ir kaip jie ruošiasi jas spręsti. Atrodo didžiausia jų problema yra MySQL. Ech, aš irgi noriu klasterio serverių ;) Na, bent jau vieno gero serverio…

Simon Willison: CSS mokslai tęsiasi

Jau seniau rašiau apie Simon Willison ir jo CSS pradžiamokslius. Tai vat, šią savaitę jis parašė dar dvi dalis apie CSS: viena jų gynai teorinė, ir aiškina apie CSS dežės modelį, o kitas jį pritaiko jį praktiškai. Naudingi skaitiniai.

Išleista Mozilla 1.4 RC1

Šiandien išleistas Mozilla 1.4 RC1, taigi Mozilla 1.4 jau išlipo iš beta stadijos. Pagrindinis pagerinimas yra galimybė naudotis MS Proksiais (tai labai svarbu didelėse korporacijose, kur iki šiol dėl MS proksių reikdavo naudoti tik IE). Aišku kaip visada krūva kitų nedidelių pagerinimų. Tiesa, kažkodėl visa 1.4 serija man neveikia ant WinXP namie :/ Reikės pažiūrėt, gal jau čia pataisė (nors jaučiu kad problema pas mane su Windowsais)

Pagaliau tvarka su webserveriu

Lyg atkasiau kodėl Apache naudojo seną perl versiją – pasirodo mod_perl buvo instaliuotas per apt-get ir ten su juo sunkoka susitvarkyt kartais buvo (pasirodo kompiliuotų paketų sistema ne visada geras dalykas). Žodžiu išėmiau paketus, sukompiliavau viską per sourcus. Viskas veikia šauniai ir turėtų bent jau teoriškai greičiau veikt, nes bent jau kodas dabar optimizuotas i686 o ne i386. Prie viso šito dar susidėjau ir mod_ruby. Nežinau ar jį kur panaudosiu, bet tai vis lieka mano planuose ;)

Išleistas PHP4.3.2

Šiandieną išleistas PHP4.3.2. Kadangi php.lt iki antradienio negyvas, tai galvoju bent savo webloge apie tai parašysiu ;) Faktiškai 4.3.2 yra pilnas bugfixų ir kitokių dalykų (atrodo radikaliai niekas nepasikeitė, tokių dalykų kaip register_globals pokytis lyg išvengta). Šioje versijoje pataisyta keletas buferio perpildymo klaidų, perdarytas Apache2.0 SAPI modulis, atsisakyta palaikyti GD1.x.x (nuo šiol tik GD 2.x.x) Windowsuose, parašytas man puslapis PHP CLI ir daug kitokių visokių vabaliukų išgaudymų. Parsisiųsti galite iš čia, Changelogą rasite čia. Skaityti toliau…

Perlmonks: Ar visada geriausia drėbti tiesą į akis?

Perlmonks kaip dažnai būna, turi puikią diskusiją apie tai ar kompiuteristai turėtų visada drėbti tiesą į akis (na, stiliumi „kvaily, viską ką čia parašei yra nesamonė“ arba „ negi sunku eit ir pasiskaityt tą manualą“). Diskusijoj nuspręsta, kad kompiuterastai sunkiai moka bendrauti su žmonėmis. Atrodo kad labai sunku rasti žmogų, kuris mokėtų puikiai analitiškai mąstyti, o kartu ir mokėti gerai bendrauti su žmonėmis, o kompiuteristui pasirodo reikia abiejų šių savybių. Dar Skaityti toliau…

Naujo Perlo galimybės koduočių klausimu

Kaip minėjau, susidėjau naują (na, netokį jau ir naują.. apie metų senumo) Perlą 5.8.0. Didžiausias jo pasiekimas yra tas kad viskas viduje daroma Unikodu ir žymiai lengviau dirbti su koduotėmis. Man ypač patiko galimybė nurodyti bylos ar IO stream’o koduotę ir tuo padaryti automagišką koduočių keitimą: # Nurodom, kad duomenys ateina iso-8859-13 koduote binmode STDIN, ":encoding(iso-8859-13)"; # Ir kad spausdint juos reikia pakeitus į utf-8 binmode STDOUT, ":encoding(utf-8)"; Na, tokios „automagiškos“ bylų konvertavimo galimybės Skaityti toliau…

UTF-8 naujienos: nagi?

Tai vat, RSS dabar eina UTF-8 kodavimu. Šitą sugebėjau greitai padaryti, nes tas skriptukas, kuris gaudo el.paštu siunčiamas naujienas ir jas deda į duombazę bei sugeneruoja RSS eina ne per Apache, o tiesiog per shellą. Apache vis dar gyvena su perl5.6.1, kuris nepalaiko normalių simbolių užkodavimų/atkodavimų. Faktiškai vienitelis pakeitimas, kurį padariau buvo šios eilutės pakeitimas (duomenys vis dar saugomi iso-8859-13 duombazėje): $dt = encode("utf8", decode("iso-8859-13", $dt)); Lyg validuojasi normaliai. Žiūrėsim.

Kelias UTF-8 link

Nagi pradėjau žygį UTF-8 link. Pirmas etapas: perl5.8.0 įdiegimas. Nesu labai geras linux adminas (heh, aš juk programeris), tad dedant šį dalyką susidūriau su keletu problemų. Viskas įsidiegė lyg ir normaliai, tik paskui taiop gavosi kad Perlas neberado pusės savo modulių (jie ten liko kur gyveno 5.6.1). Na, lyg anokia čia bėda. Persikompiliuosiu ir modulius. Pasirodo CPAN laikinoji atmintis (cache) vis dar likus po senovei ir bandant įdiegti tarkim DBD::mysql man sako kad viskas jau įdiegta ir nereik čia nieko Skaityti toliau…

RSS: tolimesni sprendimai

Na, išsitestavau su RSS validatoriumi: Valid RSS. Tiesa, buvo problemų su <pubDate> lauku – valandos buvo rašomos ne dviem skaitmenimis, o vienu, tad tą pataisiau. Koduotę palikau tą pačią. Tiesa, HTTP headeryje XML koduotė buvo nurodoma blogai (T.y. “Windows-1257”), tad pakeičiau ir tą, bet tai neturėtų turėti reikšmės (o gal?). Pažiūrėkit ar dar vis yra problemų. Beje, pukomuko RSS nesivaliduoja, nes randa klaidą XML Parsing error: unknown encoding. Tai visgi aš teisus? Skaityti toliau…

Nusiskundimai dėl RSS

Pastaruoju metu populiarėjant C# bei .NET vis gaunu nusiskundimų kad mano RSS naujienose „kreiva lietuvybė“. Tokių priekaištų esu sulaukęs iš Emilio, bei scooox (Tiesa, scooox tik prašė pakeisti koduotę). Tai kame pas mane problema? Jos pas mane nėra. Kalta .NET, kuri nepalaiko standartinės lietuviškos ISO-8859-13 koduotės. ISO koduotės yra standartas, ir jei jį ignoruoja Microsoft, tai čia ne mano bėdos. Skamba griežtai? Galbūt. Čia panaši situacija kaip ir su Outlook Express, kuri iki šiol lietuviška ISO koduote laiko Skaityti toliau…

Excel, VisualBasic ir goto

Universitete tenka man retkarčiais prisėsti prie Visual Basic ir suprogramuoti vieną kitą Excel makrosą (kaip sakant tenka iš tikrųjų pažinti VBasic blogybes :). Tiesą pasakius, pati kalba neatrodo ten per daug baisi ir bloga (na, jei tik apsiriboji makrosų rašymu ir viską taikai neprogramuojantiems ekonomistams… nors ir čia turbūt Python ar Ruby būtų aiškiau ir suprantamiau). Vienas blogiausių dalykų tas, kad kodo pavyzdžiai, kuriuos gaunu iš dėstytojų (t.y jie rašyti dėstytojų) yra Skaityti toliau…

Uždrauskit Comic Sans

Atrodo kad kai kuriem žmonėm MS Comic Sans šriftas tiek įkyrėjo, kad jie nori jį uždrausti. Ech, aš irgi pamenu kad kokiais 1996 metais Comic Sans buvo pats populiariausas šriftas. Tuo metu dar buvo populiarūs ir juodi puslapiai su ryškiomis raudonomis ar geltonomis mirksinčiomis raidėmis ;) Nostalgija…

Švartzinės transformacijos

Šiandien skaičiausi apie Švartzines transformacijas. Tai tokia technologija, kuri labai praverčia sortinant sudėtingus dalykus. Tarkime turim krūvą įrašų, kuriuose įrašyti vardas ir pavardė (Na, stilium „Petras Kudaras“) ir norim susortinti šiuos įrašus pagal pavardę abėcėlės tvarka. Paprasčiausia būtų daryti taip: @susortintas = sort { ($vardas1, $pavarde1) = split / /, $a; ($vardas2, $pavarde2) = split / /, $b; $pavarde1 cmp $pavarde2 } @nesortintas; Tik čia slypi nemaža problema: kiekvieno lyginimo metu iš naujo Skaityti toliau…

Lietuvos bankų sistema: huh?

Priminimas sau ateičiai: niekada netvarkyti bankinių reikalų Kaune šeštadieniais. Gavau vat sąskaitą iš Litnet už vieną domeną. Reikia pervesti pinigus į Vilniaus banką. Na, galvoju, jokių problemų, nueisiu kur nors mieste šeštadienį ir pervesiu. Klydau. Pirmiausia tas dalykas, kad Vilniaus bankas Kaune šeštadienį nedirba. Hmm… Na, gal jis orientuotas į verslo klientus, tai dėl to ir nedirba šeštadieniais. Aišku mano pagrindinė banko sąskaita kaip tik jame, na bet ką darysi. Pasivažinėjau Laisvės alėja ieškodamas kitų veikiančių bankų. Skaityti toliau…

Technologijų ir kalbų karai

Ech, na ir dienelė. Nepakanka to, kad lauke karšta, tai ir php-konf atgijo ;) Viskas prasidėjo gana nekaltai. Pradžioje buvo bandoma aprašyti, kas yra geras PHP programuotojas, po to nusivažiuota į lankas ir gavosi šaudymai iš visų pusių: C vs PHP, C++ vs PHP, C++ vs asm, Perl vs PHP, JSP vs the world ir panašiai. Bet bent jau įdomiau nei krūva kasdieninių klausimų „Ka reiškia headers already sent?“. Labiausiai mane suintrigavo Kewlar idėja: Skaityti toliau…

Perl6 knyga iš Oreilly

Na va, pasirodė ir pirma Oreilly knyga apie Perl6. Taip, apie Perl6 o ne Perl5. Eeh, gaila kad nėra nemokamų skyrių parsisiuntimui. Būčiau storas amerikonas su išsipūtusia pinigine, tai tikrai pirkčiau (gal kas padovanot norit? :)

Antroji Simon Willison CSS serijos dalis

Simon Willison papostino antrąją CSS rašliavų dalį. Idomu ir išsamu visiems kas domisi šia technologija (ypač pradedantiesiems)

Java ir Perlas

Aš vis dar susidomėjęs Java. Tačiau nepamirštu ir Perlo. Šiandien į savo Palm’ą susidėjau Oreillio Advanced Perl Programming, kurią jau senokai varčiau, o kai ją varčiau tai dar nelabai mokėjau patį Perl ir nelabai supratau apie ką ten rašo. Smalsumo vedamas nuėjau į CPAN ir paieškojau ko nors susijusio su Java. Ir aišku radau. Kad Perlu galima manipuliuoti Java VM ir klases tai nieko čia nuostabaus, mane daugiau suintrigavo Inline::Java Skaityti toliau…

Perl6 – better Perl than Perl

Perl6-language mailing liste pasirodė threadas, kuriame klausiama kaip būtų galima keliais žodžiais nusakyti Perl6. Man labai patiko Sam Vilain atsiųstas eilėraštukas: Perl6 is -- A better Java than C#, A better Lisp than Scheme. A better Makefile than Prolog, A better macro assembler than C. A worse ADA than Python, A better awk than Perl5. With apologies to poets worldwide. -- Sam Vilain, sam@vilain.net

Java: gal ne taip ir blogai

Šį vakarą praleidau (man) labai neįprastai: programavau Java. Taip, aišku ne savo noru. Prašomas pažįstamos merginos, kuriai reikia padaryti darbą. Na, aš tikrai nesu Java guru, tiesą sakant Java beveik visia nemoku. Atsimenu prieš kokius metus ar porą bandžiau kažką daryt su Java ir mane tai labai užkniso (hmm… atsimenu tais laikais Java 1.1 buvo naujovė… tai turbūt tikrai senokai). Na, galvojau, nieko nebus. Aišku užduotis lengva, nusiskaityt bylas iš direktorijos, Skaityti toliau…

Naujas Perl Golfo sezonas

Šiandien atsidarė naujas Perl Golfo sezonas. Šio konkurso tikslas yra parašyti kuo trumpesnę Perlo programą, sprendžiančią tam tikrą problemą. Šis konkursas vyksta jau porą metų ir yra tikrai populiarus. Pirmojo turnyro baigiamoji data yra gegužės 24, tad dar galite suskubti ;)

Tolesnės naujienos apie sirgimą

Taigi aš toliau sergu. Ne taip jau baisiai, nes visgi sėkmingai laikau kolius universitete ir vaikštau į darbą. Tiesa, vakar bandžiau žiūrėt Human Traffic savo kompe, bet per vidurį filmo supratau kad nebesuprantu apie ką ten viskas ir kad akys nebesifokusuoja. Aišku pasimatavau temperatūrą, ir teko gultis į lovą. Aišku atsigult į lovą nėra taip paprasta, nes joje nėra ką veikti. Tad bandžiau susitvarkyti savo Palm’ą, kad juo galėčiau normaliai programuoti ar bent jau pasiskaityt e-book’ų. Skaityti toliau…

LISP bei temperatūra

Aš sergu. Jaučiuosi lyg būčiau po pagirių, tik dar skauda galvą ir visus raumenis, bei pakilusi temperatūra. Ta proga stengiuosi per daug nesėdėti prie kompiuterio, bet man, kaip tikram kompiuterastui tai sunkiai sekasi. Todėl nusprendžiau imtis savo Palm’o ir išmokti LISP pagrindus. Labai smagi kalba. Tik skliaustelių daugoka, ypač kai turi temperatūros ir šiek tiek raibsta akys. Štai programa, skaičiuojanti Fibonačio seką (define fibs (letrec ((fibgen (lambda (a b) (cons a (delay (fibgen b (+ a b))))))) (fibgen 0 1)))

CSSEdit programėlė

Benaršydamas po įvairiausius weblogus radau programėlę CSSEdit, kuria labai efektyviai galima redaguoti CSS. Tiesa, vienas „bet“ – ji skirta Makintošams. Kartais man irgi norisi išbandyt tuos Makintošus :) Nepaisant to, pati programos svetainė padaryta su CSS ir iš kodo galima daug ko išmokti. Ypač man patiko niekur nejudantis viršutinis meniu (na, Mozilloj jis nejuda. Nežinau kaip su kitom naršyklėm).

Simon Willison CSS pradžiamoksliai

Simon Willison pradėjo savo žadėtą CSS pradžiamokslių seriją. Pirmasis straipsnis labai tinka visai nieko negirdėjusiems apie CSS privalumus bei nežinantiems kas tai yra. Labai išsamu, aišku, paprasta ir naudinga.

SharpReader ir .NET

pukomuko buvo šiek tiek sunerimęs, mat jam neveikė man RSS naujienos. Problema tame, kad kai kurie naujienų skaitytojai nesupranta ISO-8859-13 koduotės. Na nieko stebėtino, juk čia C#, o .NET su ISO-8859-13 nedraugauja (na čia mano prielaida. Juk Windows vis dar laikosi iso-8859-4 ir windows-1257). Na, galvoju ir aš išsibandysiu tą readerį. Parsisiunčiau. Paleidžiu. Library mscoree.dll not found. Huh? OK, pasigooglinu, parsisiunčiu. Paleidžiu. Please put registry key … to point to . Skaityti toliau…

Kolektyvinė #php susitikimo programa

Congo pagaliau įdėjo į internetą penktadienio #php susitikimo metu rašytą programą. Jos idėja buvo tame, kad kiekvienas parašytų po vieną kodo eilutę. Ganėtinai juokinga, ką primąsto įkaušę programeriai :) Aišku vienintelė Perlinė eilutė tai mano rašyta ;P

Perl yra jėga!

Kaip ir buvo man žadėjęs, pukomuko parašė savo dienoraštyje kažką gero apie Perl. Aišku kaip rašė, tai savu stiliumi ;). Tiesą sakant labai įdomus sutapimas, bet Star Wars tema naudoja ir Pythonininkai kovoje prieš Perl.

Išleistas Mozilla Firebird 0.6

Šiandien išleistas naujas Mozilla Firebird 0.6 (Release notes rasite čia). Didžiausi pakeitimai: nauja tema (Qute pagrindu), perdarytas nustatymų koregavimas, bookmarkai gavo kontekstinį meniu, automatinis paveiksliukų dydžio keitimas, about:config, ir MacOSX versija. Siųskitės Windowsams, Linuxui, MacOSX.

Rytas po #php susitikimo

Rytas visgi išaušo. Bandysiu bent kiek išsamiau aprašyt ką iš ten prisimenu. Atėjau į Kiniją kokią 18:50, ten jau buvo scooox, godzhirra su sese (taip vardo man ir nepasakė – pristatė „godzhirros sesė“), Shivas ir dar keletas žmonių. Kažkaip labai visi jauni man pasirodė, net spėjau pagalvot kad ne ten pataikiau, bet scooox mane pažinęs kažką pradėjo rėkaut ir supratau kad esu ten kur reikia. Visi sėdėjo tylūs ir be alaus. Skaityti toliau…

#php susitikimas

Štai ką pavyko ištraukt i Palm’o užrašų: 19:00 Viskas ramu. Nėra alaus. 19:11 Gavom alaus. 19:27 Aptarinėjam duombazes 19:29 Atvyksta DzHiBaS ir kompanija 19:33 MrTenente pasakoja įspūdžius. Amsterdamas kaip Vilnius 19:43 Atvyksta dar krūva žmonių, tarp jų ir trenktaz 19:45 include vs include_once, xml iš PEAR, XSLT:šūdas ar ne, PHP5 tik vienas topikas, bus 3-iam ketvirty. 19:57 Dalyvauja apie 28 žmonės. 20:07 Pradėjom rašyt kolektyvinę programą 20:15 Eikit vaikai namo, ką? Skaityti toliau…

Išleistas gcc3.3

Kaip rašo Slashdot, vakar buvo išleistas gcc3.3. Tai niekuo ypatingu neišsiskirianti populiariojo C kompiliatoriaus gcc versija. Pagrindiniai pokyčiai yra geresnis kodo profiliavimas, šiek tiek greitesnis kompiliavimas (trečios serijos gcckenčia nuo per-ne-lyg lėto C++ kompiliavimo – gcc2.95 tai daro 5-10% greičiau) ir geresnis C99 standarto palaikymas. Tiesa, su naujuoju kompiliatoriumi kol kas nesusikompiliuoja nei Linux branduolys, nei glibc2.3.2, mat yra kai kurių nedidelių pokyčių. Pats didžiausias turbūt yra tas kas preprocesorius nebepalaiko simbolių eilučių per kelias eilutes (string literals spanning multiple lines), bei šiokie tokie pokyčiai su variadinėmis funkcijomis (lygtai reikia naudoti stdargs. Skaityti toliau…

CSS3 Color standartas

Va pradėjau skaityt tuos naujuosius CSS standartus. Pirmas, kurį griebiau už ragų, buvo CSS3 Color. Štai kokie jame pakeitimai nuo CSS2 laikų… Kaip ir seniau, spalvas galima nurodyti dviem būdais: įprastiniais vardais, arba RGB reikšmėmis, pvz: em { color: lime } /* Spalvos vardas */ em { color: rgb(0,255,0) } /* RGB 0-255 */ em { color: #ff0000 } /* #rrggbb */ Atsirado naujas labai naudingas dalykas kaip opacity, kuris nurodo, kiek elementas turi būti permatomas. Skaityti toliau…

CSS3: reikalai juda į priekį

Iki šiol buvo išleistos tik dvi kandidatinės CSS3 rekomendacijos: Selectors (2001 Lapkričio 13) ir Media Queries (2002 Liepos 8). Abi šios rekomendacijos aprašo papildomus būdus kaip galima sujungti dokumento dalis su stiliaus aprašymu. O štai vakar W3C techininių leidinių skyriuje atsirado krūva naujų CSS3 rekomendacijų, kurios jau liečia pačius stiliaus aprašymus. Štai šios rekomendacijos: CSS3 Color (opacity jau ne vien SVG bus naudojamas), CSS3 Text (internacionalizacijos patobulinimai), CSS3 Ruby, CSS TV 1. Skaityti toliau…

Svetainės pokyčiai

Šią naktį padariau šiek tiek pakeitimų svetainėje. Kai kurie pastebimi, o kai kurie ir ne ;) Pirmiausia, šoniniame meniu įdėjau lietuviškų dienoraščių nuorodas. Šoninės nuorodos dabar imamos iš bendro šablono naudojant HTML::Template modulio <TMPL_INCLUDE> direktyvą. Taipogi pakeičiau ir CSS bylą, padarydamas kad nuorodų pabraukimai būtų daromi ne per text-decoration, o per border-bottom. Kam? O šiaip sau… eksperimentuodamas. Dabar su nuorodomis susijusi CSS dalis atrodo taip: .blogtext a { color: #005990; background-color:inherit; text-decoration: none; border-bottom: #005990 1px dotted; } . Skaityti toliau…

Standartų dienoraščių sąrašas

Vaikščiodamas internete užtikau su interneto standartais ir svetainių pasiekiamumu susijusių interneto dienoraščių sąrašą. Jame daug jau ir žinomų dienoraščių (kaip kad Zeldman, Sam Ruby, Simon Willison) bei daug naujų, negirdėtų neregėtų. Naudingas sąrašas besidomintiems.

Tolimesnės mintys dėl el.pašto sąsajos

Va DzHiBaS papostino aprašymą, kaip jis padarė savo dienoraščio pildymo el.paštu galimybę. Viskas pas jį padaryta su PHP, tad dėl įdomumo pateiksiu ir savo perlinę versiją: #!/usr/bin/perl open F, ">>/tpm/bloglogas.txt"; # atsidarom bylą, kur saugosim gautą paštą print F localtime; # įrašom į bylą laiką while(<STDIN>) { # kol gaunam duomenų.... print F $_; # ...tol rašom juos į bylą } close F; # uždarom bylą. Kitas dalykas, kurį turbūt darysiu su šituo dalyku, tai vienkartinis Skaityti toliau…

mod_perl vs mod_php

Perlmonks turi dar vieną įdomų threadą apie mod_perl vs mod_php. Faktiškai ten neblogai viskas paaiškinta: mod_php netgi negalima lyginti su mod_perl, nes tai skirtingi dalykai. mod_php būtų geriau lyginti su HTML::Embperl arba su Apache::Template. Viską galima apibendrinti šiais sakiniais: mod_perl is raw access to every phase of the Apache request and service cycle. mod_php is an Apache::Template-like access to the content phase only and thus far more limited. So to get “mod_perl” to act like PHP, you have to restrict it Skaityti toliau…

XBL, XSLT, CSS…

Žiūrint atsiliepimus apie CSS Zen Garden aptikau gana įdomius XBL ir XSLT palyginimus bei CSS pakeitimą XBL. Kol kas apie XBL man pačiam neteko daug girdėti. Tai Mozillos technologija, ir kitur ji neveikia. Pats autorius pripažįsta, kad realiam pasaulyje XBL negali pakeisti XSLT, nes jis nėra W3C standartas ir neveikia už Mozillos ribų. Visgi įdomūs skaitiniai.

Elektroninio pašto sąsaja – plačiau

Tai vat, kaip jau ir minėjau, pakūriau elektroninio pašto sąsają, ir dabar naujienas galiu rašyt per jį. Bandysiu dabar čia aprašyti kaip visa tai veikia (beje visą šitą taipogi rašau elektroniniu paštu). Viso šito dalyko esmė yra paprasta: elektroninio pašto serveris sugeba automatiškai perduoti gautą laišką nurodytai programai, tad specialiu adresu nusiųstas laiškas perduodamas perliniam skriptui, kuris jį perskaito, atsirenka kas yra kas ir sumeta ką reikia į duombazę. Pirmas etapas (el. Skaityti toliau…

Elektroninio pašto sąsaja

Na vat, bandau dabar įdėti įrašą į savo dienoraštį per elektroninį paštą. Bei testuoju lietuvybę. ąĄčČęĘėĖįĮ šŠųŲūŪžŽ

Nauji lietuviški interneto dienoraščiai

Šiandieną DzHiBaS paleido naują savo dienoraščio versiją. Tas pats dienoraščių variklis naudojamas ir pas Shivą, bei bus naudojamas ateityje ir pas aubergine. Taipogi atradau ir dar vieną lietuvišką interneto dienoraštį rašantį kompiuterastiškais klausimais. Be to ir pukomuko padarė pirmąjį savo kompiuterastinį įrašą. Ryškiai jau bręsta reikalas šone susirašyt lietuviškų kompiuterastiškų dienoraščių nuorodas.

Internetinis dienoraštis elektroniniu paštu

DzHiBaS pasidalino keletu idėjų su manimi dėl galimybių elektroniniu paštu pildyti savo internetinį dienoraštį. Idėja tame, kad pasiuntus laišką tam tikru adresu, būtų nuskaitomas laškas, padaromi atitinkami pakeitimai (BBkodas, automatinis URL atpažinimas ir panašiai) ir sukišama į duombazę. Štai mano idėjos ir mintys apie tai. Pirmiausia kam to reikia? Man asmeniškai tai būtų labai patogu pildyti dienoraštį per mobilųjį telefoną. Parašai, išsiunti, naujiena atsiranda. Net nereikia prie kompiuterio sėstis (na aišku teksto įvedimas per mobilųjį telefoną nėra pats lengviausias dalykas). Skaityti toliau…

Nedlib ir vartotojų pagausėjimas

Šiandien ir vakar pastebėjau labai didelį vartotojų padidėjimą (na, tarkim užvakar buvo 48 unikalūs lankytojai, o šiandien iki pietų jų jau yra 165). Ech, galvojau kad tapaus nerealiai populiarus. Tačiau visgi peržiūrėjau savo Apache logus (na, gal kokį labai naudingą referrer’į rasiu) ir radau krūvas tokių pranešimų: 193.219.130.9 - - [12/May/2003:11:55:48 +0200] \ "GET /~moxliukas/browse/index.pl?id=78 HTTP/1.1" 200 4802 "-" "Nedlib" Hmm… kas per velnias tas Nedlib, ir kodėl manimi domisi Lietuvos nacionalinė biblioteka? Skaityti toliau…

#php susitikimo detalės

Vakar užsakiau vietos Žirmūnų Mažojoje Kinijoje (užsakiau 15 žmonių, bet jei bus daugiau tai nemanau kad būtų problematiška). Žodžiu stalai užsakyti šiam penktadieniui, gegužės 16 dienai, 19 valandai, Petro vardu. Jei kas nežinot, kur yra Žirmūnų Mažoji Kinija, tai apsilankykite http://www.maps.lt/redirect.asp?eid=65002. Planuoja dalyvauti: MrTenente, matis, moxliukas, DzHiBaS, beside, scooox, Nightblade, Perle (?), guru_man(?), BG, ProTON(?), Congo, ABLomas(?), tamoshiuz(?), Loading, Hidro ?, Mrak, godzhirra_da_mc (?) Beje, jei kas vis tiek nežino kaip rasti šią sugėrimo vietą, ar bijo, kad nepažins Php’istų, tai kreipkitės į mane IRC, duosiu savo telefoną. Skaityti toliau…

Google ir Weblogai

Google ruošiasi sukurti atskirą įrankį internetinių dienoraščių naršymui. Kol kas neaišku, ar internetiniai dienoraščiai bus išimti iš pirmo puslapio paieškos rezultatų, tačiau praeitis rodo, kad turbūt jie bus iimti, mat kai Google įgijo galimybę ieškoti usenet naujienas, jos buvo panaikintos iš pirmo puslapio paieškos rezultatų. Su internetiniais dienoraščiais yra įdomi situacija. Jų yra pakankamai daug, ir jie turi nuorodas vienas į kitą, tad pagal Google technologiją, jie pasirodo aukštai paieškos rezultatuose. Skaityti toliau…

Rasmuso Lerdorfo PHP pabiros

scooox nurodė, kad galima parsisiųsti Rasmus’o Lerdorf’o PHP „tips’n’tricks“, kurie buvo pristatyti per konferenciją, vykusią Niujorke. Dauguma patarimų susiję su kodo optimizavimu, bei bytecode saugojimu laikinojoje atmintinėje, o taipogi su patarimais, kaip PHP pagalba generuoti paveiksliukus. Tiesa, yra ten ir labai keistų vietų — ypač man už akių užkliuvo jo siūlomas šablonų mechanizmas. Hmmm… kuo gi blogas phemplate modelis (kuris naudojamas ir Perlinėje HTML::Template, ir Template Toolkit, ir dar visur kitur? Skaityti toliau…

MSDN: PHP vs ASP

Pasirodo, Microsoft turi PHP ir ASP.NET palyginimą. Aišku tas palyginimas labai vienpusis, bet ganėtinai keista, jog Microsoft naudoja tuos pačius argumentus prieš PHP kaip ir aš dažnai vartoju: lėtumas, funkcijų vardų nepastovumas, sudėtingas duomenų bazių naudojimas. Na, tas straipsnis bent jau parodo kad Microsoft rimtai žiūri į PHP kaip į konkurentus.

Jeffrey Zeldman knyga apie interneto dizainą laikantis standartų

Gegužės 12 dieną įžymusis Jeffrey Zeldman išleidžia savo knygą „Designing with Web Standards“. Jeffrey Zeldman yra vienas žymiausių apie interneto dizaino technologijas rašančių žmonių ir stipriai palaiko visus naujausius standartus. Ši knyga yra apie tai kaip galima padaryti internetinės svetainės dizainą su CSS. O pats šauniausias dalykas, kad keletą skyrių galima parsisiųsti PDF formate.

Išleistas Linky 1.6.0

Šiandien išleista Mozillos priedo Linky 1.6.0 versija. Didžiausias skirtumas nuo ankstesnės versijos yra tas, kad jis dabar veikia ir Mozilla Mail pašto kliente. Ką daro Linky? Jis gali atidaryti visas puslapio nuorodas naujuose kortelėse arba languose, gali paprastu tekstu parodyti visas puslapio nuorodas, gali atidaryti visus puslapio paveiksliukus atskiroje kortelėje ir panašiai. Mažas naudingas daikčiukas.

CSS Zen Sodas

CSS Zen Garden yra labai gražus dizainerių projektas, kuriame naudojama ta pati HTML byla, bet skirtingas CSS. Šiuo metu ten galima pamatyti penkis radikaliai skirtingus dizainus. Tiesiog puiku. Tai puikiai parodo, koks galingas gali būti CSS. Beje, verta pasistudijuoti ir kodą.

Siemens buferio perpildymas

mr2 man persiuntė laišką iš bugtraq apie įdomų buferio perpildymą Siemens 45 serijos telefonuose. Pasiuntę specialiai suformuotą SMS žinutę į tokį telefoną galite jį išjungti be jokių girdimo signalo. Įjungus telefoną jis lyg veikia normaliai, tik neįmanoma nueiti į „Messages->Inbox“. Tai įvyksta dėl buferio perpildymo. SMS žinutėje paveiksliuko įterpimas yra žymimas %IMG_NAME, tačiau jei vietoj IMG_NAME įvesite 157 bet kokių simbolių, tai ir įvyks minėtas buferio perpildymas. Štai eksploito pavyzdys: Skaityti toliau…

Microsoft .NET Passport pažeidžiamumas

Aptiktas Microsoft .NET Passport pažeidžiamumas, kuris liečia ir Hotmail paštą (dar kažkas juo naudojasi?). Bet kas gali pakeisti bet kurio vartotojo slaptažodį ir tada pasinaudoti jo vartotojo sąskaita. Šiaip pažeidžiamumas gana juokingas – .NET serverio galima paprašyti pakeisti slaptažodį (adresu https://register.passport.net/emailpwdreset.srf?lc=1033&em=auka@hotmail.com&id=&cb=&prefem=lauzhytojas@lauzhytojas.lt&rst=1), ir jis atsiųs nurodytu adresu (lauzhytojas@lauzhytojas.lt) URL (panašų į http://register.passport.net/EmailPage.srf?EmailID=CD4DC30B34D9ABC6&URLNum=0&lc=1033), kuriuo nuėjus galima pasikeisti slaptažodį. Nuėjus tuo URL ir užpildžius formą, slaptažodis bus pakeistas neįvedus senojo slaptažodžio. Smagumynai. Plačiau apie tai SecurityFocus Skaityti toliau…

Sveikas, grįžęs, Pukai!

Šiandien pastebėjau, kad pukomuko vėl atidarė savo dienoraštį. Na, ko dar čia spoksot, eikit jo skaityt, jis šimtą kartų vertingesnis už šį!

Straipsnis apie PDF generavimą su PHP

Webmonkey turi gana neblogą straipsniuką apie PDF generavimą su PHP. Tiesa, pusė to straipsnio yra apie įdiegimą (kuris pasirodo yra baisiai sudėtingas), o kita — apie jo vartojimą. Skaitant tą straipsnį iškilo man mintis ar Perle irgi taip įmanoma padaryti. Trumpas apsilankymas pas CPAN, perl -MCPAN -e ‘install PDF::Create’ ir jau turiu modulį PDF generavimui Perle. Štai Perlinis kodas, sugeneruojantis PDF dokumentą (pavyzdį galit matyti čia): #!/usr/bin/perl use strict; use PDF::Create; my $pdf = new PDF::Create('filename' => 'out. Skaityti toliau…

Laikinoji atmintinė su PHP

Ši svetainė šiuo metu yra generuojama visiškai dinamiškai, t.y. užduodama krūva SQL klausimų, paimamas šablonas ir pagal jį sukonstruojamas puslapis. Visa tai labai gerai, kai lankytojų skaičius nedidelis (o lankytojų skaičius čia nėra didelis – apie 100-150 unikalių lankytojų per parą. Tad sumąsčiau, kad reikėtų pasidaryti šiokią tokią laikinosios atmintinės (kešavimo) sistemą, ir bent jau RSS naujienų negeneruoti dinamiškai. Kol kas to nereikia ta prasme, kad serveris puikiai dar viską paveža (nors tą serverį sunkiai apsiverčia liežuvis serveriu vadint – mano skaičiavimo mašinėlė turbūt greitesnė yra), tačiau kaip visada šioje svetainėje viską darau tik eksperimentuodamas ;) Skaityti toliau…

SMTP pakaitalas

DzHiBaS atsiuntė man nuorodą į straipsnį iš joelonsoftware.com apie tai, kad reikia iš esmės pakeisti SMTP (elektroninio pašto) protokolą, nes tai būtų vienintelė efektyvi priemonė kovoje prieš „spam’ą“. Naujasis protokolas turėtų būti saugus, pagrįstas sertifikatų sistema bei mikromokesčiais, kurie padarytų masinį laiškų siuntinėjimą tiesiog nepelningu. Problema slypi tame, kad priversti žmones pereiti prie naujo protokolo bus sudėtinga. Tam turi būti perrašytos visos elektroninio pašto klientų programos, bei serveriai, o tai kainuoja daug. Skaityti toliau…

Lietuviškas Weblogas apie technologiją

Užklydęs į BlogShares (kuris pats savaime yra atskiras projektas, reikalaujantis atskiro aprašymo) tarp geriausiųjų žaidėjų pamačiau ir lietuvišką pavardę – Edmundas Mišeikis. Pasirodo jis vilnietis ir netgi turi savo internetinį dienoraštį pavadinimu Whispering, kuriame rašo apie su technologija susijusius dalykus. Tiesa, liūdna, kad jis angliškas (aš pastaruoju metu pastebiu kad vis tampu kažkokiu didesniu patriotu ir esu visom keturiom už lietuviško interneto gerinimą ;). Štai pačios svetainės pateiktas apibūdinimas: Whispering consolidates some knowledge in development of web applications. Skaityti toliau…

Mozillos Prefbar įrankių juosta

Šiandieną gavau elektroninio pašto laišką iš Artūro Šlajaus, kuris man priminė, kad niekur savo svetainėje nesu minėjęs Mozillos PrefBar įrankių juostos. Džiugu, kai tavo svetainę pradeda lankyti ir ja domėtis ne vien tavo gerai pažįstami žmonės. Mozilla PrefBar yra naudinga įrankių juosta, pritaikyta daugiau paprastiems naršytojams nei interneto programuotojams (kaip kad jau anksčiau aprašytas pnhToolbar). Aš pats PrefBar naudojuosi jau geras mėnuo, ir jis tikrai man pravertė. Pagrindinis PrefBar privalumas manau yra jo galimybė prisitiaikyti jį savo reikmėms. Skaityti toliau…

PHP FAQ idėja

Su Lakūnu sugalvojom, kad reikia labai dažnai užduodamų PHP klausimų sąrašo, nes tie patys klausimai dažnai kartojasi tie patys per tą patį. Idėja paprasta: rinkti užduodamus klausimus #php kanale ir sudėti juos į duomenų bazę. Jei vėl pasikartoja toks pats klausimas, užteks tik papastinti linką (na… mes tikimės kad užteks… Turbūt nelabai). Žodžiu turėtume palengvint sau gyvenimą nebeatsakinėdami į tą patį klausimą dešimtąjį kartą. Bent jau teoriškai turėtumėm palengvint sau gyvenimą. Skaityti toliau…

#php susitikimas

Šios dienos #php kanalo tema: 2003 gegužės 16 d. (penktadienis) – preliminari #PHP meeto data… Vieta? Rotušėlė? Preliminarûs dalyviai: MrTenente, Nightblade, scooox, moxliukas, … Veiksmo vietos, idejos labai priimamos ;] Va #php susitikimo jau seniai trūko. O juk pernai kiekvieną penktadienį toks vykdavo. Tikiuosi į šį susitikimą ateis daug žmonių („daug“ – tai bent kokie 8-10), nes poreikis tam kaip ir yra ;) Tiesa, nežinau kaip dėl „Rotušėlės“. Mane jos atžvilgiu kankina dvi prieštaringos mintys: viena vertus „Rotušėlė“ yra nekoks kabakas su nekokiu aptarnavimu ir panašiai, o kita vertus – tai #php tradicija. Skaityti toliau…

PHP print revisited

Paskaitęs mano rašliavas apie PHP print() funkciją, Lakūnas nurodė man atitinkamą manualo skyrių ir pasirodo, kad print() yra operatorius. Va čia tai buvo netikėta. Jau man galvoj nebesutelpa viskas :/ Nors print() ir yra operatorius, echo() yra šiaip kalbos dalis. Štai <?php print print 'foo'; ?> spausdina „foo1“ – kaip ir tikėtasi, tuo tarpu <?php print echo 'foo'; ?> meta klaidą „Parse error: parse error, unexpected T_ECHO“

Vogtos idėjos iš CGI::Application

CGI::Application yra puikus modulis Perlui, kuris leidžia išvengti ilgų „if/elsif/else“ blokų pagrindinėje web programos byloje. Pagrindinės bylos (tarkim index.pl) tikslas yra nuspręsti, kurį kodą vykdyti. Tarkime, per HTTP GET kintamąjį op perduodama informaciją, koks kodas turi būti įvykdytas. Tokiu atveju paprastas index.pl atrodytų kažkaip taip: #!/usr/bin/perl -w use CGI; my $r = new CGI; if($r->param('op') eq 'forumas') { # forumo kodas } elsif($r->param('op') eq 'naujienos') { # naujienų kodas } . Skaityti toliau…

CSS rolloveriai

Kažkas #php kanale paklausė, kaip įmanoma padaryti su CSS, kad pasikeistų lentelės langelio fonas. Šiek tiek pasikrapštęs (aišku galėjau paieškot internete, bet su GPRS gyvenu) sukurpiau panašų dalyką, visai be lentelių. Kiek bandžiau, jis veikia su IE6.0, Opera 7.0 ir Phoenix0.5 (tiksliau beveik 0.6 – kažkoks naktinis buildas). Štai šio dalyko kodas: <style type="text/css"> .list { margin: 0ex; padding: 0ex; } .list li { border: 1px solid #333; background: #999; color: #333; display: block; float:left; } . Skaityti toliau…

CSS eksperimentų puslapiukas

Įsidėkit šį puslapiuką į bookmarkus. Labai neblogi pavyzdžiai, ką galima pasiekti CSS pagalba. Ir daug ką išmokt galima, nes CSS nesibaigia ties a:hover { text-decoration: underline; }

Ginant struktūrinį žymėjimą

Simon Willison išreiškė savo nuomonę apie HTML naudojimą tik dokumento struktūrai aprašyti. Jo nuomone, jei profesionaliai dirbate interneto rinkoje ir dar nepradėjote naudoti CSS, tai kenkiate ir sau, ir savo klientams ir savo kolegoms. CSS gal ir ne stebuklingas dalykas, kuris išsprendžia visas problemas, bet CSS padeda daryti efektyvesnes svetaines. „Efektyvesnes“ – tai matomas daugiau naršyklių, lengvesnes programuoti (ar keisti) ir užimančias mažiau vietos. CSS nėra super sudėtinga. Tiesa, svetainę perversti visiškai pilnai į CSS yra sudėtinga, bet CSS gali padėti išsikrapštyti iš lentelių lentelėse ir permatomų GIF’ų košės. Skaityti toliau…

1000 lankytojų

Šiandieną, praėjus 20 dienų nuo šios svetainės atsidarymo, buvo užregistruotas 1000-asis lankytojas (tiksliau buvo sukurta 1000-oji sesija – tad tikrųjų realiųjų lankytojų turbūt dar gerokai mažiau). Na bet tai šiokia tokia pradžia. Ši svetainė nebaigta. Ir abejoju ar iš vis kada nors bus išbaigta, nes kaip sako biologai – „We have only one meaning for the word stable – and that is dead.“ Čia aišku daug ko trūksta (tarkim paieškos, BB kodo komentaruose), daug ką galima pagerinti (vartotojų registravimą, pridėti automatinį „referrer’ių“ sekimą, XML-RPC ir dar daug viso kito). Skaityti toliau…

Pertvarkymai #php kanale

Šiandieną DzHiBaS padarė keletą radikalių pertvarkymų #php kanale – buvo iš naujo perdarytas „access“ sąrašas bei nuimtas automatinis operatoriaus statuso suteikimas. #php kanalas yra turbūt didžiausias su programavimu susijęs kanalas lietuviškajame IRC, tačiau iki šiol jis gerokai kentėjo nuo vyravusio chaoso. „Access“ sąrašas sutrumpėjo nuo 45 iki 13 žmonių ir beveik visi gavo standartinį penktą lygį, kurio užtenka pagrindinėms kanalo funkcijoms atlikti. Tikiuosi po šių pertvarkymų #php taps tvarkingesnis ir įdomesnis bei naudingesnis tiek senbuviams, tiek naujokams. Skaityti toliau…

PHP funkcijos – kažko nesuprantu

Jau prieš keletą mėnesių pastebėjau, kad PHP print() (na ir echo()) yra kažkokios keistos funkcijos ta prasme, kad nebūtina jų argumentus dėti į skliaustelius. Žodžiu veikia abu šie variantai: print('foo'); print 'foo'; Jei antrą variantą bandysit padaryt su bet kuria kita funkcija – PHP pradės keiktis. Taigi, atsiverčiau PHP manualo skyrių apie „print“. Vat ten radau tokį daiktą: print() is not actually a real function (it is a language construct) so you are not required to use parentheses with it. Skaityti toliau…

Kaip būti pastebėtam Google

SearchEngineWatch turi 10 patarimų kaip sėkmingai pasirodyti Google. Turbūt labiausiai man patikęs yra antrasis: „Learn basic HTML“ ;).

IE bugas

Atrodo IE šitokį puslapiuką interpretuoja tiesiogiai, kaip ir parašyta: <html> <form> <input type crash> </form> </html> Update: mr2 nurodė dar vieną IE bugą: [1.] *perl -e “print qq’\xFF\xFE’; print qq’\r\r\n’ x 30000” > test.html * [2.] Atsidarykite su IE [3.] Pavyzdys -> http://migla.ktu.lt/~mr2/test.html

Kodėl verta naudoti Mozilla Firebird

Šiandien užklydau į Mozilla Firebird puslapį apie tai kodėl reikia pereiti prie Mozilla Firebird. Labai gera santrauka geriausių „featurų“, kurie svarbūs paprastiems žmonėms (rimtesni kompiuterastai vis tiek turbūt naudosis pilna Mozilla dėl visokių gerų JavaScript debuginimų ir DOM medžių). Tiesa, sužinojau ir kai ką naujo – apie CTRL-G ir CTRL-L klavišų sekas (dabar galiu naršyti visai be pelės) bei labai naudingą „Full Screen“, kuris visgi palieka visus tabus ir addreso laukelį. Skaityti toliau…

„Sveikaspasauli“ konkurso pratęsimas

Paskutinę savaitę keletas žmonių manęs prašė pratęsti „sveikaspasauli“ konkurso darbų priėmimo datą. Aš jau sakiau IRC, kad sutinku ją pratęsti iki gegužės 11 (iki referendumo dėl Europos sąjungos galo ☺) dienos. Šiuo metu turiu 4 darbus, dar bent 2-3 yra pažadėti, bet jų kol kas negavau. Tikiuosi, kad gausiu ir juos. Šiaip ar taip, darbų yra tikrai gražių (ne tik smegenis galima išsisukti bet ir klaviatūrą, norint juos netgi paleisti, ką jau kalbėt apie kodo skaitymą ☺). Skaityti toliau…

XUL ir PHP

PHPpatterns.com turi keletą įdomių straipsnių apie XUL ir PHP. Tiesa, tie straipsniai šiek tiek per daug subjektyvūs ir bando parodyti kad PHP yra pati geriausia kalba GUI kūrimui (na nežinau, man asmeniškai PHP-GTK neatrodo labai patogi ir per daug galinga. IM(NS)HO aišku). Pirmasis straipsnis – „XUL: rendering GUIs with PHP“ – daugiau kalba bendrai apie tai kas yra pats XUL ir kam jis naudingas (apie PHP ten užsimenama gana nežymiai, bet juk pati svetainė susijusi su PHP, tad turi kažką ta linkme parašyt). Skaityti toliau…

XHTML2

Situacija su HTML W3C akimis yra tokia: HTML4 mirė. XHTML1 yra tik pereinamoji stadija iš SGML į XML. Vienintelė ateitis slypi dar nebaigtame XHTML2 standarte. XHTML2 pasižymi tuo, kad jis nėra „backwards-compatible“ su HTML. XHTML1 standarte reikėjo tik prisiminti uždaryti visus tagus ir gal būt pakeisti vieną ar kitą atributą. XHTML2 turi radikalių pokyčių: <img /> nebebus, jį reikės keisti <object />, nebebus lentelių, HTML formos bus pilnai pakeistos XFORMS, kurios bent jau dvigubai sudėtingesnės. Skaityti toliau…

RSS data

Įdėjau į RSS naujienas ir <pubDate> lauką. Šiek tiek (ok, ne šiek tiek, o gerokai) buvau nustebęs, kad MySQL negali man automatiškai suformuoti RFC822 datos – teko rašyti DATE_FORMAT(kada, '%a, %d %M %Y %k:%i:%s EEST'). Negi nėra paprastesnio būdo? (ar aš blogai RTFM’inau?) Kitas dalykas, kuris man atrodo negražus – tai tas laiko zonos hardkodinimas. O beje, kurioj mes zonoj gyvenam? EST? EEST? GMT+3? Tiesa, dar įdėjau viską RSS į <! Skaityti toliau…

RSS newsfeedai šioje svetainėje

Po šiek tiek vargų įdėjau RSS naujienas. Jos atitinka RSS 2.0 standartą ir jas galima rasti čia. Darant šitą dalyką iškilo ir šiek tiek kitokių problemų. Pirmiausia – svetainė automatiškai įdėdavo Content-Type: text/html headerį, tad teko tą kodą perkelt į atskirą subą. Kita, didesnė problema – HTML entities buvimas jau sugeneruotame XML’e. Visoje šioje svetainėje apostrofai yra ’ ir XML parseriams tai nepatinka. Tiksliai nežinau kol kas kaip išspręsti šitą problemą (įdėti XHTML namespace į RSS newsfeedo XML? Skaityti toliau…

RSS koduotės

Bandant šiai svetainei padaryti RSS naujienas susidūriau su šiokia tokia dilema kokią koduotę naudoti. Visa svetainės informacija saugoma MySQL duomenų bazėje, o ji pilnai nepalaiko UTF-8 koduotės (na, bent jau 3-ia versija), tad duomenų koduotė yra Windows-1257. Galite paklausti kodėl ne ISO-8859-13 (juk ši svetainė atrodytų lyg koks technologijų bandymų laukas su XHTML ir grynai CSS dizainu) ir galiu pasakyti, kad IE sunkiai draugauja su ISO-8859-13 koduote. Šiaip reiktų visur pereit ant UTF-8 koduotės, bet kol kas problemos su MySQL. Skaityti toliau…

Kas tas Unicode ir kodėl tai svarbu?

Tim Bray parašė gana įdomų straipsniuką apie tai kas yra tas Unikodas, su kuo jis valgomas, ir kam jo reikia.

Cut & Paste CSS

Pagaliau pradėjo atsirasti ir nemokamų CSS kodo gabalų. Iki šiol buvo tik krūvos JavaScript „Cut’n’Paste“ svetainių, bet ne tiek jau daug apie CSS (Tiesa, CSS aprašymų visokių tai nemaža yra, bet grynai snippetų kolekcijų dar neteko matyti). Tai vat štai čia visai neblogų CSS pavyzdžių svetainė.

Naujienų skaityklės

Šiandien sumaniau pasiieškoti kokio nors newsfeed readerio (mmm… skaityklės), nes sėdint su GPRS vaikščioti po kiekvieną weblogą ir žiūrėti ar niekas neatsinaujino yra gana brangu, tiek finansiškai, tiek laiko prasme. Aišku yra scooox, tamoshiauz ir godzhirra_da_mc projektėlis www.fenix.mes.lt, bet jis man ne visai tinka, mes man norisi turėti galimybę pačiam nusistatinėti ko man reikia. Iš viso radau bent jau tris skaitykles Windows sistemai, tik jos visos kol kas alpha versijoje. Labiausiai man patikusi – FeedReader, yra atviro kodo. Skaityti toliau…

Mozillos įrankiai Web developeriams

Atradau ganėtinai trumpą, bet puikiai parodantį web programuotojams Mozillos pranašumus prieš IE straipsnį. Paminėtas ir Javascript debuginimas, ir DOM inspector, ir Page Info ir daugelis kitų dalykų. Jei neperėjot prie Mozillos, tai jau pats laikas ;)

Naudinga įrankių juosta Mozillai/Phoenix/Firebird&rsquo;ui

Atradau labai naudingą įrankių juostą Mozillai, bei Phoenix/Firebird’ui. Rašytas su XUL ir JS, ir turi tokius šaunius ir reikalingus dalykus kaip stilių įjungimą/išjungimą, kodo validaciją pagal standartus, HTML elementų paryškinimą, lango padidinimą/sumažinimą iki tam tikrų rezoliucijų, puslapio kukių rodymą ir nuorodas į W3C standatus. Tiesiog puiku. Štai dėl ko mėgstu Mozilla/Phoenix ;)

Parodos Info 2003 įspūdžiai

Vakar buvau užėjęs į parodą „Info 2003“, vykusią Kaune, Lengvosios atletikos manieže Aušros gatvėje. Tiesa, joje lankiausi jau visai prieš uždarymą, tad gal dėl to ji man pasirodė tokia menka ir tuščia. Na, bet bilietas studentui – 2 Lt, tad nėra ko skųstis. Jokių didelių naujienų toje parodoje napamačiau. Nebuvo ir jokių Microsoft atstovų su kuriais būtų galima pasiginčyti apie jų siūlomą naująjį Microsoft Server 2003 (gal būtų ir mane atvertę į tikrąjį Visual Basic tiesos kelią). Skaityti toliau…

Šūsnys naujienų iš pasaulio

Šiandien kaip niekad pilna įdomių straipsnių ir naujienų apie mokslą ir technologijas (apie programavimą kažkaip neišėjo kol kas šiandien paskaityt). BBC rašo, kad šiandien sukanka 50 metų kai buvo atrasta DNR – jei jum teko šiandien naudotis Google, tai ir jis šiandieną pasikeitęs pažymint šią progą. Vėlgi krūva bugų aprašymų iš Microsoft: čia, čia ir čia. Paveikta Windows NT, IE ir Outlook Express. Slashdot diskutuoja ar HTML gali būti menas. Man labiausiai patiko komentaras „In my experience, if a person doesn’t understand why HTML isn’t a programming language, it’s not worth my while to explain it“. Skaityti toliau…

Šiokis tokis regexpų straipsnis

Išverčiau šiokį tokį regexpų straipsniuką, kuris pritaikytas Perl, bet tikiu kad iš jo naudos turės ir PHP programuotojai. Patį straipsniuką galite rasti čia.

mod_rewrite ir mod_perl

Šiandieną nemažai laiko praleidau skaitinėdamas apie Apache modulį mod_rewrite, mat užsinorėjau šioje svetainėje gražių URL’ų (Tarkim http://www.lietuvoje.lt/~moxliukas/browse/42 vietoj įprastinio http://www.lietuvoje.lt/~moxliukas/index.pl?id=42). Galingas daiktas. Benaršydamas Apache modulių aprašymus radau labai neblogą svetainę refcards.com, kurioje galima atsisiųsti glaustus Apache, o svarbiausia mod_perl komandų sąrašus. Labai naudinga turėti pasidėjus po akimis. Hmmm… reiktų ir Perl bei PHP kažką panašaus padaryt… Ir aišku apie regexpus.

Atviras kodas padeda teroristams?

OpenBSD projektui nutrauktas finansavimas iš Pažengusių Ginybos Tiriamųjų Projektų Agentūros (DARPA), nes „atviras kodas padeda teroristinėms valstybėms“. Tiek šurmulio atviro kodo pasaulyje jau seniai nebuvo. Plačiau apie tai OpenBSD žurnale.

Perl požiūris į naujokus

Benaršydamas internetą atradau gana didelį fleimą apie Perl bendruomenės požiūrį į naujokus. Su kai kuriais punktais gal ir galima sutikti, bet ne su visais. Pirmiausia, Perl bendruomenė apkaltinama elitiškumu (Lietuvoje turbūt atvirkščiai – PHP bendruomenę kartais galima tuo apkaltinti). Tiesa, atsakymai į šį kaltinimą buvo įvairūs: nuo nuolankaus „bet juk jei neperskaitė naujokas dokumentacijos, tai negalima jam visko aiškint“ iki „ir labai gerai kad naujokų nėra, nes jie tik trukdo savo kvailais klausimais“. Skaityti toliau…

Svetainės atnaujinimai

Atrodo sutvarkiau tą „F5“ klaidą, dėl kurios dažnai dubliuodavosi komentarai (tiesa, man pačiam visada Mozilla ir IE paklausdavo ar tikrai noriu antrą kartą submitint – gal galit patestuot ar pas jus reikalai pagerėjo?) Pradėjau loginti vartotojų IP. Na iki šiol buvo kuriamos tik tuščios sesijos, tad bent jau IP dabar kartu išsaugos. Tiesa, su tom sesijom ten įdomiai… Viskas saugoma MySQL, bet binariniame formate (matyt taip greičiau) – teko truputį pasinervuot manant kad tos sesijos neveikia, nes pačiame MySQL kaip ir nieko nematydavau. Skaityti toliau…

Sudie IRC, einu dirbt

Štai ką šiandie patyriau: <-psyBNC> Tue Apr 22 21:47:25 :User JAPH () got disconnected (from irc.delfi.lt) Reason: Closing Link: 193.219.82.175 (SVSKilled: GHOST command used by perl_rulz) --- [perl_rulz] (~mazafaka@81.7.111.254) : qrva --- [perl_rulz] irc.takas.lt :Tue Apr 22 21:46:24 2003 --- perl_rulz :End of WHOWAS -NickServ- List of entries matching *@81.7.111.254: -NickServ- moxliukas [Hidden] -NickServ- vYtiZ [Hidden] -NickServ- Waidazz [Hidden] -NickServ- End of list - 3/3 matches shown. --- [vYtiZ] (~vytis.v@81.7.111.254) : vYtiZ --- [vYtiZ] @#db_rulez @#super-krepsinis @#krepsiukas @#lol @#lebron @#deadeye #Zalgiris #jablonskine #gentoo Trumpai drūtai – mane nusnifino. Skaityti toliau…

Teisinga tipografija svetainėms

Skaitinėjant savo mėgiamiausią svetainę apie interneto programavimą (aišku neskaitant PerlMonks :) aptikau senoką straipsnį apie teisingą tipografiją internete, kuris privertė šiek tiek susimąstyti. Brūkšnelių ilgis pasirodo labai svarbus. Pačioje interneto pradžioje kompiuteriai buvo panašesni į rašomąsias mašinėles, ir tekstas konsolės ekrane tikrai buvo nepanašus į gražiai suformuotą tipografinį tekstą, kurį galima sutikti knygose ar kituose spausdintiniuose leidiniuose. Problema daugiausiai buvo tame, kad neįmanoma buvo pavaizduoti galybės simbolių, tad teko apsiriboti ASCII. Skaityti toliau…

Puikus lietuviškas WYSIWYG komponentas

LG davė man nuorodą apie puikų, nemokamą (GPL licenzija) WYSIWYG redagavimo komponentą. Kas įdomiausia: šį komponentą sukūrė lietuviai – kompanija „Solmetra“. Komponentas veikia su IE5.5+ ir PHP. O atrodo tai tikrai pritrenkiančiai (na, bent jau man. Aš neturiu didelės patirties šituose dalykuose).

Perl vs PHP (subjektyvus asmeninis požiūris)

Nemėgstu PHP. Ir turbūt jau pats laikas pasiaiškinti kodėl. Dauguma mane mato kaip Perl fanatiką, nors tas fanatizmas tikrai išpūstas. Mėgstu Perl, bet kartu mėgstu ir Python, ir Ruby, ir hmmm.. kartais netgi Java. Tiesiog Perl yra mano „language of choice“, nes ją geriausiai moku (PHP irgi moku neblogai, bet jos paprasčiausiai nemėgstu). Gerbiu žmones, mėgstančius Python ar Ruby, bet tie, kas skelbia jog PHP yra geriausia kalba nuo pat Kristaus gimimo man sukelia šiokią tokią šypseną. Skaityti toliau…

Columbia Shuttle tyrimas

Prieš porą dienų Columbia Accident Investigation Board išleido pirmąsias rekomendacijas būsimiesiems Shuttle skrydžiams. Nieko aiškaus apie pačios katastrofos priežastį. Susidaro įspūdis, kad tos rekomendacijos tik tam kad kitą kartą tokie tyrimai vyktų sklandžiau (rekomenduojama fotografuoti Shuttle nusileidimą iš palydovų ir panašiai). Tiesa, taipogi rekomenduojama peržiūrėti Shuttle anglies plokštelių struktūrą.

Pamąstymai apie #php tradicijas

Tiesa, važinėjantis dviračiais su Lakūnu šiek tiek pasikalbėjom apie #php tradicijas ir apie jų atgimimo galimybes. Pereitą vasarą juk vos ne kiekvieną pekntadienį būdavo tradicinis #php sugėrimas Rotušėlėje. Kartais ateidavo keletas žmonių, kartais — kelios dešimtys. Įdomu, ar tokia tradicija atgimtų ir šią vasarą, nebūtinai Rotušėlėj, nebūtinai penktadieniais, nebūtinai alaus gėrimas, tiesiog kažkas bendro ir tradiciško.

Velykos

Velykos… Reiškia jokių kompiuterastiškų dalykų. Na, tiesa, su Lakūnu apsukom nemažą ratą aplink Kauną dviračiais.

Naujos Microsoft buferio perpildymo klaidos

Microsoft įspėjo Windows NT, 2000 ir XP vartotojus apie buferio perpildymo klaidas, kuriomis pasinaudojus galima užvaldyti kompiuterį, trinti bylas, perkonfigūruoti sistemą, ir daryti viską administratoriaus teisėmis. Skylę galima užlopyti atsisiunčiant lopą iš Windows Update svetainės. Tai jau 14-a atrasta su sistemos saugumu susijusi klaida Windows sistemose šiais metais. Daugiau apie pačią klaidą galima rasti pačioje Microsoft svetainėje

CNN jau pasiruošę Fidelio Kastro mirčiai

The Register rašo apie tai kaip netyčia CNN puslapiuose atsirado Fidelio Kastro, popiežiaus Jono Pauliaus II-ojo, Karalienės Motinos ir kitų garsenybių nekrologai. Gera būti pasiruošusiam ;)