I see this all the time in software development. Developers adding a before/after filter/fix on top of a buggy component instead of just fixing the bug. Developers adding a cache to try and improve performance instead of finding out why the system is slow in the first place. Developers adding more expensive hardware and complex distributed failure scenarios instead of (again) figuring out why it is slow in the first place. Layer after layer added on top of a bad system/component instead of just fixing the damn real problem. It drives me crazy!