Tue, 21 Oct 2014

14:00 - 14:30
L5

Software Carpentry in Computational Science

Aron Ahmadia
(US Army Engineering Research and Development Center)
Abstract
This brief lecture will highlight several best-practice observations and
research for writing software for mathematical research, drawn from a
number of sources, including; Best Practices for Scientific Computing
[BestPractices], Code Complete [CodeComplete], and personal observation
from the presenter.  Specific focus will be given to providing the
definition of important concepts, then describing how to apply them
successfully in day-to-day research settings.  Following the outline from
Best Practices, we will cover the following topics:

* Write Programs for People, Not Computers
* Let the Computer Do the Work
* Make Incremental Changes
* Don't Repeat Yourself (or Others)
* Plan for Mistakes
* Optimize Software Only after It Works Correctly
* Document Design and Purpose, Not Mechanics
* Collaborate

[BestPractices]
http://www.plosbiology.org/article/info%3Adoi%2F10.1371%2Fjournal.pbio.1001745
[CodeComplete] http://www.cc2e.com/Default.aspx
Subscribe to US Army Engineering Research and Development Center