(La sugestia cititorilor :-) un cross-post de pe offtopic, pe tema "KDE
vs Gnome")

La categoria "softu meu are mai multe gonade ca al tau" aflam ca:
> 
> happens. At the KDE one, Matthias Ettrich and Preston Brown got drunk
to
> the stage of claiming "We could write better than CORBA. Hic. In a
day!"
> The next day, of course, everyone reminded them about this claim, so
> they had to do something about it. 36 hours later, DCOP emerged. There

FLAMA NASOALA (la mine e inca vineri):

Aha. Pai vezi, d-aia n-are ursu' coada. Ia sa te iau putin la disecat.

0. Prolog

Nu este deloc clar ce este cu DCOP asta. In ce fel e "mai bun decit
CORBA"? Este un ORB mai performant? Sau este vorba de o schimbare a
standardului?
Daca e *stardardul* schimbat, poti sa-mi spui daca se pastreaza
compatibilitate cu CORBA (adica noul standard e un superset al celui
vechi)? Sau e ceva cu totul incompatibil?

In primul caz, e ok si chiar misto (probabil). In al doilea caz, ma cac
pe el de la etaj, in jeturi spasmodice si suculente.

1. Din punct de vedere tehnic

Qt sta, in mod integral, deasupra lui Xlib. Deasupra lui Qt stau KDE
libs sau, uneori, direct aplicatiile KDE.
GTK nu se sprijina doar pe Xlib. Exista acces din GTK la Xlib, insa doar
prin GDK (care este un fel de dez-braindamage-ificator pentru Xlib).
Insa GTK se sprijina si pe alta biblioteca de nivel jos, GLib, care are
niste chestii foarte cool (containere, etc.). Gnome libs stau (evident)
deasupra lui GTK, dar au si acces direct la GLib. Aplicatiile Gnome pot
sta deasupra lui Gnome libs, GTK, sau chiar GDK.

Ca sa zic aceeasi chestie mai pe inteles:
In Gnome bibliotecile de nivel inalt (Gnome libs) pot avea acces direct
la cele de nivel foarte jos (GLib), scurtcircuitind in felul asta, daca
vor, toolkit-ul (GTK). Mai mult, aplicatiile pot avea acces la ce nivel
vor ele: inalt (Gnome libs), mediu (GTK) sau jos (GLib). In KDE, totul e
stratificat strict si accesul la nivel jos (din aplicatie sau chiar din
toolkit) e cam nashpa.

KDE foloseste (sau folosea, ca nu stiu ce-i cu DCOP asta) MICO, care
este un ORB destul de decent. Din nefericire, are doua bube: haleste
multa memorie, si e lent.
Gnome foloseste ORBit, care are proprietatea ca e cel mai misto (rapid,
eficient) ORB pentru Linux.
Faza cu DCOP asta imi spune doar un singur lucru: ca oamenii de la KDE
s-au prins ca au o implementare CORBA de rahat, si s-au apucat s-o
rescrie. Intre timp, ORBit e deja un produs foarte bun si care s-a
maturizat.

In general, se face mare tam-tam pe faptul ca Qt foloseste C++. Acuma,
C++ pentru interfete e un lucru bun, ar trebui sa fii timpit sa sustii
contrariul, dar problema este ca Qt te cam *leaga* de C++ (ca in
Windows), ceea ce nu e bine deloc. Ce binding-uri mai sint in Qt? Perl
si Python? Doar atit? :-)
Pai in GTK ai binding-uri la urmatoarele: Ada 95, C++, Dylan, Eiffel,
Guile, Haskell, JavaScript, Objective C, Objective Caml, Objective
Label, Pascal, Perl, Pike, Python, TOM. Mai vrei? :-) Dupa cum se vede,
ai si C++ in GTK (printr-un wrapper).

Acuma sa ne suim un etaj mai sus, deasupra toolkit-urilor, si sa vedem
ce binding-uri gasim aicea:
In KDE: Python, Perl, Tcl, Java.
In Gnome: Java, Python, Dylan, TOM, C++, Ada 95, Perl.

Deci: ideea este ca in Gnome/GTK poti sa programezi cam in ce limbaj
vrea mushkii tai. Chiar si in aberatii ca TOM sau Pike. Am vazut recent
ca au bagat si PHP!!! (asta e chiar tare de tot) Pe cind KDE te cam
leaga de acele putine limbaje pe care le-au stiut sarmanii autori :-P
(sorry, nu m-am putut abtine).
Ce dezavantaje are GTK? A, ca nu prea e portabil pe Windows (decit cu
mult scremut si strins din buci)? :-) Get a clue...

Qt e un exemplu de biblioteca C++ buna, facuta de un baietzash care si-a
facut temele cind era mic, si a luat numai zece la scoala. Problema cu
baietzashul respectiv este ca n-a prea mai stiut, in afara de scoala, si
de alte chestii, cum ar fi viata reala. Din cauza asta, Qt e o scula
buna pentru profesionisti, pe cind cu GTK (plus wrapperele C++) poate
lucra toata lumea, de la supermeseriasi pina la Gigi Mozilla care acuma
invata si el sa programeze. Nu ma mir ca apar mai multe aplicatii GTK
decit Qt.
Diferenta intre Qt si GTK e cam ca diferenta intre Solaris si Linux:
astia cu Solaris zic ca "noi sintem foarte academici si stiintifici,
sintem business-oriented si alte bullshit-uri". Pe cind Linux, pur si
simplu, isi face treaba; fara business-oriented; fara bullshit.

