Useful design patterns for refactoring code bases | Hacker News Reader