logo Mon, 23 Dec 2024 09:27:39 GMT

The Pragmatic Programmer


Synopsis


David Thomas, Andrew Hunt, Andrew Hunt

Summary



The Pragmatic Programmer: From Journeyman to Master is an insightful book for anyone interested in learning the principles of software development. Written by the experienced software developers, Andrew Hunt and David Thomas, the book uses base examples from Traveling Sales Person Problem and design principles in Programming to explain the foundations of coding, such as debugging and refactoring.

Chapter 1 introduces the two authors and focuses on understanding what it takes to become a pragmatic programmer, and how the Pragmatic Programmer edicts can help shape one’s work. In this chapter, the authors use the Traveling Sales Person Problem as an example to explain their edicts such as “Always participate in Pas 99% of programming is rework.” Through this example, readers can understand that they need to plan their programming tasks and use refactoring techniques to achieve the best outcomes.

Chapter 2 looks at the software life cycle, from building a prototype to supporting a released version. As the authors explain, “A best practice is any practice that reaches the highest level of quality or performance for a given task.” Using this as a basis, they discuss various useful practices for mastering the software life cycle, such as setting good objectives and refactoring judiciously.

Chapter 3 examines the art of debugging from finding and fixing bugs to applying the strategies of debugging. The authors advise readers to “think outside the box” when it comes to debugging and employ the strategies of exploring, predicting, disproving, and mitigating.

Chapter 4 is all about the principles of good design. The primary focus of this chapter is on the DRY principle (Don’t Repeat Yourself). The authors explain in detail how to apply this principle and make their code more maintainable and robust. To do this, they present different design principles, such as abstraction and separation, and how to use OOP techniques.

Chapter 5 discusses its namesake, “Pragmatic Paranoia”, or being aware of the mistakes and security threats one is likely to face when developing software. The authors use the example of a bank robbery to explain why and how one should have pragmatic paranoia when programming.

The last chapter presents ways to improve productivity and the way the authors program. The authors’ techniques, from using automated tools to learning new skills, can help anyone who wants to be a Pragmatic Programmer. The authors also discuss the importance of leveraging the power of the community and using version control systems to track versioning and the changes made to the code.

Overall, The Pragmatic Programmer: From Journeyman to Master is a great book for any aspiring programmer. It contains practical advice, as well as lessons from highly experienced software developers. Its diverse examples and striking analogies will help readers gain insight into the way programming should be done.

Assassin's Creed Atlas

Assassin's Creed Atlas