Course about scientific programming, from algorithm to implementation.
Scientific programming is quite like performing a wetlab experiment: there is a research question, an experimental design, materials, and results. Of course, one important difference is once you run your experiment once, repeating the experiment becomes a lot easier. This course assumes programming experience and covers various aspects of using scientific programming for development of software to answer biological questions. During this course the students will using professional software development standards and values for research integrity, particularly around reproducibility. Regarding algorithm development, the course focuses on programming approaches like parallel computing, client-server communication, and automating statistical analysis using interactive notebooks.
- Create software to implement an algorithm answering a biological question
- Learn about parallel computing
- Learn about server-client interaction
- Learn about making multivariate statistics reproducible
- Apply version control in software development
- Explain algorithms and implementations in software in appropriate documentation