How to improve your software design with code that feels wrong | Hacker News Reader