Domain-Driven Design: Tackling Complexity in the Heart of Software


Eric Evans - 2003
    "His book is very compatible with XP. It is not about drawing pictures of a domain; it is about how you think of it, the language you use to talk about it, and how you organize your software to reflect your improving understanding of it. Eric thinks that learning about your problem domain is as likely to happen at the end of your project as at the beginning, and so refactoring is a big part of his technique. "The book is a fun read. Eric has lots of interesting stories, and he has a way with words. I see this book as essential reading for software developers--it is a future classic." --Ralph Johnson, author of Design Patterns "If you don't think you are getting value from your investment in object-oriented programming, this book will tell you what you've forgotten to do. "Eric Evans convincingly argues for the importance of domain modeling as the central focus of development and provides a solid framework and set of techniques for accomplishing it. This is timeless wisdom, and will hold up long after the methodologies du jour have gone out of fashion." --Dave Collins, author of Designing Object-Oriented User Interfaces "Eric weaves real-world experience modeling--and building--business applications into a practical, useful book. Written from the perspective of a trusted practitioner, Eric's descriptions of ubiquitous language, the benefits of sharing models with users, object life-cycle management, logical and physical application structuring, and the process and results of deep refactoring are major contributions to our field." --Luke Hohmann, author of Beyond Software Architecture "This book belongs on the shelf of every thoughtful software developer." --Kent Beck "What Eric has managed to capture is a part of the design process that experienced object designers have always used, but that we have been singularly unsuccessful as a group in conveying to the rest of the industry. We've given away bits and pieces of this knowledge...but we've never organized and systematized the principles of building domain logic. This book is important." --Kyle Brown, author of Enterprise Java(TM) Programming with IBM(R) WebSphere(R) The software development community widely acknowledges that domain modeling is central to software design. Through domain models, software developers are able to express rich functionality and translate it into a software implementation that truly serves the needs of its users. But despite its obvious importance, there are few practical resources that explain how to incorporate effective domain modeling into the software development process. Domain-Driven Design fills that need. This is not a book about specific technologies. It offers readers a systematic approach to domain-driven design, presenting an extensive set of design best practices, experience-based techniques, and fundamental principles that facilitate the development of software projects facing complex domains. Intertwining design and development practice, this book incorporates numerous examples based on actual projects to illustrate the application of domain-driven design to real-world software development. Readers learn how to use a domain model to make a complex development effort more focused and dynamic. A core of best practices and standard patterns provides a common language for the development team. A shift in emphasis--refactoring not just the code but the model underlying the code--in combination with the frequent iterations of Agile development leads to deeper insight into domains and enhanced communication between domain expert and programmer. Domain-Driven Design then builds on this foundation, and addresses modeling and design for complex systems and larger organizations.Specific topics covered include:Getting all team members to speak the same language Connecting model and implementation more deeply Sharpening key distinctions in a model Managing the lifecycle of a domain object Writing domain code that is safe to combine in elaborate ways Making complex code obvious and predictable Formulating a domain vision statement Distilling the core of a complex domain Digging out implicit concepts needed in the model Applying analysis patterns Relating design patterns to the model Maintaining model integrity in a large system Dealing with coexisting models on the same project Organizing systems with large-scale structures Recognizing and responding to modeling breakthroughs With this book in hand, object-oriented developers, system analysts, and designers will have the guidance they need to organize and focus their work, create rich and useful domain models, and leverage those models into quality, long-lasting software implementations.

The 5 Levels of Leadership: Proven Steps to Maximize Your Potential


John C. Maxwell - 2011
    In fact, being chosen for a position is only the first of the five levels every effective leader achieves. To become more than "the boss" people follow only because they are required to, you have to master the ability to invest in people and inspire them. To grow further in your role, you must achieve results and build a team that produces. You need to help people to develop their skills to become leaders in their own right. And if you have the skill and dedication, you can reach the pinnacle of leadership—where experience will allow you to extend your influence beyond your immediate reach and time for the benefit of others.The 5 Levels of Leadership are:1. Position—People follow because they have to.2. Permission—People follow because they want to.3. Production—People follow because of what you have done for the organization.4. People Development—People follow because of what you have done for them personally.5. Pinnacle—People follow because of who you are and what you represent.Through humor, in-depth insight, and examples, internationally recognized leadership expert John C. Maxwell describes each of these stages of leadership. He shows you how to master each level and rise up to the next to become a more influential, respected, and successful leader.

