Beautiful Architecture and over one million other books are available for Amazon Kindle. Learn more



or
Sign in to turn on 1-Click ordering
More Buying Choices
Have one to sell? Sell yours here
Start reading Beautiful Architecture on your Kindle in under a minute.

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.
Sorry, this item is not available in
Image not available for
Color:
Image not available

To view this video download Flash Player

 

Beautiful Architecture: Leading Thinkers Reveal the Hidden Beauty in Software Design [Paperback]

Diomidis Spinellis , Georgios Gousios
3.3 out of 5 stars  See all reviews (6 customer reviews)

List Price: $44.99
Price: $41.65 & FREE Shipping. Details
You Save: $3.34 (7%)
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
In Stock.
Ships from and sold by Amazon.com. Gift-wrap available.
Want it Wednesday, May 29? Choose One-Day Shipping at checkout. Details
Free Two-Day Shipping for College Students with Amazon Student

Formats

Amazon Price New from Used from
Kindle Edition $19.79  
Paperback $41.65  
Shop the new tech.book(store)
New! Introducing the tech.book(store), a hub for Software Developers and Architects, Networking Administrators, TPMs, and other technology professionals to find highly-rated and highly-relevant career resources. Shop books on programming and big data, or read this week's blog posts by authors and thought-leaders in the tech industry. > Shop now

Book Description

January 27, 2009 059651798X 978-0596517984 1

What are the ingredients of robust, elegant, flexible, and maintainable software architecture? Beautiful Architecture answers this question through a collection of intriguing essays from more than a dozen of today's leading software designers and architects. In each essay, contributors present a notable software architecture, and analyze what makes it innovative and ideal for its purpose.

Some of the engineers in this book reveal how they developed a specific project, including decisions they faced and tradeoffs they made. Others take a step back to investigate how certain architectural aspects have influenced computing as a whole. With this book, you'll discover:

  • How Facebook's architecture is the basis for a data-centric application ecosystem
  • The effect of Xen's well-designed architecture on the way operating systems evolve
  • How community processes within the KDE project help software architectures evolve from rough sketches to beautiful systems
  • How creeping featurism has helped GNU Emacs gain unanticipated functionality
  • The magic behind the Jikes RVM self-optimizable, self-hosting runtime
  • Design choices and building blocks that made Tandem the choice platform in high-availability environments for over two decades
  • Differences and similarities between object-oriented and functional architectural views
  • How architectures can affect the software's evolution and the developers' engagement

Go behind the scenes to learn what it takes to design elegant software architecture, and how it can shape the way you approach your own projects, with Beautiful Architecture.


Frequently Bought Together

