Growing Object-Oriented Software, Guided by Tests


Steve Freeman - 2009
    This one's a keeper." --Robert C. Martin "If you want to be an expert in the state of the art in TDD, you need to understand the ideas in this book."--Michael Feathers Test-Driven Development (TDD) is now an established technique for delivering better software faster. TDD is based on a simple idea: Write tests for your code before you write the code itself. However, this simple idea takes skill and judgment to do well. Now there's a practical guide to TDD that takes you beyond the basic concepts. Drawing on a decade of experience building real-world systems, two TDD pioneers show how to let tests guide your development and "grow" software that is coherent, reliable, and maintainable. Steve Freeman and Nat Pryce describe the processes they use, the design principles they strive to achieve, and some of the tools that help them get the job done. Through an extended worked example, you'll learn how TDD works at multiple levels, using tests to drive the features and the object-oriented structure of the code, and using Mock Objects to discover and then describe relationships between objects. Along the way, the book systematically addresses challenges that development teams encounter with TDD--from integrating TDD into your processes to testing your most difficult features. Coverage includes - Implementing TDD effectively: getting started, and maintaining your momentum throughout the project - Creating cleaner, more expressive, more sustainable code - Using tests to stay relentlessly focused on sustaining quality - Understanding how TDD, Mock Objects, and Object-Oriented Design come together in the context of a real software development project - Using Mock Objects to guide object-oriented designs - Succeeding where TDD is difficult: managing complex test data, and testing persistence and concurrency

Green Metropolis: What the City Can Teach the Country About True Sustainability


David Owen - 2009
    Yet residents of compact urban centers, David Owen shows, individually consume less oil, electricity, and water than other Americans. They live in smaller spaces, discard less trash, and, most important of all, spend far less time in automobiles. Residents of Manhattan--the most densely populated place in North America--rank first in public-transit use and last in per-capita greenhouse gas production, and they consume gasoline at a rate that the country as a whole hasn't matched since the mid-1920s, when the most widely owned car in the United States was the Ford Model T. They are also among the only people in the United States for whom walking is still an important means of daily transportation. These achievements are not accidents. Spreading people thinly across the countryside may make them feel green, but it doesn't reduce the damage they do to the environment. In fact, it increases the damage, while also making the problems they cause harder to see and to address. Owen contends that the environmental problem we face, at the current stage of our assault on the world's nonrenewable resources, is not how to make teeming cities more like the pristine countryside. The problem is how to make other settled places more like Manhattan, whose residents presently come closer than any other Americans to meeting environmental goals that all of us, eventually, will have to come to terms with.

Refactoring to Patterns


Joshua Kerievsky - 2004
    In 1999, "Refactoring" revolutionized design by introducing an effective process for improving code. With the highly anticipated " Refactoring to Patterns ," Joshua Kerievsky has changed our approach to design by forever uniting patterns with the evolutionary process of refactoring.This book introduces the theory and practice of pattern-directed refactorings: sequences of low-level refactorings that allow designers to safely move designs to, towards, or away from pattern implementations. Using code from real-world projects, Kerievsky documents the thinking and steps underlying over two dozen pattern-based design transformations. Along the way he offers insights into pattern differences and how to implement patterns in the simplest possible ways.Coverage includes: A catalog of twenty-seven pattern-directed refactorings, featuring real-world code examples Descriptions of twelve design smells that indicate the need for this book s refactorings General information and new insights about patterns and refactoringDetailed implementation mechanics: how low-level refactorings are combined to implement high-level patterns Multiple ways to implement the same pattern and when to use each Practical ways to get started even if you have little experience with patterns or refactoring"Refactoring to Patterns" reflects three years of refinement and the insights of more than sixty software engineering thought leaders in the global patterns, refactoring, and agile development communities. Whether you re focused on legacy or greenfield development, this book will make you a better software designer by helping you learn how to make important design changes safely and effectively. "

Leadership Strategy and Tactics: Field Manual


Jocko Willink - 2020
    In the civilian sector, books offer information on everything from fixing a leaky faucet to developing an effective workout program to cooking a good steak.But what if you are promoted into a new position leading your former peers? What if you don’t get selected for the leadership position you wanted? How do you overcome imposter syndrome, when you aren’t sure you should be leading? As a leader, how do you judiciously dole out punishment? What about reward? How do you build trust with your both your superiors and your subordinates? How do you deliver truthful criticism up and down the chain of command in a tactful and positive way?These are all questions about leadership—the most complex of all human endeavors. And while there are books out there that provide solid leadership principles, books like Extreme Ownership and The Dichotomy of Leadership, there is no leadership field manual that provides a direct, situational, pragmatic how-to guide that anyone can instantly put to use.Until now. Leadership Strategy and Tactics explains how to take leadership theory, quickly translate that theory into applicable strategy, and then put leadership into action at a tactical level. This book is the solution that leaders at every level need—not just to understand the leadership game, but also how to play the leadership game, and win it.

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 Craft of Research


