To Engineer Is Human: The Role of Failure in Successful Design


Henry Petroski - 1985
    More than a series of fascinating case studies, To Engineer Is Human is a work that looks at our deepest notions of progress and perfection, tracing the fine connection between the quantifiable realm of science and the chaotic realities of everyday life."Alert, inquisitive, unspecialized, wholly human...refreshingly eclectic." --The Spectator"Henry Petroski is an ardent engineer, and if he writes more good books like this, he might find himself nominated to become the meistersinger of the guild. [This is] a refreshing plunge into the dynamics of the engineering ethos...as straightforward as an I-beam."--Science

The Humane Interface: New Directions for Designing Interactive Systems


Jef Raskin - 2000
    The Humane Interface is a gourmet dish from a master chef. Five mice! --Jakob Nielsen, Nielsen Norman Group Author of Designing Web Usability: The Practice of Simplicity This unique guide to interactive system design reflects the experience and vision of Jef Raskin, the creator of the Apple Macintosh. Other books may show how to use todays widgets and interface ideas effectively. Raskin, however, demonstrates that many current interface paradigms are dead ends, and that to make computers significantly easier to use requires new approaches. He explains how to effect desperately needed changes, offering a wealth of innovative and specific interface ideas for software designers, developers, and product managers. The Apple Macintosh helped to introduce a previous revolution in computer interface design, drawing on the best available technology to establish many of the interface techniques and methods now universal in the computer industry. With this book, Raskin proves again both his farsightedness and his practicality. He also demonstrates how design ideas must be bui

Mental Models: Aligning Design Strategy with Human Behavior


Indi Young - 2008
    One of the best ways is to understand users' reasons for doing things. Mental Models gives you the tools to help you grasp, and design for, those reasons. Adaptive Path co-founder Indi Young has written a roll-up-your-sleeves book for designers, managers, and anyone else interested in making design strategic, and successful.

Design Justice: Community-Led Practices to Build the Worlds We Need


Sasha Costanza-Chock - 2020
    It has emerged from a growing community of designers in various fields who work closely with social movements and community-based organizations around the world.This book explores the theory and practice of design justice, demonstrates how universalist design principles and practices erase certain groups of people—specifically, those who are intersectionally disadvantaged or multiply burdened under the matrix of domination (white supremacist heteropatriarchy, ableism, capitalism, and settler colonialism)—and invites readers to “build a better world, a world where many worlds fit; linked worlds of collective liberation and ecological sustainability.” Along the way, the book documents a multitude of real-world community-led design practices, each grounded in a particular social movement. Design Justice goes beyond recent calls for design for good, user-centered design, and employment diversity in the technology and design professions; it connects design to larger struggles for collective liberation and ecological survival.

A Web for Everyone: Designing Accessible User Experiences


Sarah Horton - 2013
    Rooted in universal design principles, this book provides solutions: practical advice and examples of how to create sites that everyone can use.

The Human Use of Human Beings: Cybernetics and Society


Norbert Wiener - 1949
    Norbert Wiener's classic is one in that small company. Founder of the science of cybernetics—the study of the relationship between computers and the human nervous system—Wiener was widely misunderstood as one who advocated the automation of human life. As this book reveals, his vision was much more complex and interesting. He hoped that machines would release people from relentless and repetitive drudgery in order to achieve more creative pursuits. At the same time he realized the danger of dehumanizing and displacement. His book examines the implications of cybernetics for education, law, language, science, technology, as he anticipates the enormous impact—in effect, a third industrial revolution—that the computer has had on our lives.

Cradle to Cradle: Remaking the Way We Make Things


