Leading Thinkers Reveal the Hidden Beauty in Software Design

Author: Diomidis Spinellis,Georgios Gousios

Publisher: "O'Reilly Media, Inc."

ISBN: 0596554397

Category: Computers

Page: 430

View: 9143

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.
Read More

Leading Thinkers Reveal the Hidden Beauty in Software Design

Author: Diomidis Spinellis,Georgios Gousios

Publisher: "O'Reilly Media, Inc."

ISBN: 059651798X

Category: Computers

Page: 404

View: 5856

Presents a collection of essays on software architecture, covering such topics as enterprise application architecture, systems architecture, end-user application architecture, and languages and architecture.
Read More

Leading Programmers Explain How They Think

Author: Greg Wilson,Andy Oram

Publisher: "O'Reilly Media, Inc."

ISBN: 9780596554675

Category: Computers

Page: 620

View: 4374

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. This book contains 33 chapters contributed by Brian Kernighan, KarlFogel, Jon Bentley, Tim Bray, Elliotte Rusty Harold, Michael Feathers,Alberto Savoia, Charles Petzold, Douglas Crockford, Henry S. Warren,Jr., Ashish Gulhati, Lincoln Stein, Jim Kent, Jack Dongarra and PiotrLuszczek, Adam Kolawa, Greg Kroah-Hartman, Diomidis Spinellis, AndrewKuchling, Travis E. Oliphant, Ronald Mak, Rogerio Atem de Carvalho andRafael Monnerat, Bryan Cantrill, Jeff Dean and Sanjay Ghemawat, SimonPeyton Jones, Kent Dybvig, William Otte and Douglas C. Schmidt, AndrewPatzer, Andreas Zeller, Yukihiro Matsumoto, Arun Mehta, TV Raman,Laura Wingerd and Christopher Seiwald, and Brian Hayes. Beautiful Code is an opportunity for master coders to tell their story. All author royalties will be donated to Amnesty International.
Read More

The Stories Behind Elegant Data Solutions

Author: Toby Segaran,Jeff Hammerbacher

Publisher: "O'Reilly Media, Inc."

ISBN: 144937929X

Category: Computers

Page: 386

View: 7667

In this insightful book, you'll learn from the best data practitioners in the field just how wide-ranging -- and beautiful -- working with data can be. Join 39 contributors as they explain how they developed simple and elegant solutions on projects ranging from the Mars lander to a Radiohead video. With Beautiful Data, you will: Explore the opportunities and challenges involved in working with the vast number of datasets made available by the Web Learn how to visualize trends in urban crime, using maps and data mashups Discover the challenges of designing a data processing system that works within the constraints of space travel Learn how crowdsourcing and transparency have combined to advance the state of drug research Understand how new data can automatically trigger alerts when it matches or overlaps pre-existing data Learn about the massive infrastructure required to create, capture, and process DNA data That's only small sample of what you'll find in Beautiful Data. For anyone who handles data, this is a truly fascinating book. Contributors include: Nathan Yau Jonathan Follett and Matt Holm J.M. Hughes Raghu Ramakrishnan, Brian Cooper, and Utkarsh Srivastava Jeff Hammerbacher Jason Dykes and Jo Wood Jeff Jonas and Lisa Sokol Jud Valeski Alon Halevy and Jayant Madhavan Aaron Koblin with Valdean Klump Michal Migurski Jeff Heer Coco Krumme Peter Norvig Matt Wood and Ben Blackburne Jean-Claude Bradley, Rajarshi Guha, Andrew Lang, Pierre Lindenbaum, Cameron Neylon, Antony Williams, and Egon Willighagen Lukas Biewald and Brendan O'Connor Hadley Wickham, Deborah Swayne, and David Poole Andrew Gelman, Jonathan P. Kastellec, and Yair Ghitza Toby Segaran
Read More

Case Studies

Author: Kung-Kiu Lau

Publisher: World Scientific

ISBN: 9812562427

Category: Computers

Page: 303

View: 7024

