Debugging the Development Process: Practical Strategies for Staying Focused, Hitting Ship Dates, and Building Solid Teams


Steve Maguire - 1994
    With the refreshing candor reviewers admired in Writing Solid Code, Maguire talks about what did and what didn't work at Microsoft and tells you how to energize software teams to work effectively - and to enjoy their work; why you might want to kick your star programmer off your team; how to avoid corporate snares and overblown corporate processes; which tiny changes produce major results; how to deliver on schedule and without overwork; how to pull twice the value out of everything you do; how to get your team going on a creative roll; and how to raise the average programmer level at your company.

Learning Python


Mark Lutz - 2003
    Python is considered easy to learn, but there's no quicker way to mastery of the language than learning from an expert teacher. This edition of "Learning Python" puts you in the hands of two expert teachers, Mark Lutz and David Ascher, whose friendly, well-structured prose has guided many a programmer to proficiency with the language. "Learning Python," Second Edition, offers programmers a comprehensive learning tool for Python and object-oriented programming. Thoroughly updated for the numerous language and class presentation changes that have taken place since the release of the first edition in 1999, this guide introduces the basic elements of the latest release of Python 2.3 and covers new features, such as list comprehensions, nested scopes, and iterators/generators. Beyond language features, this edition of "Learning Python" also includes new context for less-experienced programmers, including fresh overviews of object-oriented programming and dynamic typing, new discussions of program launch and configuration options, new coverage of documentation sources, and more. There are also new use cases throughout to make the application of language features more concrete. The first part of "Learning Python" gives programmers all the information they'll need to understand and construct programs in the Python language, including types, operators, statements, classes, functions, modules and exceptions. The authors then present more advanced material, showing how Python performs common tasks by offering real applications and the libraries available for those applications. Each chapter ends with a series of exercises that will test your Python skills and measure your understanding."Learning Python," Second Edition is a self-paced book that allows readers to focus on the core Python language in depth. As you work through the book, you'll gain a deep and complete understanding of the Python language that will help you to understand the larger application-level examples that you'll encounter on your own. If you're interested in learning Python--and want to do so quickly and efficiently--then "Learning Python," Second Edition is your best choice.

On the Mend


John Toussaint - 2010
    Gerard, PhD, its chief learning officer, candidly describe the triumphs and stumbles of a seven-year journey to lean healthcare, an effort that continues today and that has slashed medical errors, improved patient outcomes, raised staff morale, and saved $27 million dollars in costs without layoffs. Find out:> How lean techniques of value-stream-mapping and rapid improvement events cut the average “door-to-balloon” time for heart attack patients at two hospitals from 90 minutes to 37.> What ThedaCare leaders did to replace medicine’s “shame and blame” culture with a lean culture based on continuous improvement and respect for people.> How the lean principle of “building in quality at the source” broke down divisions among medical specialties allowing teams to develop patient care plans faster.> Why traditional modern management is the single biggest impediment to lean healthcare.> How the plan-do-study-act cycle coupled with rapid improvement events cut the wait time at a robotic radiosurgery unit from 26 days to six.> How the lean concept of “one piece flow” saved time in treating ischemic stroke patients, increasing the number of patients receiving a CT scan within 25 minutes from 51% to 89%.> How senior leaders at other healthcare organizations can begin their own lean transformations using a nine-step action plan based on what ThedaCare did — and what it would do differently.Toussaint and Gerard prove that lean healthcare does not mean less care. On the Mend shows that when care is truly re-designed around patients, waste and errors are eliminated, quality improves, costs come down, and healthcare professionals have more time to spend with patients, who get even better care.

Software Engineering (International Computer Science Series)


Ian Sommerville - 1982
    Restructured into six parts, this new edition covers a wide spectrum of software processes from initial requirements solicitation through design and development.

Software Testing


Ron Patton - 2000
    Everyone has heard of computer programmers but few people realize there are nearly as many people behind the scenes with job titles such as Software Tester, Software Quality Assurance Engineer, Software Test Engineer, and Software Test Technician. Microsoft alone hires hundreds of people for these positions each year. There are also many companies whose sole purpose is providing software test consulting and software testing services. The first edition of Software Testing was published in November 2000. Although the processes and techniques used in testing computer software are timeless, this title will be brought up-to-date by adding a chapter that specifically deals with testing software for security bugs and revisiting the rest of the book to update examples and references.

Manager 3.0: A Millennial's Guide to Rewriting the Rules of Management


Brad Karsh - 2013
    The generation that was raised in an age of instant communication, questioning authority and traditions, and Ritalin has begun tearing down the corporate ladder, communicating on the fly, and bringing play to work. But even with all the exciting potential that lies ahead for these creative, bold thinkers, it will all be for not if they cannot effectively bridge the gap between the hierarchical management style of senior executives and the casual, more collaborative approach of their peers.In Manager 3.0, the first-ever management guide written exclusively for the Millennial generation, readers will learn how to master crucial skills such as dealing with difficult people, delivering constructive feedback, and making tough decisions--while gaining insight into the four generations--yes, four!--currently in the workplace and how they can successfully bring out the best in each.Packed with interviews and examples from companies like Zappos, Groupon, Southwest Airlines, and Google, this invaluable, one-of-a-kind resource will help these promising new managers connect with and encourage the unique talents of the generations around them, while also developing an effective leadership style of their own.

Mastering the Requirements Process


Suzanne Robertson - 1999
    Written by two internationally acclaimed experts on requirements, this text provides software engineers with the insights, techniques and templates to discover exactly what their customers desire for their systems.

Herding Cats: A Primer for Programmers Who Lead Programmers


