В программировании "костыль" (workaround) — это временное или не самое элегантное решение проблемы, применяемое, когда более правильный способ реализации невозможен, слишком сложен или требует слишком много времени. Хотя термин часто используется с негативным оттенком, в реальной практике без костылей не обходится ни один проект. Почему приходится использовать костыли? Иногда используемый язык программирования, библиотека или фреймворк просто не поддерживают нужный функционал. Например, в старых версиях браузеров не было flexbox и grid, и разработчикам приходилось использовать таблицы для верстки или хаки с float. В реальных проектах время всегда ограничено. Если на продакшн-сервере внезапно появляется критический баг, его нужно исправить максимально быстро, пусть даже не самым красивым способом. Потом можно будет вернуться и рефакторить. Часто программистам приходится работать с кодом, который писали другие люди, возможно, много лет назад. Если этот код плохо документирован или слишко