Why Refactor?

Why Refactor?

Refactoring is necessary. Especially on, though not limited to, large or complex projects developed over an extended period of time (say, more than 4 months). To understand refactoring, you must understand a few core concepts about software development:
It is a collaborative endeavor involving many technical roles (developers, testers, designers, database architects) and multiple business roles (the users, the project managers, client stakeholders, product managers, etc). A software project does not come from a single “pen” but from multiple authors, all writing the same book.

Code Reviews: How Far Down the Rabbit Hole Do We Go?

“I only modified one line of the file, why should I be responsible for fixing the coding style of the whole thing?” That was my first reaction when participating in a full-scale code review at one of the software companies I worked for. Then, if I do have to fix the...