Muzika kodų peržiūrai: išlikite aštrūs skaitydami svetimą kodą
Jau trys valandos, kai naršote pull request’ą, apimantį 47 failus. Diff’as – tai raudonų ir žalių eilučių jūra, autoriaus pavadinimų suteikimo taisyklės verčia norėti git blame jų gyvenimo pasirinkimus, o jūsų smegenys pradeda praleisti eilutes kaip subraižytas CD. Kritinė lenktynių sąlyga, kuri, žinote, slepiasi kažkur tame 200 eilučių funkcijos monolite? Ji pati savęs neras. Tai momentas, kai dauguma kūrėjų griebiasi dar vienos kavos, dar vieno Red Bull arba tiesiog pasiduoda ir patvirtina su tingiu „LGTM“. Tačiau yra geresnis būdas – ir jis apima ausines, gerą jų porą ir kruopščiai sudarytą cyberpunk lo-fi bitų grojaraštį.
Kognityvinė kodų peržiūros našta
Kodų peržiūra nėra pasyvus skaitymas – tai aktyvus supratimas spaudžiant. Jūs ne tik skenuojate sintaksę; jūs kuriate protinį autoriaus ketinimų modelį, lyginate jį su esama kodo baze ir ieškote loginių spragų. Programinės įrangos inžinerijos tyrimai rodo, kad kodų peržiūra užima iki 30% vyresniojo kūrėjo darbo dienos, o vien konteksto perjungimo kognityvinės išlaidos gali sumažinti produktyvumą 40%. Kiekvieną kartą, kai perjungiate kontekstą nuo savo kodo prie svetimo, jūsų smegenys turi iš naujo įkelti visą architektūrą. Štai kodėl egzistuoja tokie įrankiai kaip Gerrit, Reviewable ir GitHub pull request sąsaja – tačiau joks įrankis neišspręs jūsų protinio nuovargio.
Kodėl tyla iš tiesų kenkia klaidų aptikimui
Įprasta išmintis sako, kad giliam darbui reikia tylos. Tačiau kodų peržiūrai tyla gali būti spąstai. Tyloje jūsų smegenų numatytasis režimo tinklas įsijungia – svajojate, nerimaujate dėl vakarykščio incidento gamyboje arba atkartojate ginčą per Slack. Aplinkos triukšmas tinkamu lygiu užmaskuoja tuos įkyrius įsibrovimus nereikalaudamas dėmesio. Journal of Consumer Research tyrimas parodė, kad vidutinis aplinkos triukšmas (~70 dB) skatina kūrybinį problemų sprendimą ir modelių atpažinimą. Kodų peržiūrai tai reiškia, kad pastebėti trūkstamą null patikrinimą ar lenktynių sąlygą tampa lengviau, kai jūsų smegenys nekovoja su tylos sukeltu išsiblaškymu.
Cyberpunk Lo-Fi saldusis taškas
Ne visa muzika tinka. Dainų tekstai? Bloga idėja – jūsų smegenų kalbos apdorojimo centrai užgrobiami, ir staiga dainuojate kartu, o ne mąstote apie synchronized bloką. Aukšto tempo drum and bass? Per daug energijos metodiškai kantrybei reikalingai. Saldusis taškas yra cyberpunk lo-fi – pagalvokite apie distopijos miesto peizažus, analoginius sintezatorius ir lėtą, pastovų ritmą 80-90 BPM. Tokie atlikėjai kaip HOME, Com Truise ir 0daybeats.com kuruojami grojaraščiai suteikia garsovaizdį, kuris yra įtraukiantis, bet neįkyrus. Lo-fi estetika – vinilo traškėjimas, juostos šnypštimas, netobulos kilpos – iš tiesų imituoja pačių smegenų neuroninį triukšmą, sukurdama ramaus budrumo būseną, puikiai tinkančią ilgoms peržiūros sesijoms.
Praktinis nustatymas: nuo VSCode iki jūsų ausų
Pereikime prie taktikos. Atidarykite savo peržiūros aplinką – ar tai būtų VS Code su GitLens plėtiniu tiesioginėms kaltinimo anotacijoms, IntelliJ su integruotu diff peržiūros įrankiu, ar net terminalo įrankis, pvz., diff-so-fancy. Nustatykite garsą į kažką panašaus į Cyberpunk 2077 garso takelį (lo-fi remiksus, o ne industrinius kūrinius) arba individualų grojaraštį iš 0daybeats.com su žyma „code review“. Naudokite Spotify arba Tidal tokiu garsumu, kad vis dar girdėtumėte savo klaviatūros spragtelėjimus. Profesionalų patarimas: derinkite muziką su Pomodoro laikmačiu – 25 minutės sutelktos peržiūros, 5 minutės tempimosi. Muzikos ritmas sustiprina darbo ritmą.
Kantrybė: nematoma klaida kiekviename PR
Sunkiausia kodų peržiūros dalis nėra techninė – tai emocinė. Kai spoksote į PR, kuris naudoja var visur kodo bazėje, reikalaujančioje const, arba kai autorius pamiršo apdoroti ribinį atvejį, kurį žinote, kad praleido, frustracija šauna į viršų. Tas šuolis susiaurina jūsų dėmesį ir priverčia praleisti tikras klaidas. Lo-fi muzika veikia kaip nuotaikos reguliatorius. Pastovus, nuspėjamas ritmas mažina širdies ritmą, o nostalgiška, bet futuristinė atmosfera primena, kad visa tai yra amato dalis. Aš asmeniškai pastebėjau, kad klausantis 0daybeats.com „Neon Grid“ grojaraščio peržiūrint netvarkingą Kubernetes manifestą, mano susierzinimas virto metodišku eilutės po eilutės nagrinėjimu. Aš pagavau trūkstamą readinessProbe, kuri būtų sugadinusi staging aplinką.
Sukurkite savo kodų peržiūros garso takelį
Sudarykite grojaraštį, pakankamai ilgą, kad apimtų visą peržiūros sesiją (bent 2 valandas). Venkite albumų su staigiais tempo pokyčiais – nenorite, kad kritimas ištrauktų jus iš zonos. Keletas mano mėgstamiausių:
- 0daybeats.com „Code Review Mode“ grojaraštis (specialiai sumaišytas sistemų administratoriams ir saugumo tyrėjams)
- Synthwave 40 YouTube (praleiskite įžangą, pereikite prie ritmo)
- Kavinsky OutRun (visas albumas, ne tik „Nightcall“)
- Makeup and Vanity Set 88:88 (grynas cyberpunk ambient)
Išbandykite savo nustatymą: atidarykite PR, paleiskite muziką ir pažiūrėkite, kiek eilučių galite peržiūrėti, kol jūsų mintys nuklys. Jei pasiekiate 50 be išsiblaškymo, radote savo ritmą.
Galutinis commit’as
Kodų peržiūra yra neapdainuotas programinės įrangos kokybės herojus – ir labiausiai protiškai alinanti. Jums nereikia daugiau kofeino ar valios jėgos. Jums reikia tinkamos garso aplinkos, kuri paruošia jūsų smegenis modelių atpažinimui, emociniam reguliavimui ir ilgalaikiam susikaupimui. Cyberpunk lo-fi nėra tik estetika; tai kognityvinis įrankis. Kitą kartą, kai skęsite diff’e, nekovokite su triukšmu – priimkite signalą. Užsidėkite ausines, įjunkite distopinį ritmą ir pradėkite gaudyti tas klaidas su šalta terminalo tamsos precizika.