Programming Books C Java PHP Python Learn more Browse Programming Books

Sorry, this item is not available in
Image not available for
Image not available

To view this video download Flash Player


Sign in to turn on 1-Click ordering
Sell Us Your Item
For a $4.10 Gift Card
Trade in
Kindle Edition
Read instantly on your iPad, PC, Mac, Android tablet or Kindle Fire
Buy Price: $19.79
Rent From: $9.58
Free Trial: $0.00
More Buying Choices
Have one to sell? Sell yours here

Making Software: What Really Works, and Why We Believe It [Paperback]

by Andy Oram, Greg Wilson
3.7 out of 5 stars  See all reviews (11 customer reviews)

List Price: $44.99
Price: $37.61 & FREE Shipping. Details
You Save: $7.38 (16%)
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
Only 6 left in stock (more on the way).
Ships from and sold by Gift-wrap available.
Want it Monday, April 28? Choose One-Day Shipping at checkout. Details
Free Two-Day Shipping for College Students with Amazon Student


Amazon Price New from Used from
Kindle Edition
Rent from
Paperback $37.61  
Books for Pragmatic Programmers
Find resources for various programming needs, including agile teams, programming languages, and the life of a programmer, in the Pragmatic Bookshelf.

Book Description

October 27, 2010 0596808321 978-0596808327 1

Many claims are made about how certain tools, technologies, and practices improve software development. But which claims are verifiable, and which are merely wishful thinking? In this book, leading thinkers such as Steve McConnell, Barry Boehm, and Barbara Kitchenham offer essays that uncover the truth and unmask myths commonly held among the software development community. Their insights may surprise you.

  • Are some programmers really ten times more productive than others?
  • Does writing tests first help you develop better code faster?
  • Can code metrics predict the number of bugs in a piece of software?
  • Do design patterns actually make better software?
  • What effect does personality have on pair programming?
  • What matters more: how far apart people are geographically, or how far apart they are in the org chart?

Contributors include:

Jorge Aranda

Tom Ball

Victor R. Basili

Andrew Begel

Christian Bird

Barry Boehm

Marcelo Cataldo

Steven Clarke

Jason Cohen

Robert DeLine

Madeline Diep

Hakan Erdogmus

Michael Godfrey

Mark Guzdial

Jo E. Hannay

Ahmed E. Hassan

Israel Herraiz

Kim Sebastian Herzig

Cory Kapser

Barbara Kitchenham

Andrew Ko

Lucas Layman

Steve McConnell

Tim Menzies

Gail Murphy

Nachi Nagappan

Thomas J. Ostrand

Dewayne Perry

Marian Petre

Lutz Prechelt

Rahul Premraj

Forrest Shull

Beth Simon

Diomidis Spinellis

Neil Thomas

Walter Tichy

Burak Turhan

Elaine J. Weyuker

Michele A. Whitecraft

Laurie Williams

Wendy M. Williams

Andreas Zeller

Thomas Zimmermann

Frequently Bought Together

Making Software: What Really Works, and Why We Believe It + The Architecture Of Open Source Applications + The Architecture Of Open Source Applications, Volume Ii
Price for all three: $95.94

Buy the selected items together

Customers Who Bought This Item Also Bought

Editorial Reviews

About the Author

Andy Oram is an editor at O'Reilly Media, a highly respected book publisher and technology information provider. An employee of the company since 1992, Andy currently specializes in free software and open source technologies. His work for O'Reilly includes the first books ever published commercially in the United States on Linux, and the 2001 title Peer-to-Peer. His modest programming and system administration skills are mostly self-taught.

Greg Wilson has worked on high-performance scientific computing, data visualization, and computer security, and is currently project lead at Software Carpentry ( Greg has a Ph.D. in Computer Science from the University of Edinburgh, and has written and edited several technical and children's books, including "Beautiful Code" (O'Reilly, 2007).

Product Details

  • Paperback: 624 pages
  • Publisher: O'Reilly Media; 1 edition (October 27, 2010)
  • Language: English
  • ISBN-10: 0596808321
  • ISBN-13: 978-0596808327
  • Product Dimensions: 9.1 x 6.9 x 1.3 inches
  • Shipping Weight: 1.8 pounds (View shipping rates and policies)
  • Average Customer Review: 3.7 out of 5 stars  See all reviews (11 customer reviews)
  • Amazon Best Sellers Rank: #559,379 in Books (See Top 100 in Books)

More About the Author

Born and raised on Vancouver Island; studied engineering at Queen's University in Ontario, worked for a while, then went to Edinburgh for a Master's, some more work, and a PhD. Traveled while writing my first book on parallel programming; came to Toronto "for a couple of years" in 1994, and have never left. I've worked for big corporations, startups, and myself (prefer the small to the large), been a university professor (enjoyed the teaching more than the red tape), and am now project lead for Software Carpentry, a crash course on software development for scientists and engineers. You can find me online at (personal stuff) or (the course).

Customer Reviews

3.7 out of 5 stars
3.7 out of 5 stars
Share your thoughts with other customers
Most Helpful Customer Reviews
41 of 43 people found the following review helpful
5.0 out of 5 stars A very important book November 22, 2010
Format:Paperback|Verified Purchase
I'm going to go on record and say that this is one of the most important books about software development that has been published in the last few years. It's easy for many of us in the industry to complain that software engineering research is years behind practice and that it is hard to construct experiments or perform studies which produce information that is relevant for practitioners, but fact is, there are many things we can learn from published studies.

