Codarea AI neglijentă ar putea distruge software-ul open source pentru totdeauna


Ar fi mult mai mulți programatori în lume dacă nu ar fi faptul că programarea este dificilă și trebuie să petreci mult timp învățând, exersând și testând codul tău.

Apoi a apărut programarea „vibe”, și brusc puteai să lași un AI să scrie cod pentru tine, indiferent dacă înțelegeai ce înseamnă codul sau nu.

Codarea vibe întâlnește open source

Bunele intenții sau nu, se pregătește necazul

Am scris înainte că programarea după instinct este riscantă, dar când te gândești la modul în care funcționează dezvoltarea software-ului open-source, devine o tendință și mai îngrijorătoare. Multe proiecte open-source sunt deschise oricui să contribuie cu cod, care este apoi revizuit de către administratorul proiectului, care va accepta sau respinge contribuția.

Chiar dacă un anumit proiect nu îți permite să contribui, nimic nu te împiedică să iei codul open source și să faci propriul tău fork în care să fii tu întreținătorul, și apoi să îți integrezi modificările de cod.

Aceasta a funcționat destul de bine când singurele persoane care puteau contribui cu cod erau cei care puteau scrie acel cod, pentru că, în mod natural, acesta este un procent mic de oameni. Totuși, dacă fiecare persoană poate genera cod folosind AI, atunci poți vedea încotro se îndreaptă lucrurile.

Valul de cereri de extragere și probleme generate de AI

Prea mult dintr-un lucru „bun”?

Administratorii unor depozite de cod open source au tras deja semnalul de alarmă în privința avalanșei de contribuții de cod AI cu care trebuie să se confrunte. Există un articol bun scris de JP Capara pe Medium (cu plată, din păcate) care prezintă o cronologie arătând tldraw închizând pull request-urile externe, curl închizând recompensa pentru bug-uri și RedMonk inventând termenul „Slopaggedon.”

Între timp, un articol academic preprint de la Cornell proclamă că Vibe Coding ucide open source după ce examinează modul în care acest fenomen afectează OSS la mai multe niveluri. Versiunea scurtă este că modul în care dezvoltarea software-ului open-source a funcționat până acum nu este deloc pregătit pentru apariția codării AI bazate pe vibe-uri.

Calitate, context și povara revizuirii

Fără calitate sau control

Toate aceste cereri de pull nu sunt doar oameni care codează după instinct și apoi încearcă să trimită acel cod. Oamenii folosesc, de asemenea, AI agentic pentru a găsi sau inventa probleme pentru a exploata recompensele pentru bug-uri sau pur și simplu pentru a interfera cu un proiect prin spam.

Github permite acum administratorilor să dezactiveze cererile de pull, și faptul este că recenzorii umani pur și simplu nu pot trece prin masa de cod sau cereri într-un mod practic.

Desigur, GitHub ar fi încântat dacă ai folosi modelele sale AI pentru a combate modelele AI ale spammerilor, dar personal nu îmi place această idee, pentru că tot elimini oamenii din partea de control al calității a procesului. Nu rezolvă nimic.

Fricțiune comunitară și tensiune culturală

Software-ul open source este construit pe comunitatea umană

Așa cum a fost detaliat într-un video de Jeff Geerling pe care l-am încorporat mai sus, agenții AI răspândesc haos în comunitatea open source, făcând chiar lucruri cu adevărat nebunești, cum ar fi scrierea unui articol defăimător despre un întreținător după ce acesta a respins codul agentului.

Marea problemă cu toate acestea, după părerea mea, este că singura opțiune viabilă pentru proiectele open-source este să devină izolate. Acum, doar persoanele de încredere sau care au fost verificate pot contribui sau chiar face parte din discuția despre acel software. Grupul de contributori și testatori va trebui să se reducă pentru a menține integritatea.

Doar prin a face asta, elimini majoritatea beneficiilor reale ale dezvoltării software open-source. Beneficiile de securitate și calitate de a avea mii de programatori și testeri care contribuie la proiectul tău sunt cele care fac acest software posibil. Dezvoltarea va încetini până aproape de oprire, calitatea va scădea, iar sentimentul de comunitate și viziune comună va dispărea.

Poate deveni acest lucru durabil?

Există un echilibru cu mașina?

Adevărul dur este că programarea pe bază de vibrații nu va dispărea, și nici programarea umană. De fapt, învățarea programării în era programării pe bază de vibrații este probabil o mișcare inteligentă. Această tehnologie este puternică și utilă în mâinile unui programator priceput, dar extrem de periculoasă în mâinile cuiva care nu înțelege codul generat de LLM.

Totuși, geniul a ieșit din sticlă, ceea ce înseamnă că aceste proiecte vor trebui să se ajusteze într-un mod care să găsească un echilibru între a fi deschise și a preveni ca mizeria AI să distrugă totul. Este nevoie de sisteme de încredere, modalități de a prioritiza ce ar trebui revizuit mai întâi sau deloc și cum să se integreze supravegherea umană fără a interzice complet AI-ul.

Nu voi minți, cred că acesta va fi un os greu de ros. Poate că există un viitor în care tot codul este creat de AI și că nu contează cu adevărat. Poate că fiecare persoană va avea doar aplicațiile sale personalizate, dar acea zi s-ar putea să nu vină niciodată. Instrumentele de programare AI și LLM-urile în general au ajuns la un platou și nu sunt suficient de bune pentru a fi folosite orb de către utilizatori neexperimentați. Găsirea unei soluții durabile pentru open source este literalmente o criză existențială și ar trebui să ne facem cu toții griji în legătură cu asta.