(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.