The editors of this book do a great job of explaining what we can and can not expect from research. They also adopt a very pragmatic mindset, taking the point of view that appropriate practice is highly contextual. Research can provide us with evidence, but not necessarily conclusions.

Beyond the philosophical underpinnings, 'Making Software' outlines research results in a variety of areas. It gives you plenty to think about when considering various approaches on your team. The chapter 'How Effective is Modularization?' is worth the price of the book alone.

I recommend this book for anyone who wants to learn how to think rigorously about practice.
Was this review helpful to you?
24 of 25 people found the following review helpful
4.0 out of 5 stars Good, but not fantastic March 21, 2011
This is an important book and it covers a wide range of topics surrounding software engineering (comparing languages, whether TDD works, open source vs. proprietary, pair programming, metrics, learning to program, women in computer science and much, much more). But I can't give it a 5 star review because I wish it had been distilled down from a large collection of essays to a single book covering the conclusions and the data behind the conclusions.

It would be a 5 star if someone like Steve McConnell had taken the entire contents of the book and written a single coherent text from it. As it is the quality of writing and explanations varies a lot from article to article. For example, in some of the articles the authors decide to show us the code or the SQL statements used to extract data. I found this distracting (who cares how they pulled data from a database?) because I wanted to get to the meat of each piece. I suspect the book could be 1/2 to 2/3 the size it is today with a rewrite.

Despite my reservations this is a very worthwhile book. If you sit down to read it you'll likely find it hard going in places: it's dense and detailed. But that goes somewhat with the territory. This isn't a book about evangelizing the latest development fad, it's about hard data on what does and does not work in software engineering.

Refreshing, if a bit long.
Comment | 
Was this review helpful to you?
6 of 8 people found the following review helpful
3.0 out of 5 stars Ask Felgall - Book Review December 22, 2011
Thirty articles and thirty four different authors but you can't really tell that from reading the content as all of the material fits together extremely well.

The articles are divided up into two sections. The first covering general principles reads a lot like a fairly advanced university level textbook and it got really tempting for me to give up on the book a number of times while reading that section which would have been a real pity since the second section covering "Specific Topics in Software Engineering" is far easier to read and a lot more interesting as well.

There is plenty of material in the second section of the book that will help any programmer to improve the way that they write programs. A lot of the alternatives presented are beyond the control of the programmer though and so it is far more important that the managers in charge of programming departments be made aware of the information that this book provides.

While at least some of the information that the book presents should be obvious to any experienced programmer - some of the information may also be completely unexpected. The authors of the articles have done an excellent job though of specifying exactly how they obtained the data upon which their conclusions are based and so it should be reasonably easy to work out just how applicable each should be to any given situation.

I recommend that those without the background to fully understand the material in the first part of the book persevere with it as whatever part of it that you do manage to comprehend will aid in your understanding of what the extremely useful second part of the book actually means.
Comment | 
Was this review helpful to you?
8 of 12 people found the following review helpful
1.0 out of 5 stars long, heterogenoeus, and with better alternatives December 19, 2012
Data and information are two different things. Unfortunately it seems that the editor and authors didn't had the time to reduce the size of the book and polish the style. This book contains 600 pages of data, however the amount of information is much smaller than the one contained in "Facts and Fallacies of Software Engineering" (200 pp).

I would have loved an up-to-date critical review of the existing literature of evidence based software engineering. However, the book does not give you that, but just the re-packaging of existing journal papers on software engineering. It is more effective (and sadly more enjoyable) to read the journal papers.

I rate the book with just 1 star because I think that the 5 and 4 stars ratings are completely disproportionate. Should we compare this book with "Code Complete", "The Mythical man-month", or "Programming Pearls"... I don't think so.

Disclaimer: I will never be able to write such a 1 star book :)
Comment | 
Was this review helpful to you?
Most Recent Customer Reviews
4.0 out of 5 stars Good book on improving your process
This book is a collection of chapters on how to improve software development through empirically proven methods. Read more
Published 6 days ago by D Philip Wasserman
2.0 out of 5 stars Not for a programmer
Not meant for a programmer to have insights into producing software. It is more geared towards a computer engineering researcher...
Published 2 months ago by Flavio B. Botelho
4.0 out of 5 stars A good book
It's a excellent book for all professionals in software engineering.
Making Software presents to each chapter a good experience for software industry and professionals in this... Read more
Published 10 months ago by Anderson Santana
3.0 out of 5 stars Sloppy version of a good book
Note that this review is for the Kindle version! (Read on a Kindle Keyboard v3.3 using default settings.)

The kindle version of this book is very sloppy. Read more
Published on March 18, 2012 by Daan
5.0 out of 5 stars Replaces Mythical Man Month
Hearing about this book on a HN comment I picked it up only to be blown away. This book contains so much core good information that I would not be surprised to see it references... Read more
Published on September 9, 2011 by Benjamin C. Meyer
5.0 out of 5 stars Great mix of real-world and academic advice
This is a must read book for people making software. It provides empirical evidence, insight and discussion around myths in the software development community. Read more
Published on February 22, 2011 by David C. Crow
5.0 out of 5 stars A very important book.
If you've ever wondered what we actually *know* about (for example) how personality affects productivity, and -- more importantly -- want to know *what evidence there is* behind... Read more
Published on December 1, 2010 by C. T. Brown
Search Customer Reviews
Only search this product's reviews

What Other Items Do Customers Buy After Viewing This Item?


There are no discussions about this product yet.
Be the first to discuss this product with the community.
Start a new discussion
First post:
Prompts for sign-in

Look for Similar Items by Category