Salut!
Sunt Andrei și lucrez de 1 an la CUBRID [1], un RDBMS open-source dezvoltat
partial in Romania. În mai multe discuții pe care le-am avut cu Alex Eftimie,
i-am prezentat oportunitatea de colaborare ROSEdu – CUBRID.
Ideea principala e ca cei din Rosedu sa poata contribui la un proiect
open-source mare, complex. Un astfel de proiect ofera provocari in foarte multe
directii, atat in dezvoltare cat si la nivel didactic. Fiind vorba de
un RDBMS, se poate contribui atat la engine-ul in sine, cat si la diverse
tool-uri externe ce pot simplifica munca developerilor ce folosesc CUBRID. Pe
langa aspectul didactic cei care contribuie la inceput la un proiect de
anvergura pot avea vizibilitate mare in cativa ani in comunitatea open source.
Din punct de vedere strict tehnic, un engine de baze de date “atinge”
foarte multe puncte sensibile ale domeniului nostru : structuri de date si
algoritmi de cautare eficienta, notiuni de compilatoare, interactiune cu
sistemul de operare, o arhitectura software complexa proiectata sa fie usor de
intretinut de-a lungul a unei perioade indelungate etc. Analiza si intelegerea
unui astfel de sistem cred ca este un exercitiu foarte interesant si presupune
un efort care merita. Acesta ar fi un argument in favoarea avantajelor
didactice de a studia un astfel de proiect.
Desigur, sunt anumite lucruri specifice CUBRID ce il fac un proiect si mai
interesant.
CUBRID propune o arhitectura multi-tier putin diferita fata de alte baze de
date. Fara a intra acum in detalii, esenta ar fi urmatoarea : Intre clientii
care trimit query-urile SQL si server se mai afla un layer, al carui scop este
sa trateze anumite etape din intregul proces (de la cerere pana la furnizarea
datelor), astfel incat serverul sa fie cat mai putin ocupat cu fiecare cerere.
Acest lucru se traduce intr-un nivel de concurenta ridicat (vizibil mai ales la
un numar ridicat de clienti conectati).
Foloseste un model object-oriented consistent, cu mapari precum
clasa-tabel, atribut-coloana , obiect-inregistrare precum si notiunea de
mostenire.
Din alte puncte de vedere, un mare avantaj e ca se dezvolta si in Romania
si se poate stabili o colaborare al carei punct forte sa fie comunicarea. Se
vor putea adresa intrebari mult mai usor si vom putea stabili intalniri intre
voi si dezvoltatorii nostri. Asta se traduce si in iesiri la bere! O intalnire
face-to-face pentru astfel de discutii va fi mereu usor de planificat si asta e
foarte important.
De asemenea, se pot propune teme ce pot fi predate drept licenta sau
dizertatie. Acest lucru va insemna propunerea unei teme de complexitate mare, o
extindere la nivel de engine. Va exista un coordonator dintre dezvoltatorii de
aici, pentru ca se poate efectua lucrarea de licenta in cadrul unei firme.Se
poate lucra la diverse optimizari pentru anumite situatii, cazuri restranse si
alte variatii foarte interesante. Totusi, nu este obligatoriu ca un astfel de
cod sa fie inclus in productie si sa figureze ca o contributie.
Daca vi se pare interesant un astfel de proiect, putem discuta mai multe si
eventual tinem o prezentare cu detalii despre CUBRID si diverse idei de
proiecte.
Va multumesc mult!
O zi buna,
Andrei Janca
[1] www.cubrid.org
_______________________________________________
http://lists.rosedu.org/cgi-bin/mailman/listinfo/rosedu-general