Pe scurt, arhitectura Gnome este mai flexibila decit cea a lui KDE. Iti
permite sa faci mai multe chestii.

2. Din punct de vedere al userului

In general, se considera ca (virgula) KDE da clasa din cauza ca are acea
chestie numita KOffice. Acuma, m-am uitat si eu la KOffice. E foarte
misto ca idee, imi place rau de tot faza cu XML, dar este departe de a
fi matur. Nu prea poti sa-l folosesti inca "in productie".
Acum hai sa vedem cum stam in Gnome. Aicea avem Gimp si Evolution. Gimp
este deja un produs matur. Deja concureaza cu Photoshop. Deja il poate
folosi si bunica. Deja este larg folosit de profesionistii graficii Web.
In plus, Evolution, desi e inca beta, da clasa produselor similare (M$
Outlook) de departe; nu am vazut nici un alt produs Open Source similar
(mailer/organizer) care sa se apropie citusi de putin de Evolution.
Din punctul meu de vedere, KOffice e un experiment interesant, dar nu ma
ajuta practic cu nimic deocamdata. Daca vreau sa citesc un *.doc, bag un
StarOffice. Daca vreau sa citesc un *.xls, bag ori tot StarOffice, ori
Gnumeric. Deci n-am nevoie de KOffice, pentru ca am alte scule care fac
aceeasi treaba mai bine. Pe cind Gimp si, mai ales, Evolution pot sa
spun ca le folosesc mai toata ziua (Gimp mai rar, Evolution tot timpul,
inclusiv cind scriu acest mesaj).
Nu mai spun ca StarOffice, desi deocamdata este "neutru", este pe cale
sa devina aplicatie Gnome, si mai vorbim atuncea... ;-) (aicea recunosc
ca sint nesimtit)

Hai sa ma leg de maruntisuri. Cum stai cu appletii in KDE? (adica
mini-aplicatiile care se docheaza in Panel, nu aberatiile Java) Ce spui?
Ca a inceput si KDE sa invete asa ceva? :-)
Pe cind Gnome are o paleta de appleti care aproape ca-l concureaza pe
WindowMaker (care e inca lider).
Nu zic ca appletii astia sint o chestie de importanta mondiala, dar sint
foarte practici. Ia uite de exemplu ce rulez eu:

http://www.geocities.com/elf_too/gnome.gif

De la stinga la dreapta: meniul principal, client ICQ, starea vremii in
orasul meu (plus prognoza), traficul pe linia DSL, spatiul liber pe o
partitie, monitor complex de sistem (CPU load, mem load, swap usage), un
drawer cu shortcut-uri la aplicatiile mai importante (Mozilla,
Evolution, XMMS, Gnapster, StarOffice, etc.) care se deschide cind dai
click pe el si pe care poti sa-l configurezi adaugind/stergind
shortcut-uri, tabelul de ecrane virtuale, tab-urile cu aplicatiile
lansate in ecranul virtual curent, un ceas digital misto. ;-)
Citi appleti de astia sint in KDE? :-P Pe cind in Gnome sint o groaza,
din cauza ca Gnome a incurajat mini-aplicatiile inca de la inceput.
Uite ce alti appleti mai am pe sistem: monitor pentru incarcarea
bateriei de laptop, cdplayer, mixer, vu-metru, modem LEDs, stirile de la
Slashdot, mount/umount pentru floapa si CD, sincronizer pentru Palm
Pilot, screen-shooter... etc. Plus altii si altii, gramezi pe Internet.
Am vazut unul beton, pe cit de inutil pe atit de cool - bubbling load
monitor:

http://www.d.kth.se/~d92-jwa/code/

As intra si in chestii de genul "cite aplicatii Gnome/GTK vezi pe
Freshmeat, si cite KDE/Qt".
As intra si in chestii ca de ce Sun, SGI, Dell, bla-bla-bla porteaza
aplicatii Gnome/GTK in loc sa porteze/foloseasca KDE/Qt. Poate din cauza
ca cei care lucreaza la firmele mari sint idioti cu totii, iar oamenii
destepti lucreaza Open Source si folosesc KDE. :-)

Dar ma tem ca ajungem la aberatii...

3. Generalitati

Ceea ce lipseste din mesajul asta este o enumerare a calitatilor reale
ale lui KDE. Din cauza asta, s-ar putea intelege ca eu consider KDE ca
fiind totalmente CacaDE, ceea ce ar fi fals.
Parerea mea este ca (virgula) KDE e o implementare beton a unui concept
arhitectural care are ceva bube. Insa scorul total nu este mult in urma
lui Gnome.

Tipii de la KDE sint programatori exceptional de buni, dar nu sint asa
buni ca arhitecti. Pe cind Miguel de Icaza si tipii de la Eazel
exceleaza in primul rind la capitolul arhitectura.

