Create a Taxonomy of the possible bugs
V1 Taxonomy
Here is a taxonomy list of common bugs you might encounter when writing code, ordered from most common to less common:
Syntax errors
These are mistakes in the structure of your code, such as missing brackets or semicolons. Syntax errors are usually the most common type of bug and are usually easy to fix.
Logic errors
These are mistakes in the logic of your code, such as using the wrong operator or comparing the wrong values. Logic errors are usually more difficult to find and fix because they don't produce any error messages.
Semantic errors
These are mistakes in the meaning of your code, such as using the wrong variable or function. Semantic errors can be difficult to spot because the code may still compile and run, but it produces the wrong results.
Runtime errors
These are errors that occur while the code is running, such as trying to access an array index that is out of bounds or dividing by zero. Runtime errors can be difficult to debug because they may only occur in certain conditions or at certain points in the code.
Resource leaks
These are bugs that occur when the code fails to release resources that it has acquired, such as memory or file handles. Resource leaks can cause performance issues and may not be immediately noticeable.
Security vulnerabilities
These are bugs that could be exploited by malicious actors to gain unauthorized access to systems or data. Security vulnerabilities are generally the most serious type of bug and should be given the highest priority when fixing.