A 3-post collection

As projects mature and grow, sometimes it becomes harder for developers to keep the codebase clean and modular. This leads to new features implementation and bug fixes being more of a juggling exercise of touching different sections of code, than an actual designed solution that follows good design patterns such as SOLID and DRY. »