1. Various libraries redoing the work of others to solve the same problem.
2. Namespace collision.
3. Bloated code.
4. Broken interaction of different libraries.