This session will explain the goals of reproducible research, and describe techniques that can be used during the research process to try to ensure that computational processing is reproducible. These techniques include: always using scripts; setting and saving seed values; using open-source languages and tools, and non-proprietary data formats; using version control; specifying file dependencies to automate building programs and other output files; and making code, documentation and raw data publicly available.