Refactoring
Improving the Design of Existing Code (2nd Edition)
by Martin Fowler
Recommended by David Heinemeier Hansson
Check price on AmazonProof-backed recommendation
Amazon availability
Should I read this?
Recommended by 1 source and appears in Software Engineering, Software Development, and Software.
Fully Revised and UpdatedIncludes New Refactorings and Code Examples "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." M. Fowler (1999) For more than twenty years, experienced programmers worldwide have relied on Martin Fowler's Refactoring to improve the design of existing code and...
Looking for Kindle, hardcover, paperback, or audiobook editions?
Check formats, pricing, and current availability directly.
Why recommended
Recommended by 1 source and appears in Software Engineering, Software Development, and Software.
Recommended by notable people
People and public figures who have recommended this book.
Recommendation Signals
Recommendation proof is sourced from public posts, interviews, reading lists, and cited references.
David Heinemeier Hansson
“The fundamental before/after book. Here’s some code that could be better, here’s how to make it better. The trick to reading this book is to carefully read through every single refactoring pattern and then try to apply it on your code base (you don’t have to commit if it doesn’t fix things). You can’t just blow through it or you won’t really learn it. And you can’t just say “oh, I’ll look up a refactoring when I need it” — because then you don’t know what to look for.”
Appears In

Not sure if this is the right fit?
Consider The Mythical Man-Month by Frederick P. Brooks Jr.. Recommended by 15 sources.
“Reading it feels like listening to Frederick P. Brooks Jr. deliver a set of terse, experience-packed essays drawn from his time managing the IBM System/360 project. The most useful material: concise maxims about staffing, scheduling, documentation, and interface boundaries that give language for hard organizational limitations. Limits include dated technical examples, a single-author, prescriptive voice, and repeated restatements; readers looking for modern case studies or practical templates will find no hands-on exercises. Best read slowly to mine specific heuristics rather than as a how-to playbook.”
Similar books

The Mythical Man-Month
Frederick P. Brooks Jr.
Don't Make Me Think
Steve Krug
Agile Software Development, Principles, Patterns, and Practices
Robert C. Martin
Patterns of Enterprise Application Architecture,
Martin Fowler
Working Effectively with Legacy Code
Michael Feathers
Artificial Intelligence,
Stuart Russell
The Art of R Programming,
Norman Matloff
Game Engine Architecture,
Jason GregoryHow recommendation signals are reviewed
Each recommendation is collected from a public source — interviews, articles, or curated lists — and linked to its original URL. Books with many verifiable recommendations from respected people rank higher.
Refactoring
View on Amazon →