Reading list: patterns