Try Kindle Edition $0.00
Try Kindle Edition $0.00
- Highlight, take notes, and search in the book
Buy new:
$26.47$26.47
$3.99
delivery:
Monday, Dec 18
Ships from: Maks Booker Sold by: Maks Booker
Buy used: $15.98
Other Sellers on Amazon
+ $3.98 shipping
98% positive over last 12 months
FREE Shipping
100% positive over last 12 months
Download the free Kindle app and start reading Kindle books instantly on your smartphone, tablet, or computer - no Kindle device required.
Read instantly on your browser with Kindle for Web.
Using your mobile phone camera - scan the code below and download the Kindle app.
Image Unavailable
Color:
-
-
-
- To view this video download Flash Player
-
-
VIDEO -
-
Beautiful Code: Leading Programmers Explain How They Think (Theory in Practice (O'Reilly)) 1st Edition
| Price | New from | Used from |
- Kindle
$25.99 Read with our free app - Paperback
$15.98 - $26.4743 Used from $2.83 22 New from $26.39
- ISBN-100596510047
- ISBN-13978-0596510046
- Edition1st
- PublisherO'Reilly Media
- Publication date
2007
July 31
- Part of series
- Language
EN
English
- Dimensions
7.0 x 1.4 x 9.2
inches
- Length
618
Pages
Customers who viewed this item also viewed
Editorial Reviews
About the Author
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
- Publisher : O'Reilly Media; 1st edition (July 31, 2007)
- Language : English
- Paperback : 618 pages
- ISBN-10 : 0596510047
- ISBN-13 : 978-0596510046
- Item Weight : 2.4 pounds
- Dimensions : 7 x 1.41 x 9.19 inches
- Best Sellers Rank: #532,844 in Books (See Top 100 in Books)
- #512 in Software Development (Books)
- #1,149 in Computer Software (Books)
- #1,255 in Programming Languages (Books)
- Customer Reviews:
Videos
Videos for this product

1:42
Click to play video

Greg Wilson on Beautiful Code
Merchant Video
Important information
To report an issue with this product, click here.
About the authors

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 open source,
networking, and software engineering, but his editorial output has
ranged from a legal guide covering intellectual property to a graphic
novel about teenage hackers. His work for O'Reilly includes the
influential 2001 title Peer-to-Peer, the 2005 ground-breaking book
Running Linux, and the 2007 best-seller Beautiful Code.
Andy also writes often for O'Reilly's Radar site
(http://radar.oreilly.com/) and other publications on policy issues
related to the Internet and on trends affecting technical innovation
and its effects on society. Print publications where his work has
appeared include The Economist, Communications of the ACM, Copyright
World, and Internet Law and Business. His web site is
http://www.praxagora.com/andyo/.

Elliotte is originally from New Orleans to which he returns periodically in search of a decent bowl of gumbo. However, he currently resides in Brooklyn with his wife Beth and dog Thor. He's a frequent speaker at industry conferences including Software Development, Dr. Dobb's Architecture & Design World, SD Best Practices, Extreme Markup Languages, JavaWorld, and too many user groups to count. His fiction has appeared in Alfred Hitchcock’s Mystery Magazine, Crossed Genres, and Daily Science Fiction in addition to numerous anthologies. His most recent books are Java Network Programming, 4th edition, and the JavaMail API, both from O’Reilly.

Dr. Greg Wilson is a programmer, author, and educator based in Toronto. He co-founded and and was the first Executive Director of Software Carpentry, which has taught basic software skills to tens of thousands of researchers worldwide, and has authored or edited over a dozen books, including "Beautiful Code", "The Architecture of Open Source Applications", and most recently "Software Design by Example". Greg is a member of the Python Software Foundation and a recipient of ACM SIGSOFT's Influential Educator of the Year award.

Travis has a Ph.D. from the Mayo Clinic and B.S. and M.S. degrees in Mathematics and Electrical Engineering from Brigham Young University. Since 1997, he has worked extensively with Python for numerical and scientific programming, most notably as the primary developer of the NumPy package, and as a founding contributor of the SciPy package. He is also the author of the definitive "Guide to NumPy".
Travis was an assistant professor of Electrical and Computer Engineering at BYU from 2001-2007, where he taught courses in probability theory, electromagnetics, inverse problems, and signal processing. He also served as Director of the Biomedical Imaging Lab, where he researched satellite remote sensing, MRI, ultrasound, elastography, and scanning impedance imaging.
As CEO of Continuum Analytics, Travis engages customers in all industries, develops business strategy, and helps guide technical direction of the company. He actively contributes to software development and engages with the wider open source community in the Python ecosystem. He has served as a director of the Python Software Foundation and as a director of Numfocus.
Customer reviews
Customer Reviews, including Product Star Ratings help customers to learn more about the product and decide whether it is the right product for them.
To calculate the overall star rating and percentage breakdown by star, we don’t use a simple average. Instead, our system considers things like how recent a review is and if the reviewer bought the item on Amazon. It also analyzed reviews to verify trustworthiness.
Learn more how customers reviews work on Amazon-
Top reviews
Top reviews from the United States
There was a problem filtering reviews right now. Please try again later.
For the intermediate or beginning programmer, I'd say this is an excellent read as long as you are able to comprehend the material. Some of the text demands more than a cursory knowledge of programming. I will probably need to reread a few chapters later in my career in order to understand them in the manner they were intended.
The book reads like a book about software pattern implementations, but without the emphasis on the patterns. It is left to the reader to draw generalizations from the examples that they can apply to their own code.
Personally, I'd like to see more books like this. It provides a good frame of reference for the construction of good software.
The better part is that each section is short enough to be read in one shot. Helps a lot on following the authors!
The code in this book isn't Beautiful, and the book fosters an illusion about programming.
Rob Pike's 1998 example of a "regular expression" processor in Brian Kernighan's lead article isn't Beautiful. It doesn't process strings, properly understood; it processes arrays of bytes, and it does so with no apology from Kernighan.
It uses a value parameter as a work area without apology or explanation. Because C is a required language at Princeton for computer science majors, Kernighan feels no need to point this out, while pointing out the unusual, but correct, use of single-trip while.
It is correct in C to change a parameter passed by value ... but philosophically and from the standpoint of interlanguage readability, it's a C idiom used in a context not predeclared to be C.
We've come a long way, and a long way down, from the Algol vision of a publication language if programmers are expected to know a language, C, which has so many flaws, to learn computer science and Beauty itself.
Pike's code also repeats a test in two different functions. Brian's general apologia is that it's "efficient" but a roughly equivalent C Sharp version is only five times as slow...before you improve the latter by determining where possible the handle of the regex (the set of characters and/or strings that the regex MUST start with, which can be found using library facilities in C or C Sharp that execute for the most part fast assembler code).
The beauty in the code seems to be constituted for Kernighan in the fact that Pike wrote this flawed program in one hour with no back-talk.
The rest of the book adheres to this pattern; forced marches, vanity projects and the misuse of terminology (for example, structs are referred to as classes).
The illusion fostered by this book is that "programming" is the ideally single author writing in a flash of intuition some gnomically brief, uncommented, unHungarianized code which cleverly exploits idioms and implicitly defies a background of "dull" code written by clueless corporate drones...a sort of Star Wars urban legend in which the pure and good Beuatiful coders confront the Dark Side.
Writing about a manifestation of this urban legend in 1985, Theodore Roszak wrote (in From Satori to Silicon Valley) "how could they [the Apple kids] believe something so unlikely?"
The belief persists in technical circles that "we are Individuals who would write nothing but Beautiful code, and think naught but Beautiful thoughts, were it not first necessary to get Version 1.0 out the door and identify non-contributors and heretics, who in any way question our self-image as Luke Skywalker and Co." It persists because telling this story to yourself allows you to avoid confronting the objective subordination of the real programmer to essentially uncaring corporations with, in American law, the fiduciary responsibility to Screw U.
The fact is that "programming" is almost always collective, either in the sense of a group project, or in the creation of the first edition of an artifact which is then (even in the case of Linux and suchlike legendary products) taken from the author and transformed into a set, a series of editions which as a group solve a problem which is itself an ordered set.
Programmers rage for the fantasy of being a single author of unchanging deathless code and because they work in industry (sometimes as virtual slaves to Open Source projects, willing slavery being different in no fundamental respect from slavery, period) they never get this. The result?
Actual coding is fetishized and mystified in the real world to the point of a cargo cult, where at one and the same time, everybody wants to be the Author, but any moves, in the real world, towards this position, are considered to be disruptive, and the result is the grand fantasy of the enterprise system in which "coding", having become the nightmare inverse of the creative dream/fantasy, and the work of evilduuers, is supposed to disappear, but returns in the "mere" setting of parameters...using a Turing complete programming language which is normally pretty much of a mess.
Romanticising this process as having anything to do at all with artistic Beauty (the beauty of a Poussin, of the Ninth Symphony, of Death of a Salesman) breaks the connection with truth which is Beauty's mainstay. Nearly all code is poorly written in parallel or serial-over-time groups in which the members have been forced by management to compete with each other to the point, in some shops, of insanity, and most code unfairly structures the lives of countless employees and consumers in a way that systematically deprives them of meaningful control over their lives as employees, customers, investors, patients, or stiffs in the morgue.
An alternative way was shown early on in Algol, the product of a genuine partnership between universities, corporations and government. This effort was destroyed by IBM in favor of the infantile disorder (Fortran) and a few years on, most of the good ideas in C came from Algol, and were taken without acknowledgement.
I was somewhat saddened to see Kernighan involved with this vanity project because in his early work he sketched out a true alternative to the insanity, this being just slowing down and writing code, in whatever language (even Fortran) in a literate way. I met Brian when working at Princeton in 1987, and I felt like Garth and Wayne (Wayne's World) when they meet Alice Cooper: "we're not worthy". But it's clear to me from his essay and others that this beauty is too much in the minds of an American-centric programming culture to inspire.
Beauty is the Beast: in this book it means only doing it as fast as possible using in-jokes and idioms. There is no suffering here; suffering is prohibited as is asking questions such as "what is a string" when all you have are bytes; internationalisation is unmentionable in the Kernighan essay for this reason, as is the fact that both Java and C Sharp are international in their treatment of strings despite their *de minimis* "inefficiency" without any nonsense whatsoever. Dijkstra, the only real authority as far as I can tell on the type of elegance you need in programming, isn't even in the index.
Three stars, and that's because I'm a nice guy. I gave my own book only four stars because I didn't have enough time to do a perfect job and was perfectly willing to admit this. I despise Amazon numbers games, as well. So, Greg and Andy, consider yourself to have gotten a lucky break.
Top reviews from other countries
Enjoy!
Insgesamt aber positiv: über 30 Top-Autoren, vielseitige Themen, einige Perlen... Mit über 550 Seiten ist garantiert für jeden Quellcode-affinen Leser etwas passendes dabei. Von einigen Beiträgen (z.B. Alberto Savoia, Beautiful Tests) war ich begeistert, andere (z.B. Charles Petzold, On-The-Fly Code Generation for Image Processing) wirkten für mich wie Schlaftabletten.
Fazit: War meist nett zu lesen. Kein "Must-have", am besten ausleihen...









