This document discusses software engineering best practices for data science. It introduces the CRISP-DM process for data mining projects and explains how agile software development fits well with this iterative methodology. It also outlines the benefits of scripting languages like Python and R for data science tasks, noting they are good for prototyping, have useful data structures and statistical packages, and can be modularized. The document recommends writing rough code initially for prototyping before refactoring code into well-structured, reusable functions and libraries.