William McDonough - 2002
    But as architect William McDonough and chemist Michael Braungart point out in this provocative, visionary book, such an approach only perpetuates the one-way, "cradle to grave" manufacturing model, dating to the Industrial Revolution, that creates such fantastic amounts of waste and pollution in the first place. Why not challenge the belief that human industry must damage the natural world? In fact, why not take nature itself as our model for making things? A tree produces thousands of blossoms in order to create another tree, yet we consider its abundance not wasteful but safe, beautiful, and highly effective.Waste equals food. Guided by this principle, McDonough and Braungart explain how products can be designed from the outset so that, after their useful lives, they will provide nourishment for something new. They can be conceived as "biological nutrients" that will easily reenter the water or soil without depositing synthetic materials and toxins. Or they can be "technical nutrients" that will continually circulate as pure and valuable materials within closed-loop industrial cycles, rather than being "recycled" -- really, downcycled -- into low-grade materials and uses. Drawing on their experience in (re)designing everything from carpeting to corporate campuses, McDonough and Braungart make an exciting and viable case for putting eco-effectiveness into practice, and show how anyone involved with making anything can begin to do as well.

The Messy Middle: Finding Your Way Through the Hardest and Most Crucial Part of Any Bold Venture


Scott Belsky - 2018
    Creating something from nothing is an unpredictable journey. The first mile births a new idea into existence, and the final mile is all about letting go. We love talking about starts and finishes, even though the middle stretch is the most important and often the most ignored and misunderstood.    Broken into three sections with 100+ lessons, this no-nonsense book will help you: • Endure the roller coaster of successes and failures by strengthening your resolve, embracing the long-game, and short-circuiting your reward system to get to the finish line. • Optimize what’s working so you can improve the way you hire, better manage your team, and meet your customers’ needs. • Finish strong and avoid the pitfalls many entrepreneurs make, so you can overcome resistance, exit gracefully, and continue onto your next creative endeavor with ease. With insightful interviews from today’s leading entrepreneurs, artists, writers, and executives, as well as Belsky’s own experience working with companies like Airbnb, Pinterest, Uber, and sweetgreen, The Messy Middle will outfit you to find your way through the hardest parts of any bold project or new venture.

UML 2 and the Unified Process: Practical Object-Oriented Analysis and Design


Jim Arlow - 2001
    Even for people not working with the Unified Process, the book is still of great use. UML 2 and the Unified Process, Second Edition is a must-read for every UML 2 beginner and a helpful guide and reference for the experienced practitioner."--Roland Leibundgut, Technical Director, Zuehlke Engineering Ltd."This book is a good starting point for organizations and individuals who are adopting UP and need to understand how to provide visualization of the different aspects needed to satisfy it. "--Eric Naiburg, Market Manager, Desktop Products, IBM Rational SoftwareThis thoroughly revised edition provides an indispensable and practical guide to the complex process of object-oriented analysis and design using UML 2. It describes how the process of OO analysis and design fits into the software development lifecycle as defined by the Unified Process (UP). UML 2 and the Unified Process contains a wealth of practical, powerful, and useful techniques that you can apply immediately. As you progress through the text, you will learn OO analysis and design techniques, UML syntax and semantics, and the relevant aspects of the UP. The book provides you with an accurate and succinct summary of both UML and UP from the point of view of the OO analyst and designer.This book providesChapter roadmaps, detailed diagrams, and margin notes allowing you to focus on your needs Outline summaries for each chapter, making it ideal for revision, and a comprehensive index that can be used as a reference New to this edition:Completely revised and updated for UML 2 syntax Easy to understand explanations of the new UML 2 semantics More real-world examples A new section on the Object Constraint Language (OCL) Introductory material on the OMG's Model Driven Architecture (MDA) The accompanying website providesA complete example of a simple e-commerce system Open source tools for requirements engineering and use case modeling Industrial-strength UML course materials based on the book

Working with UNIX Processes


Jesse Storimer - 2011
    Want to impress your coworkers and write the fastest, most efficient, stable code you ever have? Don't reinvent the wheel. Reuse decades of research into battle-tested, highly optimized, and proven techniques available on any Unix system.This book will teach you what you need to know so that you can write your own servers, debug your entire stack when things go awry, and understand how things are working under the hood.http://www.jstorimer.com/products/wor...

Implementing Domain-Driven Design


