Поддержка устаревших браузеров
Поддержка устаревших браузеров, как правило, накладывает ограничения на функционал и гарантированно увеличивает стоимость разработки и сопровождения.
Кроссбраузерность, несомненно, важна. Но любые требования должны иметь под собой рациональную основу.
Многие крупные интернет-проекты (например, Google, Яндекс, YouTube, VK) или полностью отказались от поддержки устаревших версий Internet Explorer или поддерживают их лишь частично и выводят пользователям сообщения с рекомендацией обновить свой браузер. Доля пользователей устаревших IE сейчас составляет меньше 1%, поэтому такое решение является вполне обоснованным.
Если же поддержка устаревших браузеров всё же требуется, то есть две популярные методики её реализации — progressive enhancement (прогрессивное улучшение) и graceful degradation (изящная деградация). В первом случае сайт делается под устаревшие браузеры, а затем к нему добавляются современные элементы. Во втором случае — сначала делается современный сайт, а затем для старых браузеров отключаются неподдерживаемые ими функции. Оба этих подхода позволяют создавать качественные и сопровождаемые решения, так как учитывают тот факт, что не все современные функции можно заставить корректно работать в браузере, которому больше 10 лет. Тем не менее, часто встречается требование абсолютной идентичности в работе сайта на всех платформах. Как правило, это приводит к существенному урезанию функционала сайта и к созданию трудносопровождаемых решений (программисты такой подход красноречиво называют «костылями»: это, конечно, тоже способ передвижения, но не самый эффективный и грациозный).