Component-based software development (CBD) is an emerging discipline that promises to take software engineering into a new era. Building on the achievements of object-oriented software construction, CBD aims to deliver software engineering from a cottage industry into an industrial age for Information Technology, wherein software can be assembled from components, in the manner that hardware systems are currently constructed from kits of parts. This volume provides a survey of the current state of CBD, as reflected by activities that have been taking place recently under the banner of CBD, with a view to giving pointers to future trends. The contributions report case studies - self-contained, fixed-term investigations with a finite set of clearly defined objectives and measurable outcomes - on a sample of the myriad aspects of CBD. The book includes chapters dealing with COTS (commercial off-the-shelf) components; methodologies for CBD; compositionality, i.e. how to calculate or predict properties of a composite from those of its constituents; component software testing; and grid computing.
Read More

Author: Dave Hendricksen

Publisher: Addison-Wesley Professional

ISBN: 0321717295

Category: Computers

Page: 256

View: 1889

Master the Crucial Non -Technical Skills Every Software Architect Needs! Thousands of software professionals have the necessary technical qualifications to become architects, but far fewer have the crucial non-technical skills needed to get hired and succeed in this role. In today's agile environments, these "soft" skills have grown even more crucial to success as an architect. For many developers, however, these skills don't come naturally-and they're rarely addressed in formal training. Now, long-time software architect Dave Hendricksen helps you fill this gap, supercharge your organizational impact, and quickly move to the next level in your career. In 12 Essential Skills for Software Architects, Hendricksen begins by pinpointing the specific relationship, personal, and business skills that successful architects rely upon. Next, he presents proven methods for systematically developing and sharpening every one of these skills, from negotiation and leadership to pragmatism and vision. From start to finish, this book's practical insights can help you get the architect position you want-and thrive once you have it! The soft skills you need... ...and a coherent framework and practical methodology for mastering them! Relationship skills Leadership, politics, gracious behavior, communication, negotiation Personal skills Context switching, transparency, passion Business skills Pragmatism, vision, business knowledge, innovation
Read More

Leading Security Experts Explain How They Think

Author: Andy Oram,John Viega

Publisher: "O'Reilly Media, Inc."

ISBN: 9780596555542

Category: Computers

Page: 302

View: 5956

Although most people don't give security much attention until their personal or business systems are attacked, this thought-provoking anthology demonstrates that digital security is not only worth thinking about, it's also a fascinating topic. Criminals succeed by exercising enormous creativity, and those defending against them must do the same. Beautiful Security explores this challenging subject with insightful essays and analysis on topics that include: The underground economy for personal information: how it works, the relationships among criminals, and some of the new ways they pounce on their prey How social networking, cloud computing, and other popular trends help or hurt our online security How metrics, requirements gathering, design, and law can take security to a higher level The real, little-publicized history of PGP This book includes contributions from: Peiter "Mudge" Zatko Jim Stickley Elizabeth Nichols Chenxi Wang Ed Bellis Ben Edelman Phil Zimmermann and Jon Callas Kathy Wang Mark Curphey John McManus James Routh Randy V. Sabett Anton Chuvakin Grant Geyer and Brian Dunphy Peter Wayner Michael Wood and Fernando Francisco All royalties will be donated to the Internet Engineering Task Force (IETF).
Read More

Creating and Sustaining Winning Solutions

Author: Luke Hohmann

Publisher: Addison-Wesley Professional

ISBN: 9780132465946

Category: Computers

Page: 352

View: 5274

Successfully managing the relationship between business and technology is a daunting task faced by all companies in the twenty-first century. Beyond Software Architecture is a practical guide to properly managing this mission-critical relationship. In our modern economy, every software decision can have a significant impact on business; conversely, most business decisions will influence a software application's viability. This book contains keen insights and useful lessons about creating winning software solutions in the context of a real-world business. Software should be designed to deliver value to an organization, but all too often it brings turmoil instead. Powerful applications are available in the marketplace, but purchasing or licensing these technologies does not guarantee success. Winning solutions must be properly integrated into an organization's infrastructure. Software expert Luke Hohmann teaches you the business ramifications of software-architecture decisions, and further instructs you on how to understand and embrace the business issues that must be resolved to achieve software success. Using this book as a roadmap, business managers and development teams can safely navigate the minefield of important decisions that they face on a regular basis. The resulting synergy between business and technology will allow you to create winning technology solutions, and ensure your organization's success--now and in the future.
Read More

