Book · 1999
Refactoring
by Martin Fowler
Martin Fowler's method for restructuring code's internals without anyone outside noticing that anything changed at all.
Catalogue record: Open Library
What does Reddit think of Refactoring?
Refactoring keeps getting measured against Clean Code, and it doesn't always lose. The ↑193 r/cscareerquestions comment says it directly: 'I would recommend Martin Fowler's Refactoring over Clean Code. I read both and found Refactoring to be a much cleaner read.' The ↑687 comment lists both as cornerstones without picking a side, and the ↑655 crowd-sourced ranking puts hard numbers on it, 35% recommended against Clean Code's 66%, so the head-to-head verdict isn't settled by the data. Where the book gets discussed for its own content rather than its rivalry, the specifics are concrete: the ↑98 r/webdev comment pulls out the rule about not wearing your refactoring and design hats at the same time, tests passing unchanged if you're refactoring, changing if you're not. Sentiment splits by venue. r/cscareerquestions and r/learnprogramming read positive; r/ExperiencedDevs and r/programming land closer to mixed, the difference between people picking their first serious book and people who've already read three.
Community feedback & reader fit
Themes
- · The Clean Code comparison, sometimes won outright
- · 'Don't wear your refactoring and design hats at the same time' as the cited specific rule
- · A crowd-sourced percentage ranking rather than universal acclaim
- · Warmer reception from career-stage subs than from experienced-dev subs
Common praise
- + The ↑193 comment says flatly it found Refactoring 'a much cleaner read' than Clean Code, having read both.
- + The ↑98 r/webdev comment cites a specific, usable rule from the book: don't wear your refactoring and design hats at the same time.
Common criticism
- − The ↑655 crowd-sourced list puts it at 35% recommended, well behind Pragmatic Programmer's 67% and Clean Code's 66%.
- − r/ExperiencedDevs and r/programming both run closer to mixed than positive, cooler than the reception in career-focused subs.
Who it's for
Pick this over Clean Code if the ↑193 comment's verdict lands for you: cleaner read, same territory. Want the discipline spelled out rather than implied? The ↑98 comment gives you the specific mechanic, refactoring hat versus design hat, tests passing unchanged when you're in the former mode. r/ExperiencedDevs runs cooler on this than r/cscareerquestions does, so start there instead of the warmer career-subreddit threads if you want the skeptical read before buying in.
Mentions over time
Which Reddit comments matter for Refactoring?
The most relevant excerpts across the subreddits where this book is mentioned — opinionated, argued takes first, then top-upvoted mentions. Click through to read the full thread.
“Wordpress is NOT essential, and if you try to pursue that path too heavily you will limit your earning potential. Companies with enterprise products are … want to focus on front-end web dev, here's what I recommend: ### 1. Learn more than the language Learn the fundamentals of writing *good* softwar…
“The Pragmatic Programmer is like the cornerstone for code quality. As well as Clean Code. EDIT: I'm going to include a few more that I think will help for your career. * Clean Architecture by Robert C Martin (the whole Clean series is good) * Code Simplicity by Max Kanat-Alexander * Refactoring:…
“What I would call the classics: * Design Patterns - Elements of Reusable Object-Oriented Software * Code Complete * Rapid Development * The Pragmatic Programmer * The Mythical Man-Month * Operating Systems Design and Implementation * Refactoring - Improving the Design of Existing Code * The Algorith…
“Here's the list, for anyone interested in just that: 1. The Pragmatic Programmer by David Thomas & Andrew Hunt (67% recommended) 2. Clean Code by Robert C. Martin (66% recommended) 3. Code Complete by Steve McConnell (42% recommended) 4. Refactoring by Martin Fowler (35% recommended) 5. Hea…
“Most of these principles are good, but I really dislike this book. My biggest problem comes down to what he considers “too long” for a function. It’s like 8 lines. That’s way too short of a threshold for me. There’s a point at which breaking down functions into smaller pieces makes code harder to un…
“Yes, the techniques discussed in the book have passed the test of time. There's even a second edition which is a bit more "modern" (see ). Another classic read is "Working Effectively with Legacy Code". The only pitfall of these books is that …
“I would recommend Martin Fowler's Refactoring over Clean Code. I read both and found Refactoring to be a much cleaner read.
“Great list! I would personally add in two more: * Refactoring: Improving thr Design of Existing Code (Martin Fowler) * Debugging: 9 Indispensable Rules for Finding Even the Most Elusive Software and Hardware Problems(Dave Agans)
“From reading the responses here, I see that quite a few people still don't really understand TDD. Source: Have worked in full blown XP teams since 1999. ​ Because it's called TEST Driven Development people focus on the "test" part. But the test part isn't actually the point. The point is…
“This. Development is hard. With the growing popularity of bootcamps where you can be "a fullstack dev in 5 months!", people forgot that it is not so simple. How many devs know what are SOLID, FIRST tests, YAGNI, Clean Code, Clean Architecture, TDD... and practice them? My advice? Read books. For …
“- Domain Driven Design by Eric Evans - The Mythical Man Month - Clean Code - Clean Architecture - Refactoring: improving the design of existing code - Design Patterns by the Gang of Four
“Go read “Refactoring” by Martin Fowler Among the many insights, one that stands out for me is Do not wear your refactoring and design hats at the sane time. That is to say: if you are refactoring, your test suite should pass at the end without being changed. If you are writing new code that would r…
“- _Refactoring_ by Martin Fowler - _Effective Java_ by Joshua Bloch - _Test Driven Development_ by Kent Beck - _Clean Code_ by Robert Martin - _The Pragmatic Programmer_ by Andy Hunt and Dave Thomas (25th Anv. Ed.)
“Yes, DDIA hits the right spot of real world application. These sort of books seem few and far between but the following have been personally helpful. Maybe they'll help you too: - Release It! by Michael Nygaard - Grokking Simplicity - TDD by Example - Refactoring book by Martin Fowler
“Refactoring by Martin Fowler and Kent Beck is a great book
Convinced? Pick up Refactoring
Readers also mention
Books that share discussion threads with Refactoring — counted from the comments, not curated.
Guides featuring Refactoring
Ranked best-of lists and editorial guides where this book's tracked mentions place it.
Refactoring — frequently asked
Is Refactoring better than Clean Code?+
Depends who you ask, but at least one commenter says yes outright. The ↑193 r/cscareerquestions comment states it directly, having read both: Refactoring is 'a much cleaner read.' The ↑655 crowd-sourced list complicates that, though, putting Refactoring at 35% recommended against Clean Code's 66%.
What's the single best-known idea from Refactoring?+
Per the ↑98 r/webdev comment, it's the rule about not wearing your refactoring and design hats at the same time: if you're refactoring, your tests should pass unchanged at the end; if you're adding new behavior, that's a different mode entirely.
Is Refactoring worth reading if I'm not an experienced developer?+
The reception suggests it works fine as an early read. r/learnprogramming's sentiment runs positive, and the ↑181 comment adds it to a beginner-adjacent reading list alongside a debugging book, not gated behind seniority.
Does r/ExperiencedDevs rate Refactoring highly?+
Cooler than you'd expect. Its sentiment there lands mixed rather than positive, in contrast to r/cscareerquestions running positive over the same book. The experienced-dev crowd isn't dismissive, per the ↑687 cornerstone framing, just less effusive.