Join Amazon Prime and ship Two-Day for free and Overnight for $3.99. Already a member? Sign in.
Beautiful Code and over 300,000 other books are available for Amazon Kindle – Amazon’s new wireless reading device. Learn more

 

or
Sign in to turn on 1-Click ordering.
 
 
More Buying Choices
74 used & new from $17.47

Have one to sell? Sell yours here
 
   
Beautiful Code: Leading Programmers Explain How They Think (Theory in Practice (O'Reilly))
 
 
Start reading Beautiful Code on your Kindle in under a minute.

Don’t have a Kindle? Get yours here.
 
  

Beautiful Code: Leading Programmers Explain How They Think (Theory in Practice (O'Reilly)) (Paperback)

by Andy Oram (Editor), Greg Wilson (Editor)
Key Phrases: intermediate language, basic linear algebra subprograms, turnstile table, Gene Sorter, Further Reading, Seven Pillars (more...)
3.4 out of 5 stars See all reviews (38 customer reviews)

List Price: $44.99
Price: $40.17 & this item ships for FREE with Super Saver Shipping. Details
You Save: $4.82 (11%)
In Stock.
Ships from and sold by Amazon.com. Gift-wrap available.

Want it delivered Tuesday, July 7? Choose One-Day Shipping at checkout. Details
40 new from $30.89 34 used from $17.47
Also Available in: List Price: Our Price: Other Offers:
Kindle Edition (Kindle Book) $28.79
Like this book? Find similar titles from O'Reilly and Partners in our O'Reilly Bookstore.

Check Out Related Media

01:41


Best Value

Buy Beautiful Code: Leading Programmers Explain How They Think (Theory in Practice (O'Reilly)) and get Java Power Tools at an additional 5% off Amazon.com's everyday low price.

Beautiful Code: Leading Programmers Explain How They Think (Theory in Practice (O'Reilly)) + Java Power Tools
Buy Together Today: $76.07

Show availability and shipping details

  • This item: Beautiful Code: Leading Programmers Explain How They Think (Theory in Practice (O'Reilly))

    In Stock.
    Ships from and sold by Amazon.com.
    This item ships for FREE with Super Saver Shipping. Details

  • Java Power Tools

    In Stock.
    Ships from and sold by Amazon.com.
    This item ships for FREE with Super Saver Shipping. Details


Customers Who Bought This Item Also Bought

Programming Collective Intelligence: Building Smart Web 2.0 Applications

Programming Collective Intelligence: Building Smart Web 2.0 Applications

by Toby Segaran
4.5 out of 5 stars (48)  $26.39
Dreaming in Code: Two Dozen Programmers, Three Years, 4,732 Bugs, and One Quest for Transcendent Software

Dreaming in Code: Two Dozen Programmers, Three Years, 4,732 Bugs, and One Quest for Transcendent Software

by Scott Rosenberg
3.8 out of 5 stars (69)  $11.16
Programming Erlang: Software for a Concurrent World

Programming Erlang: Software for a Concurrent World

by Joe Armstrong
4.4 out of 5 stars (34)  $24.39
RESTful Web Services

RESTful Web Services

by Leonard Richardson
4.4 out of 5 stars (37)  $26.39
Code Complete: A Practical Handbook of Software Construction

Code Complete: A Practical Handbook of Software Construction

by Steve McConnell
4.8 out of 5 stars (106)  $31.49
Explore similar items

Editorial Reviews

Product Description
How do the experts solve difficult problems in software development? In this unique and insightful book, leading computer scientists offer case studies that reveal how they found unusual, carefully designed solutions to high-profile projects. You will be able to look over the shoulder of major coding and design experts to see problems through their eyes. This is not simply another design patterns book, or another software engineering treatise on the right and wrong way to do things. The authors think aloud as they work through their project's architecture, the tradeoffs made in its construction, and when it was important to break rules. Beautiful Code is an opportunity for master coders to tell their story. All author royalties will be donated to Amnesty International. tion.

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 holds a Ph.D. in Computer Science from the University of Edinburgh, and has worked on high-performance scientific computing, data visualization, and computer security. He is the author of Data Crunching and Practical Parallel Programming (MIT Press, 1995), and is a contributing editor at Doctor Dobb's Journal, and an adjunct professor in Computer Science at the University of Toronto.

Product Details

  • Paperback: 618 pages
  • Publisher: O'Reilly Media, Inc.; 1 edition (June 26, 2007)
  • Language: English
  • ISBN-10: 0596510047
  • ISBN-13: 978-0596510046
  • Product Dimensions: 9.1 x 7.1 x 1.2 inches
  • Shipping Weight: 2 pounds (View shipping rates and policies)
  • Average Customer Review: 3.4 out of 5 stars See all reviews (38 customer reviews)
  • Amazon.com Sales Rank: #48,565 in Books (See Bestsellers in Books)

Inside This Book (learn more)

What Do Customers Ultimately Buy After Viewing This Item?


Tags Customers Associate with This Product

 (What's this?)
Click on a tag to find related items, discussions, and people.
Check the boxes next to the tags you consider relevant or enter your own tags in the field below.
(7)

Your tags: Add your first tag
 
Help others find this product — tag it for Amazon search
No one has tagged this product for Amazon search yet. Why not be the first to suggest a search for which it should appear?

 

Customer Reviews

38 Reviews
5 star:
 (11)
4 star:
 (8)
3 star:
 (7)
2 star:
 (11)
1 star:
 (1)
 
 
 
 
 
Average Customer Review
3.4 out of 5 stars (38 customer reviews)
 
 
 
 
Share your thoughts with other customers:
Most Helpful Customer Reviews

 
300 of 325 people found the following review helpful:
2.0 out of 5 stars It's beautiful, see ? SEE ???, October 25, 2007
By Dmitry Dvoinikov (Ekaterinburg, Russia) - See all my reviews
The idea of this book is that thirty software developers and/or researchers (respectable ones, no doubt there), had to find the most beautiful piece of code and present its study. Each of them then writes a chapter and there you have it - a volume of "beautiful code" ! Simple as that.

If there was somebody to fully support the idea of such book, it would be me - I believe that the software industry already spent too much time and effort neglecting the art-and-craft in programming, pretending that it all can be reduced to hard math. Didn't work so far, did it ? Then I very welcome books like this one. But not exactly the one.

Let me put it this way - I couldn't say anything good about this book except that I adore the concept and found may be ten of thirty three chapters interesting (not necessarily beautiful). Beauty is in the eye of the beholder they say, but this lame excuse is the last good thing I could say for this book.

It was supposed to be pedagogical. Did not happen. Rather than making it timeless reference for the readers, the book made a tribune for the authors to talk about, uhm, just about anything. We know how programmers love to talk about what they do, and it's ok. But we also know that they often mumble instead of talking and it's very difficult for us to understand one another, no matter friendly or hostile. This is not to mention that there are no commonality in topics or style or language (programming or English) or anything. The editor had simply glued it together.

Not so bad you say, a good assortment is fine you say ? Let me tell you more, and it's all downhill.

It's as though you expected an album of paintings but instead got a book of random excerpts from chemical specifications for producing paints.

Exemplary conventional antimicrobial, antimildew, or antialgae agent includes 3-iodo-2-propynyl butylcarbamate, diiodomethyl-p-tolylsulfone, 1,2-benzoisothiazolin-3-one, 2-methylthio-4-tert-butylamino-6-cyclopropylamino-s-triazine, 2-(4-thiocyanomethylthio) benzothiazole and the mixtures thereof.

See how beautiful it is that can be painted with that ?

If you ask me, a book like this ought to have structure. Remember the classic one by Gamma et al - they also presented abstract things from different areas or levels, but they kept the information stylistically uniform and structured against a clear taxonomy. Not the case here.

Each chapter is about different matter, presented in a different way. One author presents a performance hack in which he compiles code on the fly. The chapter will then contain several pages of dynamic assembly. The other will show an interesting approach to syntax parsing. This one will have 50 short snippets of something JavaScript-like. Yet another will tell you how to automate debugging by automatically mutating the application. This one won't have code at all. Yet another will show a slick algorithm for counting bits in a word. This one will have a lot of bitwise arithmetic.

And I just loved the one that has NASA in it's title. There - "A Highly Reliable Enterprise System For NASA's Mars Rover Mission". Wow ! How promising ! Want to know what it says ? It says - "In NASA they love their software reliable, even a web-based file server, and so we present you a web-based file server built with JavaBeans in three-tier architecture". Ahem, Mars Rover anyone ?

Don't get me wrong, some of the chapters are reasonably interesting. Interesting ! Not beautiful !

With a little exception, the authors don't even mention the word "beautiful" in their texts. They allure with "There, we have this system, it works like this..." . What exactly the author finds beatiful about it and why - remains secret.

The most impressive standout was the chapter written by Yukihiro Matsumoto, the creator of Ruby. Three pages in which he simply speaks about what he believes a beautiful code is. He explains to you his understanding of a beautiful code. This is what the book is all about !

Instead, many chapters just demonstrate a few pages (!) of code and conclude - it is beautiful, see !

Many times I wasn't unable to grasp the problem - what was it that required that so called beauty to emerge ? I couldn't see the whole picture, but the authors sort of presume I do and so my possible appreciation of beauty requires deep understanding. What if I show you a magnified fragment of Mona Lisa's background, some 3x3 blackish pixels ? No doubt, Leonardo had to paint them too. But what was that beauty again ?

Only a few authors were wise enough to use a pseudocode. Something that anyone can read, no matter from which camp. Otherwise it's just weird when the authors present their beatiful code in Ruby or Perl or LISP. Look, I didn't touch Ruby yet, I hate Perl and I can't imagine using LISP in practice. Nevertheless the authors repeatedly say something like "It's easy, I'll show you, this bracket does this and that character does something else. Now you see how beautiful it is ?". They literally show you a piece of poetry in foreign language and ask you to appreciate it.

A classical example of awful poetry in Russian is (transliterated)

Ya poet, zovus' Neznajka,
ot menya vam balalajka.

Can you tell whether it's good or bad and why ? What if I told you it's beatiful ? Would you believe ? Does it appeal to your sense of beauty ? Same thing about this entire book.

Awful implementation of an idea that I fully adore. In fact, implementations like this undermine the idea, that's why I rate this book so low and put it away with disgust.

Comment Comments (16) | Permalink | Was this review helpful to you? Yes No (Report this)



 
98 of 104 people found the following review helpful:
5.0 out of 5 stars Beautiful Code, July 21, 2007
I am always looking to for new ways to look at programming problems. I love studying new programming languages in order to bend my mind in new, uncomfortable ways. Both of these are reasons I enjoyed Beautiful Code.

Beautiful Code is a collection of essays from some well known software engineers. That said, I didn't immediately recognize many of their names (this is probably an indication of my lack of exposure in their fields of expertise). If you are like me, there is an alphabetical list of short biographical entries in the back of the book you can use to acquaint yourself with who wrote each chapter.

There are chapters from people in the Perl, Python, Ruby, Google, Scheme, and Haskell communities (among others).

I especially enjoyed reading about Google's MapReduce algorithm, Haskell's Software Transactional Memory, and Scheme's syntax-case macro system. These are subjects I have previously tried to tackle, but the explanations written in this book have helped me approach understanding far better than the academic papers on these subjects I have tried to read.

You'll have to put forth effort to follow the explanations in the chapters as the authors walk you through how they tackle a given problem. This leads eventually to the solution, but may involve many twists and turns along the way. These twists and turns show how the authors think and grants us as the readers insight into how they approach the problems at hand. It's the journey to the desination that sometimes matters more than the destination.

For example, I've long wondered abut the difference between hygenic and non-hygenic macros. Various descriptions on the web have given me some clue, but chapter 25 shows examples and explains the problem very clearly. It then goes about discussing various solutions that have been devised over the years before going into the details of the current solution that is in use today. I've seen the end result before, but knowing what motivated the solution gives me a much greater appreciation for and understanding of it.

The effort required for some chapters may be over your head as they are for me, but those are the chapters where I find the rewards to be the greatest as they force me to look at things in new ways. Once I do achieve understanding I'm able to apply the new found ways of thinking about problems to the situations I face at work and elsewhere which has led to unique and compelling solutions that I would not have thought of before.

I've long been on the search for beauty in the code I write. I have found that as I read and take the time to understand what others see as beautiful, even when I do not see beauty in it at first, I gain greater insights into my craft. I am glad that O'Reilly has taken the time to solicit responses from the authors in this book as it has given us a wealth of experience and expertise that we all can benefit from as we seek to gain greater insights into the various facets of beauty and elegance in code.
Comment Comment | Permalink | Was this review helpful to you? Yes No (Report this)



 
35 of 35 people found the following review helpful:
3.0 out of 5 stars great idea, mediocre execution, September 27, 2007


This book came to being from a very good idea. The editors decided to go around and ask renown programmers and designers about snippets of code, software architecture, design or anything related they found beautiful and see as an example of good design.

Indeed, the idea is terrific. After all, besides books describing specific technologies we read on a per-need basis, what books do programmers have to read for inspiration ? Consider artists and architects, for example. They have peer art and work to study and be inspired by. Sure, code reading is highly recommended, but wouldn't it be great if someone had already collected all the good bits ? Wouldn't it be sweet for Brian Kernighan and Yuhikiro Matsumoto to tell you what they've found beautiful ?

Unfortunately, this books doesn't fulfill the high expectations I had from it. It's not bad, no, but it isn't as good as I hoped it to be. There are two main reasons for this:

1. Many of the authors forgot that they're writing for a paper book, and not an online article / blog entry. When reading a paper book, you can't just click on links to find out more information. Therefore, I'd expect many chapters to be more complete. The authors could have spent a few extra lines to explain a concept instead of referencing it to some online resource or (worse) a paid-subscription-access paper at ACM. This is a paper book - I want to read it on the bus to work. Had I wanted to read an online article jumping around links, I would just do that.
2. A few of the chapters in the book are just way too specific. How many people would understand a chapter about LINPAK - a Fortran library for linear algebra manipulation, especially when the author is very parsimonious in explaining the concepts and sends you to linear algebra tomes instead (see complaint #1).

In general, I think that to better execute the idea of such a book, a panel of experts has to be assembled and scrutinize each and every article. I would be much happier to read a book of 10 great articles than a book of 33, of which 10 are great. Who said that each and every programming book should be more than 600 pages long ?

However, I want to finish on a positive note, since as I stated in the beginning, the book is not bad. Here's a list of articles I found really good and interesting. I guess that just for them it was worth to read:

1. Chapter 1, A Regular Expression Matcher, by Brian Kernighan
2. Chapter 2, Subversion's Delta Editor: Interface as Ontology, by Karl Fogel
3. Chapter 3, The Most Beautiful Code I Never Wrote, by Jon Bentley
4. Chapter 8, On-the-Fly Code Generation for Image Processing, by Charles Petzold
5. Chapter 10, The Quest for an Accelerated Population Count, by Henry S. Warren, Jr.
6. Chapter 16, The Linux Kernel Driver Model: The Benefits of Working Together, by Greg Kroah-Hartman
7. Chapter 18, Python's Dictionary Implementation: Being All Things to All People, by Andrew Kuchling
8. Chapter 23, Distributed Programming with MapReduce, by Jeff Dean and Sanjay Ghemawat
9. Chapter 28, Beautiful Debugging, by Andreas Zeller
10. Chapter 33, Writing Programs for "The Book," by Brian Hayes

Comment Comment | Permalink | Was this review helpful to you? Yes No (Report this)


Share your thoughts with other customers: Create your own review
 
 
 
Most Recent Customer Reviews

5.0 out of 5 stars Excellent in Every Way
Great seller! Very prompt with delivery and product arrived just as described. Highly recommend doing business with this seller. Thank you!
Published 7 days ago by Rommel Sison

3.0 out of 5 stars Expect a lot of code and text intertwined in this book
My appreciation of Beautiful Code is like the one I have for the Justice League or the X-Men-- a band of exceptional individuals moving towards a common, altruistic end. Read more
Published 3 months ago by Regnard Raquedan

2.0 out of 5 stars Nice idea for a book, but didn't quite do it for me...
Like others, I found the concept for this book intriguing, but in implementation, turned out to be a pretty significant borefest with little to no meaningful value that could be... Read more
Published 5 months ago by Rich Wardwell

3.0 out of 5 stars In the eye of the beholder
I liked the idea of the book (real code, solving non-obvious problems), but it turned out to be a mixed bag in practice. Read more
Published 6 months ago by autumn-ajax

2.0 out of 5 stars It ain't all that beautiful...
The editors of this uneven book give us 33 chapters from various, often well-known developers, in which these developers describe some code and explain why they think that it is... Read more
Published 7 months ago by Robert H. Stine Jr.

2.0 out of 5 stars Disappointing.
I guess that my main problem is that the 'beauty is in the eye of the beholder'. I returned the book after reading the first two chapters. Read more
Published 8 months ago by Dmitri Petrov

3.0 out of 5 stars Not for the faint hearted
I like this book but it is a flawed thing.

Worth the read but not convinced it is worth the cost. Read more
Published 8 months ago by Duncan

2.0 out of 5 stars A couple of great essays, a bunch of so so ones.
I must say I was pretty disappointed with this book. I expected so much more. The lead off piece by Brian Kernighan is the best in the book. Read more
Published 10 months ago by L. Heneks

1.0 out of 5 stars Uneven, Uninteresting
There's a critical need for a book on code aesthetics, elegance and comprehensibility that goes beyond simple style guidelines -- this isn't that book. Read more
Published 10 months ago by Scott Wentzka

2.0 out of 5 stars dont see the point of this book
i regret buying this book. i dont see the beauty of the code nor do i see how many of the contributors think. Read more
Published 11 months ago by Gore Withall

Only search this product's reviews



Customer Discussions

 Beta (What's this?)
New! See all customer communities, and bookmark your communities to keep track of them.
This product's forum (2 discussions)
  Discussion Replies Latest Post
Release date Jun 15th -> Aug 20. 3 June 2007
Chapter list 0 March 2007
See all 2 discussions...  
Start a new discussion
Topic:
First post:
Prompts for sign-in
  [Cancel]


Active discussions in related forums
   


Product Information from the Amapedia Community

Beta (What's this?)



Look for Similar Items by Category


Avon: Free Shipping

Avon Mark Just Pinched Instant Blush Tint
Get free shipping on all Avon orders of $25 or more. Shop Avon's award-winning makeup, skin care, bath & body items, and more.

Shop Avon now

 

Best Books of 2008

Best of 2008
Find our top 100 editors' picks as well as customers' favorites in dozens of categories in our Best Books of 2008 Store.
 

Summer Reading for Kids & Teens

Summer Reading for Kids and Teens
Discover everything from beach reads and board books to teen romance and action-adventure series in Summer Reading for Kids & Teens. And, check off the kids' required reading lists in our Summer School Reading Store.
 

Save an Extra 15%

Get automatic reorders, free shipping, and an extra 15% discount on items you use frequently, including coffee, shampoo, and laundry detergent, with our new Subscribe & Save program.

More about Subscribe & Save

 

 

Feedback

If you need help or have a question for Customer Service, contact us.
 Would you like to update product info or give feedback on images?
Is there any other feedback you would like to provide?

Your comments can help make our site better for everyone.


Where's My Stuff?

Shipping & Returns

Need Help?

Your Recent History

  (What's this?)
You have no recently viewed items or searches.

After viewing product detail pages or search results, look here to find an easy way to navigate back to pages you are interested in.

Look to the right column to find helpful suggestions for your shopping session.

Continue shopping: Top Sellers
Paranoia
Paranoia by Joseph Finder
Glenn Beck's Common Sense
Glenn Beck's Common Sense
Darkfever
Darkfever by Karen Marie Moning

Conditions of Use | Privacy Notice © 1996-2009, Amazon.com, Inc. or its affiliates