Author: Len Bass,Paul Clements,Rick Kazman

Publisher: Addison-Wesley Professional

ISBN: 9780321154958

Category: Computers

Page: 528

View: 4788

• •A thorough introduction to all aspects of software architecture •Shows how the knowledge and application of software architecture can help an organisation achieve the quality goals of its systems •The field of software architecture continues to grow, and this book is the leading introduction
Read More

Author: C. Meier

Publisher: N.A

ISBN: 9780692861448

Category:

Page: 178

View: 2540

Twelve year old Eliza discovers she has the power to change a machine's code just by touch. When the government's evil artificial intelligence takes her brother away, she uses her new ability to fight back. Now she's on the run as an outlaw and her only hope to save him is to find the Underground Programmer's Academy. She needs to learn how to control her powers and fast. If she doesn't get her brother back in time, his brain could be scrambled forever. Together, with her friends, Eliza sets out on an adventure that involves learning code, fighting robots, and finding out how strong she can be.
Read More

Collective Wisdom from the Experts

Author: Barbee Davis

Publisher: "O'Reilly Media, Inc."

ISBN: 1449379567

Category: Computers

Page: 252

View: 691

If the projects you manage don't go as smoothly as you'd like, 97 Things Every Project Manager Should Know offers knowledge that's priceless, gained through years of trial and error. This illuminating book contains 97 short and extremely practical tips -- whether you're dealing with software or non-IT projects -- from some of the world's most experienced project managers and software developers. You'll learn how these professionals have dealt with everything from managing teams to handling project stakeholders to runaway meetings and more. While this book highlights software projects, its wise axioms contain project management principles applicable to projects of all types in any industry. You can read the book end to end or browse to find topics that are of particular relevance to you. 97 Things Every Project Manager Should Know is both a useful reference and a source of inspiration. Among the 97 practical tips: "Clever Code Is Hard to Maintain...and Maintenance Is Everything" -- David Wood, Partner, Zepheira "Every Project Manager Is a Contract Administrator" -- Fabio Teixeira de Melo, Planning Manager, Construtora Norberto Odebrecht "Can Earned Value and Velocity Coexist on Reports?" -- Barbee Davis, President, Davis Consulting "How Do You Define 'Finished'"? -- Brian Sam-Bodden, author, software architect "The Best People to Create the Estimates Are the Ones Who Do the Work" -- Joe Zenevitch, Senior Project Manager, ThoughtWorks "How to Spot a Good IT Developer" -- James Graham, independent management consultant "One Deliverable, One Person" -- Alan Greenblatt, CEO, Sciova
Read More

The Open Source Perspective

Author: Diomidis Spinellis

Publisher: Addison-Wesley Professional

ISBN: 9780672333705

Category: Computers

Page: 528

View: 7035

If you are a programmer, you need this book. You've got a day to add a new feature in a 34,000-line program: Where do you start? Page 333 How can you understand and simplify an inscrutable piece of code? Page 39 Where do you start when disentangling a complicated build process? Page 167 How do you comprehend code that appears to be doing five things in parallel? Page 132 You may read code because you have to--to fix it, inspect it, or improve it. You may read code the way an engineer examines a machine--to discover what makes it tick. Or you may read code because you are scavenging--looking for material to reuse. Code-reading requires its own set of skills, and the ability to determine which technique you use when is crucial. In this indispensable book, Diomidis Spinellis uses more than 600 real-world examples to show you how to identify good (and bad) code: how to read it, what to look for, and how to use this knowledge to improve your own code. Fact: If you make a habit of reading good code, you will write better code yourself.
Read More

Collective Wisdom from the Experts

Author: Kevlin Henney

Publisher: "O'Reilly Media, Inc."

ISBN: 9781449388676

Category: Computers

Page: 258

View: 6938

