Computational Chemistry Seminar Good practice in Research Computing (and how an RSE can benefit your projects) Dr James Grant Computational Chemistry Seminar 24th November 2017 Hi, I’m me
Computational Chemistry focus Validating/Benchmarking VASP: Isambard – GW4 Tier 2 HPC: Computational Chemistry focus Validating/Benchmarking VASP: Phase 1 - x86/GPU/Phi Phase 1 – Arm prototype Phase 2 – arriving 2018 Your favourite codes? Isambard
Computational Chemistry focus Validating/Benchmarking VASP: Isambard – GW4 Tier 2 HPC: Computational Chemistry focus Validating/Benchmarking VASP: Phase 1 - x86/GPU/Phi Phase 1 – Arm prototype Phase 2 – arriving 2018 Your favourite codes? Isambard
Co-ordinate group training Assist development/code review Within Bath: Co-ordinate group training Assist development/code review One-to-one training Collaborate on grant applications and projects Other
Good (enough) practice in Research Computing1 [and how an RSE can benefit your projects] What constitutes good practice in research computing? Why should we do it? I don’t do research computing, why should I care? Okay so how can you help? I think I’m an RSE, what can I do about it? [1] Wilson G, et al (2017) Good enough practices in scientific computing. PLoS Comput Biol13(6): e1005510. https://doi.org/10.1371/journal.pcbi.1005510
What constitutes good practice in research computing? Data management Software Collaboration Project Organisation Track Changes Manuscripts [1] Wilson G, et al (2017) Good enough practices in scientific computing. PLoS Comput Biol13(6): e1005510. https://doi.org/10.1371/journal.pcbi.1005510
What constitutes good practice in research computing? Data management: Back-up Friendly data, readable Easy to analyse Record workflows Publish data Software: What is it? Document How to use it? Tutorials Modularise, sensible names Use libraries Test/validate [1] Wilson G, et al (2017) Good enough practices in scientific computing. PLoS Comput Biol13(6): e1005510. https://doi.org/10.1371/journal.pcbi.1005510
Why should we do it? Reproducibility Use scripts, for data analysis workflows Automate == efficiencies Data Processing and plotting Re-use Submit with/alongside data Testable, reviewers can follow your analysis Usable/Citable by others [2] http://www.nature.com/authors/policies/availability.html
Why should we do it? Version Control For software engineering Collaborative writing Manage your project data Utilities Scripts Workflows Plots Back up to github.bath.ac.uk (online repositories for sharing software) Push final versions to data facilities/obtain DOI for permalinks
Why should we do it? Availability of computer code Authors must make available upon request, to editors and reviewers, any previously unreported custom computer code used to generate results that are reported in the paper and central to its main claims. Any practical issues preventing code sharing will be evaluated by the editors who reserve the right to decline the paper if important code is unavailable. Upon publication, Nature Journals consider it best practice to release custom computer code in a way that allows readers to repeat the published results. For all studies using custom code that is deemed central to the conclusions, a statement must be included in the Methods section, under the heading "Code availability", indicating whether and how the code can be accessed, including any restrictions to access. [2] http://www.nature.com/authors/policies/availability.html
I don’t do research computing, why should I care? If you analyse data then you are doing research computing [3] https://software.ac.uk/blog/2016-09-12-its-impossible-conduct-research- without-software-say-7-out-10-uk-researchers
Co-ordinate group training Assist development/code review Okay so how can you help? Co-ordinate group training Assist development/code review One-to-one training Collaborate on grant applications and projects Develop business case for human and computational resources Other
I think I’m an RSE, what can I do about it? Get in touch for a chat I am local champion Visit http://rse.ac.uk and sign-up Attend UKRSE Conference Don’t be embarrassed, RSEs are essential for research, and there are plenty of us. Other
Useful Links & References https://software-carpentry.org/ https://software.ac.uk/ http://rse.ac.uk Best practises for scientific computing: http://journals.plos.org/plosbiology/article?id=10.1371/journal.pbio.1001745 Good enough practises in scientific computing: http://journals.plos.org/ploscompbiol/article?id=10.1371/journal.pcbi.1005510 The book: Effective Computation in Physics: Field Guide to Research with Python http://shop.oreilly.com/product/0636920033424.do (Don’t be put off the title, for physics read research) http://people.bath.ac.uk/rjg20 [1] Wilson G, et al (2017) Good enough practices in scientific computing. PLoS Comput Biol13(6): e1005510. https://doi.org/10.1371/journal.pcbi.1005510 [2] http://www.nature.com/authors/policies/availability.html [3] https://software.ac.uk/blog/2016-09-12-its-impossible-conduct-research-without-software- say-7-out-10-uk-researchers