Beautiful Architecture: Leading Thinkers Reveal the Hidden Beauty in Software Design + Beautiful Code: Leading Programmers Explain How They Think (Theory in Practice (O'Reilly)) + Beautiful Data: The Stories Behind Elegant Data Solutions
Price for all three: $114.34

Buy the selected items together


Editorial Reviews

About the Author

Diomidis Spinellis is an Associate Professor in the Department of Management Science and Technology at the Athens University of Economics and Business, Greece. His research interests include software engineering, programming languages, internet information systems, computer security, and intelligent optimization methods. He holds an MEng in Software Engineering and a PhD in Computer Science both from Imperial College London.

Spinellis is a FreeBSD committer and the author of many open-source software packages, libraries, and tools. His implementation of the Unix sed stream editor is part of all BSD Unix distributions and Apple's Mac OS X. Other tools he has developed include the UMLGraph declarative UML drawing engine, the ckjm tool for calculating Chidamber and Kemerer object-oriented metrics in large Java programs, the Outwit suite for integrating Windows features with command-line tools, the fileprune backup file management facility, and the socketpipe network plumbing utility. In 2004 he adopted and has since been maintaining and enhancing the popular bib2xhtml BibTeX bibliography format to HTML converter. Currently he is also serving as the scientific coordinator of the EU-funded SQO-OSS cooperative research project, a software quality observatory for open-source software.

Spinellis has published two books in Addison-Wesley's "Effective Programming Series": in 2004 Code Reading: the Open Source Perspective, which received a Software Development Productivity Award in 2004 and has been translated into six other languages, and in 2006 Code Quality: the Open Source Perspective, which also received a Software Development Productivity Award in 2007. Both books use hundreds of examples from large open source systems, like the BSD Unix operating system, the Apache Web server, and the HSQLDB Java database engine, to demonstrate how developers can comprehend, maintain, and evaluate existing software code. Spinellis has also published more than 100 technical papers in journals and refereed conference proceedings. The article "A Survey of Peer-to-Peer Content Distribution Technologies" he co-authored in 2004 appeared in the list of ACM's most downloaded digital library articles throughout 2005 and 2006. He is a member of the editorial board of IEEE Software, authoring the regular "Tools of the Trade" column, and Springer's Journal in Computer Virology.

Spinellis is a member of the ACM, the IEEE, the Usenix Association, the Greek Computer Society, the Technical Chamber of Greece, a founding member of the Greek Internet User's Society, and an active Wikipedian. He is four times winner of the International Obfuscated C Code Contest and a member of the crew listed in the Usenix Association 1993 Lifetime Achievement Award.

Georgios Gousios is a researcher by profession, a software engineer by education and a software enthusiast by passion. Currently, he is working on his PhD thesis at the Athens University of Economics and Business, Greece. His research interests include virtual machines, operating systems, software engineering and software quality. He holds an MSc with distinction from the University of Manchester, UK.

Gousios has contributed code to various OSS projects and also worked in various R&D projects in both academic and commercial settings. He is currently the project manager, design authority and core development team member for SQO-OSS, a multinational EU-funded research project, expanding in 5 countries, being developed by 40 people and consisting of 65k lines of code. The project investigates novel ways for evaluating software quality.

In his academic life, Gousios has published 10 technical papers in referred conferences and journals. One of those, the article "A comparison of dynamic web content technologies of the Apache web server" won the best paper award at the 2002 System Administration and Networking Conference, being the first comprehensive study in its field.

Gousios is a member of the ACM, the IEEE, the Usenix Association and the Technical Chamber of Greece.


Product Details

  • Paperback: 430 pages
  • Publisher: O'Reilly Media; 1 edition (January 27, 2009)
  • Language: English
  • ISBN-10: 059651798X
  • ISBN-13: 978-0596517984
  • Product Dimensions: 7 x 1 x 9.1 inches
  • Shipping Weight: 1.2 pounds (View shipping rates and policies)
  • Average Customer Review: 3.3 out of 5 stars  See all reviews (6 customer reviews)
  • Amazon Best Sellers Rank: #100,390 in Books (See Top 100 in Books)

More About the Authors

Discover books, learn about writers, read author blogs, and more.

Customer Reviews

3.3 out of 5 stars
(6)
3.3 out of 5 stars
Share your thoughts with other customers
Most Helpful Customer Reviews
27 of 31 people found the following review helpful
Format:Paperback|Amazon Verified Purchase
The book suffers from a "too many cooks" problem; it is a very timely book but lacks cohesion across chapters. I agree with the other reviewer that it has way too many pages about nothing. This is simply a good example of where each chapter is written by an "authority" on architecture but the chapters are disjointed and lack a consistent message. I loved the title, and idea behind the book, but it overpromises and underdelivers. But there are some redeeming features.

However, three chapters are excellent and make up for about a third of the forty dollars that I spent on this book. First, the preface and its discussion of architectural principles and properties is one of the best discussions of those topics. I have not seen that elsewhere. Chapter 1 ("what is architecture") and chapter 2 (a contrast between a system with a messy architecture with another with a thoughtfully designed one) are excellent. Unfortunately, all this interesting content stops on page 43 and very little worth the time reading the remaining 374 pages!

I hope that the publisher would come out with a shrunk down 72 pager condensed version of this book that is more like the substance I've come to expect from O'Rielly books.

This book is best checked out at your local library. I would instead recommend buying Jan Bosch's older but still unbeatable "Design and Use of Software Architectures" book.
Was this review helpful to you?
10 of 12 people found the following review helpful
3.0 out of 5 stars Good topics, Half baked March 11, 2009
Format:Paperback|Amazon Verified Purchase
Beautiful Architecture is a collection of articles about architecture.
The books starts with a "What is architecture" article (AMAZING! almost any book about architecture has that! can't we finally agree and deprecate this discussion?!)
Other articles arrange by topics: enterprise (server) architecture, client architecture, etc...

What really annoyed me while reading this book, and lowered two stars for it, is the repeating rhythm of the articles:
They start slow and punctuality (That's ok), getting warmer, getting into a really interesting point and puff - suddenly the article ends.
It's like making many preparations (warming the oven, preparing raw materials), putting the cake in, but closing it over before the cake is done. Shame!

Overall I would buy this book to get leads to new areas, not to really cover it.
Comment | 
Was this review helpful to you?
3 of 3 people found the following review helpful
5.0 out of 5 stars Excellent book, Very useful reference October 5, 2010
Format:Paperback
Excellent book, Very useful reference

Rather than being a boring book , Beautiful Architecture, is a well-written and very informative collection of interesting example from real life that should be known by anyone with interest in this field. Even if the systems presented in the book are on different platforms, using totally different technologies, and developed in different periods of time, all share some important aspects related to the architecture.

The book is divided in five parts. The first part is a general presentation on what is an architecture and an example of two software systems, very similar from many aspects like size, appliance, programming language, operating system and even so, one was aborted and one is used in our days. The first one was abandoned mainly because the lake of the design from the binging, hard to add new features, and the amount of effort required to rework, refactor, and correct the problems with the code structure had become prohibitive. The second one, is still in production, still being extended and changed daily. The actual architecture for the second one it is remarkably similar to the original design, with a few notable changes, and a lot more experience to prove the design was right.

The second part is about the "Enterprise Application Architecture". In this part is 4 systems are presented: the scaling problem faced in case of a massively multiplayer online games, the grow of a system for image storage and retrieval for retail offerings of portraits, an example resource-oriented system in which is presented the importance of Web Services in an enterprise application, and in the last chapter the Facebook application system is presented, and how the Facebook Platform was created.

Part three is about System Architecture. It starts by presenting the Xen virtualization platform that has grown from an academic research effort to major open source project. A large part of its success is due to it being released as open source. Then a fault tolerance system is presented, by reviewing the Tandem Operating System designed between 1974 and 1976 and shipped between 1976 and 1982. Chapter nine presents JPC, an x86 PC Emulator in Pure Java. Another Java implementation is presented in chapter ten: Jikes RVM is a successful research virtual machine, providing performance close to the state-of-the-art in a flexible and easy-to-extend manner.

In the fourth part, the End-User Application Architectures are presented. The GNU Emacs text editor architecture is described, and also a comparison with other software like Eclipse and Firefox is provided. Then the KDE project, one of the biggest Free Software, is presented in chapter twelve.

Languages and Architecture are presented in the last part of the book. This parts starts with a comparison between functional and object-oriented programming, continue with some examples of object-oriented programming and ends with some thoughts on beautiful buildings with problems.

From the beginning of a project is very important to have a clear view of the architecture and technologies used, because after some iterations is really hard, or in some situation impossible, to change the entire architectures and in some cases ignoring the architecture can lead to a project fail. A good conclusion for the book would be that: "An architecture influences almost everything that comes into contact with it, determining the health of the codebase and also the health of the surrounding areas."
Comment | 
Was this review helpful to you?


Forums

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



So You'd Like to...



Look for Similar Items by Category