Tap into the wisdom of experts to learn what every programmer should know, no matter what language you use. With the 97 short and extremely useful tips for programmers in this book, you'll expand your skills by adopting new approaches to old problems, learning appropriate best practices, and honing your craft through sound advice. With contributions from some of the most experienced and respected practitioners in the industry--including Michael Feathers, Pete Goodliffe, Diomidis Spinellis, Cay Horstmann, Verity Stob, and many more--this book contains practical knowledge and principles that you can apply to all kinds of projects. A few of the 97 things you should know: "Code in the Language of the Domain" by Dan North "Write Tests for People" by Gerard Meszaros "Convenience Is Not an -ility" by Gregor Hohpe "Know Your IDE" by Heinz Kabutz "A Message to the Future" by Linda Rising "The Boy Scout Rule" by Robert C. Martin (Uncle Bob) "Beware the Share" by Udi Dahan
Read More

Machine Gambling in Las Vegas

Author: Natasha Dow Schüll

Publisher: Princeton University Press

ISBN: 0691127557

Category: Computers

Page: 442

View: 396

machines stems from the consumer, the product, or the interplay between the two. --
Read More

Exploring the PIC32

Author: Lucio Di Jasio

Publisher: Elsevier

ISBN: 9780080560106

Category: Technology & Engineering

Page: 552

View: 4519

*Just months after the introduction of the new generation of 32-bit PIC microcontrollers, a Microchip insider and acclaimed author takes you by hand at the exploration of the PIC32 *Includes handy checklists to help readers perform the most common programming and debugging tasks The new 32-bit microcontrollers bring the promise of more speed and more performance while offering an unprecedented level of compatibility with existing 8 and 16-bit PIC microcontrollers. In sixteen engaging chapters, using a parallel track to his previous title dedicated to 16-bit programming, the author puts all these claims to test while offering a gradual introduction to the development and debugging of embedded control applications in C. Author Lucio Di Jasio, a PIC and embedded control expert, offers unique insight into the new 32-bit architecture while developing a number of projects of growing complexity. Experienced PIC users and newcomers to the field alike will benefit from the text’s many thorough examples which demonstrate how to nimbly side-step common obstacles, solve real-world design problems efficiently and optimize code using the new PIC32 features and peripheral set. You will learn about: *basic timing and I/O operation *debugging methods with the MPLAB SIM *simulator and ICD tools *multitasking using the PIC32 interrupts *all the new hardware peripherals *how to control LCD displays *experimenting with the Explorer16 board and *the PIC32 Starter Kit *accessing mass-storage media *generating audio and video signals *and more! TABLE OF CONTENTS Day 1 And the adventure begins Day 2 Walking in circles Day 3 Message in a Bottle Day 4 NUMB3RS Day 5 Interrupts Day 6 Memory Part 2 Experimenting Day 7 Running Day 8 Communication Day 9 Links Day 10 Glass = Bliss Day 11 It’s an analog world Part 3 Expansion Day 12 Capturing User Inputs Day 13 UTube Day 14 Mass Storage Day 15 File I/O Day 16 Musica Maestro! 32-bit microcontrollers are becoming the technology of choice for high performance embedded control applications including portable media players, cell phones, and GPS receivers. Learn to use the C programming language for advanced embedded control designs and/or learn to migrate your applications from previous 8 and 16-bit architectures.
Read More

A Risk-Driven Approach

Author: George Fairbanks

Publisher: Marshall & Brainerd

ISBN: 0984618104

Category: Computers

Page: 376

View: 2140

This is a practical guide for software developers, and different than other software architecture books. Here's why: It teaches risk-driven architecting. There is no need for meticulous designs when risks are small, nor any excuse for sloppy designs when risks threaten your success. This book describes a way to do just enough architecture. It avoids the one-size-fits-all process tar pit with advice on how to tune your design effort based on the risks you face. It democratizes architecture. This book seeks to make architecture relevant to all software developers. Developers need to understand how to use constraints as guiderails that ensure desired outcomes, and how seemingly small changes can affect a system's properties. It cultivates declarative knowledge. There is a difference between being able to hit a ball and knowing why you are able to hit it, what psychologists refer to as procedural knowledge versus declarative knowledge. This book will make you more aware of what you have been doing and provide names for the concepts. It emphasizes the engineering. This book focuses on the technical parts of software development and what developers do to ensure the system works not job titles or processes. It shows you how to build models and analyze architectures so that you can make principled design tradeoffs. It describes the techniques software designers use to reason about medium to large sized problems and points out where you can learn specialized techniques in more detail. It provides practical advice. Software design decisions influence the architecture and vice versa. The approach in this book embraces drill-down/pop-up behavior by describing models that have various levels of abstraction, from architecture to data structure design.
Read More

