My current team has pair-programmed and followed strict TDD on a single codebase for over ten years. The practices started from reading the literature on Extreme Programming, which resonated with both the developers and leadership. As the team changed, we continued to follow the practices. In the last five years, the developers choose to implement Arlo Belshee’s “Promiscuous Pairing”. We switch pairs in short intervals: 180 minutes is our current preference.
(Want to become a Vim expert? Check out my new book: 10 Minute Vim) Editor macros are a secret weapon for editing text. While they are hard to learn, no other tool offers such broad speed and power for automating changes. A skilled macro wielder can make huge changes to a codebase with ease. Here are some inspirational patterns to demonstrate major structural refactorings using Vim macros and search/replace commands. Reorder A List Of Numbers A change left me with a file with unordered numbers.
Dependency Injection can be greatly simplified while retaining all of its power. Injection of an interface through the constructor is a common way to replace a dependency for unit-test mocking. Unfortunately, it is an extremely verbose pattern.