Short link to this page: http://bit.ly/advrEMBL2016
25-26 February 2016 (Thursday-Friday), EMBL Heidelberg
Instructors: Laurent Gatto, Robert Stojnic (University of Cambridge)
Organiser: Wolfgang Huber (EMBL)
This two-day course will teach participants debugging techniques and good practice in writing reliable, robust code. The material will provide the opportunity to gain experience and understanding of how to identify, resolve, and avoid bugs, in order to produce publication-quality code. The course will be taught using R and will be driven by many practical exercises. Course outline
The material will focus on:
- debugging, to fix problems with code
- defensive programming - writing effective tests to detect bugs
- profiling and optimisation of code
The course is aimed at those with experience of scripting, who want to learn more about writing robust and efficient code and who may want to develop and release packages in the future.
- Coding style(s)
- Interactive use and programming
- Environments
- Tidy data
- Computing on the language
- Functions
- Robust programming with functions
- Scoping
- Closures
- High-level functions
- Vectorisation
- Defensive programming
- Debbugging: techniques and tools
- Condition handling: try/tryCatch
- Unit testing
- Benchmarking
- Profiling
- Optimisation
- Memory
- Rcpp
- Packages and documentation
- Reproducible research and vignettes (
Rmarkdown
) - Source code versioning with (for example) git and GitHub
- Automation with (for example)
Make
See the TeachingMaterial repository for content.
- Previous courses and here.
- Advanced R, Hadley Wickham.
- The R Inferno, Patrick Burns.
- An Introduction to the Interactive Debugging Tools in R, Roger D. Peng.
- R Programming for Bioinformatics, Robert Gentleman.
This work is licensed under a CC BY-SA 3.0 License.