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.

Truputį pašnekėjau su Shivu, jis buvo pasiryžęs išsiaiškinti
kuo gerai/blogai SiteSupra ir FlexiUpdate. Žmonės pamažu
rinkosi, gavom alaus. MrTenente pradėjo pasakot apie
įpraiškas ir tik tada man
teko garbė su juo susipažint („A, tai čia tu tas regexpų ir
perlo mylėtojas!“
). MrTenente nuomonė įpraiškų
klausimu yra vienareikšmė – jei galima jų išvengti, tai reikia
vengti kaip didžiausios nelaimės. Nu aš sutinku, kad daug kur galima
apsieiti be jų, ir dėl to viskas dar žymiai greičiau veiks, bet kitose
vietose įpraiškos yra lyg dievo siųstos. Kai diskusija apie įpraiškas
pasiekė apogėjų, MrTenente netgi paklausė kam iš vis tos
įpraiškos reikalingos. Tada į mano pusę stojo ir Shivas, davęs
pavyzdį kaip įpraiškos išgelbėjo jį nuo ilgos ir painios
if sekos. Kaip ten bebūtų, kalba paskui pasuko
link duombazių ir Shivas su pasijaurėjimu pasakojo kaip kūrė
Oracle duombazę ir prikūrė 2 GB duomenų, nors duombazė buvo nauja ir
tuščia.

Kaip tik tuo metu atėjo DzHiBaS, aubergine ir
Styx. Po visų prisistatymo (geriausiai pristatytas
shvln|php – viso kanalo blogio šaknis ;)) MrTenente pradėjo pasakoti įspūdžius iš
Amsterdamo konferencijos, pradedant viešbučio radimu ir baigiant
šiūkšlių dėžėmis (kurių pasirodo nėra). Pasakojimas dažnokai buvo
nutraukiamas vis naujai ateinančių žmonių – trenktaz,
ABLomas, pukomuko. MrTenente pasakojami dalykai
apie PHP labai man sudarė įspūdį, kad PHP panašėja į Perlą –
ypač ta PHP vizija, kad viskas bus daroma per PEAR klases (heh, senas
geras CPAN). Pats PHP5
atrodo bus išleistas nežinia kada, bet lyg planuojama trečiame šių
metų ketvirtyje. Dar viena nauja mada atrodo yra tokia, kad vis
stiprėja XML vaidmuo, nors atrodo niekas nesutaria kaip jį geriausia
parsint (XSLT yra š?)

Tuo metu šurmulys tapo per didelis kad galėčiau susigaudyt kas
visur vyksta (tuo metu priskaičiavau 28 dalyvaujančius žmones, kai
hmm… Kiniją užsakinėjau tikėdamasis kokių dešimties). Kadangi
sėdėjau tarp trenkto ir ABLomo, tai teko su jais
daugiausia ir pabendraut. Prasidėjo viskas tuo kad ABLomui
sunkiai veikia mod_perl, tiksliau viską per daug varo į RAM ir dėl to
stabdo. Trenkto nuomonė šiuo požiūriu buvo aiški –
„kalti gaidžiai programeriai“, su kuo sunku būtų nesutikt
;). Va tuo metu prisiminiau ir Bo taip visur kišamą Python ir
ABLomas prisispyręs klausinėjo DzHiBo kuo Python gerai.
Atrodo niekuo. Mano bandymas Zope pristatyti kaip Python pliusą buvo
greitai numalšintas iš visų pusių, kai kažkas pareiškė jog Zope yra
dar viena bloga ir lėta technologija be didelių pliusų. Reiks matyt
pasiskaityt apie tą Zope.

Na po to su trenktu sušnekėjau apie man reikalingus reikalus
(ten kur atsiskaitymai medžiu). ABLomas pasigedo Perlės, mat
ji kaip ir žadėjus jam kavos yra. Po to įvyko fotosesija, kurios
rezultatus galite matyti čia. Aš ten irgi matausi toks
palinkęs prie Palm’o.

