Full description not available
T**A
Four Stars
I recommend this book to anyone working or planning to work with legacy code.
D**R
I had hoped for more...
This book seems more like a series of short conference lectures collected together rather than a coherent whole. It's almost the kind of book you could hand to a manager to give them an overview. Almost...After a brief discussion of what legacy code is and some of the issues with maintaining it, refactoring it, and/or re-architecting it, some tools and methods are listed with superficial discussions of how they fit in to the whole process and why you might want to use them. One thing in particular really stuck out to me though. The Mikado method is mentioned, and here is the entire discussion of it:"It’s very simple but effective. Basically it involves building up a dependency graph of all the tasks you need to perform, so that you can then execute those tasks more safely and in an optimal order. The dependency graph is constructed in an exploratory manner, with plenty of backtracking and leaning on the VCS."Then we are referred to another Manning book to learn about it. My reaction is that I don't want to buy that book regardless of its merits! The bigger issue for me is that this is pretty much the depth this entire book is written at and I think I can get that level of information from the internet for free.Instead of buying this book, I think it's a better investment to take your money and apply it towards the other books that have thorough discussions of the various topics. In particular, I'd recommend Bernstein's Beyond Legacy Code: Nine Practices to Extend the Life (and Value) of Your Software, Feathers' Working Effectively with Legacy Code, Fowler's Refactoring: Improving the Design of Existing Code, and if you're interested in TDD, check out Beck's Test Driven Development: By Example. And if those aren't enough for you, I'd also suggest Duval, Matyas and Glover Continuous Integration: Improving Software Quality and Reducing Risk as well as Humble and Farley Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation (Addison-Wesley Signature Series (Fowler)). And by the way, if you're interested in the Mikado Method, here's the book; The Mikado Method. Let me know if it's any good...
C**R
Good for an overview, but lacks of depth
This could be a good book for junior and senior developers, but if you're junior, this should not be your first book on the topic, and will not help you avoid common mistakes.If you are a senior developer, you'll almost certainly find your current project described in this book. And you could use the first chapter to approach your boss or the CEO to convince him/her to refactor/re-architect the application.It names some tools; probably you already heard about most of them and you're certainly using some of them. However there are still some that are not that widely used. Unfortunately he doesn't go in much deep detail as I would have expected and hoped, so you'll need to put extra time to learn something that could make the difference.It also provides some examples of how to tackle the problems he's describing; although - in my opinion - he doesn't always suggests the best way to solve that issue.I would certainly mention it to a senior developer wishing to further improve his/her knowledge or compare his experience/solutions with others.You can certainly find online all the resources that Birchall mentions in his book, but this book saves you some time and provides a good proposal to orchestrate all these tool. Does it worth? It depends. I got some good hints and I am happy I read it.I won't expect to see it in many personal libraries, but in an interview I would appreciate a senior developer that read it and deepened those topics.
Z**I
Book is very accurate and reasonable and well written and contains a lot good advises, how to deal with legacy software
Contrary to other negative reviews I find this book very valuable and well written. Author shows a lot of BASIC practices and rules what to do and remember about different thing or bear in mind about how to rewrite or improve legacy software.I would stress that a lot of legacy projects and engineers working with legacy stuff, have no cutting edge knowledge. Some of them don't use Sonar, build repo, have almost no tests and so on. But they are seniors, old seniors with very legacy projects. This book sometimes shows basics but believe me I have seen a lot of seasoned developers who are not familiar with new basic practices. Maybe incorrect thing was to write about FindBugs and Checkstyle in the beginning of book. Some after reading it just gave up.Book is very accurate and reasonable and well written and contains a lot good advises, how to deal with legacy software.Maybe is not very deep and do not shows very deep details but overall is short, concise, gives a lot of to think of and if you are familiar with described in it stuff, you can go further.I read it from cover to cover.Definitely recommended. !
C**Y
Great for theory, not so great for practical application
It's a solid introduction to working with legacy software, but at a 100 level view. If you're wanting to learn more about how to work with legacy code, I think Working Effectively with Legacy Code is a much better choice.