Release It!: Design and Deploy Production-Ready Software (Pragmatic Programmers)


Michael T. Nygard - 2007
    Did you design your system to survivef a sudden rush of visitors from Digg or Slashdot? Or an influx of real world customers from 100 different countries? Are you ready for a world filled with flakey networks, tangled databases, and impatient users?If you're a developer and don't want to be on call for 3AM for the rest of your life, this book will help.In Release It!, Michael T. Nygard shows you how to design and architect your application for the harsh realities it will face. You'll learn how to design your application for maximum uptime, performance, and return on investment.Mike explains that many problems with systems today start with the design.

29 Leadership Secrets from Jack Welch


Robert Slater - 2002
    29 Leadership Secrets from Jack Welch follows in Welch's footsteps, boiling the legendary CEO's leadership successes down to 29 strategies that made GE the world's most competitive company­­and Welch the world's most successful and admired CEO.This all-in-one Welch reference updates material from Robert Slater's bestselling Get Better or Get Beaten, and is today's ultimate fast-paced, no-nonsense handbook on the ways of Jack Welch. It taps into the heart of Welch's courage, innovation, and leadership success by examining simple leadership secrets that include:Managing less is managing betterMake quality the job of every employeeHave global brains and vision

Love 'Em or Lose 'Em: Getting Good People to Stay


Beverly Kaye - 2003
    And with so many surveys reporting that employees are unhappy and not working up to their full potential, engagement is a second serious and costly issue. The latest edition of this Wall Street Journal bestseller offers twenty-six simple strategies—from A to Z—that managers can use to address their employees’ real concerns and keep them engaged. The fifth edition has been revised and updated throughout and includes many more international examples, reflecting the fact that Love ’Em or Lose ’Em is available in twenty-two languages, from Albanian and Arabic to Thai and Turkish. Its message is truly one that spans continents and cultures.

The One-Page Project Manager: Communicate and Manage Any Project with a Single Sheet of Paper


Clark A. Campbell - 2006
    This practical guide will save time and effort, helping you identify the vital parts of a project and communicate those parts and duties to other team members.

The PMP Exam: How to Pass on Your First Try


Andy Crowe - 2002
    Studying for the Project Management Professional (PMP®) certification exam can take time and effort, but knowing what to study should be effortless. That’s where this book comes in! A complete study guide for the PMP certification exam, Andy Crowe’s The PMP Exam: How to Pass on Your First Try, 6th edition provides all the information project managers need to thoroughly prepare for and pass the test. This comprehensive study resource includes: All the processes, inputs, tools, and outputs that will be tested Insider secrets, test tricks and tips Links to 60 videos with Andy explaining concepts Over 400 practice exam questions including end of chapter quizzes and a simulated final exam Meaningful exercises designed to strengthen mastery of key concepts Dedicated margin space study notes One week subscription to InSite, Velociteach’s e-learning portal, with additional content including an extra 100 simulated practice exam questions Glossary of terms and definitions in back of book for reference The PMP Exam: How to Pass on Your First Try is clearly organized and presents the material in an easily understandable format. All of the concepts, and every process, input, tool and technique, and output is clearly explained. The most complete, concise, and up-to-date study resource, Andy’s book cuts down on the difficulty factors in obtaining the PMP certification and helps candidates pass the exam on the FIRST try.

Site Reliability Engineering: How Google Runs Production Systems


