Povežite se s nama

Vođe misli

Eksplozija API-ja je stvarna – a Vibe kodiranje pali fitilj

mm
Procvat umjetne inteligencije donio nam je mnogo toga: povećanje produktivnosti, nove kreativne tijekove rada, a u novije vrijeme i lavinu API-ja. Ako vam se čini da se broj internih i eksternih API-ja u vašoj tvrtki preko noći udvostručio, ne zamišljate to. Proživljavamo eksploziju API-ja, a generativna umjetna inteligencija je glavni akcelerator.

Prije samo nekoliko godina, stvaranje nove API krajnje točke u zreloj kodnoj bazi bio je vrlo zahtjevan pothvat. Trebalo je snalaziti se u vlasništvu više kodnih domena, dobivati odobrenja od mrzovoljnih arhitekata i provoditi preglede koji su se ponekad odužili tjednima ili mjesecima. Trenje je bilo bolno, ali je osiguravalo da svaki novi API sa sobom nosi određenu razinu nadzora i institucionalne memorije.

A sada? Razvojni alati pokretani umjetnom inteligencijom su premostili to usko grlo.

GenAI agenti mogu konzumirati ogromne količine kontekstualnih podataka i generirati promjene koda u stotinama datoteka u sekundama. To je demokratiziralo mogućnost stvaranja API-ja - ne samo za inženjere, već čak i za netehničke uloge (šok i užas) poput voditelja proizvoda i timova za podršku koji se sada mogu osjećati ovlaštenima za slanje eksperimenata izravno u produkciju.

To je ogromna promjena u tome tko drži moć u procesu razvoja softvera. I to nije nužno loša stvar, posebno u poslovnom okruženju koje daje prioritet brzini i iteraciji. Ali rezultat je požar brzo implementiranih API-ja: mnogi su pokrenuti kao "eksperimentalni" ili skriveni iza zastavica značajki, ali brzo postaju bitna infrastruktura kako se poslovne potrebe razvijaju. Ono što počinje kao brzi prototip postaje ključna integracija. A sada je prekasno za povlačenje.

Uspon "Vibe kodiranja"

Ova nova vrsta API-ja generiranih umjetnom inteligencijom često dolazi s malo arhitekture, dokumentacije ili testiranja. Taj fenomen nazivamo „vibracijsko kodiranje“ – pisanje softvera na temelju grube intuicije, labavih poticaja i općeg osjećaja za ono što „treba raditi“, a ne dubokog razumijevanja sustava ili obrazaca dizajna.

Nažalost, API-ji kreirani na ovaj način obično slijede nedosljedne konvencije, nedostaje im robusna validacija i često ignoriraju utvrđene interne standarde. Što je još gore, mogu uvesti ozbiljne sigurnosne ili regulatorne rizike, posebno kada su povezani s osjetljivim podacima ili vanjskim krajnjim točkama. Umjetna inteligencija ne poznaje model upravljanja vaše tvrtke – ili vaše zahtjeve za usklađenost. Osim ako se to izričito ne kaže, neće pisati imajući ih na umu.

I problemi se brzo usložnjavaju. Umjetna inteligencija se također sve više koristi za generiranje testova. Ali kada se neispravan kod testira s validacijama koje generira umjetna inteligencija, testovi samo potvrđuju neispravno ponašanje. Razvojni programeri nerado pišu testove za kod koji nisu sami napisali, a kamoli za kod koji su generirali strojevi, pa umjetna inteligencija preuzima taj dio posla. Rezultat? Rekurzivna povratna petlja koda niske kvalitete testiranog i „validiranog“ od strane jednako klimavog scaffoldinga.

Patchwork API-ji i kriza vlasništva

Sve to dovodi do rasprostranjenog, fragmentiranog API sloja unutar većine organizacija. API-ji sada obuhvaćaju preklapajuće domene, obavljaju slične funkcije na malo drugačije načine i često nemaju jasno vlasništvo. Mnogi su napisani bez dubokog razumijevanja temeljnih modela podataka, granica usluga ili timskih povelja. Nije iznenađujuće da održavanje postaje noćna mora. Tko je vlasnik ove krajnje točke? Tko je može modificirati? Tko uopće zna da postoji?

Alati umjetne inteligencije daju prioritet korisnosti i brzini. Ako se ne kontroliraju, stvorit će najkraći put do isporuke, bez obzira je li usklađen s vašom arhitektonskom vizijom ili ne. S vremenom, težina ovog tehničkog duga može zaustaviti napredak.

Neki praktični koraci koje treba poduzeti.

1. Vidljivost

Odgovor nije usporiti sve ili zabraniti umjetnu inteligenciju. To nije realno i ostavilo bi ogromnu vrijednost na stolu. Umjesto toga, moramo razviti način na koji upravljamo softverom u doba generativnog razvoja.

Prvi temeljni korak je vidljivost. Ne možete upravljati onim što ne možete vidjeti. Organizacijama je potrebno kontinuirano otkrivanje API-ja, a ne statična dokumentacija koja zastarijeva čim se objavi.

Alati koji prate API-je - za vrijeme izvođenja i u kodu - postaju ključni. Nakon što možete mapirati svoj API krajolik u stvarnom svijetu, možete procijeniti rizik, identificirati dupliciranje i početi graditi pouzdano upravljanje.

Ironično, sama umjetna inteligencija može pomoći u ovom procesu. Korištenje potaknutih AI modela za analizu i reviziju API mapa pomaže u otkrivanju anomalija, rizičnih izloženosti i prilika za konsolidaciju. Ovo je umjetna inteligencija koja pomaže ne u izgradnji više, već u čišćenju onoga što već imamo.

2. Uspostavljanje standardizacije brzog inženjeringa i alata na razini cijele organizacije

Bolja kontrola i izlaza i ulaza u AI alate uvelike pomaže u održavanju određene razine kontrole nad generiranim kodom. Jednostavni koraci poput usklađivanja IDE-a pokretanih AI-om i modela odobrenih za korištenje unutar organizacije pomoći će s varijacijama. To također ima prednost lakšeg uvođenja novih modela i veće vjerojatnosti da će se upute moći reproducirati na svim radnim stanicama inženjera.

Još moćnije je usklađivanje na temelju specifičnog pravila.md datoteke tipova koje AI programeri trebaju dati kao kontekst svom agentu. Što je kodna baza složenija, to je korisnije za sve inženjere da rade s istim skupom pravila, pružajući AI agentu kontekst o tome kako pravilno generirati kod koji najbolje funkcionira s postojećim strukturama.

Nećemo vratiti generativnog duha u bocu. Ali možemo ga voditi, ograničiti radijus eksplozije i koristiti ga za poticanje odgovornih inovacija. Taj rad ne počinje s kodom, već s jasnoćom.

Biografija: Benji Kalman, potpredsjednik inženjerstva i suosnivač Korijen, ima više od desetljeća iskustva u istraživanju i izgradnji kibernetičke sigurnosti i DevTools alata. Kao bivši student 8200 koji se specijalizirao za kibernetičke operacije, Benji se među prvima pridružio Snyku, gdje je više od pet godina radio kao direktor Snykove grupe za istraživanje i razvoj sigurnosti, odgovoran za kuriranje i stvaranje baza znanja tvrtke o sigurnosti.