Skip to main content Site map

Pragmatic Programmer, The: Your journey to mastery, 20th Anniversary Edition 2nd edition


Pragmatic Programmer, The: Your journey to mastery, 20th Anniversary Edition 2nd edition

Hardback by Thomas, David; Hunt, Andrew

Pragmatic Programmer, The: Your journey to mastery, 20th Anniversary Edition

WAS £37.99   SAVE £5.70

£32.29

ISBN:
9780135957059
Publication Date:
2 Dec 2019
Edition/language:
2nd edition / English
Publisher:
Pearson Education (US)
Imprint:
Addison Wesley
Pages:
352 pages
Format:
Hardback
For delivery:
Estimated despatch 30 Apr - 1 May 2024
Pragmatic Programmer, The: Your journey to mastery, 20th Anniversary Edition

Description

The Pragmatic Programmer is one of those rare tech books you'll read, re-read, and read again over the years. Whether you're new to the field or an experienced practitioner, you'll come away with fresh insights each and every time. Dave Thomas and Andy Hunt wrote the first edition of this influential book in 1999 to help their clients create better software and rediscover the joy of coding. These lessons have helped a generation of programmers examine the very essence of software development, independent of any particular language, framework, or methodology, and the Pragmatic philosophy has spawned hundreds of books, screencasts, and audio books, as well as thousands of careers and success stories. Now, twenty years later, this new edition re-examines what it means to be a modern programmer. Topics range 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 to: Fight software rot Learn continuously Avoid the trap of duplicating knowledge Write flexible, dynamic, and adaptable code Harness the power of basic tools Avoid programming by coincidence Learn real requirements Solve the underlying problems of concurrent code Guard against security vulnerabilities Build teams of Pragmatic Programmers Take responsibility for your work and career Test ruthlessly and effectively, including property-based testing Implement the Pragmatic Starter Kit Delight your users Written as a series of self-contained sections and filled with classic and fresh anecdotes, thoughtful examples, and interesting analogies, The Pragmatic Programmer illustrates the best approaches 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. "One of the most significant books in my life." --Obie Fernandez, Author, The Rails Way "Twenty years ago, the first edition of The Pragmatic Programmer completely changed the trajectory of my career. This new edition could do the same for yours." --Mike Cohn, Author of Succeeding with Agile, Agile Estimating and Planning, and User Stories Applied ". . . filled with practical advice, both technical and professional, that will serve you and your projects well for years to come." --Andrea Goulet, CEO, Corgibytes, Founder, LegacyCode.Rocks ". . . lightning does strike twice, and this book is proof." --VM (Vicky) Brasseur, Director of Open Source Strategy, Juniper Networks Register your book for convenient access to downloads, updates, and/or corrections as they become available. See inside book for details.

Contents

Foreword xi Preface to the Second Edition xv From the Preface to the First Edition xix Chapter 1: A Pragmatic Philosophy 1 Topic 1. It's Your Life 2 Topic 2. The Cat Ate My Source Code 3 Topic 3. Software Entropy 6 Topic 4. Stone Soup and Boiled Frogs 8 Topic 5. Good-Enough Software 11 Topic 6. Your Knowledge Portfolio 14 Topic 7. Communicate! 20 Chapter 2: A Pragmatic Approach 27 Topic 8. The Essence of Good Design 28 Topic 9. DRY-The Evils of Duplication 30 Topic 10. Orthogonality 39 Topic 11. Reversibility 47 Topic 12. Tracer Bullets 51 Topic 13. Prototypes and Post-it Notes 56 Topic 14. Domain Languages 60 Topic 15. Estimating 66 Chapter 3: The Basic Tools 73 Topic 16. The Power of Plain Text 74 Topic 17. Shell Games 78 Topic 18. Power Editing 81 Topic 19. Version Control 84 Topic 20. Debugging 88 Topic 21. Text Manipulation 97 Topic 22. Engineering Daybooks 100 Chapter 4: Pragmatic Paranoia 103 Topic 23. Design by Contract 104 Topic 24. Dead Programs Tell No Lies 112 Topic 25. Assertive Programming 115 Topic 26. How to Balance Resources 118 Topic 27. Don't Outrun Your Headlights 125 Chapter 5: Bend, or Break 129 Topic 28. Decoupling 130 Topic 29. Juggling the Real World 137 Topic 30. Transforming Programming 147 Topic 31. Inheritance Tax 159 Topic 32. Configuration 167 Chapter 6: Concurrency 171 Topic 33. Breaking Temporal Coupling 172 Topic 34. Shared State Is Incorrect State 176 Topic 35. Actors and Processes 183 Topic 36. Blackboards 189 Chapter 7: While You Are Coding 195 Topic 37. Listen to Your Lizard Brain 196 Topic 38. Programming by Coincidence 201 Topic 39. Algorithm Speed 207 Topic 40. Refactoring 213 Topic 41. Test to Code 218 Topic 42. Property-Based Testing 228 Topic 43. Stay Safe Out There 235 Topic 44. Naming Things 242 Chapter 8: Before the Project 249 Topic 45. The Requirements Pit 250 Topic 46. Solving Impossible Puzzles 258 Topic 47. Working Together 262 Topic 48. The Essence of Agility 265 Chapter 9: Pragmatic Projects 269 Topic 49. Pragmatic Teams 270 Topic 50. Coconuts Don't Cut It 276 Topic 51. Pragmatic Starter Kit 280 Topic 52. Delight Your Users 287 Topic 53. Pride and Prejudice 288 Postface 291 Bibliography 295 Possible Answers to the Exercises 299 Index 313

Back

JS Group logo