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.
APIs: A Strategy Guide
Daniel Jacobson - 2011
Salesforce.com (more than 50%) and Twitter (more than 75% fall into this category. Ebay gets more than 8 billion API calls a month. Facebook and Google, have dozens of APIs that enable both free services and e-commerce, get more than 5 billion API calls each day. Other companies like NetFlix have expanded their service of streaming movies over the the web to dozens of devices using API. At peak times, more than 20 percent of all traffic is accounted for by Netflix through its APIs. Companies like Sears and E-Trade are opening up their catalogs and other services to allow developers and entrepreneurs to create new marketing experiences.
Making an API work to create a new channel is not just a matter of technology. An API must be considered in terms of business strategy, marketing, and operations as well as the technical aspects of programming. This book, written by Greg Brail, CTO of Apigee, and Brian Mulloy, VP of Products, captures the knowledge of all these areas gained by Apigee, the leading company in supporting the rollout of high traffic APIs.
Badass: Making Users Awesome
Kathy Sierra - 2015
The rules? No marketing budget, no PR stunts, and it must be sustainably successful. No short-term fads.This is not a game of chance. It is a game of skill and strategy.And it begins with a single question: given competing products of equal pricing, promotion, and perceived quality, why does one outsell the others?The answer doesn’t live in the sustainably successful products or services. The answer lives in those who use them.Our goal is to craft a strategy for creating successful users. And that strategy is full of surprising, counter-intuitive, and astonishingly simple techniques that don’t depend on a massive marketing or development budget. Techniques typically overlooked by even the most well-funded, well-staffed product teams.Every role is a key player in this game. Product development, engineering, marketing, user experience, support—everyone on the team. Even if that team is a start-up of one. Armed with a surprisingly overlooked science and a unique POV, we can can reduce the role of luck. We can build sustainably successful products and services that rely not on unethical persuasive marketing tricks but on helping our users have deeper, richer experiences. Not just in the moments while they’re using our product but, more importantly, in the moments when they aren’t.
Agile Project Management: Creating Innovative Products
Jim Highsmith - 2004
It covers six principles of Agile Project Management; its five phases: envision, speculate, explore, adapt, close; and, APM practices.
97 Things Every Programmer Should Know: Collective Wisdom from the Experts
Kevlin Henney - 2010
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
The People's Scrum: Agile Ideas for Revolutionary Transformation
Tobias Mayer - 2012
Whether you agree or disagree with him, and you're likely to do both, the essays in this book will always give you something worth thinking about.Mike Cohn, author of Succeeding with Agile: Software Development using ScrumTobias Mayer’s signature move is to pick up a stone and throw it through our glass house, smashing our old paradigms and causing us, after some pain and turmoil, to say, “OK, my comfortable way doesn’t work anymore. Now what?”Lyssa Adkins, author of Coaching Agile TeamsTobias Mayer has a really interesting mind: wide, deep, imaginative, and quirky. I value the quirky most because it's unpredictable. But in hindsight his jumps reveal themselves as the result of intelligence and rigor. What's more, he gets those jumps gracefully down on paper so that we can all participate.Lee Devin, author of Artrful Making and The Soul of DesignTobias Mayer is known in the agile community as a brilliant and evangelical orator, an innovative trainer and an extraordinary trouble maker. You could call him the Hunter S. Thompson of the software arena, and no one who knows him would laugh. This book is a collection of essays drawn from his writing over the past seven years on the blogs Agile Thinking and Agile Anarchy, missives from the front lines of agile practice that represent the next generation of thinking on conventional agile topics like self-organization, technical debt and estimation–and utterly original writing on new topics like organizational anarchy, corporate oppression, the effect of testosterone on business practices, and artisanal product development.Moving beyond the mere how-to, this is a book to excite the emotions and the intellect in those of us who have chosen the path of scrum to guide us in our work lives. Not since Paul Graham’s Hackers and Painters has the discussion of software development been elevated to this level of world-view-changing discourse. In Tobias Mayer, technology has an exciting new voice to lead us into the brave new world of agile practice.
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
The Rollout: A Novel about Leadership and Building a Lean-Agile Enterprise with SAFe
Alex Yakyma - 2016
Caught between a traditional approach to program and portfolio management, and half-baked Agile methods at the team level, he struggles to help his company find a way out. Faced with a nearly impossible quest, he attends a conference desperately seeking a solution. There he finds a glimpse of hope—a method that applies the notion of Agility at a much higher scale. Inspired by this discovery, Ethan charges into action, launching the rollout of a new method at his company. But in no time, he runs into a brick wall which puts the rollout, and his own career, in grave danger. He comes to realize that the basic culture and his enterprise’s way of thinking are its biggest impediments to success. His quest leads him to understand that his own mindset is also part of the problem.... The reader will be pulled into the exciting action unfolding as Ethan leads his organization towards enterprise agility. Fictional, but based on a broad range of real-life implementations, this novel by Alex Yakyma provides a war chest of techniques and tools to support large-scale rollouts of Lean and Agile methods.
Measure What Matters
John E. Doerr - 2017
With a foreword by Larry Page, and contributions from Bono and Bill Gates.
Measure What Matters is about using Objectives and Key Results (OKRs), a revolutionary approach to goal-setting, to make tough choices in business. In 1999, legendary venture capitalist John Doerr invested nearly $12 million in a startup that had amazing technology, entrepreneurial energy and sky-high ambitions, but no real business plan. Doerr introduced the founders to OKRs and with them at the foundation of their management, the startup grew from forty employees to more than 70,000 with a market cap exceeding $600 billion. The startup was Google. Since then Doerr has introduced OKRs to more than fifty companies, helping tech giants and charities exceed all expectations. In the OKR model objectives define what we seek to achieve and key results are how those top priority goals will be attained. OKRs focus effort, foster coordination and enhance workplace satisfaction. They surface an organization's most important work as everyone's goals from entry-level to CEO are transparent to the entire institution. In Measure What Matters, Doerr shares a broad range of first-person, behind-the-scenes case studies, with narrators including Bono and Bill Gates, to demonstrate the focus, agility, and explosive growth that OKRs have spurred at so many great organizations. This book will show you how to collect timely, relevant data to track progress - to measure what matters. It will help any organization or team aim high, move fast, and excel.
A Guide to the Project Management Body of Knowledge (PMBOK® Guide)
Project Management Institute - 1995
This internationally recognized standard provides the essential tools to practice project management and deliver organizational results.
Working Effectively with Legacy Code
Michael C. Feathers - 2004
This book draws on material Michael created for his renowned Object Mentor seminars, techniques Michael has used in mentoring to help hundreds of developers, technical managers, and testers bring their legacy systems under control. The topics covered include: Understanding the mechanics of software change, adding features, fixing bugs, improving design, optimizing performance Getting legacy code into a test harness Writing tests that protect you against introducing new problems Techniques that can be used with any language or platform, with examples in Java, C++, C, and C# Accurately identifying where code changes need to be made Coping with legacy systems that aren't object-oriented Handling applications that don't seem to have any structureThis book also includes a catalog of twenty-four dependency-breaking techniques that help you work with program elements in isolation and make safer changes.
JavaScript: The Good Parts
Douglas Crockford - 2008
This authoritative book scrapes away these bad features to reveal a subset of JavaScript that's more reliable, readable, and maintainable than the language as a whole--a subset you can use to create truly extensible and efficient code.Considered the JavaScript expert by many people in the development community, author Douglas Crockford identifies the abundance of good ideas that make JavaScript an outstanding object-oriented programming language-ideas such as functions, loose typing, dynamic objects, and an expressive object literal notation. Unfortunately, these good ideas are mixed in with bad and downright awful ideas, like a programming model based on global variables.When Java applets failed, JavaScript became the language of the Web by default, making its popularity almost completely independent of its qualities as a programming language. In JavaScript: The Good Parts, Crockford finally digs through the steaming pile of good intentions and blunders to give you a detailed look at all the genuinely elegant parts of JavaScript, including:SyntaxObjectsFunctionsInheritanceArraysRegular expressionsMethodsStyleBeautiful featuresThe real beauty? As you move ahead with the subset of JavaScript that this book presents, you'll also sidestep the need to unlearn all the bad parts. Of course, if you want to find out more about the bad parts and how to use them badly, simply consult any other JavaScript book.With JavaScript: The Good Parts, you'll discover a beautiful, elegant, lightweight and highly expressive language that lets you create effective code, whether you're managing object libraries or just trying to get Ajax to run fast. If you develop sites or applications for the Web, this book is an absolute must.
Joel on Software
Joel Spolsky - 2004
For years, Joel Spolsky has done exactly this at www.joelonsoftware.com. Now, for the first time, you can own a collection of the most important essays from his site in one book, with exclusive commentary and new insights from joel.
The Art of Focused Conversation: 100 Ways to Access Group Wisdom in the Workplace
R. Brian Stanfield - 2000
I can't tell you how many times I have pulled the book off the shelf to get some direction in creating my own questions. It has been a great asset in helping me have meaningful and directed conversations at a critical time in my new job. And it has saved me precious time. - Great book!?Marlene Lockwood, Group Leader, St. Helen's Hospital, Deer Park, CaliforniaCommunication within many organizations has been reduced to email, electronic file transfer, and hasty sound bytes at hurried meetings. More and more, people appear to have forgotten the value of wisdom gained by ordinary conversations.But, at different times in history, conversation has been regarded as an art form - a crucial component of human relations. Conversation has the power to solve a problem, heal a wound, generate commitment, bond a team, generate new options, or build a vision. Conversations can shift working patterns, build friendships, create focus and energy, cement resolve.The Art of Focused Conversation convincingly restores this most human of attributes to prime place within businesses and organizations, and demonstrates what can be accomplished through the medium of focused conversation. The first Part describes the theory and background of the conversation method, which has been effectively used for group consensus making in: 1) problem solving; 2) troubleshooting; 3) coaching; 4) research and 5) interpretation of data. It also discusses how to prepare a conversation, how to lead a conversation, and what the common mistakes are. Part two then provides 100 sample conversations designed for use in many different situations, including: 1) reviewing and evaluating; 2) preparation and planning; 3) coaching, and mentoring; 4) data and media interpretation; 5) decision making; 6) managing and supervising; and 7) personal reflection and group celebrations.Developed, tested, and extensively used by professionals in the field of organizational development, The Art of Focused Conversation is an invaluable resource for all those working to improve communications in firms and organizations."This book is absolutely fabulous. I started it last night, used a whole bunch of stuff
Soft Skills: The Software Developer's Life Manual
John Z. Sonmez - 2014
In it, developer and life coach John Sonmez addresses a wide range of important "soft" topics, from career and productivity to personal finance and investing, and even fitness and relationships, all from a developer-centric viewpoint.For most software developers, coding is the fun part. The hard bits are dealing with clients, peers, and managers, staying productive, achieving financial security, keeping yourself in shape, and finding true love. This book is here to help.Soft Skills: The software developer's life manual is a guide to a well-rounded, satisfying life as a technology professional. In it, developer and life coach John Sonmez offers advice to developers on important "soft" subjects like career and productivity, personal finance and investing, and even fitness and relationships. Arranged as a collection of 71 short chapters, this fun-to-read book invites you to dip in wherever you like. A Taking Action section at the end of each chapter shows you how to get quick results. Soft Skills will help make you a better programmer, a more valuable employee, and a happier, healthier person.What's InsideBoost your career by building a personal brandJohn's secret ten-step process for learning quicklyFitness advice to turn your geekiness to your advantageUnique strategies for investment and early retirement