Cover of the book

100 Mistakes in Software Engineering

By Luis Cordero (116)

In this book I've collected more than 100 stories from software engineering, each story shows a mistake made by the best software engineers in the world, John Carmach, Martin Fowler, Rob Martin, Linus Torvalds, and many others, I've collected the stories they have told across their interactions in the internet, interviews, books, and put them in a single place, the result is an unvaluable list of mistakes to consider on your daily job as a software engineering, that will definitely increase your value as a professional, by giving you situations that you will face, but now with knowledge of what the bests in the industry have done and what they've found to be the wrong paths.

Why did I write this book?

I was doing some research for a project of mine, I stumbled upon some Linus Torvalds posts, with discussions back and forward among other people, while reading those discussions, I read about 5 things that are usually mistakes when doing software, one of them was "don't copy code you don't understand"(you may have saw that discussion as well probably, it's somehow well known), in that moment I thought: "so many incredible engineers have stories, blog posts and books, online with their experience, so just collecting a lot of stories about the things they did wrong must be golden information", so I did just that, I spent several months collecting stories, creating chapters for the book, until it was finished, and the result is remarkable, so many things to learn from!

What you'll get out of this book:

  • Real Mistakes, Real Solutions: Discover the mistakes the experts made and how they fixed them.
  • Better Problem-Solving: Learn to spot and solve common issues in software development.
  • Timeless Advice: Get tips that are useful now and will stay relevant in the future.
  • Easy to Use: Find advice quickly with chapters organized by specific mistakes.
  • Useful for Everyone: Whether you're starting out or experienced, find tips to help you avoid common errors
  • Works For All Languages: The mistakes in the book work for all programming languages, because it addresses the core principles, instead of getting into the specifics.

Some of the chapters in the book

  • One Letter Variable Names
  • Obsessing Over Patterns from Books
  • Thinking that Perfect Code Exists
  • Ignoring the Benefits of Mentorship
  • Choosing Comfort Over Challenging Projects
  • Trying to Make Abstractions From the Beginning
  • Sticking To Only One Programming Language Or Stack
  • Falling for the Latest Tech Too Quickly
  • Getting Stuck in Your Comfort Zone
  • Rushing to Meet Unreasonable Deadlines
  • Overlooking the Importance of Soft Skills
  • Failing to Set Clear Goals
  • Over-relying on Frameworks and Libraries
  • Fearing to Delete Legacy Code
  • Not Establishing Coding Standards
  • Not Balancing Features with Performance
  • Skipping Out on Testing in the Real World
  • Ignoring the Importance of Feedback Loops
  • Overconfidence in Manual Processes
  • Mistaking Activity for Productivity
  • Not Securing APIs Properly
  • Not Considering the Business Context
  • Forgetting About Compliance and Regulations
  • Forgetting the Fundamentals in the Chase of Trends
  • Not Utilizing Performance Profiling
  • Losing Sight of the End Goal
  • Avoiding Learning Basic Command Line Tools
  • Not Valuing Consistency Within Codebases
  • Committing Code Without Testing Locally First
  • Underutilizing Keyboard Shortcuts and Efficiency Tools
  • Bypassing Unit Testing for Speed
  • Assuming All Feedback Is Negative Instead of Constructive
  • Ignoring the Significance of Domain Knowledge in Tech Projects
  • Forgetting that Physical Well-being Impacts Mental Sharpness
  • Transferring Bad Habits from Old Jobs into New Positions
  • Staying Silent During Meetings When Having Valid Points
  • Feeling That Asking Questions Shows Weakness
  • Ignoring The Potential Of Side Projects For Learning
  • Assuming That Quantity Trumps Quality In Portfolio Projects
  • Using Complexity As A Measure Of Success
  • Assuming Your First Solution Is The Best Solution
  • Going Straight to Coding Without Fully Understanding the Problem
  • Not Reconsidering the Big Picture When Making Small Changes
  • Overusing Object-Oriented Principles Can Complicate Things
  • Believing That Software Development Is Only About Writing Code
  • Avoiding Hard Conversations About Project Issues May Worsen Them
$39.99 50% off! $19.99 Buy Now