Books I Love

Head First Design Patterns

ISBN: 0596007124
ISBN-13: 9780596007126

This is one of the first programming books I read, and it’s a must read for all aspiring programmers. It teaches you the basics and importance of good programming habits and principles, as well as design patterns (or recipes as I would like to call them) to common problems we encounter. It’s extremely easy to read with many illustrations and examples, and I find that I retain a lot more. You must pick up this book and read it if you are into programming.


I read this book some time back and it has opened my eyes on the common programming mistakes we all tend to make at some point. I particularly enjoyed Martin Fowler’s analogy of bad code to a “bad smell”, and provides tons of great tips on how to identify, minimize and eliminate bad smells in code. Refactoring should always be done hand in hand with unit testing, and is a disciplined process in itself. I done quite a number of refactoring and this book has served as a great reference. It’s very well written with lots of examples and sample code. If you need to do any form of refactoring, do read this book first.


The Design of Everyday Things

ISBN: 0465067107
ISBN-13: 9780465067107

 

I read this book when I was still in University doing my Masters. It was a recommended reading from my professor who specialized in usability. This books is however not just limited to designing of good user experience for software, but talks about design for all things that humans interact with. From the design of a simple door to complex IT systems, the author shares with us interesting anecdotes about bad design and the necessity of good design. This book brought me many laughs and also opened my eyes to how bad design can lead to us (humans) blaming ourselves to be dumb, where almost in every case it’s the cause of bad design. If designing things is your job or you have an interest, this book is a must read. 


 

I came across this book when I was in a Borders at San Francisco during my vacation. The title was very interesting and it’s from the Pragmatic Programmers series, so can’t really go wrong there. I bought it, started reading and couldn’t put the book down. It’s a deep dive into how the human brain works, and teaches us how to improve our thought process and problem solving skills via a scientific approach. The book provides recipes on how to strengthen and manage our thoughts, improve learning ability and a roadmap for acquiring our desired level of skill. The most memorable bit of this book for me is Rubber Ducking and I’ve used this technique couple of times with great success. As the book title implies, you can learn how to refactor your brain.


 

My colleague recommended this book to me, and again it wouldn’t be here if it wasn’t a great book. It’s written by MIT Professor Dan Ariely and he shares with us his 20 years of experience in behavioural economics. He demonstrates through his experiments and personal experiences that humans tend to behave in irrational behaviour and almost always in a predictable fashion. As you read this book, you will be pleasantly surprised countless times with the results of his experiments and gain valuable insight into the functions of the human mind. His goal is to educate us on the details of our decision making process, and hopefully be able to avoid committing the same mistakes repeatedly with this knowledge. If you think you know yourself very well, think again.


Programming WCF Services

ISBN: 0596521308
ISBN-13: 9780596521301

 

I started working with WCF in 2007 when it was still in beta version, and this book became my survivor guide, gradually becoming my bible on all things WCF. Written by a leading expert in WCF and .NET, Juval Lowy’s book provides the basics as well as advanced techniques on using WCF as a unified platform for Service Oriented Applications. Juval Lowy also provides knowledge about principles of WCF design, best practices and common pitfalls. Regardless of whether you are a developer or an architect, this book is highly recommended, especially if you are interested in or currently working with WCF.

Leave a comment