M-as hazarda chiar sa spun ca defectele lui KDE provind din faptul ca
foloseste un toolkit (Qt) care pretinde sa faca el tot. Asta nu e bine.
Sindromul "eu sint mai destept ca tine, si-ti spun ce trebuie sa faci"
nu duce la nimic bun; uita-te la Microsoft. Pe cind Gnome a fost
construit peste un toolkit (GTK) ceva mai rezonabil si relaxat, ceea ce
a permis ca anumite probleme care nu-si au locul in toolkit sa fie
adresate in alte parti, mai adecvate (de unde si fazele cu GDK si GLib
care sint extrem de cool ca idee, de unde si fazele cu jdemii de limbaje
hook-ate in toolkit si in mediu). Poate ca gresesc. Dar se cam vede ca
(virgula, dammit) KDE se bazeaza pe un produs care a fost initial
comercial (Qt).

La fel, in ce priveste ORB-ul, KDE a gresit in acelasi fel: l-au luat pe
MICO, facut de-a gata, "stiintific si academic". Si lamer rau de tot la
capitolul performanta, de-au ajuns acuma, la versiunea majora 2 a
mediului, sa se apuce sa schimbe ORB-ul. :-)
Pe cind Gnome si-a facut propriul ORB. A mers mai nasol la inceput (mai
tineti minte cum crapa Gnome-1.0.0? Au trebuit sa scoata patru
patch-level-uri in trei saptamini ca sa ajunga la 1.0.4 care a fost in
sfirsit stabil), dar acuma au cea mai performanta implementare CORBA
pentru Linux, care este deja matura, folosita indelung, debugata,
finisata, cu funditze si zurgalai.

4. Adevarata mea parere in problema asta

De fapt, ca s-o zic pe-a dreapta, diferenta intre cele doua medii este
mica. Din cauza asta, sa zicem ca n-as protesta la afirmatii de genul
"KDE e ceva mai bun ca Gnome". La urma-urmei, poate ca ma insel. N-ar fi
prima data.
Dar faze cum ca "Gnome e de tot rahatul, KDE rulzzz" ma calca pe nervi.
Nu e nici pic de logica in asa ceva.

5. Inca un argument nesimtit si stupid

Imi pare rau ca nu vom fi purtat discutia asta peste doua-trei
saptamini, cind va fi aparut Gnome-1.4, cu Nautilus and stuff, care
mi-ar fi sprijinit punctul de vedere inca si mai bine. Insa, despre ce
n-a aparut in versiune "oficial" stabila nu pot sa vorbesc, e vaporware.

Insa Nautilus nu e vaporware, e 1.0, si e beton de beton, vezi link-ul
de mai jos (iconurile de la fisierele *.txt contin, cu litere f. mici,
citate din continutul *real* al fisierelor; servicii integrate in
interfata; foldere virtuale; smecherii gen "view as" pentru foldere,
care integreaza viewere grafice, playere mp3 si browserul web in aceeasi
interfata; etc. Se vede c-a fost facut de niste meseriasi care au lucrat
la Mac-uri). Echivalentul KDE, daca nu ma insel se cheama Konqueror, e
usor modest prin comparatie.

http://www.eazel.com/software

6. Concluzii

Din pacate pentru Open Source, de multe ori vezi fenomene de genul asta:
Vine unu si zice "am facut un program de numarat firele de par din coada
ornitorincilor maro, este mult mai performant ca standardul in vigoare,
ruleaza pe superscalare Cray, foloseste algoritmi euristici si logica
fuzzy, foloseste o implementare fractala a metodei Hammond, comunica in
retea cu programe similare prin XML si SOAP, si are baze de date
distribuite".
Cind se intimpla chestii de-astea, de obicei lumea aude numai fazele cu
Cray, fractali, XML si DDB, si incepe sa scoata sunete de genul "Uhhh!!!
Ohh!!! Ah, ah, mai vreau!..." (ma opresc aici, din decenta). Din
nefericire, sunetele astea sint produse de centri nervosi care se afla
nu in creier, ci vreun metru mai jos (ca pozitie) si vreo trei miliarde
de ani in urma (ca evolutie).
Pe cind, daca te scoli si incepi sa folosesti scoarta cerebrala, vezi de
fapt ca e vorba de ceva cu ornitorinci maro. Pe scurt, bullshit.

Prin urmare, nu tot ce zboara se maninca. Din stirea aia a ta am aflat
doar ca doi tipi s-au imbatat. Ei si? Plimba-te putin pe Soseaua
Alexandriei, pe linga Piata Rahova, si-o sa vezi doua sute.
Calitatea softului se masoara altfel.

P.S.: Daca cineva mi-ar fi scris *mie* pe tonul asta, m-as fi ofticat.
Asa ca, dac-o s-o faci, n-am sa ma sochez.

Numa' bine,

-- 
Florin Andrei

using Out-of-luck Express / Windows $0.02 Terminally ill Edition

---
Send e-mail to '[EMAIL PROTECTED]' with 'unsubscribe rlug' to 
unsubscribe from this list.

Raspunde prin e-mail lui