Справжня ціна введення швидкого виправлення полягає в тому, що коли комусь іншому потрібно ввести 2-е швидке виправлення, він представить його на основі вашого власного швидкого виправлення. Отже, чим довше буде швидке виправлення, тим міцнішим воно стане. Нерідко хак займає трохи більше часу, ніж робити все правильно, поки ви не зіткнетеся з другим хаком, який базується на першому.
Отже, очевидно, що іноді необхідно (або, здається, це є) швидко ввести швидке виправлення.
Одне з можливих рішень, припускаючи, що ваш контроль версій підтримує це, полягає у введенні форка з джерела, коли ви робите такий хак. Якщо людям рекомендується уникати кодування нових функцій у цих спеціальних вилках "зроби це", то з часом інтеграція нових функцій з виделкою буде більше праці, ніж позбавлення від злому. Однак, швидше за все, "хорошу" вилку відкинуть. І якщо ви досить далекі від випуску, що виготовлення такої вилки не буде практичним (оскільки не варто робити подвійну інтеграцію, згадану вище), то вам, мабуть, навіть не слід використовувати хакерство.
Дуже ідеалістичний підхід.
Більш реалістичне рішення полягає в тому, щоб ваша програма була сегментована на якомога більше ортогональних компонентів, а іноді й повністю переписувала деякі компоненти.
Краще запитання - чому невдале рішення є поганим. Якщо це погано, оскільки зменшує гнучкість, ігноруйте його, поки вам не знадобиться гнучкість. Якщо це погано, оскільки воно впливає на поведінку програм, ігноруйте його, і врешті-решт це стане виправленням помилок, і БУДЕ вирішено. Якщо це погано, бо виглядає потворно, ігноруйте його, поки хак локалізований.