19. Awgrymiadau Cryno Eraill
⏪ Blaenorol | Nesaf ⏩ |
Fel crynodeb o’r pethau a ddysgir yn y cwrs yma, dyma wyth awgrym a rhoddir yn y papur “Best Practices for Scientific Computing” gan Wilson et. al. (cyfeiriad isod):
- Ysgrifennwch god ar gyfer pobl, nid cyfrifiaduron.
- Ni ddylai rhaglen gofyn i’r person sy’n ei darllen cofio llawer iawn i ffeithiau yn ei chof ar unwaith.
- Ysgrifennwch enwau cyson, unigryw, ac ystyrlon.
- Cadw steil a fformatio’r cod yn gyson.
- Gadewch i’r cyfrifiadur gwneud y gwaith.
- Gofynnwch i’r cyfrifiadur gwneud unrhyw waith ailadroddol.
- Arbedwch orchmynion diweddar mewn ffeil i’w ail-ddefnyddio.
- Defnyddiwch offeryn adeiladu i awtomeiddio llifoedd gwaith.
- Gwnewch newidiadau graddol.
- Gweithiwch mewn camau bach, yn rhoi adborth yn aml, a siawns i newid cywiro a newid cyfeiriad y prosiect.
- Defnyddiwch system rheolaeth fersiwn.
- Rhowch bopeth a chrëir gyda llaw o dan reolaeth fersiwn.
- Peidiwch ailadrodd eich hun (neu bobl eraill).
- Dylai pob gan ddarn o ddata un cynrychioliad awdurdodol yn y system, ac un yn unig.
- Modiwlareiddiwch god yn lle copïo a gludo.
- Ailddefnyddiwch god yn lle ailysgrifennu.
- Cynlluniwch ar gyfer camgymeriadau.
- Ychwanegwch ddatganiadau assert i raglenni i wirio’u gweithrediadau.
- Defnyddiwch lyfrgell profion awtomatig.
- Trowch bygs i mewn i achosion prawf.
- Defnyddiwch datbygiwr symbolaidd.
- Ond optimeiddiwch cod ar ôl iddo weithio’n gywir.
- Defnyddiwch feddalwedd proffilio i adnabod tagfeydd.
- Ysgrifennwch god mewn iaith lefel-uchaf posib.
- Dogfennwch ddylunio a phwrpas, nid mecaneg.
- Dogfennwch ryngwynebau a rhesymau, nid gweithrediadau.
- Mae Ailysgrifennu a gwella cod yn well na esbonio sut y mae’n gweithio.
- Mewnosodwch y ddogfennaeth ar gyfer meddalwedd o fewn y meddalwedd.
- Cydweithiwch.
- Adolygwch god cyn cyfuno.
- Ysgrifennwch god mewn parau pan rydych yn dod a rhywun newydd mewn i’r prosiect, neu wrth daclo problemau anodd.
- Defnyddiwch offeryn tracio problemau.
A dyma pum awgrym sut i gynnal ymchwil sydd ddim yn ailgynhyrchiadwy, a rhoddir yn y papur “Top Tips to Make Your Research Irreproducible” gan Chue Hong et. al. (cyfeiriad isod):
-
Meddwl “Llun Mawr”: Mae gan bobl diddordeb yn y wyddoniaeth, nid y manylion arbrofion diflas, felly peidiwch â’i disgrifio.
-
Byddwch yn Haniaethol: Mae ffug-god yn syniad arbennig ar gyfer cyfathrebu syniadau yn gloi, wrth roi darllenwyr dim siawns o gwbl o ddeall y gweithrediadau sy’n gwneud iddo weithio.
-
Byr a Cryno: Bydd unrhyw gyfyngiadau i’ch methodolegau yn amlwg i ddarllenwyr ofalus, felly does dim agen gwastraffu lle yn gwneud nhw’n eglur.
-
Diffyg Model: Chi yw’r arbenigwr, felly chi sy’n penderfynu pa algorithmau a data i’w ddefnyddio. Os nad yw eich methodoleg yn edrych yn dda ar feincnodau parchus, dylach creu meincnodau eich hun a defnyddio’r rheini (ac yn ddelfrydol peidiwch â’i gyhoeddi).
-
Peidiwch Rannu: Mae rhannu ond yn gwneud e’n haws i bobl eraill dwyn eich syniadau, deall beth mae’ch cod yn gwneud yn lle beth rydych chi’n dweud mae’n ei wneud, ac yn waeth byth, deall nad yw’ch cod yn gweithio o gwbl.
Cyfeiriadau
-
“Best Practices for Scientific Computing”, Greg Wilson, D. A. Aruliah, C. Titus Brown, Neil P. Chue Hong, Matt Davis, Richard T. Guy, Steven H. D. Haddock Kathryn D. Huff Ian M. Mitchell Mark D. Plumbley, Ben Waugh, Ethan P. White, Paul Wilson (PLoS Biol 12(1)),
https://journals.plos.org/plosbiology/article?id=10.1371/journal.pbio.1001745
-
“Top Tips to Make Your Research Irreproducible”, Neil P. Chue Hong, Tom Crick, Ian P. Gent, Lars Kotthoff, Kenji Takeda,
⏪ Blaenorol | Nesaf ⏩ |