Betsy Beyer - 2016
    So, why does conventional wisdom insist that software engineers focus primarily on the design and development of large-scale computing systems?In this collection of essays and articles, key members of Google's Site Reliability Team explain how and why their commitment to the entire lifecycle has enabled the company to successfully build, deploy, monitor, and maintain some of the largest software systems in the world. You'll learn the principles and practices that enable Google engineers to make systems more scalable, reliable, and efficient--lessons directly applicable to your organization.This book is divided into four sections: Introduction--Learn what site reliability engineering is and why it differs from conventional IT industry practicesPrinciples--Examine the patterns, behaviors, and areas of concern that influence the work of a site reliability engineer (SRE)Practices--Understand the theory and practice of an SRE's day-to-day work: building and operating large distributed computing systemsManagement--Explore Google's best practices for training, communication, and meetings that your organization can use

Crossing the Chasm: Marketing and Selling High-Tech Products to Mainstream Customers


Geoffrey A. Moore - 2006
    Crossing the Chasm has become the bible for bringing cutting-edge products to progressively larger markets. This edition provides new insights into the realities of high-tech marketing, with special emphasis on the Internet. It's essential reading for anyone with a stake in the world's most exciting marketplace.

Cracking the PM Interview: How to Land a Product Manager Job in Technology


Gayle Laakmann McDowell - 2013
    Cracking the PM Interview is a comprehensive book about landing a product management role in a startup or bigger tech company. Learn how the ambiguously-named "PM" (product manager / program manager) role varies across companies, what experience you need, how to make your existing experience translate, what a great PM resume and cover letter look like, and finally, how to master the interview: estimation questions, behavioral questions, case questions, product questions, technical questions, and the super important "pitch."

The Pragmatic Programmer: From Journeyman to Master


Andy Hunt - 1999
    It covers topics ranging from personal responsibility and career development to architectural techniques for keeping your code flexible and easy to adapt and reuse. Read this book, and you'll learn how toFight software rot; Avoid the trap of duplicating knowledge; Write flexible, dynamic, and adaptable code; Avoid programming by coincidence; Bullet-proof your code with contracts, assertions, and exceptions; Capture real requirements; Test ruthlessly and effectively; Delight your users; Build teams of pragmatic programmers; and Make your developments more precise with automation. Written as a series of self-contained sections and filled with entertaining anecdotes, thoughtful examples, and interesting analogies, The Pragmatic Programmer illustrates the best practices and major pitfalls of many different aspects of software development. Whether you're a new coder, an experienced programmer, or a manager responsible for software projects, use these lessons daily, and you'll quickly see improvements in personal productivity, accuracy, and job satisfaction. You'll learn skills and develop habits and attitudes that form the foundation for long-term success in your career. You'll become a Pragmatic Programmer.

The New Kingmakers: How Developers Conquered the World


Stephen O’Grady - 2013
    In a 1995 interview, the late Steve Jobs claimed that the secret to his and Apple’s success was talent. “We’ve gone to exceptional lengths to hire the best people,” he said, believing that the talented resource was twenty-five times more valuable than an average alternative. For Microsoft founder Bill Gates, the multiple was even higher:A great lathe operator commands several times the wage of an average lathe operator, but a great writer of software code is worth 10,000 times the price of an average software writer.While the actual number might be up for debate, the importance of technical talent is not. The most successful companies today are those that understand the strategic role that developers will play in their success or failure. Not just successful technology companies – virtually every company today needs a developer strategy. There’s a reason that ESPN and Sears have rolled out API programs, that companies are being bought not for their products but their people. The reason is that developers are the most valuable resource in business.How did we get here? How did developers become the most important constituency in business seemingly overnight? The New Kingmakers explores the rise of the developer class, its implications and provides suggestions for navigating the new developer-centric landscape.

Hundred Percenters: Challenge Your Employees to Give It Their All, and They'll Give You Even More


