

|
Beautiful Code: Leading Programmers Explain How They Think (Theory in Practice (O'Reilly)) [ILLUSTRATED] (Paperback)
by Andy Oram, Greg Wilson
Category:
Programming code, Language & tools, Computer science |
Market price: ¥ 470.00
MSL price:
¥ 408.00
[ Shop incentives ]
|
Stock:
Pre-order item, lead time 3-7 weeks upon payment [ COD term does not apply to pre-order items ] |
MSL rating:
Good for Gifts
|
MSL Pointer Review:
A programming book that is simply a beauty in the eye of the programmer. |
If you want us to help you with the right titles you're looking for, or to make reading recommendations based on your needs, please contact our consultants. |
 Detail |
 Author |
 Description |
 Excerpt |
 Reviews |
|
|
Author: Andy Oram, Greg Wilson
Publisher: O'Reilly Media
Pub. in: June, 2007
ISBN: 0596510047
Pages: 618
Measurements: 9.1 x 7.1 x 1.2 inches
Origin of product: USA
Order code: BA15075
Other information: ISBN-13: 978-0596510046
|
Rate this product:
|
- MSL Picks -
This book surveys the range of human invention and ingenuity in the development of computer systems. The elegance in each contributor's offering comes from the discovery of unique solutions, a discovery that comes from the authors' power to look beyond established boundaries, to see needs that have been overlooked by others, and to find innovative solutions to difficult problems.
Many of the authors have confronted limitations in the physical environment, in resources, or in requirements that made it hard to believe that there were workable solutions that confronted and solved all problems, and then came up with those solutions. Still others already had a solution that worked, but came up with something new and innovative that worked even better. All the authors in this book have drawn lessons from their projects, but you can learn some even broader lessons after reading the entire book.
1. There are times when rules really do work and you don't have to abandon good technique in order to meet your design requirements. Often you just need to get away from the problem and then approach it again anew in order to see the solution. 2. Some chapters confirm that you must know the rules before you can break them. Some of the authors in this book had years of experience being masters of the various rules of software design before deciding to take an unconventional route toward solving a difficult problem, and this experience gave them the confidence they needed to break the rules in a constructive way. 3. Cross-disciplinary studies are championed by the lessons in this book. Many authors came into new domains and had to find their way in relative darkness. A particularly pure form of creativity and intelligence triumphed in a situation that required pioneers and free thinkers. 4.Finally, this book reveals that beautiful solutions don't last for all time. New circumstances will always require a new look. So, if you read this book and think that the authors' ideas and contributions are not relevant to your current problems, the situation could change in a few months or a few years.
This is one of those books that should be useful to you for a long time to come since the lessons taught here don't go out of style as programming languages and technologies are born and eventually abandoned. Highly recommended.
(From quoting a guest reviewer)
Target readers:
Programmers and computer science majors.
|
Customers who bought this product also bought:
 |
Code Complete, Second Edition (Paperback)
by Steve McConnell
Focusing on actual code construction, but touching on every aspect of software engineering including psychology/behavior, this book is an essential reading for every and all developers. |
 |
Designing Web Usability : The Practice of Simplicity (Paperback) (Paperback)
by Jakob Nielsen
This is a bible for web developers who are serious about business results! |
 |
Dynamic HTML: The Definitive Reference (Dynamic Html) [ILLUSTRATED] (Paperback) (Paperback)
by Danny Goodman
It's the complete "one stop" reference and a "Go To" book when you have to find the details on HTML tags, attributes, settings, JavaScript calls, DOM attributes, CSS settings etc. |
 |
The C++ Programming Language (Special 3rd Edition) (Hardcover)
by Bjarne Stroustrup
Presents the complete C++ language and a discussion of design and software development issues. Provides an emphasis on tutorial aspects aimed at the serious programmer. |
 |
The C++ Standard Library: A Tutorial and Reference (Hardcover)
by Nicolai M. Josuttis
Extremely well organized and well written, this book is an excellent reference to advanced C++ features. |
 |
Ajax in Action [ILLUSTRATED] (Paperback)
by Dave Crane, Eric Pascarello, and Darren James
To quote Val's Blog, "A tremendously useful field guide specifically written for developers down in the trenches... waiting for the killer solution... " |
 |
Effective C++: 55 Specific Ways to Improve Your Programs and Designs (3rd Edition) (Addison-Wesley Professional Computing Series) (Paperback)
by Scott Meyers
Focusing on productive and practical techniques and offering clearly well thought out advice, this classic on C++ language has always been worth your money and time. |
 |
Effective Java Programming Language Guide (Paperback)
by Joshua Bloch
An essential reference on the nuances of Java, which you’ll consult from time to time. A must-own for Java developers. |
 |
Head First Design Patterns (Head First) [ILLUSTRATED] (Paperback)
by Elisabeth Freeman, Eric Freeman, Bert Bates, Kathy Sierra
Written in a typically Head First refreshing style, this is one of the easiest to read and absorb among the major reference sources for design patterns. |
 |
Thinking in Java (4th Edition) (Paperback)
by Bruce Eckel
A book that has many awards and raves from programmers worldwide for its extraordinary clarity, careful organization, and real life examples. |
 |
Head First Java, 2nd Edition [ILLUSTRATED] (Paperback)
by Kathy Sierra, Bert Bates
A wonderful job of explaining not only the how-to, but also the "why" of Java fundamentals, in very down-to-earth language. |
 |
The Mythical Man-Month: Essays on Software Engineering, 20th Anniversary Edition (Paperback)
by Frederick P. Brooks
Focusing on the human elements of software engineering, this classic offers insight for anyone managing complex development projects. |
 |
Refactoring: Improving the Design of Existing Code (Hardcover)
by Martin Fowler, Kent Beck, John Brant, William Opdyke, Don Roberts
Full of code examples in Java, easy to read and right into target, this book is a masterly and comprehensive reference on refactoring. |
 |
Rapid Development (Paperback)
by Steve McConnell
A succinct, well organized and must-read collection of the lessons learned and best practices in software engineering over the last three decades. |
 |
The Pragmatic Programmer: From Journeyman to Master (Paperback)
by Andrew Hunt, David Thomas
A classic reading on programming ranking with Code Complete and The Mythtical Man-Month. |
 |
Design Patterns: Elements of Reusable Object-Oriented Software (Addison-Wesley Professional Computing Series) (Hardcover)
by Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides
A modern classic in the literature of object-oriented development, it's a book of design patterns that describe simple and elegant solutions to specific problems in object-oriented software design. |
 |
Combinatorial Optimization: Algorithms and Complexity [UNABRIDGED] (Paperback)
by Christos H. Papadimitriou, Kenneth Steiglitz
Published in 1952, this books is a masterpiece on Combinatorial Optimisation. |
|
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.
|
From Publisher
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.
|
A guest reviewer (MSL quote), USA
<2008-11-07 00:00>
This book is fun. It brings a number of interesting challenges to full view and sheds light on them in exciting presentations by its numerous contributors. It crosses quite a few programming languages and specialization areas within the ever-broadening scope of computer science. I found it to be refreshing and delightful. I particularly like a number of the "historical artifacts" found throughout the book. It lends greater balance to the evolving nature of this particular corner of the world. I'd like to see more citations in a book that offers such things as "73 percent of the world's largest supercomputers" (in a context of what is running Linux) as fact. Perhaps it is, but how can anyone refute or even prove it? At a minimum, a citation is helpful in providing greater credability, though it may have detracted somewhat from the readability of this otherwise fine book. I'd probably also like to see a bit more editing by editors Oram and Wilson. For example, page 484 has: "Needless to say, the software needed to be efficient..." If it is needless to say, why is it said? How is that efficient? The sentence, if rewritten, could easily lose the needless to say and not encounter any dehumanization. I think that an argument can be made that the editors perhaps chose to focus on content more than style and, since the text flows well enough, why change it? Some may consider writing about efficiency in an inefficient style to be a bit of a contradiction at some level. Others may never consider it to be anything more than the comfortable "speaking voice" of a friend or colleague. These are most certainly not complaints nor do they detract from the book in any substantive manner. I found useful and interesting content in every section. The individual writing styles of each of the contributors was a refreshing element not found in single-author books. The back cover says: "This is not simply another design patterns book, or another software engineering treatise on the right and wrong ways of doing things. Instead, it gives you the chance to look over the shoulder of some superb software designers and see the world through their eyes." ...this is the best reason to purchase the book, for sure! One of the things that I liked most about the various contributors was that they were, well, varied! If you get 15 experts on C++, everything in the world sounds like it has a corresponding C++ answer. These experts represent a bountiful cross-section of the relevancy of computer science in our world today. My favorite section was Andreas Zeller's musings on debugging. The sentence: "...I was pretty fed up with running debuggers, debugging our own debugger, and in particular debugging because of third-party changes." It's classic! The organization of the words express in a nutshell the beauty of debugging code and the author's moment in the heat of the battle is timelessly captured on the pages of this book. The rest of the paragraph puts you resoundly in his place and takes you through the toils and perils of the experience. It wouldn't be complete had the author not offered a practical solution using clear, concise steps. I recommend this book for those who are confident and established in their respective coding fields. I don't think that many newcomers are going to immediately embrace this book, but it would certainly not be a "bad thing." I have a bit of a "pet peeve" with the book always going on about "beautiful" this and "beautiful" that...but, that _is_ the theme of the book. I think that I like the term "elegant" better, though I think that beauty is probably more accurate, so I'm happy to be less annoyed by its repetitious use! |
|
|
|
|