Sînt sigur că de prea multe ori ați văzut prin Windows aplicații care mor subit sau chiar sistemul de operare dîndu-și duhul. Se întîmplă și asta, mult mai rar decît ar trebui să înțelegem dacă ne-am uita la reclame de genul I’m a Mac dar se mai întîmplă. Mi s-a întîmplat și mie ieri un ecran albastru și am aflat că problema e eterna nVidia prin reprezentatul său nvlddmkm.sys.
Cu Visual Studio 2010 mi s-a întîmplat mai des, la un moment dat chiar odată la cîteva minute. Am aflat și în cazul ăsta că problema stătea altundeva decît credeam: în add-on-ul pentru subversion AnkhSVN.
Folclorul spune ca în orice caz să nu raportezi erorile, doamne ferește, pentru că Microsoft (scris după caz cu $ sau fără) e o companie diavolească și odată dat click pe send, elicopterele negre te vor hăitui pînă vei trece pe OSX, Linux sau doamne ferește, vei plăti tot software-ul de pe calculator.
Eu am un punct de vedere diferit (da, știu că e previzibil – întotdeauna am un punct de vedere obositor de diferit):
Oameni buni, dacă aveți probleme de genul ăsta, în orice caz raportați-le! Dați click pe send!
Microsoft e o companie prea veche în domeniu și prea versată ca să nu-și cunoască și respecte interesele. Unul din interesele lor e să găsească și să corecteze erorile din programele lor sau din sistemul de operare. Pe băieții tehnici care primesc rapoartele astea nu îi interesează că ai furat Windows – oricum știu deja despre fapt în detaliu. Îi interesează mai mult să folosească informațiile pe care utilizatorii le trimit înapoi acasă pentru rezolvarea erorilor și pentru decizii viitoare.
Aveți promisiunea lor (și puteți crede în ea) că informațiile primite pe această cale vor fi folosite doar pentru corectarea problemei și pentru îmbunătățirea produsului și nu pentru a vă urmări, marketing sau orice altceva.
De ce e important clickul pe send?
Microsoft e o companie foarte mare. Produsele lor sînt produse foarte mari. La unele dintre ele lucrează mii de oameni ani de zile. În mod inevitabil în produsele astea, chiar în versiuni finale, există foarte multe erori. Îmi amintesc de agitația de primăvară cauzată de aflarea în presă că Windows 2000 a fost lansat pe piață cu peste 60.000 de erori cunoscute de Microsoft. Dacă nu știi cu ce se mănîncă treaba poți fi șocat. Dacă știi ce e cu software-ul o vezi ca pe o cifră care nu spune mare lucru.
Un produs de astfel de dimensiuni e imposibil să fie lansat fără erori. În primul rînd lansarea ar dura ani în plus și în al doilea rînd nelansîndu-l oricum nu s-ar afla de multe dintre erorile existente pentru că niciun test din laboratoarele de testare nu poate suplini sau reproduce exploatarea din lumea reală.
Ce se întîmplă cu un produs atît de mare? Cum sînt corectate jdemiile de erori din el?
Dacă ai fi dezvoltator și ar trebui să repari în fiecare zi cîteva din cele 60.000 de erori de care ziceam, de care te-ai apuca azi?
Sigur, există erori critice, recunoscute ca atare de echipă, pe care din bun simț dezvoltatorii le pun imediat cu prioritate maximă pe listă. E vorba despre erorile cunoscute care provoacă opriri ale programelor sau ale sistemului de operare cu pierderi de date sau împiedică flagrant lucrul în anumite situații frecvent întîlnite. Dacă le scoatem pe astea din listă tot rămîn cîteva jdemii bune acolo. Pe care din ele le-ai fixa azi? Care din ele afectează mai mulți utilizatori? Cît de grav îi afectează pe cei mai mulți?
Din turnul de fildeș unde stau dezvoltatorii se vede foarte greu adevărul așa cum e el la tine pe birou. Ăsta e motivul pentru care există un instrument de raportare a problemelor: pentru ca la dezvoltatori să ajungă informații statistice (și tehnice) relevante, pentru ca ei să poată înțelege care sînt erorile care apar mai frecvent, care deranjează cel mai mult și deci de care dintre ele să se ocupe cu prioritate.
Cum pot ei afla că o eroare dintr-un program te deranjează dacă nu le trimiți raportul despre asta? Ah, da – știu: dacă tu ai problema, în mod sigur o au mulți alții așa că precis vor trimite ei rapoarte. E exact ca la vot: sînt atîția nemulțumiți de Băsescu, sigur vor vota ei – ce mai contează votul meu? Uite că a contat și că ai rămas pe lîngă. Exact așa e și cu erorile. Fiecare click pe send e un vot pentru ca eroarea care te afectează pe tine personal să fie reparată.
E sezonul pentru bug-fix-uri. Programatorii vin la lucru și se apucă de reparat erori. Primesc o listă și le iau pe rînd. Cum e alcătuită lista? Pe baza statisticilor primite de sistemul de analiză a erorilor raportate. Cine e sus pe listă? Cine raportează. Cine are șansa ca problema lui să fie rezolvată? Cine e insistent și raportează. Vrei ca problema ta cu Windows, Office, VS.Net sau chiar programe ale altor producători decît Microsoft să fie rezolvată la o viitoare actualizare sau service pack? E mult mai probabil ca asta să se întîmple dacă dai click pe send. Ai curajul și votează ca să-ți rezolvi problema, nu-i lăsa pe alții să o facă. Ei au alte probleme și vor vota pentru ale lor iar a ta va coborî pe lista de priorități.
Microsoft comunică și altor firme date statistice și tehnice despre problemele din produsele lor și folosește informațiile trimise despre erori pentru eventuale îmbunătățiri în versiuni viitoare de Windows chiar pentru a ocoli erori în programele care nu le aparțin.
Există cel puțin două companii care oricît feedback primesc, țin atît de mult la erorile din produsele lor că sigur nu aveți șanse să le vedeți vreodată rezolvate. Probabil că numărul în creștere de erori raportate îi face pe cei de la vînzări mîndri că tot mai mulți oameni le folosesc produsele în loc să înțeleagă că produsele sînt tot mai proaste. Mă refer la nVidia (din nou) care e cauza majoră pentru ecranele albastre din Windows și la Yahoo Messenger care e aplicația care moare cel mai des pe cap de utilizator și asta de mulți ani, fără nicio tendință de ameliorare.
Cu toate astea, cînd apare o problemă, dați click pe send. Măcar cineva va înțelege că și-a făcut treaba prost și poate aveți norocul ca în prima miercuri din luna viitoare să vă vină un Windows Update care să rezolve definitiv problema. Baftă!