Reading List

Books that I like and I recommend.

Books on Managing Oneself and Others

  1. The Effective Executive, by Peter F. Drucker
  2. Management Challenges for the 21st Century, by Peter F. Drucker
  3. What Management Is: How It Works and Why It’s Everyone’s Business, by Joan Magretta
  4. The Essential Drucker: The Best of Sixty Years of Peter Drucker’s Essential Writings on Management, by Peter F. Drucker
  5. Management: Tasks, Responsibilities, Practices, by Peter F. Drucker
  6. The Practice of Management, by Peter F. Drucker
  7. First, Break All the Rules: What the World’s Greatest Managers Do Differently, by Marcus Buckingham & Curt Coffman
  8. Now, Discover Your Strengths, Marcus Buckingham & Donald Clifton
  9. The One Thing You Need to Know: … About Great Managing, Great Leading, and Sustained Individual Success, by Marcus Buckingham
  10. Go Put Your Strengths to Work: 6 Powerful Steps to Achieve Outstanding Performance, by Marcus Buckingham

Books on Organization and Management

  1. Good to Great: Why Some Companies Make the Leap… and Others Don’t, by James C. Collins
  2. Built to Last: Successful Habits of Visionary Companies, by James C. Collins, Jerry I. Porras

Books on Innovation and Management

  1. Re-imagine!, by Tom Peters. See also:!
  2. The Circle of Innovation, by Tom Peters
  3. What (Really) Works, by William F. Joyce, Nitin Nohria, William F. Joyce
  4. They Made America: Two Centuries of Innovators from the Steam Engine to the Search Engine, by Sir Harold Evans

Books on Management Execution

  1. Execution: The Discipline of Getting Things Done, by Larry Bossidy, Ram Charan, Charles Burck
  2. Confronting Reality: Doing What Matters to Get Things Right, by Larry Bossidy, Ram Charan
  3. Know-How: The 8 Skills That Separate People Who Perform from Those Who Don’t, by Ram Charan

Books on Deepening One’s Understanding

  1. The Tipping Point: How Little Things Can Make a Big Difference, by Malcolm Gladwell
  2. Blink: The Power of Thinking Without Thinking, by Malcolm Gladwell
  3. Free Agent Nation, by Daniel Pink
  4. Against the Gods: The Remarkable Story of Risk, by Peter L. Bernstein

Books on Knowledge Work

  1. The Fifth Discipline, The Fifth Discipline Fieldbook, The Dance of Change, by Peter Senge et. al.
  2. Common Knowledge: How Companies Thrive by Sharing What They Know, by Nancy Dixon
  3. Brand You 50: Transform Yourself from an ‘Employee’ into a Brand That Shouts Distinction, Commitment, and Passion!, by Tom Peters
  4. Project 50: Fifty Ways to Transform Every ‘Task’ into a Project That Matters!, by Tom Peters
  5. The Professional Service Firm 50: Fifty Ways to Transform Your ‘Department’ into a Professional Service Firm Whose Trademarks Are Passion and Innovation!, by Tom Peters

Books on Managing at the Personal Level

  1. Getting Things Done: The Art of Stress-Free Productivity, by David Allen
  2. Ready for Anything: 52 Productivity Principles for Work and Life, by David Allen
  3. First Things First: To Live, to Love, to Learn, to Leave a Legacy, by Stephen R. Covey
  4. The 7 Habits of Highly Effective People, by Stephen Covey
  5. The 8th Habit: From Effectiveness to Greatness, by Stephen Covey
  6. The 10 Natural Laws of Successful Time and Life Management: Proven Strategies for Increased Productivity and Inner Peace, by Hyrum Smith
  7. Tough Times Never Last, but Tough People Do!, by Dr. Robert H. Schuller

Books on Managing Software Projects and Organizations

  1. Professional Software Development: Shorter Schedules, Higher Quality Products, More Successful Projects, Enhanced Careers, by Steve McConnell. Previously published as: After the Gold Rush. See also: Construx Software
  2. Creating a Software Engineering Culture, by Karl Wiegers
  3. Perfect Software and other illusions about testing, by Gerald M. Weinberg
  4. Winning with Software: An Executive Strategy, by Watts S. Humphrey
  5. Managing Technical People, by Watts Humphrey. See also: Watts New in the SEI Interactive
  6. Death March, by Ed Yourdon. See also:
  7. The Decline & Fall of the American Programmer, by Ed Yourdon
  8. The Rise & Resurrection of the American Programmer, by Ed Yourdon

Books on Project Management

  1. Software Project Management: A Unified Framework, by Walker Royce
  2. Surviving Object-Oriented Projects: A Manager’s Guide, by Alistair Cockburn. See also: Humans And Technology
  3. Software Project Survival Guide, by Steve McConnell
  4. To Do Doing Done!: A Creative Approach to Managing Projects and Effectively Finishing What Matters Most, by G. Lynne Snead

Books on People in Software

  1. Peopleware: Productive Projects and Teams, by Tom DeMarco and Tim Lister. See also: Atlantic Systems Guild
  2. The Deadline: A Novel About Project Management, by Tom DeMarco
  3. Slack: Getting Past Burnout, Busywork, and the Myth of Total Efficiency, by Tom DeMarco
  4. The Psychology of Computer Programming, by Gerald Weinberg
  5. The Mythical Man-Month, by Fred Brooks

Books on Software Fundamentals

  1. Algorithms and Data Structures, by Nicklaus Wirth
  2. Code Complete, 2nd Ed., 1st. Ed., by Steve McConnell
  3. Writing Solid Code, by Steve Maguire
  4. Compilers: Principles, Techniques, and Tools, by Alfred Aho, Ravi Sethi and Jeffrey Ullmann
  5. Modern Operating Systems, 2nd. Ed., 1st. Ed., by Andrew Tanenbaum
  6. Operating System Design, by Douglas Comer

