Continue reading: Learning, understanding, and horizontal development

Learning, understanding, and horizontal development

As developers feel the daily pressure to deliver, they tend to skip a crucial step in the process: learning and understanding the system. There’s a huge difference between just adding more lines of code to the codebase and making changes that maintain the conceptual integrity of the system.

Horizontal development is the result of not spending enough time learning and understanding the system you’re working on. By starting to churn out code too soon, you’ll inevitably be adding silos of functionality in parallel to existing functionality.

The outcome is legacy code. It doesn’t matter how well factored it is, and what test coverage it has!

Continue reading

Continue reading: The story of the little boy and the Big Plan

The story of the little boy and the Big Plan

This is actually a true story that I am about to tell you. I heard it from a friend talking about his childhood a couple of weeks ago. When I listened to him, I could immediately compare it to many of the software projects I have seen.

Continue reading