J. Hank Rainwater - 2002
    J. Hank Rainwater introduces new and not-so-new managers to concepts that will encourage them and help them become a strong leaders for their teams. You�ll learn about the varieties of programmer personality traits and be able match personnel to projects for maximum productivity. You�ll also learn how to manage your strengths and weaknesses as you improve your leadership skills, which will result in dramatic improvements to your team�s success. In this �how-to� manual that�s both practical and thought- provoking, you�ll find several chapters devoted to administrative aspects of your job, such as managing meetings, hiring and firing, and principles of organizing your job for success. Rainwater also describes task management software he built that you can use to organize project assignments. (The source code for this software is available for download once you own the book.) The chapter on technical leadership, which highlights the importance of architecture, design, and code reviews, not only illustrates practical applications of leadership, but also digs deep into concrete methods you must employ. Rainwater shows why things can go wrong for a leader and how to correct career-derailing problems as they arise. One chapter is devoted to the working relationship that you as a manager have with your boss, and it guides you into the best way to respond to the pressures of software project deadlines. Numerous other topics are discussed that are a necessity for anyone seeking to manage the �peopleware� aspects of software development. "Herding Cats: A Primer for Programmers Who Lead Programmers" is the definitive guide to the challenges and obstacles facing anyone who manages programmers. Author Information Hank Rainwater leads programmers who build software for the insurance industry at Risk Sciences Group in Atlanta, Georgia. His career in science and engineering has spanned over three decades and has included writing Fortran programs on punch cards; teaching college mathematics; conducting research in radio astronomy, missile guidance systems, and remote sensing technologies; and managing the building of embedded digital control systems. As a software professional, Hank has served as a consultant, mentor, and teacher of programming languages and has led development teams in several industries.

Alpha Project Managers: What the Top 2% Know That Everyone Else Does Not


Andy Crowe - 2006
    Through in-depth interviews and discussions, the common attributes of these elite project managers—from character and beliefs to organizational approaches—are uncovered and help to explain their achievements. Painstakingly researched, this guide offers key insights by providing multiple perspectives on the character makeup of the world’s most successful project managers.

C++ Standard Library: A Tutorial and Reference


Nicolai M. Josuttis - 1999
    The library is not self-explanatory or fully consistent, and there are still some traps for the unwary. But the advantages far outweigh the problems, especially if you've got an expert book like Nicolai Josuttis' C++ Standard Library to help you. Josuttis starts with an overview of the standard library, and its key interrelationships with the core language. He presents detailed coverage of the STL, the most powerful, complex, and exciting part of the library; then covers special containers, strings, numeric classes, and internationalization; and helps you get more out of a component you're probably already using: the IOStream library. Every component description includes purpose, design, code examples, practical scenarios, pitfalls, and in most cases, reference sources. Whether you need a tutorial or reference, this book delivers the goods.— (Bill Camarda, bn.com, editor)

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

Managing the Software Process


Watts S. Humphrey - 1989
    Emphasis is placed on the basic principles and priorities of the software process. Sections are organized in a natural way for managers and professionals to implement improvement activities.

The Soul of a New Machine


Tracy Kidder - 1981
    Tracy Kidder got a preview of this world in the late 1970s when he observed the engineers of Data General design and build a new 32-bit minicomputer in just one year. His thoughtful, prescient book, The Soul of a New Machine, tells stories of 35-year-old "veteran" engineers hiring recent college graduates and encouraging them to work harder and faster on complex and difficult projects, exploiting the youngsters' ignorance of normal scheduling processes while engendering a new kind of work ethic.These days, we are used to the "total commitment" philosophy of managing technical creation, but Kidder was surprised and even a little alarmed at the obsessions and compulsions he found. From in-house political struggles to workers being permitted to tease management to marathon 24-hour work sessions, The Soul of a New Machine explores concepts that already seem familiar, even old-hat, less than 20 years later. Kidder plainly admires his subjects; while he admits to hopeless confusion about their work, he finds their dedication heroic. The reader wonders, though, what will become of it all, now and in the future. —Rob Lightner

Domain-Driven Design Quickly


Floyd Marinescu - 2006
    This book is a short, quickly-readable summary and introduction to the fundamentals of DDD; it does not introduce any new concepts; it attempts to concisely summarize the essence of what DDD is, drawing mostly Eric Evans' original book, as well other sources since published such as Jimmy Nilsson's Applying Domain Driven Design, and various DDD discussion forums. The main topics covered in the book include: Building Domain Knowledge, The Ubiquitous Language, Model Driven Design, Refactoring Toward Deeper Insight, and Preserving Model Integrity. Also included is an interview with Eric Evans on Domain Driven Design today.

PostgreSQL 9.0 High Performance


Gregory Smith - 2010
    You could spend years discovering solutions to them all, step by step as you encounter them. Or you can just look in here. All successful database applications are destined to eventually run into issues scaling up their performance. Peek into the future of your PostgreSQL database's problems today. Know the warning signs to look for, and how to avoid the most common issues before they even happen. Surprisingly, most PostgreSQL database applications evolve in the same way: Choose the right hardware. Tune the operating system and server memory use. Optimize queries against the database, with the right indexes. Monitor every layer, from hardware to queries, using some tools that are inside PostgreSQL and others that are external. Using monitoring insight, continuously rework the design and configuration. On reaching the limits of a single server, break things up; connection pooling, caching, partitioning, and replication can all help handle increasing database workloads. The path to a high performance database system isn't always easy. But it doesn't have to be mysterious with the right guide. This book is a clear, step-by-step guide to optimizing and scaling up PostgreSQL database servers. - Publisher.