Mark Murphy - 2009
    Managers will learn to recognize their leadership style and understand how they, too, can become Hundred Percenters." Laura Christiansen, Vice President Human Resources, VTech Communications, Inc."Heavily-researched and loaded with tools and examples, this book shows you how to challenge your employees to achieve the kind of extraordinary results and innovations that every CEO dreams about. Every leader needs to read this book!"Ned Fitch, CEO, Kalahari Tea"Murphy finds that most workplaces are brimming with untapped talent. Only it's suppressed by goal-setting that discourages big ideas and leaders who focus on happiness rather than greatness.""Training Magazine"We've all heard the saying that a happy employee is a motivated employee. But what if that's not true?Leadership IQ CEO Mark Murphy says the "happy employee" philosophy doesn't work. A study of more than 500,000 leaders and employees shows that despite the billions of dollars organizations spend to satisfy and engage workers, 72% of employees admit they're still not giving their best effort at work. Rather, it's leaders who focus on making their people great--not happy--who inspire Hundred Percenter performance.If you talk to the employees behind today's great innovations, you're unlikely to hear, "I was inspired by a boss who coddles me." Instead you'd probably hear, "My boss challenges me and pushes me past my limits." Most workplaces are brimming with untapped talent-- only it's suppressed by leaders who fail to connect with and challenge employees to unleash their true potential.Here are just a few of the big ideas in "Hundred Percenters" The harder the goals you set, the better your employees will perform You should never use a Compliment Sandwich to deliver feedback Talented Terrors--people with great skills and a bad attitude--can destroy your company culture Before you can start motivating Hundred Percenters, you have to stop demotivating them You should never ask your employees if they're "satisfied"This groundbreaking book debunks management fads that don't apply to today's workplace and provides the facts, theories, and direction you need to become a 100% Leader. Apply Murphy's leadership lessons and you'll see innovation, productivity, and profits soar, while employee turnover rates plummet. "Hundred Percenters" will bring out the best in your workforce.

Ship It!


Jared Richardson - 2005
    You'll get quick, easy-to-follow advice on modern practices: which to use, and when they should be applied. This book avoids current fashion trends and marketing hype; instead, readers find page after page of solid advice, all tried and tested in the real world.Aimed at beginning to intermediate programmers, Ship It! will show you:Which tools help, and which don't How to keep a project moving Approaches to scheduling that work How to build developers as well as product What's normal on a project, and what's not How to manage managers, end-users and sponsors Danger signs and how to fix them Few of the ideas presented here are controversial or extreme; most experienced programmers will agree that this stuff works. Yet 50 to 70 percent of all project teams in the U.S. aren't able to use even these simple, well-accepted practices effectively. This book will help you get started.Ship It! begins by introducing the common technical infrastructure that every project needs to get the job done. Readers can choose from a variety of recommended technologies according to their skills and budgets. The next sections outline the necessary steps to get software out the door reliably, using well-accepted, easy-to-adopt, best-of-breed practices that really work.Finally, and most importantly, Ship It! presents common problems that teams face, then offers real-world advice on how to solve them.

The Lean Startup: How Today's Entrepreneurs Use Continuous Innovation to Create Radically Successful Businesses


Eric Ries - 2011
    But many of those failures are preventable. The Lean Startup is a new approach being adopted across the globe, changing the way companies are built and new products are launched. Eric Ries defines a startup as an organization dedicated to creating something new under conditions of extreme uncertainty. This is just as true for one person in a garage or a group of seasoned professionals in a Fortune 500 boardroom. What they have in common is a mission to penetrate that fog of uncertainty to discover a successful path to a sustainable business.The Lean Startup approach fosters companies that are both more capital efficient and that leverage human creativity more effectively. Inspired by lessons from lean manufacturing, it relies on "validated learning," rapid scientific experimentation, as well as a number of counter-intuitive practices that shorten product development cycles, measure actual progress without resorting to vanity metrics, and learn what customers really want. It enables a company to shift directions with agility, altering plans inch by inch, minute by minute.Rather than wasting time creating elaborate business plans, The Lean Startup offers entrepreneurs - in companies of all sizes - a way to test their vision continuously, to adapt and adjust before it's too late. Ries provides a scientific approach to creating and managing successful startups in a age when companies need to innovate more than ever.