Backwards compatibility and forwards compatibility
When we talk about compatibility, three objects/entities are involved. We say object2 is compatible with object1 if object3 that uses object1 is still working when it switches object1 to object2. […]