Vaughn Vernon - 2013
    Vaughn Vernon couples guided approaches to implementation with modern architectures, highlighting the importance and value of focusing on the business domain while balancing technical considerations.Building on Eric Evans’ seminal book, Domain-Driven Design, the author presents practical DDD techniques through examples from familiar domains. Each principle is backed up by realistic Java examples–all applicable to C# developers–and all content is tied together by a single case study: the delivery of a large-scale Scrum-based SaaS system for a multitenant environment.The author takes you far beyond “DDD-lite” approaches that embrace DDD solely as a technical toolset, and shows you how to fully leverage DDD’s “strategic design patterns” using Bounded Context, Context Maps, and the Ubiquitous Language. Using these techniques and examples, you can reduce time to market and improve quality, as you build software that is more flexible, more scalable, and more tightly aligned to business goals.

Designing for the Digital Age: How to Create Human-Centered Products and Services


Kim Goodwin - 2009
    Designing successful products and services in the digital age requires a multi-disciplinary team with expertise in interaction design, visual design, industrial design, and other disciplines. It also takes the ability to come up with the big ideas that make a desirable product or service, as well as the skill and perseverance to execute on the thousand small ideas that get your design into the hands of users. It requires expertise in project management, user research, and consensus-building. This comprehensive, full-color volume addresses all of these and more with detailed how-to information, real-life examples, and exercises. Topics include assembling a design team, planning and conducting user research, analyzing your data and turning it into personas, using scenarios to drive requirements definition and design, collaborating in design meetings, evaluating and iterating your design, and documenting finished design in a way that works for engineers and stakeholders alike.

User Friendly: How the Hidden Rules of Design Are Changing the Way We Live, Work, and Play


Cliff Kuang - 2019
    Spanning over a century of sweeping changes, from women's rights to the Great Depression to World War II to the rise of the digital era, this book unpacks the ways in which the world has been--and continues to be--remade according to the principles of the once-obscure discipline of user-experience design.In this essential text, Kuang and Fabricant map the hidden rules of the designed world and shed light on how those rules have caused our world to change--an underappreciated but essential history that's pieced together for the first time. Combining the expertise and insight of a leading journalist and a pioneering designer, User Friendly provides a definitive, thoughtful, and practical perspective on a topic that has rapidly gone from arcane to urgent to inescapable. In User Friendly, Kuang and Fabricant tell the whole story for the first time--and you'll never interact with technology the same way again.

Contextual Design: Defining Customer-Centered Systems


Hugh Beyer - 1997
    This is a practical, hands-on guide for anyone trying to design systems that reflect the way customers want to do their work. The authors developed Contextual Design, the method discussed here, through their work with teams struggling to design products and internal systems. In this book, you'll find the underlying principles of the method and how to apply them to different problems, constraints, and organizational situations.Contextual Design enables you to+ gather detailed data about how people work and use systems + develop a coherent picture of a whole customer population + generate systems designs from a knowledge of customer work+ diagram a set of existing systems, showing their relationships, inconsistencies, redundancies, and omissions

System Design Interview – An Insider's Guide


Alex Xu - 2020
    This book provides a step-by-step framework on how to tackle a system design question. It includes many real-world examples to illustrate the systematic approach with detailed steps that you can follow.What’s inside?- An insider’s take on what interviewers really look for and why.- A 4-step framework for solving any system design interview question.- 15 real system design interview questions with detailed solutions.- 188 diagrams to visually explain how different systems work.Table Of ContentsChapter 1: Scale From Zero To Millions Of UsersChapter 2: Back-of-the-envelope EstimationChapter 3: A Framework For System Design InterviewsChapter 4: Design A Rate LimiterChapter 5: Design Consistent HashingChapter 6: Design A Key-value StoreChapter 7: Design A Unique Id Generator In Distributed SystemsChapter 8: Design A Url ShortenerChapter 9: Design A Web CrawlerChapter 10: Design A Notification SystemChapter 11: Design A News Feed SystemChapter 12: Design A Chat SystemChapter 13: Design A Search Autocomplete SystemChapter 14: Design YoutubeChapter 15: Design Google DriveChapter 16: The Learning Continues