A list of books we have read, along with some comments:
ATDD by Example – A practical guide to acceptance test-driven development by Markus Gärtner
Target audience: testers, developers, project managers, Agile coaches
Urs’ comment: This book is a great introduction to ATDD and provides very good guidance and examples. Its 212 pages are read well and quickly. So if you are new to ATDD, you should read this book. If you are already familiar with ATDD and specifying by example, the third part provides some more in detail stuff like team collaboration and refactoring of tests. The only thing I miss is a wider look at approaches to ATDD than the ones presented: Cucumber and Fitness. See here for another, more developer-centric approach providing better refactoring possibilities.
ISBN-13: 978-0-321-78415-5
Bridging the Communication Gap – Specification by example and agile acceptance testing by Gojiko Adzic
Target audience: Product Owners, Business Analysts, Software Developers, Testers
Urs’ comment: The first half of the book is great. Gojiko Adzic explains how agile acceptance tests can be used to foster communication between business and development, and gives a guideline how to process from gathering requirements to implementing acceptance criteria as executable specifications. The second half covers tools, my advice is to simply skip it. Don’t get me wrong here, you should really read this book, the first half is more than worth the money and time needed.
ISBN-13: 978-0-9556836-1-9
Growing Object-Oriented Software, Guided by Tests by Steve Freeman and Nat Pryce
Target audience: Software Developers
Urs’ comment: The book shows how to use Test Driven Development in real-world applications. Unlike most books, the samples are not algorithmic but show scenarios that a developer is confronted with in daily business. It starts with the basics and ends with advanced scenarios like testing persistence, multi-threading and asynchronous code. The main focus lies on testing classes interacting with other classes and how to handle these dependencies properly. A must read for every developer seriously interested in TDD.
ISBN-13: 978-0-321-50362-6
Applying Domain-Driven Design and Patterns: With Examples in C# and .NET by Jimmy Nilsson
Target audience: Software Developers, Software Architects
Daniel’s comment: As the title of the book states it is all about applying domain driven design and patterns. The author of the book as a huge understanding of how to develop a whole set of domain driven design and patterns by applying test first paradigms. As the book evolves the code evolves with it. I wanted to start with domain driven design and was looking for a practical approach to it. I definitely found it in the book. Nonetheless I regret having read Jimmy Nilsson’s book before Eric Evans Domain-Driven Design: Tackling Complexity in the Heart of Software. I think it is much better to start with Eric Evans’ book to get the definition and first insight into Domain Driven Design and then start reading Jimmy’s book to see it applied in test driven manner.
ISBN-13: 978-0321268204
Driving Technical Change – Why People on Your Team Don’t Act on Good Ideas, and How to Convince Them They Should by Terrence Ryan
Target audience: Everyone wanting change
Urs’ comment: I really like this book. It’s thin (I read it in three days), it’s full of good advise, it’s written in an entertaining style, it gives my a toolbox that I can start using now. The book categorizes the skeptics into 7 distinct types: Uninformed, Herd, Cynic, Burned, Time Crunched, Boss and Irrational. Afterwards Terrence Ryan shows us a catalogue of techniques how to handle these skeptics. Finally, the book concludes with a strategy how we can introduce new things in our environment.
While reading this book, you can feel that Terrence Ryan knows what he is writing about. His suggestions, ideas and guideance are concise and very helpful. And most important for me is his message that we should only try to introduce what solves a real problem, not simply because we like it.
ISBN-13: 978-1-93435-660-9
Agile Product Management with Scrum – Creating Products that Customers Love by Roman Pichler
Target audience: Product Owners, future Product Owners, Scrum Coaches
Urs’ comment: This thin book (119 pages) is full of information, tips and tricks for Product Owners. The compressed style is ideal because no Product Owner can say that there is not enough time to read it!
Nonethless, the book gives a detailed look into the job of a real Product Owner seeking a product that matches the customers and end users needs. From the envisioning of the product via grooming the product backlog and planning up to how to collaborate with the Scrum team.
Definitely a must read for everyone on the Product Owner role.
ISBN-13: 978-0-321-60578-8
The naked presenter – Delivering Powerful Presentations With or Without Slides by Garr Reynolds
Target audience: everyone who is presenting in front of an audience
Urs’ comment: After “presentation zen” and “presentation zen design” which were mainly focused on the artifacts (slides), this book puts the most important part under closer inspection; the speaker. Garr Reynolds tells us how to connect with the audience, keep them engaged and how to make a lasting impression. For me, his best book so far.
ISBN-13: 978-0-321-70445-0
The Clean Coder – A Code of Conduct for Professional Programmers by Robert C. Martin
Target audience: Software Developers
Urs’s comment: 210 pages of pure Uncle Bob power about what makes a real professional. While I do not agree with everything written in this book, every software developer should reflect about the topics discussed in this book: when to say “no” to a task, how to say “yes” and do what you promised, practices of a professional and much more. I like this book much more than “Clean Code” because this time there is a clear story line, which is told in an entertaining style. Go read this book and when you’re done then discuss the topics with your team mates, bosses and collegues.
ISBN-13: 978-0-13-708107-3
xUnit Test Patterns – Refactoring Test Code by Gerard Meszaros
Target audience: Software Developers
Urs’ comment: As the back cover says, this is the definitive guide to test automation. If you really want to know all you can know about unit testing then this is your book.
However, this book does not come for free. Reading is hard because it’s not exactly written like a block buster. It took me over six months of hard work to get through it (even with skipping some sections). Therefore, if you want to learn unit testing then you better start with The Art of Unit Testing – with Examples in .NET by Roy Osherove (see below).
In the end, this book surely is THE ultimate book to look up all things relevant in unit testing.
ISBN-13: 978-0-13-149505-0
Clean Code – A Handbook of Agile Software Craftsmanship by Robert C. Martin
Target audience: Software Developers
Urs’ comment: A book covering a very important topic: how to write code that won’t suck tomorrow. Therefore, I recommend reading this book. However, the book itself would have needed some additional “refactoring”. There are contradictions (probably due to different oppinions of the several authors) and a lot of repetition (especially in the chapter summing up the clean code rules). After all, it was worth reading and inspiring.
ISBN: 0132350882
Agile Principles, Patterns, and Practices in C# by Robert C. Martin and Micah Martin
Target audience: Software developers, software architects
Urs’ comment: A must read for software developers and architects (in .NET). This books provides a lot of best practices, patterns and principles (e.g. SOLID). To be honest, I skipped the UML chapter and I only read across the introduction to the principles of XP (there are better books for this). But the book shines on topics such as principles of OO design and packaging and my favourite part is the design smell chapter.
Daniel’s comment: When I read this book I first asked myself why I should read this when we have the Clean Code book from Uncle Bob. But the book has really nice examples for introducing the best practices and patterns which open your mind towards better design. The layout of the book is for my liking a bit too old fashioned.
ISBN: 0131857258
The Presentation Secrets of Steve Jobs – How to be Insanely great in Front of Any Audience by Carmine Gallo
Target audience: Speakers
Urs’ comment: Carmine Gallo (the author) is surely a big fan of Steve Jobs. Sometimes a bit too much for me. However, the book gives a very good overview of how to WOW your audience. The tips are especially useful when you have to present about products. Most of the samples are from Keynotes given by Steve Jobs (therefore the title). An easy read, funny and informative. However, if you have already read a bunch of books on presentation skills then nothing new will be in here for you.
ISBN: 978-0-07-163608-7
Succeeding with Agile – Software Development using Scrum by Mike Cohn
Target audience: Agile coaches, Scrum Masters
Urs’ Comment: A must read for agile coaches. A lot of high quality information about how to use Scrum and how to introduce Scrum in an organization. This book is not for beginners, if you’ve got the idea behind Scrum and have worked with it for some time then this book is for you and will help you to make the next steps in getting even more out of Scrum.
ISBN: 978-0-321-57936-2
Präsentieren Sie noch oder faszinieren Sie schon – Der Irrtum PowerPoint von Matthias Pöhm
Target audience: Speakers
Urs’ Kommentar: Auch für PowerPoint Benutzer sehr informativ. Kurz und prägnant – halt wie eine gute Präsentation. Tipps eignen sich vorallem für Verkaufsgespräche, weniger für Konferenzpräsentationen. Matthias Pöhm hat eher eine radikale Haltung, darum enthält das Buch aber auch einiges an Neuigkeiten. Es hat sich definitiv gelohnt dieses Buch zu lesen.
Dani’s Kommentar: Pöhm’s Buch ist eine sehr gute Ergänzung zum Presentation Zen Buch. Pöhm beleuchtet vor allem die Aspekte der geschickten Inszenierung der Präsentation durch den Redner selbst und seine Didaktik. Pöhm bringt frische Ideen gekonnt in seinem Buch unter und motivert den Leser über den “Folienrand” zu schauen.
ISBN:3-636-06265-4
Don’t Make Me Think: A Common Sense Approach to Web Usability, 2nd Edition by Steve Krug
Target audience: Everyone involved in UI development
Urs’ comment: A short book containing a lot of information about basic user interface usability that every user interface developer shoud know. A must read for everyone developing user interfaces.
ISBN: 978-0321344755
ISBN (german version): 978-3-8266-1595-5
.
.
Test-Driven Development – By Example by Kent Beck
Target audience: TTD beginners and practisioners
Urs’ comment: Simply THE book you have to read when starting with Test-Driven Development. The book provides an introduction to the red-green-refactor cycle with a lot of examples. If there is a down side to this book then it is that is just covers the basics. A must read for every developer starting with TDD.
Daniel’s comment: I couldn’t agree more with what Urs already emphasized about this book. I suggest you read this book twice since all the ideas and tweeks Kent introduces to get you live and breath the TDD cycle takes some time to enlighten yourself 😉
ISBN: 0-321-14653-0
Presentation Zen – Simple Ideas on Presentation Design and Delivery by Garr Reynolds
Target audience: Speakers
Urs’ comment: Once you have read this book, you know why you fell asleep in most presentations you attended. Provides lots of information about how to design visually engaging slides. The tips are easy to follow. A must read for presenters caring about their audience.
Daniel’s comment: I really enjoyed reading this book, although it was for me sometimes a bit too ZENized. But the tips Garr Reynolds gives in this book really help you design visually astonishing presentation slides which help you getting the attention of your audience!
ISNB: 0-321-52565-5
Agile Retrospectives – Making Good Teams Great by Esther Derby and Diana Larsen
Target audience: Agile Coaches, Scrum Masters
Urs’ comment: Contains a lot of useful technics and ideas how to hold retrospectives for sprints, releases and projects. A good read for Scrum Masters and agile Coaches. However, the reading is rather boring.
ISBN: 0-9776166-4-9
.
.
.
The Art of Unit Testing – with Examples in .NET by Roy Osherove
Target audience: Developers
Daniel’s comment: Roy gives away the best tips for successfully unit test your .NET code without using too much evangelism. The book is founded on Roy’s immense experience as a TDD developer and coach and is a must read for every new team member in your .NET projects!
Urs’ comment: Probably the best book ever written about unit testing in.NET (or even in general). However, I must say that I do not agree on some things written in it. But that’s up to you to decide for yourself. Buy it, read it and make the best of it. Your unit tests will surely benefit. And so will your happiness about your code in a couple of months when you’ll have to maintain what you write today.
ISBN: 1-933988-27-4
Confessions of a Public Speaker by Scott Berkun
Target audience: Speakers, Trainers, Teachers
Urs’ comment: Wow! A book about how to speak in public with lots of useful tips and tricks that I never had read about before. This book is not only very informative but entertaining, too. It’s not about slides, it’s about how to get the attention of the audience, how to provoke a learning effect, how to master tricky situations and much more. If presentations are an important part of your (work) life then this book is for you.
ISBN: 978-0-596-80199-1
Agile Coaching by Rachel Davies and Liz Sedley
Target audience: ScrumMasters, agile Coaches
Urs’s comment: There are two sides to this book. On one hand, the book is full of very good advice, well explained and covered with real world scenarios and examples. And this is the reason why I have to recommend this book for anyone who wants to coach agile development. Beside descriptions on how to run an agile process (planning, daily stand-up and so on), the book explains how to improve team work and how to drive change. On the other hand, there is absolutely no fun involved in ready this book. Don’t get me wrong, the book is well written, but anything else is just boring (that seams to be a problem for me with all books from the Pragmatic Programmers series). Anyway, I survived the 212 pages and learned a lot.
ISBN: 978-1-934356-43-2
Patterns of Enterprise Application Architecture
Target audience: Lead Developers, Architects
Daniel’s comment: I heard a lot about the book from Martin Fowler and finally got time to read it. I must say I’m a bit disappointed by the content of the book. In my point of view it is too database centric and regarding the books age we have now better patterns or even frameworks which fit into modern applications needs. Nonetheless it’s good for getting ideas how problems were approached those days and therefore should be on every architects reading list (even if you just skim through the books content).
ISBN: 978-0321127426
User Stories Applied – For Agile Software Development by Mike Cohn
Target audience: everyone working with any agile methodology: Scrum, XP, Kanban, …
Urs’ comment: If you want to get the most out of your requirements in your agile project then this book is for you. Mike Cohn shows User Stories as the building blocks of agile requirments engineering. The book covers how to use User Stories, their advantages, their limitations and a lot of real-world project know-how around User Stories. If you work with User Stories then you should have read this book.
As a side note: skip the estimation chapter if you are going to read Agile Estimation and Planning by Mike Cohn.
ISBN: 0-321-20568-5
Pro C#2008 and the .NET 3.5 Platform by Andrew Troelsen
Target audience: .NET developers
Daniels’ comment: Actually it’s a while ago when I read this book. I mention it here because we are using it to educate developers which are new to C# 3.0 and the .NET 3.5 platform. The book is very well structured and gives a deep insight into the platform, language and the tools. It starts with the basic stuff (even object oriented approaches) and goes then deep into the darkest edges of the .NET platform. Only the chapters about WCF and WPF are a bit disappointing (too short).
ISBN: 978-1-59059-884-9
Pro LINQ: Language Integrated Query in C# 2008 by Joseph C. Rattz, Jr.
Target audience: .NET developers
Daniels’ comment: Actually it’s a while ago when I read this book. I mention it here because we were discussing today in our team what knowledge is necessary to really understand LINQ. That book really opened my eyes regarding the usage of LINQ and all its powers! The author really understands to give you a good overview what each operator offers and what pitfalls a developer could get into.
ISBN: 978-1-59059-789-7
Pro LINQ Object Relational Mapping in C# 2008 by Vijay P. Mehta
Target audience: .NET developers, Database developers
Daniels’ comment: The book should actually give an overview about LINQ and object relational mapping with Linq to SQL, Ado.NET Entity framework. The book was for me a bit disappointing. Although I knew that the book is really technology centric the book was for me not open enough for the real application challenges when communicating with databases. The patterns and code samples gave me the feeling that they were somehow hacked together and not thought-out.
ISBN: 978-1-59059-965-5
More to come…
[…] Books […]