Диаграмма Ганта на 10 лет: почему конструкторы бессильны
Назовите мне конструктор, который умеет строить диаграмму Ганта на 10 лет.
Я подожду.
Все хорошо, пока вам не нужна нестандартная фича. Конструкторы отлично работают, пока вы делаете то, что они умеют. Визитка. Лендинг. Блог. Магазин на 20 товаров. Всё это они делают быстро и красиво.
Но как только появляется задача, которой нет в списке шаблонов - начинается боль. Как будто вы купили швейную машинку, а она умеет шить только носовые платки.
Расскажу случай из практики. Один закрытый НИИ попросил сделать диаграмму Ганта. Простыми словами: по горизонтали - время (дни, недели, месяцы), по вертикали - задачи. Видно, какая задача когда начинается, как долго длится, какие зависят от других. Обычно используют в стройке, производстве, логистике.
Заказчику нужно было, чтобы по горизонтали отображались дни на 10 лет вперёд. По вертикали - больше 100 задач с подзадачами. Всё должно было нормально показываться, не тормозить, давать возможность редактировать, двигать задачи мышкой.
Я искал готовые решения. Пересмотрел всё, что было на рынке. Ничего не нашёл.
То, что существует, умеет рисовать красивые графики на 5–10 задач. Или на год вперёд. Или без подзадач. Или без возможности двигать мышкой. Всё-равно что искать автомобиль, который везёт, но без колёс.
А то, что могло бы справиться с сотней задач и 10-летней шкалой, стоило как крыло от самолёта. И требовало доработок, что проще написать с нуля.
Для тех, кто в теме: 365 дней умножить на 10 лет = 3650 колонок. Даже при 100 строках с задачами это 36500 ячеек в таблице. Браузер просто ляжет. Любой.
Даже с самым быстрым процессором. Потому что он не приспособлен для такого объёма данных в табличном виде.
В итоге написали свою систему с нуля. Отказ от таблицы, построение сетки на пересекающихся DIV. 3750 объектов на странице браузер тянет. Таблицу - нет.
Это не единичный случай. Я видел проекты, где нужно было привязать цены к 10 поставщикам с разными валютами. Где интеграция с 1С требовала передачи сотен полей каждые несколько минут. Где личный кабинет должен был показывать историю заказов за 5 лет с разбивкой по менеджерам. Где система работала с данными из трёх несвязанных систем.
Готовые решения говорят: "Извините, не предусмотрено". А когда пытаетесь доработать - начинаете бороться с ними. Тратите время, деньги, нервы. И всё равно получаете систему на костылях.
Поэтому сейчас я всегда задаю вопрос: "А что будет через год? Какие задачи появятся через два?"
Если ответ "мы не знаем" - повод задуматься. Готовое решение хорошо для того, что вы знаете сейчас. Но оно не приспособлено к тому, чего не знаете.
Система с нуля растёт вместе с вами. Вы владеете кодом. Можете менять. Не зависите от того, что "не предусмотрели разработчики".
Если задача - "чтобы было" - готовое подойдёт. Если "чтобы росло и развивалось" - нужна система.
Ну а если нужна диаграмма Ганта на 10 лет и 100 задач... даже не думайте про готовое.
Cайт: https://tzlab.pro
· 02.08
Было схожее, нужен был компонент карты (google maps) с возможностью редактировать зоны из h3 ячеек (гексагонов) разрешений от 10 до 4 и видеть существующие зоны. Проблемы начинались если сделать отображение всех зон и отдалить карту. Ну не получится отрисовать без тормозов полмиллиона полигонов поверх карты.
С доработками и оптимизациями нужный эффект был достигнут (видимость хоть всех созданных зон, и возможность редактировать каждую, гладко, без лагов и мерцания при перерисовках, при обзоре хоть всей Канады).
Сложнее было придумать UI, удобный для конечных юзеров/менеджеров.
0
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
коммент удалён
· 02.08
UI это всегда отдельное развлечение - аттракцион из серии собачьи интересы :) Менеджеры не рисовали как они хотели бы видеть? :))) Нечто пожобное с картой у меня было, но по США. Такие "веселые картинки" - не знал смеяться или плакать.
0
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
ответ удалён
· 02.08
Не. Никаких макетов, никаких наметок. Только общая идея, что надо размечать, из каких офисов куда, на какие заказы и в какие дни недели ездят.
Предыдущие идеи по реализации CRM, настроек и распределения заявок забраковали, было сложно и неудобно. Финальные варианты всех интерфейсов изобретал сам.
0
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
ответ удалён