Hacker News Digest

15 сентября 2025 г. в 23:02 • kyrylo.org • ⭐ 126 • 💬 152

OriginalHN

#javascript#reactjs

Why do we keep gravitating toward complexity?

Разработчики часто тяготеют к сложности, хотя принцип KISS («будь проще») хорошо известен. Почему так происходит?

Маркетинг важнее простоты

Продать обычную ручку сложно, но если добавить ей множество функций — она станет «продаваемой». Так и в IT: простые инструменты вроде cat работают идеально, но маркетинг продвигает сложные аналоги с громкими названиями. Социальное доказательство и ощущение эксклюзивности заставляют нас воспринимать сложность как признак качества, хотя часто это просто иллюзия.

Что внутри «пирамид»?

Современные системы напоминают пирамиды: много слоёв, зависимостей и абстракций, но внутри может быть пустота. Сложность кричит «посмотри на меня!», а простота остаётся незаметной, пока не проявится её гениальность. В долгосрочной перспективе побеждает именно простота.

React против ванильного JavaScript

React навязывает множество концепций: рендеринг, хуки, состояния, маршрутизация. Отказ от него может сделать вас «аутсайдером», хотя ванильный JavaScript часто решает задачи эффективнее. Компании вкладывают миллионы в продвижение фреймворков, что усложняет выбор в пользу простых решений.

Глубинные причины любви к сложности

  1. Творческий соблазн: Создание сложных систем — интеллектуальный вызов, который приносит удовлетворение.
  2. Технический долг: Наследие старых проектов вынуждает добавлять новые слои вместо упрощения.
  3. Командная динамика: Разработчики добавляют абстракции для «универсальности», что усложняет систему.
  4. Давление инноваций: Конкуренция подталкивает к созданию сложных решений, чтобы выделиться.

Стройте с умом

Создавайте системы с чёткой целью и ценным содержимым, а не пустые лабиринты, которые усложнят жизнь тем, кто будет поддерживать код в будущем. Прежде чем писать сложную абстракцию, спросите себя: решаете ли вы реальную проблему или просто удовлетворяете своё эго?