ThinkRoot

bine ați navigat pe insula mea de pe internet

De la Catedrală la Catacombe

Nu am treabă cu programarea și nici nu lucrez în IT, dar am dat peste câteva articole care m-au prins și am rămas să citesc până la capăt. Primul a fost The Cathedral, the Bazaar, and the Catacombs al lui Andrew Nesbitt, care extinde o metaforă mai veche pe care o știam vag - și tot citind am ajuns să înțeleg lucruri pe care credeam că le știam deja.

Catedrala și Bazarul

Știu că există cartea The Cathedral and the Bazaar, scrisă de Eric S. Raymond și publicată prima dată ca eseu în 1997, dar crezusem că este despre Linux și open source în general. De fapt este despre cum se construiește software, iar Linux e doar exemplul care demonstrează că un anumit mod de a lucra funcționează mai bine decât altul.

Modelul Catedralei este cel clasic - o echipă mică, bine organizată, lucrează în liniște și lansează programe rafinate la intervale mari de timp. Proiectul GNU al lui Richard Stallman era exemplul tipic: arhitectură gândită cu atenție, control strict, calitate ridicată, dar ritm lent.

Modelul Bazarului descrie exact opusul - felul în care Linux s-a construit: cod publicat devreme și frecvent, contribuitori din toată lumea, discuții publice, iterații rapide. Pe hârtie nu ar fi trebuit să funcționeze, dar a funcționat extraordinar de bine. Din acest model s-a născut și Legea lui Linus: given enough eyeballs, all bugs are shallow - cu suficienți oameni care se uită la cod, orice problemă devine ușor de găsit. ESR a botezat-o astfel în onoarea lui Linus Torvalds, iar ea a rămas până astăzi argumentul tehnic central al dezvoltării open source.

Al treilea model: Casa Misterelor

Până de curând, discuția se oprea aici. Dar Drew Breunig a adăugat în martie 2026 un al treilea model, inspirat de o clădire reală din San Jose, California - Winchester Mystery House, reședința Sarei Winchester, văduva moștenitorului fabricantului de arme Winchester.

Sarah Winchester a construit această casă timp de 38 de ani neîntrerupt, fără arhitect, ghidată exclusiv de propriile gusturi și de banii pe care îi avea din belșug. Rezultatul este o clădire cu 160 de camere, scări care duc în tavan, uși care se deschid spre perete și coridoare care nu duc nicăieri. Nu pentru că Sarah era nebună, ci pentru că fiecare decizie avea sens local, în momentul în care era luată, fără nicio grijă față de ansamblul final.

Breunig observă că mulți programatori din era AI construiesc exact în felul acesta. Când un agent de cod poate genera 1.000 de linii pe commit - față de cele 10-30 pe care le scrie un om pe zi - costul codului scade dramatic și nu mai ai nevoie de echipă, de plan de ansamblu sau de feedback extern. Construiești ce vrei, pentru tine, ghidat de propriile nevoi. Rezultatul este un program idiosincratic, sprawling și, în fond, distractiv de construit - exact ca o casă a misterelor.

Problema cu acest model nu este că produce cod prost în mod necesar, ci că singurul feedback disponibil ești tu însuți. Legea lui Linus se bazează pe ochi externi, pe oameni care privesc codul din unghiuri diferite. Dacă singura buclă de feedback ești tu, dacă singura buclă de feedback ești tu, viteza e maximă, dar perspectivele sunt zero.

Catacombele, pe care toată lumea le ignoră

Și ajungem la ideea care m-a mirat cel mai tare, cea a lui Nesbitt. El observă că în aproape 30 de ani de discuții despre Catedrală și Bazar, nimeni nu a scris despre ce se află sub ambele modele - rețeaua de dependențe tranzitive, pe care Nesbitt o numește Catacombele.

Un proiect JavaScript obișnuit trage sute de dependențe pe care nimeni din echipă nu le-a citit vreodată, scrise de oameni pe care nu i-a auzit nimeni niciodată, actualizate ultima dată acum câțiva ani de un întreținător care aproape că a uitat că pachetul respectiv există. Și totuși, acel pachet ține în picioare tot ce ai construit deasupra lui.

Legea lui Linus presupune că există ochi care se uită. Dar în catacombe nu se uită nimeni sistematic - nici arhitecții din Catedrală, nici mulțimea din Bazar. Și tocmai de aceea catacombele devin vectori de atac. Backdoor-ul xz din 2024 nu a forțat nicio ușă principală - un co-întreținător a petrecut doi ani câștigând încrederea comunității pentru o bibliotecă de compresie aflată adânc în rețeaua de dependențe al aproape oricărui sistem Linux, iar codul malițios a intrat prin acea ușă laterală, nevăzută de nimeni.

Nesbitt arată că nici modelul Casei Misterelor nu ajută la rezolvarea problemei - din contră, o agravează. Agenții de cod trag dependențe mult mai agresiv decât ar face-o un om, extind această rețea în direcții pe care e greu să le revizuiești chiar și în principiu, și nu au niciun stimulent să se întrebe ce se află sub fundație.

Ce rămâne

Cele trei modele descriu cum se construiesc programele - cine participă, ce forță economică sau tehnologică face procesul posibil, cum arată feedback-ul. Catacombele nu sunt un al patrulea model, ci un strat care există indiferent de modelul ales, comun tuturor. Poți construi o Catedrală sau un Bazar sau o Casă a Misterelor - sub toate există același labirint de tuneluri pe care nimeni nu l-a proiectat ca întreg și pe care puțini îl înțeleg cu adevărat.

Internetul a ieftinit coordonarea și ne-a dat Bazarul. AI-ul a ieftinit codul și ne-a dat Casa Misterelor. Ce nu am rezolvat încă este cum să facem catacombele mai puțin opace - și asta pare să fie problema următorilor ani. Eu unul nu am nicio soluție, dar mi se pare că e o întrebare care merită pusă și de oameni din afara domeniului.

⬅ The one before
AI și panica locurilor de muncă

Up next ➡
Se demonta HDD-ul extern atașat la NUC