Skip to content

Instantly share code, notes, and snippets.

View aled1027's full-sized avatar

Alex Ledger aled1027

View GitHub Profile
@aled1027
aled1027 / scientific_programming.md
Last active June 19, 2016 20:46
Scientific Programming

Guidelines for writing Scientific Programs

Scientific programming is meaningfully different from typical software engineering. Where a web-service runs continuously, a scientific program is ran once - taking anywhere from a few seconds to a few days - and we analyze the results. We may find that the script needs to be updated, or we run the script on different data, in which case we make small changes to the script and run it again. The scientific programming process can be simplified to the repeated iteration of this process.

As a result of this process, and the fact that scientific programs tend to be relatively small (ranging from a few hundred lines of code to a few thousand), I use a unique approach to write the programs. My broad aims in writing scientific programs are the following:

  • Make the core algorithms clear, readable and easily vetted by others