De la eScience Fellow Eduard Klapwijk
Anul acesta finalizam și publicam unul dintre propriile mele proiecte de cercetare. Eu și coautorii mei am făcut mulți pași pentru ca proiectul să fie cât mai reproductibil.
Deoarece configurez un flux de lucru de verificare a codului pentru a verifica reproductibilitatea rezultatelor cercetării pentru cercetătorii de la institutul meu, am fost nerăbdător să-mi prezint propria lucrare la test. Cât de reproductibilă ar fi munca noastră atunci când este supusă unui test extern?

O verificare a reproductibilității
Mi-am trimis munca la fluxul de lucru al comunității CODECHECK (Nüst și Eglen 2021), ceea ce înseamnă că un verificator de cod extern va efectua o verificare a reproductibilității. Ei vor încerca să-mi ruleze din nou codul pentru a vedea dacă rezultatele raportate în lucrare pot fi reproduse.
O verificare a codului a fost oportunitatea perfectă pentru a verifica cât de reproductibil a fost proiectul nostru. În același timp, experiența de verificare a codului propriei mele lucrări ar ajuta la înțelegerea perspectivei unui cercetător asupra procesului. În această postare, voi împărtăși experiența mea personală de verificare a codului. Acest lucru, sperăm, va demistifica procesul pentru orice cititor nou la verificarea codului sau curios despre ce este vorba despre verificarea codului.


Proiectul: neuroUp
Proiectul înaintat pentru verificarea codului a fost în pregătire de aproximativ patru ani – un exemplu frumos de Slow Science conform analogiei lui Uta Frith. De la începutul acestor patru ani, am încercat să fac toate scenariile noastre reproductibile.
O etapă importantă a proiectului a fost pasul de la lucrul cu scripturi R conectate lax până la dezvoltarea unui pachet R (noi l-am numit neuroUp). Cu ajutorul fantasticei cărți de pachete R de Hadley Wickham și Jennifer Bryan, am reușit să dezvolt primul meu pachet R din codul acestei lucrări. Deși după ce am făcut acest lucru, cred că pentru majoritatea proiectelor de cercetare dezvoltarea unui pachet software personalizat este o exagerare, organizarea codului într-un pachet oferă o mulțime de beneficii care fac codul mult mai reproductibil. Vă organizează proiectul conform unei convenții, specifică dependențe și grupează date, cod și documentație (Marwick, Boettiger și Mullen 2018). Aceasta înseamnă că alți cercetători pot instala, cita și utiliza pachetul fără a fi nevoie să înțeleagă exact cum funcționează codul dvs.
Când am postat preprintul pentru lucrarea noastră, am publicat și o versiune reproductibilă a manuscrisului online. Acesta a fost momentul în care am apelat la fluxul de lucru al comunității CODECHECK pentru a verifica dacă rezultatele erau într-adevăr reproductibile, cel puțin conform unui verificator de cod independent care nu făcea parte din echipa de cercetare.
Trimiterea lucrării pentru a fi verificată în cod
Obținerea rezultatelor verificării
După un scurt timp de așteptare, am fost anunțat cu o veste bună: verificatorul a reușit să reproducă lucrarea mea și am primit un certificat (vezi Röseler 2024)! Desigur, am fost foarte fericit. Aceasta a însemnat că cel puțin o altă persoană, într-un alt moment în timp, a putut să reproducă munca noastră cu ajutorul datelor și codului nostru.
Dar, așa cum am experimentat și când am verificat mai târziu munca altcuiva (Joey Tang et al. 2024), când totul funcționează fără probleme (eventual, poate după depanarea unor dependențe), întregul proces nu este prea interesant. Aparatul face cea mai mare parte a muncii în acest caz, doar vedeți o grămadă de imagini sau tabele identice care apar pe ecran.
Tipul de reproductibilitate care este verificat (reproductibilitatea computațională sau a metodelor) este în cele din urmă destul de elementar. Ceea ce este verificat nu este altceva decât o condiție minimă, dar necesară, a unei cercetări bune și credibile: ceea ce se verifică este dacă rezultatele pot fi reluate independent folosind aceleași date și cod. Alte concepte legate de rezultate de cercetare fiabile și de încredere, cum ar fi replicabilitatea, generalizarea și robustețea, pot fi mai interesante, dar necesită, de asemenea, mult mai mult efort sau chiar studii noi pentru a verifica.
Reflecții finale
Ca și în majoritatea lucrurilor din viață, pregătirea pentru verificarea codului (asigurându-vă că munca dvs. este reproductibilă) este cea mai mare parte a muncii. Iată câteva puncte cheie de luat în considerare (vezi și aceste zece reguli simple pentru cercetarea reproductibilă: Sandve et al. 2013):
- Înregistrați toți pașii făcuți pentru a vă procesa și analiza datele în scripturi și evitați pașii manuali care sunt mai greu de reprodus.
- Documentarea codului este esențială. Explicați ce pași sunt necesari pentru a reproduce rezultatele (consultați README).
- Asigurați-vă că enumerați sistematic toate dependențele (software și pachete).
- Utilizați instrumente pentru controlul versiunilor.
- Utilizați instrumente precum Quarto, R markdown sau notebook-uri Jupyter. Acestea oferă o modalitate excelentă de a partaja codul, textul narativ și rezultatul într-un singur document, făcând mult mai ușor să descrieți în mod clar pașii care au fost făcuți pentru a procesa și analiza datele.
- Reproductibilitatea parțială este întotdeauna mai bună decât reproductibilitatea zero! Nu lăsa perfectul să fie dușmanul binelui.
În concluzie, verificarea codului cercetării noastre a fost o experiență foarte frumoasă. Cu doar câțiva pași suplimentari (furnizarea unui fișier scurt de metadate, adaptarea README, solicitarea verificării), am reușit să obținem un certificat frumos care confirmă că calculele care stau la baza articolului nostru ar putea fi executate independent. Cred că această verificare suplimentară – alături de evaluarea inter pares tradițională – oferă un plus bun plus credibilității muncii noastre. Prin urmare, am citat cu bucurie certificatul CODECHECK în lucrarea noastră care a fost publicată recent (vezi Klapwijk et al. 2025).
Ai muncit din greu pentru ca cercetarea ta să fie reproductibilă? Atunci cu siguranță verificați codul!
Mulțumiri
Aș dori să-i mulțumesc lui Lieke de Boer pentru feedback-ul excelent cu privire la o versiune nefinalizată a acestei postări.
Această postare a fost publicată inițial aici. Pentru atribuire, vă rugăm să citați această lucrare ca:
Klapwijk, Eduard T. 2025. „My Experience of Getting Codechecked.” 16 ianuarie 2025. https://doi.org/10.5281/zenodo.14651307.
Experiența mea de verificare a codului a fost publicată inițial în Țările de Jos eScience Center pe Medium, unde oamenii continuă conversația subliniind și răspunzând la această poveste.