Acum câteva luni:Am intrat de curiozitate pe scan.coverity.com, ca sa vad niste statistici legate de bugurile din Linux (kernel). Cu ocazia asta, am vazut si cam cat de mari sunt proiectele opensource.
Pentru cei care nu stiu, Coverity are niste suite de teste automatizate prin care incearca sa gaseasca tipurile cele mai comune de buguri. Lista de acolo nu cuprinde toate bugurile din soft-ul respectiv, ci doar cele mai evidente. Oricum, cred ca e un reper acceptabil pentru comparatie - pe principiul: daca exista buguri mici, vor exista si buguri mari
Cum nu pot copia tabelul, o sa prezint cele mai interesante chestii din el:
Gnome - 1,109,039 linii de cod - 0.274 buguri per mie linii de cod
KDE - 3,867,879 linii de cod - 0.011 buguri per mie linii de cod
KDE e enorm! Sunt sanse ca un release KDE sa contina mai mult soft totusi, dar faptul ca are atat de multe linii de cod, si totusi atat de putine buguri aparente ma duce cu gandul la faptul ca se folosesc mult generatoare de cod (KDevelop, QtDesigner & alte chestii la fel). Altfel, ar insemna ca au hackeri mult mai competenti
------------------------------------------------------------------------------------------------
FreeBSD - 1,582,166 linii de cod - 0.386 buguri per mie linii de cod
Linux-2.6 - 3,209,939 linii de cod - 0.205 buguri per mie linii de cod
Presupun ca la FreeBSD au luat doar kernelul, pentru ca altfel nu avea cum sa aiba atat de putine linii de cod. Deci comparatia e rezonabila. Linux e mult mai mare - mai multe drivere, sisteme de fisiere, etc - dar se pare ca are mai putin buguri totusi
------------------------------------------------------------------------------------------------
Perl - 487,704 linii de cod - 0.004 buguri per mie linii de cod
PHP - 475,696 linii de cod - 0.095 buguri per mie linii de cod
Competita e stransa. Pun si Python doar pentru compararea marimii, la Python se pare ca abia au inceput testele.
Python - 279,707 linii de cod.
------------------------------------------------------------------------------------------------
Ar mai fi multe chestii interesante, dar puteti vedea si voi tabelul. Totusi, o chestie iese in evidenta:
OpenOffice.org - 5,045,117 linii de cod - 0.285 buguri per mie linii de cod
OO.org chiar e imens! Un munte de bloat...
------------------------------------------------------------------------------------------------
Tineti minte ca suita aceasta de teste e automatizata, si surprinde doar anumite tipuri de buguri (probabil cele mai evidente). De asemenea, anumite proiecte au inclus multe parti "aditionale" pentru testare, iar rezultatul e surprinzator:
NetBSD - 5,258,294 linii de cod - 0.313 buguri per mie linii de cod
NetBSD are inclus si X-ul, si OpenSSL, si multe alte chestii, nu doar kernelul (si, eventual, sistemul de baza).
Oricum, a fost interesant de urmarit, sper sa se inscrie si alte proiecte.
http://scan.coverity.com/
În prezent lucrurile s-au mai schimbat un pic, se pare că unele proiecte s-au retras sau au modificat pachetele introduse (mai exact, ce anume din pachete era analizat). Asta deoarece Gnome are în prezent ~750.000 LOC, şi nu avea cum să slăbească 200.000 de linii de cod aşa repede, doar dacă nu mai erau luate în considerare nişte programe din el.