Abstraction is considered a virtue in software development. However, practice shows that wrong abstractions cause more harm ...