|
|
|
|
|
by lmm
4147 days ago
|
|
When you start dividing responsibilities horizontally like this, IME you end up producing worse software. Being responsible for testing drives you to good design. Being responsible for deployment raises considerations you might otherwise miss. When development and QA are separate it's all too common for only one to have an understanding of the actual customer requirements. Better to slice vertically. Everyone takes responsibility for a small piece of functionality, end-to-end. |
|
Carrot, you see, is so lazy that he exercises every day, because it is easier to accomplish things in a fit body than in one that is fat and weak.
Testing your own code is that sort of laziness. You write automated unit tests so that you will never have to look at or touch that particular bit of code ever again.
Having that sort of laziness will also make you an expert in design, because good design allows you to write concise, maintainable code, which makes your job easier.