2018-03-17 18:26:18 +05:30
---
comments: false
---
2016-11-03 12:29:30 +05:30
# Books
List of books and resources, that may be worth reading.
## Papers
1. **The Humble Programmer**
2018-12-23 12:14:25 +05:30
Edsger W. Dijkstra, 1972 ([paper](https://dl.acm.org/citation.cfm?id=361591))
2016-11-03 12:29:30 +05:30
## Programming
1. **Design Patterns: Elements of Reusable Object-Oriented Software**
2018-12-23 12:14:25 +05:30
Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides, 1994 ([amazon](https://www.amazon.com/Design-Patterns-Elements-Reusable-Object-Oriented/dp/0201633612))
2016-11-03 12:29:30 +05:30
1. **Clean Code: A Handbook of Agile Software Craftsmanship**
2018-12-23 12:14:25 +05:30
Robert C. "Uncle Bob" Martin, 2008 ([amazon](https://www.amazon.com/Clean-Code-Handbook-Software-Craftsmanship/dp/0132350882))
2016-11-03 12:29:30 +05:30
1. **Code Complete: A Practical Handbook of Software Construction** , 2nd Edition
2018-12-23 12:14:25 +05:30
Steve McConnell, 2004 ([amazon](https://www.amazon.com/Code-Complete-Practical-Handbook-Construction/dp/0735619670))
2016-11-03 12:29:30 +05:30
1. **The Pragmatic Programmer: From Journeyman to Master**
2018-12-23 12:14:25 +05:30
Andrew Hunt, David Thomas, 1999 ([amazon](https://www.amazon.com/Pragmatic-Programmer-Journeyman-Master/dp/020161622X))
2016-11-03 12:29:30 +05:30
1. **Working Effectively with Legacy Code**
2018-12-23 12:14:25 +05:30
Michael Feathers, 2004 ([amazon](https://www.amazon.com/Working-Effectively-Legacy-Michael-Feathers/dp/0131177052))
2016-11-03 12:29:30 +05:30
1. **Eloquent Ruby**
2018-12-23 12:14:25 +05:30
Russ Olsen, 2011 ([amazon](https://www.amazon.com/Eloquent-Ruby-Addison-Wesley-Professional/dp/0321584104))
2016-11-03 12:29:30 +05:30
1. **Domain-Driven Design: Tackling Complexity in the Heart of Software**
2018-12-23 12:14:25 +05:30
Eric Evans, 2003 ([amazon](https://www.amazon.com/Domain-Driven-Design-Tackling-Complexity-Software/dp/0321125215))
2016-11-03 12:29:30 +05:30
1. **How to Solve It: A New Aspect of Mathematical Method**
2018-12-23 12:14:25 +05:30
Polya G. 1957 ([amazon](https://www.amazon.com/How-Solve-Mathematical-Princeton-Science/dp/069116407X))
2016-11-03 12:29:30 +05:30
1. **Software Creativity 2.0**
2018-12-23 12:14:25 +05:30
Robert L. Glass, 2006 ([amazon](https://www.amazon.com/Software-Creativity-2-0-Robert-Glass/dp/0977213315))
2016-11-03 12:29:30 +05:30
1. **Object-Oriented Software Construction**
2018-12-23 12:14:25 +05:30
Bertrand Meyer, 1997 ([amazon](https://www.amazon.com/Object-Oriented-Software-Construction-Book-CD-ROM/dp/0136291554))
2016-11-03 12:29:30 +05:30
1. **Refactoring: Improving the Design of Existing Code**
2018-12-23 12:14:25 +05:30
Martin Fowler, Kent Beck, 1999 ([amazon](https://www.amazon.com/Refactoring-Improving-Design-Existing-Code/dp/0201485672))
2016-11-03 12:29:30 +05:30
1. **Test Driven Development: By Example**
2018-12-23 12:14:25 +05:30
Kent Beck, 2002 ([amazon](https://www.amazon.com/Test-Driven-Development-Kent-Beck/dp/0321146530))
2016-11-03 12:29:30 +05:30
1. **Algorithms in C++: Fundamentals, Data Structure, Sorting, Searching**
2018-12-23 12:14:25 +05:30
Robert Sedgewick, 1990 ([amazon](https://www.amazon.com/Algorithms-Parts-1-4-Fundamentals-Structure/dp/0201350882))
2016-11-03 12:29:30 +05:30
1. **Effective C++**
2018-12-23 12:14:25 +05:30
Scott Mayers, 1996 ([amazon](https://www.amazon.com/Effective-Specific-Improve-Programs-Designs/dp/0321334876))
2016-11-03 12:29:30 +05:30
1. **Extreme Programming Explained: Embrace Change**
2018-12-23 12:14:25 +05:30
Kent Beck, 1999 ([amazon](https://www.amazon.com/Extreme-Programming-Explained-Embrace-Change/dp/0321278658))
2016-11-03 12:29:30 +05:30
1. **The Art of Computer Programming**
2018-12-23 12:14:25 +05:30
Donald E. Knuth, 1997 ([amazon](https://www.amazon.com/Computer-Programming-Volumes-1-4A-Boxed/dp/0321751043))
2016-11-03 12:29:30 +05:30
1. **Writing Efficient Programs**
2018-12-23 12:14:25 +05:30
Jon Louis Bentley, 1982 ([amazon](https://www.amazon.com/Writing-Efficient-Programs-Prentice-Hall-Software/dp/013970244X))
2016-11-03 12:29:30 +05:30
1. **The Mythical Man-Month: Essays on Software Engineering**
2018-12-23 12:14:25 +05:30
Frederick Phillips Brooks, 1975 ([amazon](https://www.amazon.com/Mythical-Man-Month-Essays-Software-Engineering/dp/0201006502))
2016-11-03 12:29:30 +05:30
1. **Peopleware: Productive Projects and Teams** 3rd Edition
2018-12-23 12:14:25 +05:30
Tom DeMarco, Tim Lister, 2013 ([amazon](https://www.amazon.com/Peopleware-Productive-Projects-Teams-3rd/dp/0321934113))
2016-11-03 12:29:30 +05:30
1. **Principles Of Software Engineering Management**
2018-12-23 12:14:25 +05:30
Tom Gilb, 1988 ([amazon](https://www.amazon.com/Principles-Software-Engineering-Management-Gilb/dp/0201192462))
2016-11-03 12:29:30 +05:30
## Other
1. **Thinking, Fast and Slow**
2018-12-23 12:14:25 +05:30
Daniel Kahneman, 2013 ([amazon](https://www.amazon.com/Thinking-Fast-Slow-Daniel-Kahneman/dp/0374533555))
2016-11-03 12:29:30 +05:30
1. **The Social Animal** 11th Edition
2018-12-23 12:14:25 +05:30
Elliot Aronson, 2011 ([amazon](https://www.amazon.com/Social-Animal-Elliot-Aronson/dp/1429233419))
2016-11-03 12:29:30 +05:30
1. **Influence: Science and Practice** 5th Edition
2018-12-23 12:14:25 +05:30
Robert B. Cialdini, 2008 ([amazon](https://www.amazon.com/Influence-Practice-Robert-B-Cialdini/dp/0205609996))
2016-11-03 12:29:30 +05:30
1. **Getting to Yes: Negotiating Agreement Without Giving In**
2018-12-23 12:14:25 +05:30
Roger Fisher, William L. Ury, Bruce Patton, 2011 ([amazon](https://www.amazon.com/Getting-Yes-Negotiating-Agreement-Without/dp/0143118757))
2016-11-03 12:29:30 +05:30
1. **How to Win Friends & Influence People**
2018-12-23 12:14:25 +05:30
Dale Carnegie, 1981 ([amazon](https://www.amazon.com/How-Win-Friends-Influence-People/dp/0671027034))