Book picks similar to
Fixing your Scrum by Ryan Ripley
agile
scrum
non-fiction
management
Creative Selection: Inside Apple's Design Process During the Golden Age of Steve Jobs
Ken Kocienda - 2018
Creative Selection recounts the life of one of the few who worked behind the scenes, a highly-respected software engineer who worked in the final years the Steve Jobs era--the Golden Age of Apple.Ken Kocienda offers an inside look at Apple's creative process. For fifteen years, he was on the ground floor of the company as a specialist, directly responsible for experimenting with novel user interface concepts and writing powerful, easy-to-use software for products including the iPhone, the iPad, and the Safari web browser. His stories explain the symbiotic relationship between software and product development for those who have never dreamed of programming a computer, and reveal what it was like to work on the cutting edge of technology at one of the world's most admired companies.Kocienda shares moments of struggle and success, crisis and collaboration, illuminating each with lessons learned over his Apple career. He introduces the essential elements of innovation--inspiration, collaboration, craft, diligence, decisiveness, taste, and empathy--and uses these as a lens through which to understand productive work culture.An insider's tale of creativity and innovation at Apple, Creative Selection shows readers how a small group of people developed an evolutionary design model, and how they used this methodology to make groundbreaking and intuitive software which countless millions use every day.
Extreme Programming Pocket Guide
chromatic - 2003
Although many developers feel that XP is rooted in commonsense, its vastly different approach can bring challenges, frustrations, and constant demands on your patience.Unless you've got unlimited time (and who does these days?), you can't always stop to thumb through hundreds of pages to find the piece of information you need. The Extreme Programming Pocket Guide is the answer. Concise and easy to use, this handy pocket guide to XP is a must-have quick reference for anyone implementing a test-driven development environment.The Extreme Programming Pocket Guide covers XP assumptions, principles, events, artifacts, roles, and resources, and more. It concisely explains the relationships between the XP practices. If you want to adopt XP in stages, the Extreme Programming Pocket Guide will help you choose what to apply and when. You'll be surprised at how much practical information is crammed into this slim volume.O'Reilly's Pocket Guides have become a favorite among developers everywhere. By providing a wealth of important details in a concise, well-organized format, these handy books deliver just what you need to complete the task at hand. When you've reached a sticking point in your work and need to get to a solution quickly, the new Extreme Programming Pocket Guide is the book you'll want to have beside your keyboard.
Head First Design Patterns
Eric Freeman - 2004
At any given moment, somewhere in the world someone struggles with the same software design problems you have. You know you don't want to reinvent the wheel (or worse, a flat tire), so you look to Design Patterns--the lessons learned by those who've faced the same problems. With Design Patterns, you get to take advantage of the best practices and experience of others, so that you can spend your time on...something else. Something more challenging. Something more complex. Something more fun. You want to learn about the patterns that matter--why to use them, when to use them, how to use them (and when NOT to use them). But you don't just want to see how patterns look in a book, you want to know how they look "in the wild". In their native environment. In other words, in real world applications. You also want to learn how patterns are used in the Java API, and how to exploit Java's built-in pattern support in your own code. You want to learn the real OO design principles and why everything your boss told you about inheritance might be wrong (and what to do instead). You want to learn how those principles will help the next time you're up a creek without a design pattern. Most importantly, you want to learn the "secret language" of Design Patterns so that you can hold your own with your co-worker (and impress cocktail party guests) when he casually mentions his stunningly clever use of Command, Facade, Proxy, and Factory in between sips of a martini. You'll easily counter with your deep understanding of why Singleton isn't as simple as it sounds, how the Factory is so often misunderstood, or on the real relationship between Decorator, Facade and Adapter. With Head First Design Patterns, you'll avoid the embarrassment of thinking Decorator is something from the "Trading Spaces" show. Best of all, in a way that won't put you to sleep! We think your time is too important (and too short) to spend it struggling with academic texts. If you've read a Head First book, you know what to expect--a visually rich format designed for the way your brain works. Using the latest research in neurobiology, cognitive science, and learning theory, Head First Design Patterns will load patterns into your brain in a way that sticks. In a way that lets you put them to work immediately. In a way that makes you better at solving software design problems, and better at speaking the language of patterns with others on your team.
Fearless Change: Patterns for Introducing New Ideas
Mary Lynn Manns - 2004
It contains a collection of eye-openers that is a treasure chest for pioneers of new organizational ideas, A fantastic toolbox for use in future missions!"--Lise B. Hvatum, product development manager, Schlumberger"If you have need of changing your organization, and especially of introducing new techniques, then you want to understand what is in this book. It will help you avoid common pitfalls that doom many such projects and will show you a clear path to success. The techniques are derived from the experience of many individuals and organizations. Many are also fun to apply. This stuff is really cool--and really hot."--Joseph Bergin, professor of computer science, Pace University, New York"If change is the only guarantee in life, why is it so hard to do? As this book points out, people are not so much resistant to change itself as they are to being changed. Mary Lynn and Linda have successfully used the pattern form to capture and present the recurring lessons of successful change efforts and have placed a powerful knowledge resource in the hands of their readers."--Alan O'Callaghan, researcher, Software Technology Research Laboratory, De Montfort University, United Kingdom"The most difficult part of absorbing patterns, or any technology, into an organization is overcoming the people issues. The patterns in this book are the documentation of having gone through that experience, giving those that dare push the envelope a head start at success."--David E. DeLano, IBM Pervasive Computing"If you have ever wondered how you could possibly foster any cultural changes in your organization, in this book you will find a lot of concrete advice for doing so. I recommend that everyone read this book who has a vast interest in keeping his or her organization flexible and open for cultural change."--Jutta Eckstein, Independent Consultant, Objects In Action Author of "Agile Software Development in the Large"48 Patterns for Driving and Sustaining Change in Your OrganizationChange. It's brutally tough to initiate, even harder to sustain. It takes too long. People resist it.But without it, organizations lose their competitive edge. Fortunately, you can succeed at making change. In "Fearless Change, " Mary Lynn Manns and Linda Rising illuminate 48 proven techniques, or patterns, for implementing change in organizations or teams of all sizes, and show you exactly how to use them successfully.Find out how toUnderstand the forces in your organization that drive and retard changePlant the seeds of changeDrive participation and buy-in, from start to finishChoose an "official skeptic" to sharpen your thinkingMake your changes appear less threateningFind the right timing and the best teaching momentsSustain your momentumOvercome adversity and celebrate successInspired by the "pattern languages" that are transforming fields from software to architecture, the authors illuminate patterns for every stage of the change process: knowledge, persuasion, decision, implementation, and confirmation. These flexible patterns draw on the experiences of hundreds of leaders. They offer powerful insight into change-agent behavior, organizational culture, and the roles of every participant.Best of all, they're easy to use--"and they work!"
Fluent Python: Clear, Concise, and Effective Programming
Luciano Ramalho - 2015
With this hands-on guide, you'll learn how to write effective, idiomatic Python code by leveraging its best and possibly most neglected features. Author Luciano Ramalho takes you through Python's core language features and libraries, and shows you how to make your code shorter, faster, and more readable at the same time.Many experienced programmers try to bend Python to fit patterns they learned from other languages, and never discover Python features outside of their experience. With this book, those Python programmers will thoroughly learn how to become proficient in Python 3.This book covers:Python data model: understand how special methods are the key to the consistent behavior of objectsData structures: take full advantage of built-in types, and understand the text vs bytes duality in the Unicode ageFunctions as objects: view Python functions as first-class objects, and understand how this affects popular design patternsObject-oriented idioms: build classes by learning about references, mutability, interfaces, operator overloading, and multiple inheritanceControl flow: leverage context managers, generators, coroutines, and concurrency with the concurrent.futures and asyncio packagesMetaprogramming: understand how properties, attribute descriptors, class decorators, and metaclasses work"
Prediction Machines: The Simple Economics of Artificial Intelligence
Ajay Agrawal - 2018
But facing the sea change that AI will bring can be paralyzing. How should companies set strategies, governments design policies, and people plan their lives for a world so different from what we know? In the face of such uncertainty, many analysts either cower in fear or predict an impossibly sunny future.But in Prediction Machines, three eminent economists recast the rise of AI as a drop in the cost of prediction. With this single, masterful stroke, they lift the curtain on the AI-is-magic hype and show how basic tools from economics provide clarity about the AI revolution and a basis for action by CEOs, managers, policy makers, investors, and entrepreneurs.When AI is framed as cheap prediction, its extraordinary potential becomes clear:
Prediction is at the heart of making decisions under uncertainty. Our businesses and personal lives are riddled with such decisions.
Prediction tools increase productivity--operating machines, handling documents, communicating with customers.
Uncertainty constrains strategy. Better prediction creates opportunities for new business structures and strategies to compete.
Penetrating, fun, and always insightful and practical, Prediction Machines follows its inescapable logic to explain how to navigate the changes on the horizon. The impact of AI will be profound, but the economic framework for understanding it is surprisingly simple.
The Algorithm Design Manual
Steven S. Skiena - 1997
Drawing heavily on the author's own real-world experiences, the book stresses design and analysis. Coverage is divided into two parts, the first being a general guide to techniques for the design and analysis of computer algorithms. The second is a reference section, which includes a catalog of the 75 most important algorithmic problems. By browsing this catalog, readers can quickly identify what the problem they have encountered is called, what is known about it, and how they should proceed if they need to solve it. This book is ideal for the working professional who uses algorithms on a daily basis and has need for a handy reference. This work can also readily be used in an upper-division course or as a student reference guide. THE ALGORITHM DESIGN MANUAL comes with a CD-ROM that contains: * a complete hypertext version of the full printed book. * the source code and URLs for all cited implementations. * over 30 hours of audio lectures on the design and analysis of algorithms are provided, all keyed to on-line lecture notes.
A Practical Approach to Large-Scale Agile Development: How HP Transformed LaserJet FutureSmart Firmware
Gary Gruver - 2012
However, large-scale agile development is difficult, and publicly available case studies have been scarce. Now, three agile pioneers at Hewlett-Packard present a candid, start-to-finish insider's look at how they've succeeded with agile in one of the company's most mission-critical software environments: firmware for HP LaserJet printers.This book tells the story of an extraordinary experiment and journey. Could agile principles be applied to re-architect an enormous legacy code base? Could agile enable both timely delivery and ongoing innovation? Could it really be applied to 400+ developers distributed across four states, three continents, and four business units? Could it go beyond delivering incremental gains, to meet the stretch goal of 10x developer productivity improvements?It could, and it did--but getting there was not easy.Writing for both managers and technologists, the authors candidly discuss both their successes and failures, presenting actionable lessons for other development organizations, as well as approaches that have proven themselves repeatedly in HP's challenging environment. They not only illuminate the potential benefits of agile in large-scale development, they also systematically show how these benefits can actually be achieved.Coverage includes: - Tightly linking agile methods and enterprise architecture with business objectives- Focusing agile practices on your worst development pain points to get the most bang for your buck- Abandoning classic agile methods that don't work at the largest scale- Employing agile methods to establish a new architecture- Using metrics as a "conversation starter" around agile process improvements- Leveraging continuous integration and quality systems to reduce costs, accelerate schedules, and automate the delivery pipeline- Taming the planning beast with "light-touch" agile planning and lightweight long-range forecasting- Implementing effective project management and ensuring accountability in large agile projects- Managing tradeoffs associated with key decisions about organizational structure- Overcoming U.S./India cultural differences that can complicate offshore development- Selecting tools to support quantum leaps in productivity in your organization- Using change management disciplines to support greater enterprise agility
Code: The Hidden Language of Computer Hardware and Software
Charles Petzold - 1999
And through CODE, we see how this ingenuity and our very human compulsion to communicate have driven the technological innovations of the past two centuries. Using everyday objects and familiar language systems such as Braille and Morse code, author Charles Petzold weaves an illuminating narrative for anyone who’s ever wondered about the secret inner life of computers and other smart machines. It’s a cleverly illustrated and eminently comprehensible story—and along the way, you’ll discover you’ve gained a real context for understanding today’s world of PCs, digital media, and the Internet. No matter what your level of technical savvy, CODE will charm you—and perhaps even awaken the technophile within.
Personal Kanban: Mapping Work | Navigating Life
Jim Benson - 2011
People need to be effective.Productivity books focus on doing more, Jim and Tonianne want you to focus on doing better. Personal Kanban is about choosing the right work at the right time. Recognizing why we do the things we do. Understanding the impact of our actions. Creating value - not just product. For ourselves, our families, our friends, our co-workers. For our legacy.Personal Kanban takes the same Lean principles from manufacturing that led the Japanese auto industry to become a global leader in quality, and applies them to individual and team work. Personal Kanban asks only that we visualize our work and limit our work-in-progress. Visualizing work allows us to transform our conceptual and threatening workload into an actionable, context-sensitive flow. Limiting our work-in-progress helps us complete what we start and understand the value of our choices. Combined, these two simple acts encourage us to improve the way we work and the way we make choices to balance our personal, professional, and social lives.Neither a prescription nor a plan, Personal Kanban provides a light, actionable, achievable framework for understanding our work and its context. This book describes why students, parents, business leaders, major corporations, and world governments all see immediate results with Personal Kanban.
Product Leadership: How Top Product Managers Launch Awesome Products and Build Successful Teams
Richard Banfield - 2017
Yet, managing human beings and navigating complex product roadmaps is no easy task, and it's rare to find a product leader who can steward a digital product from concept to launch without a couple of major hiccups. Why do some product leaders succeed while others don't?This insightful book presents interviews with nearly 100 leading product managers from all over the world. Authors Richard Banfield, Martin Eriksson, and Nate Walkingshaw draw on decades of experience in product design and development to capture the approaches, styles, insights, and techniques of successful product managers. If you want to understand what drives good product leaders, this book is an irreplaceable resource.In three parts, Product Leadership helps you explore:Themes and patterns of successful teams and their leaders, and ways to attain those characteristicsThe best approaches for guiding your product team through the startup, emerging, and enterprise stages of a company's evolutionStrategies and tactics for working with customers, agencies, partners, and external stakeholders
Building a DevOps Culture
Mandi Walls - 2013
But, as Mandi Walls explains in this Velocity report, DevOps is really about changing company culture—replacing traditional development and operations silos with collaborative teams of people from both camps.
The DevOps movement has produced some efficient teams turning out better products faster. The tough part is initiating the change. This report outlines strategies for managers looking to go beyond tools to build a DevOps culture among their technical staff.
Topics include:
Documenting reasons for changing to DevOps before you commit
Defining meaningful and achievable goals
Finding a technical leader to be an evangelist, tools and process expert, and shepherd
Starting with a non-critical but substantial pilot project
Facilitating open communication among developers, QA engineers, marketers, and other professionals
Realigning your team’s responsibilities and incentives
Learning when to mediate disagreements and conflicts
Download this free report and learn how to the DevOps approach can help you create a supportive team environment built on communication, respect, and trust.
Mandi Walls is a Senior Consultant with Opscode.
The Visible Ops Handbook: Starting ITIL in 4 Practical Steps
Kevin Behr - 2004
Visible Ops is comprised of four prescriptive and self-fueling steps that take an organization from any starting point to a continually improving process. MAKING ITIL ACTIONABLE Although the Information Technology Infrastructure Library (ITIL) provides a wealth of best practices, it lacks prescriptive guidance: What do you implement first, and how do you do it? Moreover, the ITIL books remain relatively expensive to distribute. Other information, publicly available from a variety of sources, is too general and vague to effectively aid organizations that need to start or enhance process improvement efforts. The Visible Ops booklet provides a prescriptive roadmap for organizations beginning or continuing their IT process improvement journey. WHY DO WE NEED VISIBLE OPS? The Visible Ops methodology was developed because there was not a satisfactory answer to the question: "I believe in the need for IT process improvement, but where do I start?" Since 2000, Gene Kim and Kevin Behr have met with hundreds of IT organizations and identified eight high-performing IT organizations with the highest service levels, best security, and best efficiencies. For years, they studied these high-performing organizations to figure out the secrets to their success. Visible Ops codifies how these organizations achieved their transformation from good to great, showing how interested organizations can replicate the key processes of these high-performing organizations in just four steps: 1. Stabilize Patient, Modify First Response - Almost 80% of outages are self-inflicted. The first step is to control risky changes and reduce MTTR by addressing how changes are managed and how problems are resolved. 2. Catch and Release, Find Fragile Artifacts - Often, infrastructure exists that cannot be repeatedly replicated. In this step, we inventory assets, configurations and services, to identify those with the lowest change success rates, highest MTTR and highest business downtime costs. 3. Establish Repeatable Build Library - The highest return on investment is implementing effective release management processes. This step creates repeatable builds for the most critical assets and services, to make it "cheaper to rebuild than to repair." 4. Enable Continuous Improvement - The previous steps have progressively built a closed-loop between the Release, Control and Resolution processes. This step implements metrics to allow continuous improvement of all of these process areas, to best ensure that business objectives are met.
Practical Object Oriented Design in Ruby
Sandi Metz - 2012
The Web is awash in Ruby code that is now virtually impossible to change or extend. This text helps you solve that problem by using powerful real-world object-oriented design techniques, which it thoroughly explains using simple and practical Ruby examples. Sandi Metz has distilled a lifetime of conversations and presentations about object-oriented design into a set of Ruby-focused practices for crafting manageable, extensible, and pleasing code. She shows you how to build new applications that can survive success and repair existing applications that have become impossible to change. Each technique is illustrated with extended examples, all downloadable from the companion Web site, poodr.info. The first title to focus squarely on object-oriented Ruby application design,
Practical Object-Oriented Design in Ruby
will guide you to superior outcomes, whatever your previous Ruby experience. Novice Ruby programmers will find specific rules to live by; intermediate Ruby programmers will find valuable principles they can flexibly interpret and apply; and advanced Ruby programmers will find a common language they can use to lead development and guide their colleagues. This guide will help you Understand how object-oriented programming can help you craft Ruby code that is easier to maintain and upgrade Decide what belongs in a single Ruby class Avoid entangling objects that should be kept separate Define flexible interfaces among objects Reduce programming overhead costs with duck typing Successfully apply inheritance Build objects via composition Design cost-effective tests Solve common problems associated with poorly designed Ruby code