TGStat
TGStat
Введите текст для поиска
Расширенный поиск каналов
  • flag Russian
    Язык сайта
    flag Russian flag English flag Uzbek
  • Вход на сайт
  • Каталог
    Каталог каналов и чатов Региональные подборки Тематические подборки Платные каналы Поиск каналов
    Добавить канал/чат
  • Рейтинги
    Рейтинг каналов Рейтинг чатов Рейтинг публикаций
    Рейтинги брендов и персон
  • Аналитика
  • Поиск по публикациям
  • Мониторинг Telegram
  • Продвижение
    Реклама через Яндекс Бизнес Реклама в каналах через TGStat Agency Реклама на сайте TGStat.ru
Точка сборки

25 Oct 2025, 15:00

Открыть в Telegram Поделиться Пожаловаться

Сижу разбираюсь в линуксовых дисплей-серверах. X11 — типичная "переуниверсализация" от слишком умных инженеров из MIT. Мне очень хорошо знаком этот задор и горящие глаза — а давайте сразу всё сделаем ПРАВИЛЬНО! Я и сам этим часто грешил.

В итоге вместо того, чтобы сделать простую и эффективную отрисовку конкретной кнопки, такие программисты предпочтут написать ФРЕЙМВОРК по отрисовке любых кнопок. Всё это проходит под соусом "а вдруг нам понадобится поменять шрифт? а мы такие хоба — и в одном месте конфиг поправим!".

Но у всего есть цена. И кроме потраченных недель или даже месяцев работы, мы платим усложнением всей системы. А ещё возникающими ограничениями, которые программист в азартном порыве ещё в упор не видит. Допустим, программист предусмотрел скруглённые края кнопок и даже сделал настраиваемые параметры скругления. Потом ещё подумал и сделал изменяющийся цвет обводки, и толщину, и тип линии, и настройки пунктира.

А потом через полгода приходит кто-нибудь из маркетинга и говорит "нам надо кнопку в форме звёздочки, дедлайн через неделю — у нас ивент". Звёздочек в фреймворке не заложил, времени "системно" решать нет, поэтому включается костылинг (или не дай бог пойдёт дописывать фреймворк под произвольную форму кнопок). И вот так, под лозунгами "за всё хорошее и против всего плохого" программные продукты превращаются в говно, которое всё дороже сопровождать и невозможно развивать —проще переписать с нуля.

Это кстати как раз про тех "любителей простых, понятных и неправильных решений", только от инженерии. Как бородатые идеологи придумывают универсальные системы управления гражданами (за что потом десятилетиями расплачиваются миллионы людей), так и бородатые инженеры придумывают преждевременные абстракции, универсализации и автоматизации, искренне считая, что это бесплатно. Для их гордыни может и бесплатно, но не для тех, кто будет иметь дело с долгосрочными последствиями.

В общем, Xorg позволяет отрисовывать графический интерфейс универсально: что удалённо, что локально, через сетевой протокол X11. Сама концепция будоражит — это ж так круто, получить remote-управление "из коробки"! Но для локальной работы за это приходится платить ограничениями в наборе команд, ненужной сериализацией и обработкой сетевых пакетов, и как следствие невозможностью нормально задействовать аппаратное ускорение.

В итоге, ради того, чтобы пару раз в год подключиться к удалённому серверу (камон, кто использует GUI на серверах?), миллионы линуксоидов платят за это снижением производительности своих рабочих машин. Тупо греют воздух на никому не нужном абстрагировании и универсализации. Ради красивого прохождения крайне редкого 0.001% сценария, постоянно жертвуют в 99.999% случаев. И это продолжается десятилетиями (протокол утвердили в 1987), просто потому что слишком умные и горделивые инженеры решили сделать идеально. Проскальзывают параллели с любителями "величия за чужой счёт".

В итоге жизнь, конечно, заставила разработчиков написать менее идеальное и великое решение — Wayland. Лёгкий и лаконичный, простой протокол взаимодействия между программами, которые сами отрисовывают своё содержимое, и композитором, который расставляет это содержимое на экране в виде окон. Т.к. всё происходит без сети — работает шустро и прекрасно рендерится на GPU.

Короче, вывод. Не надо быть слишком умным инженером, который предусмотрел ВСЁ в своём Великом Фреймворке. Лучше делать как можно более простые работающие решения и универсализировать их только тогда, когда уже без этого совсем тяжко, и с пониманием цены, которую придётся за это заплатить. Так больше шансов сделать продукт с наименьшей сложностью (complexity) и наименьшими затратами на сопровождение в будущем.

7.6k 1 78
Каталог
Каталог каналов и чатов Подборки каналов Поиск каналов Добавить канал/чат
Рейтинги
Рейтинг каналов Telegram Рейтинг чатов Telegram Рейтинг публикаций Рейтинги брендов и персон
API
API статистики API поиска публикаций API Callback
Наши каналы
@TGStat @TGStat_Chat @telepulse @TGStatAPI
Почитать
Академия TGStat Исследование Telegram 2019 Исследование Telegram 2021 Исследование Telegram 2023
Контакты
Справочный центр Поддержка Почта Вакансии
Всякая всячина
Пользовательское соглашение Политика конфиденциальности Публичная оферта
Наши боты
@TGStat_Bot @SearcheeBot @TGAlertsBot @tg_analytics_bot @TGStatChatBot