Matul l-aħħar sentejn, jien u t-tim tiegħi f'Work & Co konna qed nittestjaw u nintegraw gradwalment għodod ta' kodifikazzjoni tal-AI bħal Copilot, Cursor, Claude, u ChatGPT biex jgħinuna nibgħatu esperjenzi tal-web li jintużaw mill-mases. Ċertament, wara xi xettiċiżmu inizjali u ftit mumenti aha, diversi għodod AI sabu triqthom fl-użu tiegħi ta 'kuljum. Maż-żmien, il-lista ta 'applikazzjonijiet fejn sibna li kienet tagħmel sens li nħallu l-AI tieħu f'idejha bdiet tikber, għalhekk iddeċidejt li naqsam xi każijiet ta' użu prattiċi għall-għodod tal-AI għal dak li jien insejjaħ "l-iżviluppatur responsabbli". Xi rrid ngħid bi żviluppatur responsabbli? Irridu niżguraw li nwasslu kodiċi ta’ kwalità kif mistenni mill-partijiet interessati u l-klijenti tagħna. Il-kontribuzzjonijiet tagħna (jiġifieri, pull requests) m'għandhomx isiru piż fuq il-kollegi tagħna li se jkollhom jirrevedu u jittestjaw ix-xogħol tagħna. Ukoll, f'każ li taħdem għal kumpanija: L-għodod li nużaw jeħtieġ li jiġu approvati minn min iħaddimna. Aspetti sensittivi bħas-sigurtà u l-privatezza jeħtieġ li jiġu ttrattati kif suppost: Twaħħalx sigrieti, data tal-klijenti (PII), jew kodiċi proprjetarju f'għodod mingħajr approvazzjoni tal-politika. Ittrattaha bħal kodiċi minn barrani fuq l-internet. Dejjem ittestja u vverifika. Nota: Dan l-artikolu jassumi xi familjarità bażika ħafna ma 'għodod ta' kodifikazzjoni AI bħal Copilot ġewwa VSCode jew Cursor. Jekk dan kollu ħsejjes totalment ġdid u mhux familjari għalik, il-video tutorials Github Copilot jistgħu jkunu punt ta 'tluq meraviljuż għalik.
Applikazzjonijiet Jg ta 'Għodod ta' Kodifikazzjoni AI Nota: L-eżempji li ġejjin se jiffokaw prinċipalment fuq ix-xogħol f'applikazzjonijiet tal-web ibbażati fuq JavaScript bħal React, Vue, Svelte, jew Angular. Jkollna Fehim Ta 'Codebase Mhux familjari Mhux rari li taħdem fuq codebases stabbiliti, u li tingħaqad ma 'codebase kbir wirt jista' jkun intimidanti. Sempliċement iftaħ il-proġett tiegħek u l-aġent AI tiegħek (fil-każ tiegħi, Copilot Chat f'VSCode) u ibda ssaqsi mistoqsijiet bħalma tistaqsi lil kollega. B'mod ġenerali, inħobb nitkellem ma' kwalunkwe aġent tal-AI bħalma nixtieq ma' bniedem sħabi. Hawnhekk hawn eżempju aktar raffinat fil-pront: "Agħtini ħarsa ġenerali fuq l-arkitettura ta' livell għoli: punti ta' dħul, routing, awth, saff tad-dejta, għodda tal-bini. Imbagħad elenka 5 fajls biex jinqraw fl-ordni. Ittratta l-ispjegazzjonijiet bħala ipoteżi u kkonferma billi taqbeż għal fajls referenzjati."
Tista' tibqa' tistaqsi mistoqsijiet ta' segwitu bħal "Kif jaħdem ir-rotta fid-dettall?" jew "Tkellem lili permezz tal-proċess ta 'awtentikazzjoni u l-metodi" u se jwassal inti għal direzzjonijiet utli biex shine ftit dawl fid-dlam ta' codebase mhux familjari. Triaging Breaking Bidliet Meta Taġġorna Dipendenzi L-aġġornament tal-pakketti npm, speċjalment meta jiġu b'bidliet li jkissru, jista' jkun xogħol tedjanti u jieħu ħafna ħin, u jġiegħlek tiddibaggja ammont ġust ta 'rigressjonijiet. Riċentement kelli ntejjeb il-librerija tal-viżwalizzazzjoni tad-dejta plotly.js up verżjoni waħda ta 'rilaxx maġġuri mill-verżjoni 2 sa 3, u bħala riżultat ta' dan, it-tikkettjar tal-assi f'xi wħud mill-graffs waqaf jaħdem. Komplejt nistaqsi lil ChatGPT: "Aġġornajt il-proġett Angular tiegħi li juża Plotly. Aġġornajt il-plotly.js - pakkett dist mill-verżjoni 2.35.2 għal 3.1.0 - u issa t-tikketti fuq l-assi x u y spiċċaw. X'ġara?"
L-aġent ġie lura b'soluzzjoni fil-pront (ara għalik innifsek hawn taħt). Nota: Għadni vverifikajt l-ispjegazzjoni kontra l-gwida tal-migrazzjoni uffiċjali qabel ma nbgħat it-tiswija.
Ir-replikazzjoni ta' refaturi b'mod sikur madwar il-fajls Codebases li qed jikbru ċertament jiżvelaw opportunitajiet għall-konsolidazzjoni tal-kodiċi. Pereżempju, tinnota duplikazzjoni tal-kodiċi fuq fajls li jistgħu jiġu estratti f'funzjoni jew komponent wieħed. Bħala riżultat, inti tiddeċiedi li toħloq komponent kondiviż li jista 'jiġi inkluż minflok u twettaq dak refactor f'fajl wieħed. Issa, minflok ma twettaq manwalment dawk il-bidliet fil-fajls li fadal tiegħek, titlob lill-aġent tiegħek biex iħaddem ir-refactor għalik. L-aġenti jħalluk tagħżel fajls multipli bħala kuntest. Ladarba r-refactor għal fajl wieħed isir, nista 'nżid kemm il-fajls refactored kif ukoll mhux mittiefsa fil-kuntest u nħeġġeġ lill-aġent biex iwettaq il-bidliet għal fajls oħra bħal dan: "Irreplika l-bidliet li għamilt fil-fajl A għall-fajl B ukoll". Karatteristiċi ta' Implimentazzjoni F'Teknoloġiji Mhux familjari Wieħed mill-aha-mumenti favoriti tiegħi bl-użu ta 'għodod ta' kodifikazzjoni AI kien meta għeni noħloq animazzjoni ta 'gradjent animata pjuttost kumplessa fil-GLSL, lingwa li ma kontx familjari magħha. Fuq proġett reċenti, id-disinjaturi tagħna ħarġu bi gradjent animat bħala stat ta 'tagħbija fuq oġġett 3D. Għoġobni ħafna l-kunċett u ridt inwassal xi ħaġa unika u eċċitanti lill-klijenti tagħna. Il-problema: Kelli jumejn biss biex nimplimentah, u GLSL għandha l-kurva tat-tagħlim pjuttost wieqaf. Għal darb'oħra, għodda AI (f'dan il-każ, ChatGPT) ġiet utli, u bdejt sempliċiment ħeġġiġha biex toħloq fajl HTML awtonomu għalija li jirrendi tila u gradjent animat tal-kulur sempliċi ħafna. Pass wara pass, ħeġġejt lill-AI biex iżżid aktar finezza magħha sakemm wasalt għal riżultat deċenti sabiex inkun nista 'nibda nintegra x-shader fil-codebase attwali tiegħi. Ir-riżultat aħħari: Il-klijenti tagħna kienu kuntenti ħafna, u wasslu karatteristika kumplessa fi żmien żgħir grazzi għall-AI. Testijiet ta' Kitba Fl-esperjenza tiegħi, rari jkun hemm biżżejjed ħin fuq proġetti biex kontinwament tikteb u żżomm sett xieraq ta 'testijiet ta' unità u integrazzjoni, u barra minn hekk, ħafna żviluppaturi ma tantx igawdu l-kompitu tal-kitba tat-testijiet. It-tħeġġiġ tal-helper tal-AI tiegħek biex iwaqqaf u jikteb testijiet għalik huwa kompletament possibbli u jista 'jsir f'ammont żgħir ta' żmien. Naturalment, inti, bħala żviluppatur, xorta għandek tiżgura li t-testijiet tiegħek fil-fatt tagħti ħarsa lejn il-partijiet kritiċi tal-applikazzjoni tiegħek u ssegwi prinċipji sensibbli tal-ittestjar, iżda tista '"esternalizza" l-kitba tat-testijiet lill-helper tal-AI tagħna. Eżempju fil-pront: "Ikteb testijiet tal-unità għal din il-funzjoni billi tuża Jest. Ikopri mogħdija kuntenta, każijiet tat-tarf, u modi ta 'falliment. Spjega għaliex jeżisti kull test."
Tista 'anki tgħaddi l-aħjar prattiki tal-ittestjar tal-guru tal-ittestjar Kent C. Dodds bħala linji gwida lill-aġent tiegħek, bħal hawn taħt:
Għodda Interna Xi ftit simili għall-eżempju ta 'shader imsemmi qabel, reċentement ġejt inkarigat biex janalizza d-duplikazzjoni tal-kodiċi f'codebase u nqabbel qabel u wara refactor. Ċertament mhux biċċa xogħol trivjali jekk ma tridx tmur ir-rotta li tieħu ħafna ħin biex tqabbel il-fajls manwalment. Bl-għajnuna ta 'Copilot, ħloqt b'kitba li analizzat id-duplikazzjoni tal-kodiċi għalija, irranġat u ordnat l-output f'tabella, u esportajtha lejn Excel. Imbagħad ħadt pass ieħor. Meta r-refactor tal-kodiċi tagħna sar, ħeġġeġ lill-aġent biex jieħu l-folja Excel eżistenti tiegħi bħala l-linja bażi, żid fl-istat attwali ta 'duplikazzjoni f'kolonni separati, u jikkalkula d-delta. Aġġornament tal-Kodiċi Miktub Żmien Ilu Riċentement, klijent antik tiegħi laqatni, peress li maż-żmien, ftit karatteristiċi ma kinux qed jaħdmu sew fuq il-websajt tiegħu aktar. Il-qabda: Il-websajt inbniet kważi għaxar snin ilu, u l-JavaScript u l-SCSS kienu qed jużaw għodod ta 'kompilazzjoni pjuttost antiki bħal requireJS, u s-setup kienet teħtieġ verżjoni eqdem ta' Node.js li lanqas biss kienet taħdem fuq il-MacBook tiegħi tal-2025. L-aġġornament tal-proċess kollu tal-bini bl-idejn kien jieħu jiem, għalhekk iddeċidejt li nħeġġeġ lill-aġent tal-AI, "Tista 'taġġorna l-proċess tal-bini JS u SCSS għal munzell lean 2025 bħal Vite?" Żgur li għamel, u wara madwar siegħa ta 'raffinar mal-aġent, kelli l-SCSS u l-JS build tiegħi qalbu għal Vite, u stajt niffoka fuq bugfixing attwali. Eżatt kun żgur li tivvalida sew l-output u l-fajls ikkumpilati meta tagħmel tali bidliet integrali għall-proċess tal-bini tiegħek. Taqsira U Abbozzar Tixtieq tiġbor fil-qosor il-bidliet riċenti kollha tiegħek fil-kodiċi f'sentenza waħda għal messaġġ ta' impenn, jew għandek lista twila ta' impenji u tixtieq tiġborhom fi tliet punti? Ebda problema, ħalli l-AI tieħu ħsiebha, imma jekk jogħġbok kun żgur li taqraha. Eżempju fil-pront huwa sempliċi daqs messaġġ lil bniedem sħabu: "Jekk jogħġbok somma l-bidliet riċenti tiegħi f'punti ta' bulit konċiżi". Il-parir tiegħi hawnhekk ikun li tuża GPT għall-kitba b'kawtela, u bħal fil-kodiċi, jekk jogħġbok iċċekkja l-output qabel ma tibgħat jew tissottometti. Rakkomandazzjonijiet U l-Aħjar Prattiki Prompting Wieħed mill-benefiċċji mhux daqshekk ovvji tal-użu tal-AI huwa li iktar ma jkunu speċifiċi u mfassla l-prompti tiegħek, aħjar ikun il-produzzjoni. Il-proċess ta 'inkoraġġiment ta' aġent AI jġiegħla nifformulaw ir-rekwiżiti tagħna b'mod speċifiku kemm jista 'jkun qabel ma niktbu u nikkodifikaw. Din hija r-raġuni għaliex, bħala regola ġenerali, nirrakkomanda ħafna li tkun kemm jista' jkun speċifiku bl-istruzzjoni tiegħek. Ryan Florence, ko-awtur ta 'Remix, jissuġġerixxi mod sempliċi iżda b'saħħtu biex ittejjeb dan il-proċess billi tispiċċa l-pront inizjali tiegħek bis-sentenza: "Qabel ma nibdew, għandek xi mistoqsijiet għalija?"
F'dan il-punt, l-AI ġeneralment terġa 'lura b'mistoqsijiet utli fejn tista' tiċċara l-intenzjoni speċifika tiegħek, billi tiggwida lill-aġent biex jipprovdik approċċ aktar imfassal apposta għall-kompitu tiegħek.
Uża Kontroll tal-Verżjoni U Xogħol F'Bniet Diġestibbli L-użu tal-kontroll tal-verżjoni bħal git mhux biss ikun utli meta tikkollabora bħala tim fuq codebase wieħed iżda wkoll biex tipprovdilek bħalakontributur individwali b'punti stabbli biex jinqalgħu lura f'każ ta' emerġenza. Minħabba n-natura mhux deterministika tagħha, l-AI kultant tista' tmur diżonesti u tagħmel bidliet li sempliċement mhumiex ta' għajnuna għal dak li qed tipprova tikseb u eventwalment tkisser l-affarijiet b'mod irreparabbli. Il-qsim tax-xogħol tiegħek f'kommessi multipli jgħinek toħloq punti stabbli li tista' terġa 'lura għalihom f'każ li l-affarijiet imorru fuq il-ġenb. U sħabek se nirringrazzjak ukoll, peress li se jkollhom żmien aktar faċli biex jirrevedu l-kodiċi tiegħek meta jinqasam f'biċċiet strutturati sew semantikament. Irrevedi bir-reqqa Din hija aktar l-aħjar prattika ġenerali, iżda fl-opinjoni tiegħi, issir saħansitra aktar importanti meta tuża għodod AI għal xogħol ta 'żvilupp: Kun l-ewwel reviżur kritiku tal-kodiċi tiegħek. Kun żgur li tieħu ftit tal-ħin biex tgħaddi l-bidliet tiegħek linja b'linja, bħalma tirrevedi l-kodiċi ta 'xi ħadd ieħor, u tibgħat ix-xogħol tiegħek biss ladarba jgħaddi l-awto-reviżjoni tiegħek. "Żewġ affarijiet huma t-tnejn veri għalija bħalissa: l-aġenti AI huma aqwa u spinta enormi fil-produttività. Huma wkoll magni slop enormi jekk itfi moħħok u itlaq kompletament. "— Armin Ronacher fil-blog post tiegħu Agent Psychosis: Are We Going Insane?
Konklużjoni U Ħsibijiet Kritiċi Fl-opinjoni tiegħi, l-għodod tal-kodifikazzjoni tal-AI jistgħu jtejbu l-produttività tagħna bħala żviluppaturi fuq bażi ta 'kuljum u jilliberaw il-kapaċità mentali għal aktar ippjanar u ħsieb ta' livell għoli. Huma jġegħluna nirtikolaw ir-riżultat mixtieq tagħna b'dettall metikoluż. Kwalunkwe AI tista ', kultant, allucinate, li bażikament ifisser li tinsab f'ton kunfidenti. Allura jekk jogħġbok kun żgur li tiċċekkja u tittestja, speċjalment meta tkun fid-dubju. L-AI mhix balla tal-fidda, u nemmen, l-eċċellenza u l-abbiltà li ssolvi l-problemi bħala żviluppatur qatt mhu se jispiċċaw tal-moda. Għall-iżviluppaturi li għadhom qed jibdew fil-karriera tagħhom dawn l-għodod jistgħu jkunu ferm jitħajjar jagħmlu l-maġġoranza tax-xogħol għalihom. Dak li jista 'jintilef hawn huwa x-xogħol ta' spiss drenaġġ u bl-uġigħ permezz ta 'bugs u kwistjonijiet li huma delikati biex jiġu debug u solvuti, magħruf ukoll bħala "l-itħan". Anke Lee Robinson ta' Cursor AI jistaqsi dan f'waħda mill-karigi tiegħu:
L-għodod tal-kodifikazzjoni tal-AI qed jevolvu b'pass mgħaġġel, u ninsab eċċitati għal dak li se jiġi wara. Nittama li sibt dan l-artikolu u l-pariri tiegħu ta 'għajnuna u huma eċċitati li tipprova xi wħud minn dawn għalik innifsek.