Do you know the following type of issue? When a process receives broken input it usually produces a broken output. But one of the most commonly observed approaches is to require the process to fix it’s output, even if it’s input continues to be invalid.
Some call this the “shit-in-shit-out” principle, but I try to explain this a little bit differently:
When the gas stations started selling petrol (gas) and diesel they found out that many people put diesel into their petrol / gas cars. This ruins your car and requires the engine to be cleaned. So there were two solutions available:
- Make the hoses in different sizes, so that you can not fill diesel into a petrol car or
- setup a “diesel-removal-station” immediatly behind the pump.
What would your choice be?