Occam's Razor is a problem-solving principle that states: among competing hypotheses, the one with the fewest assumptions should be selected.
In Software Engineering
- When debugging, check the simple causes first (typos, config errors) before suspecting compiler bugs
- When designing, prefer the simpler architecture unless complexity is justified
- When estimating, the straightforward explanation for a bug is usually right
Also related to the concept of Hanlon's Razor: Never attribute to malice that which is adequately explained by stupidity.