How do we develop quality code?