Na ten daug dar visko vyko, pamažu visi pradėjo skirstytis, vis man
į ranką brukdami pinigus. Galų gale likom ten tik keliese su
pukomuko ir tada man užėjo baisus žagsėjimo priepuolis (nu
žinot, kai išgeri truputį, tai paskui žagsisi neblogai). Dar šiek tiek
pašnekėję, ir pasityčioję iš mano žagsėjimo, patraukėm ieškoti
sąskaitos, kuri sudarė 152 Lt. Tiesą sakant tiksliai nežinau kiek man
teko mokėt iš savo kišenės, bet manau apie 50 Lt (na kokia 70 buvau
surinkęs iš kitų, na tarkim 30 pats pragėriau (nelabai tikėtina)). Na
neesmė – už atgailą eikit parašyt programėlę kokią nors Perlu.

Po to ramiai grįžau namo, įlindau į IRC, parsisiunčiau nuotraukas
ir miegot. Tai vat.

#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ą? Kas mokės už alų?

20:50 Perl nėra gerai. Scooox =] Vyksta fotosesija.

21:23 ABLomas has left the buildintg

22:35 Žagsiu ble

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.h vietoj
varargs.h). 3.3 versija vis dar pereinamoji,
didesni pokyčiai numatyti 3.4 versijoje. Ten bus naudojamas vietinis
rekursinis parseris (yacc atitikmuo) bei bus
atsisakyta palaikyti intel 386 procesorių (i386). Vietoj jo bus
palaikomas tik i486 mašininis kodas.

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. Taip pat bus galima nurodyti
color-profile (Na, aš tiksliai nežinau kaip ji ten
aprašoma, ir kam iš to nauda, bet kiek pamenu čia dizainerių naudojamas
daiktas). opacity bus galima nurodyti ir prie
rgba() atributų:

em { color: rgba(255,0,0,1) /* spalva #ff0000 su opacity = 1 */
p { color: rgba(0,0,255,0.5) } /* pusiau permatoma mėlyna spalva */

Tuo viskas nesibaigia. Vietoj RGB galima naudoti ir HSL (hue,
saturation, lightness
):

p { color: hsl(0, 100%, 50%) } /* raudona */
em { color: hsla(0, 100%, 50%, 0.5) } /* tas pats tik pusiau permatomas 
*/

Kaip sakant dėl kitų detalių tai patys persiskaitykit patį standartą

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.0. Be to, paskelbti ir
du working drafts: CSS3 Generated and Replaced
Content Module
ir CSS3
Speech Module
. Uff.. daug techninio skaitymo.

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;
}
.blogtext a:hover {
        text-decoration: none;
        color: blue;
        background-color: #eff;
        border-bottom: blue 1px solid;
}

Tačiau patys didžiausi pakeitimai buvo padaryti skripte, kuris
apdoroja elektroniniu paštu gautus prašymus įdėti naujieną. Dabar jis
sudėjęs viską į duombazę dar sugeneruoja RSS naujienas, kurios vėliau
statiškai pateikiamos visiems. Tai kaip ir savotiškas kešavimas. Kitas
svarbus dalykas, kurį daro mailblog.pl yra weblogs.com pinginimas per
XMLRPC. Tai daroma labai paprastai su XMLRPC::Lite moduliu:

use XMLRPC::Lite;
XMLRPC::Lite -> proxy('http://rpc.weblogs.com/RPC2')
             -> call('weblogUpdates.ping',
                     'Moxliuko pasaulis',
                     'http://lietuvoje.lt/~moxliukas/');

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
RSS generavimas. Šiuo metu RSS generuojama kiekvieną kartą iš duombazės,
bet RSS juk dažnai nesikeičia, tad čia galima kešuoti jau suformuotą
XML. Darant įrašą į dienoraštį per elektroninį paštą kaip tik ir galima
atnaujinti RSS versiją. Taipogi reikėtų tuo metu ir papinginti weblogs.com. O gal reikėtų visiškai naujos
lietuviškų weblogų sekimo sistemos?