Books on Requirements

  1. Exploring Requirements, Quality Before Design, by Donald C. Gause, Gerald M. Weinberg
  2. Software Requirements, 2nd Ed., by Karl E. Wiegers
  3. Software Requirements Engineering, edited by Richard Thayer and Merlin Dorfman
  4. Software Requirements: Objects, Functions, and States, by Alan M. Davis
  5. Mastering the Requirements Process, by Suzanne Robertson, James Robertson

Books on Use Cases

  1. Applying Use Cases, by Geri Schneider and Jason Winters
  2. Writing Effective Use Cases, by Alistair Cockburn. See also: Use Case Resources

Books on Human-Computer Interaction

  1. The Design of Everyday Things, by Donald Norman. See also:
  2. The Invisible Computer, by Donald Norman
  3. Designing the User Interface, by Ben Shneiderman
  4. Usability Engineering, by Jacob Nielsen. See also:
  5. Software For Use, by Larry Constantine and Lucy Lockwood. See also:
  6. The Art of Human-Computer Interface Design, by Brenda Laurel
  7. The Elements of Friendly Software Design, by Paul Heckel
  8. Contextual Design, by Hugh Beyer and Karen Holtzblatt
  9. Visual Explanations: Images and Quantities, Evidence and Narrative, by Edward R. Tufte
  10. The Visual Display of Quantitative Information, by Edward R. Tufte
  11. Envisioning Information, by Edward R. Tufte

Books on Software Design & Analysis

  1. Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development, 3rd Ed., 2nd Ed., 1st Ed., by Craig Larman
  2. Large Scale C++ Program Design, by John Lakos
  3. Design Patterns, by Erich Gamma et. al.
  4. Object-Oriented Software Construction, 2nd Ed., by Bertrand Meyer. See also: Technology Papers
  5. Streamlined Object Modeling: Patterns, Rules, and Implementation, by Jill Nicola, Mark Mayfield, Mike Abney, Michael Abney
  6. Object-Oriented Analysis, 2nd Ed., by Peter Coad, Ed Yourdon
  7. Object-Oriented Design, by Peter Coad, Ed Yourdon
  8. Object-Oriented Design with Applications, 2nd Ed., by Grady Booch
  9. Object-Oriented Modeling and Design, by James Rumbaugh et. al.
  10. Object-Oriented Software Engineering, A Use Case Driven Approach, by Ivar Jacobson
  11. UML Distilled, 3rd Ed., by Martin Fowler
  12. AntiPatterns, by William Brown et. al.

Books on Java Programming & Design

  1. Effective Java Programming Language Guide, by Joshua Bloch
  2. Concurrent Programming in Java, 2nd. Ed., Design Principles and Patterns, by Doug Lea
  3. Thinking in Java, 3rd Ed., by Bruce Eckel. Available online at:
  4. Java Design, by Peter Coad, Mark Mayfield, Jon Kern.
  5. Java Modeling in Color with UML, by Peter Coad, Eric Lefebvre, Jeff De Luca

Books on C++ Programming & Design

  1. Effective C++, 2nd Ed., More Effective C++, by Scott Meyers
  2. The Design and Evolution of C++, by Bjarne Stroustrup
  3. C & C++ Code Capsules, by Chuck Allison. See also: Fresh Sources.

Books on Software Process

  1. Managing the Software Process, by Watts Humphrey
  2. Rapid Development, by Steve McConnell
  3. Debugging the Development Process, by Steve Maguire
  4. A Discipline for Software Engineering, by Watts Humphrey. See also: PSP/TSP at the SEI.
  5. Introduction to the Team Software Process, by Watts Humphrey.
  6. eXtreme Programming Explained: Embrace Change, by Kent Beck. See also: eXtreme Programming Roadmap
  7. The Unified Software Development Process, by Ivar Jacobson, Grady Booch and James Rumbaugh
  8. The Rational Unified Process, by Philipe Kruchten. See also: Rational Edge

Books on Quality Methods

  1. Four Days with Dr. Deming, by William J. Latzko, David M. Saunders
  2. The New Economics for Industry, Government, Education, by W. Edwards Deming
  3. Out of the Crisis, by W. Edwards Deming
  4. Juran on Quality by Design: The New Steps for Planning Quality into Goods and Services, by Joseph M. Juran
  5. The Six Sigma Way: How GE, Motorola, and Other Top Companies are Honing Their Performance, by Peter S. Pande et al, Robert P. Neuman, Roland R. Cavanagh
  6. The Six Sigma Way Team Fieldbook: An Implementation Guide for Process Improvement Teams, by Peter S. Pande et al, Robert P. Neuman, Roland R. Cavanagh

Books on Consulting

  1. Flawless Consulting: A Guide to Getting Your Expertise Used, by Peter Block
  2. The Flawless Consulting Fieldbook and Companion: A Guide Understanding Your Expertise, by Peter Block and Andrea Markowitz (contributor)
  3. Secrets of Consulting: A Guide to Giving and Getting Advice Successfully, by Gerald M. Weinberg and Virginia Satir
  4. More Secrets of Consulting: The Consultant’s Tool Kit, by Gerald M. Weinberg

Books on Writing

  1. Writing the Natural Way, by Gabriele Rico
  2. Style: Ten Lessons in Clarity and Grace, 6th Ed., by Joseph M. Williams
  3. Weinberg on Writing, by Gerald M. Weinberg