Wayne C. Booth - 1995
    Seasoned researchers and educators Gregory G. Colomb and Joseph M. Williams present an updated third edition of their classic handbook, whose first and second editions were written in collaboration with the late Wayne C. Booth. The Craft of Research explains how to build an argument that motivates readers to accept a claim; how to anticipate the reservations of readers and to respond to them appropriately; and how to create introductions and conclusions that answer that most demanding question, “So what?” The third edition includes an expanded discussion of the essential early stages of a research task: planning and drafting a paper. The authors have revised and fully updated their section on electronic research, emphasizing the need to distinguish between trustworthy sources (such as those found in libraries) and less reliable sources found with a quick Web search. A chapter on warrants has also been thoroughly reviewed to make this difficult subject easier for researchers Throughout, the authors have preserved the amiable tone, the reliable voice, and the sense of directness that have made this book indispensable for anyone undertaking a research project.

101 Things I Learned in Engineering School


John Kuprenas - 2013
    Far from a dry, nuts-and-bolts exposition, however, 101 THINGS I LEARNED® IN ENGINEERING SCHOOL probes real-world examples to show how the engineer's way of thinking can-and sometimes cannot-inform our understanding of how things work. Questions from the simple to the profound are illuminated throughout: Why shouldn't soldiers march across a bridge? Why do buildings want to float and cars want to fly? What is the difference between thinking systemically and thinking systematically? How can engineering solutions sympathize with the natural environment? Presented in the familiar, illustrated format of the popular 101 THINGS I LEARNED® series, 101 THINGS I LEARNED® IN ENGINEERING SCHOOL offers an informative resource for students, general readers, and even experienced engineers, who will discover within many provocative new insights into familiar principles.

Golden Gates: Fighting for Housing in America


Conor Dougherty - 2020
    Today, however, punishing rents and the increasingly prohibitive cost of ownership have turned housing into the foremost symbol of inequality and an economy gone wrong. Nowhere is this more visible than in the San Francisco Bay Area, where fleets of private buses ferry software engineers past the tarp-and-plywood shanties where the homeless make their homes. The adage that California is a glimpse of the nation's future has become a cautionary tale.With propulsive storytelling and ground-level reporting, New York Times journalist Conor Dougherty chronicles America's housing crisis from its West Coast epicenter, peeling back the decades of history and economic forces that brought us here and taking readers inside the activist uprisings that have risen in tandem with housing costs. To tell this new story of housing, Dougherty follows a struggling math teacher who builds a political movement dedicated to ending single-family-house neighborhoods. A teenaged girl who leads her apartment complex against their rent-raising landlord. A nun who tries to outmaneuver private equity investors by amassing a multimillion-dollar portfolio of affordable homes. A suburban bureaucrat who roguishly embraces density in response to the threat of climate change. A developer who manufactures homeless housing on an assembly line.Sweeping in scope and intimate in detail, Golden Gates definitively captures a fundamental political realignment in America as it plays out during a moment of rapid technological and social change.

Undaunted Study Guide: Daring to Do What God Calls You to Do


Christine Caine - 2012
    Be the HOPE. Be the CHANGE this world needs!Sessions include: The CALLBe the LOVEBe the HOPEBe the CHANGEThe CHALLENGEDesigned for use with the Undaunted Video Study (sold separately).

Small Is Beautiful: Economics as if People Mattered


Ernst F. Schumacher - 1973
    Schumacher's riveting, richly researched statement on sustainability has become more relevant and vital with each year since its initial groundbreaking publication during the 1973 energy crisis. A landmark statement against "bigger is better" industrialism, Schumacher's Small Is Beautiful paved the way for twenty-first century books on environmentalism and economics, like Jeffrey Sachs's The End of Poverty, Paul Hawken's Natural Capitalism, Mohammad Yunis's Banker to the Poor, and Bill McKibben's Deep Economy. This timely reissue offers a crucial message for the modern world struggling to balance economic growth with the human costs of globalization.