Organization, Planning, and Decision Making

Author: Steven Sinofsky,Marco Iansiti

Publisher: John Wiley & Sons

ISBN: 047059005X

Category: Business & Economics

Page: 288

View: 4210

Learn from the concepts, capabilities, processes, and behaviors that aligned around one strategy with the hard-won, first-person wisdom found in One Strategy. Challenging traditional views of strategy and operational execution, this book-written by Microsoft executive Steven Sinofsky with Harvard Business School professor Marco Iansiti-describes how you can drive innovation by connecting the potential of strategic opportunities to the impact of operational execution. Lessons from the unique combination of real-world experience managing a large scale organization with academic research in strategy and innovation Reveals what it takes to align a complex organization around one strategy, manage its execution, and reach for "strategic integrity" Written by Microsoft executive Steven Sinofsky with Harvard Business School professor Marco Iansiti-a combined forty years of management and research experience A unique perspective on strategy development, alignment, and execution Drawn from Sinofsky's internal Microsoft blog where he communicated some of the management processes the team put to work while developing a 4,000 person, multi-year project-Microsoft Windows 7-One Strategy shares the hard-won insights you can use to successfully make the leap from strategy to execution.
Read More

Technology and the Threat of a Jobless Future

Author: Martin Ford

Publisher: Basic Books

ISBN: 0465040675

Category: Business & Economics

Page: 352

View: 3112

Winner of the 2015 FT & McKinsey Business Book of the Year Award A New York Times Bestseller Top Business Book of 2015 at Forbes One of NBCNews.com 12 Notable Science and Technology Books of 2015 What are the jobs of the future? How many will there be? And who will have them? As technology continues to accelerate and machines begin taking care of themselves, fewer people will be necessary. Artificial intelligence is already well on its way to making "good jobs" obsolete: many paralegals, journalists, office workers, and even computer programmers are poised to be replaced by robots and smart software. As progress continues, blue and white collar jobs alike will evaporate, squeezing working- and middle-class families ever further. At the same time, households are under assault from exploding costs, especially from the two major industries-education and health care-that, so far, have not been transformed by information technology. The result could well be massive unemployment and inequality as well as the implosion of the consumer economy itself. The past solutions to technological disruption, especially more training and education, aren't going to work. We must decide, now, whether the future will see broad-based prosperity or catastrophic levels of inequality and economic insecurity. Rise of the Robots is essential reading to understand what accelerating technology means for our economic prospects-not to mention those of our children-as well as for society as a whole.
Read More

The Open Source Perspective

Author: Diomidis Spinellis

Publisher: Adobe Press

ISBN: 9780768685121

Category: Computers

Page: 608

View: 5678

Page 26: How can I avoid off-by-one errors? Page 143: Are Trojan Horse attacks for real? Page 158: Where should I look when my application can't handle its workload? Page 256: How can I detect memory leaks? Page 309: How do I target my application to international markets? Page 394: How should I name my code's identifiers? Page 441: How can I find and improve the code coverage of my tests? Diomidis Spinellis' first book, Code Reading, showed programmers how to understand and modify key functional properties of software. Code Quality focuses on non-functional properties, demonstrating how to meet such critical requirements as reliability, security, portability, and maintainability, as well as efficiency in time and space. Spinellis draws on hundreds of examples from open source projects--such as the Apache web and application servers, the BSD Unix systems, and the HSQLDB Java database--to illustrate concepts and techniques that every professional software developer will be able to appreciate and apply immediately. Complete files for the open source code illustrated in this book are available online at: http://www.spinellis.gr/codequality/
Read More