patterns dev book