Software Mistakes and Tradeoffs
How to Make Good Programming Decisions
Failed to add items
Add to Cart failed.
Add to Wish List failed.
Remove from wish list failed.
Follow podcast failed
Unfollow podcast failed
Buy Now for $31.26
No default payment method selected.
We are sorry. We are not allowed to sell this product with the selected payment method
-
Narrated by:
-
Julie Brierley
-
Written by:
-
Tomasz Lelek
-
Jon Skeet
About this listen
In Software Mistakes and Tradeoffs, you will learn how to:
- Reason about your systems to make intuitive and better design decisions
- Understand consequences and how to balance tradeoffs
- Pick the right library for your problem
- Thoroughly analyze all of your service’s dependencies
- Understand delivery semantics and how they influence distributed architecture
- Design and execute performance tests to detect code hot paths and validate a system’s SLA
- Detect and optimize hot paths in your code to focus optimization efforts on root causes
- Decide on a suitable data model for date/time handling to avoid common (but subtle) mistakes
- Reason about compatibility and versioning to prevent unexpected problems for API clients
- Understand tight/loose coupling and how it influences coordination of work between teams
- Clarify requirements until they are precise, easily implemented, and easily tested
- Optimize your APIs for friendly user experience
Code performance versus simplicity. Delivery speed versus duplication. Flexibility versus maintainability—every decision you make in software engineering involves balancing tradeoffs. In Software Mistakes and Tradeoffs, you’ll learn from costly mistakes that Tomasz Lelek and Jon Skeet have encountered over their impressive careers. You’ll explore real-world scenarios where poor understanding of tradeoffs leads to major problems down the road, so you can preempt your own mistakes with a more thoughtful approach to decision-making.
Learn how code duplication impacts the coupling and evolution speed of your systems, and how simple-sounding requirements can have hidden nuances with respect to date and time information. Discover how to efficiently narrow your optimization scope according to 80/20 Pareto principles, and ensure consistency in your distributed systems. You’ll soon have built up the kind of knowledge base that only comes from years of experience.
PLEASE NOTE: When you purchase this title, the accompanying PDF will be available in your Audible Library along with the audio.
©2022 Manning Publications (P)2022 Manning Publications