bash.im ithappens.me zadolba.li
12649

Деды воевали, мы не отстаём

Занимаюсь поддержкой и доработкой модуля CRM биллинговой системы. По функциональности очень жирный модуль: около 200 визуальных форм, по сути, одно из основных рабочих мест биллинговой системы.

Разработка начиналась около 15 лет назад на средстве разработки, столь популярном тогда на территории экс-СССР, названном в честь древнегреческого города. Тогда это был передовой край IT — визуальное средство позволяло быстро и качественно рисовать пользовательский интерфейс. А архитектура этого средства позволяла дорабатывать стандартные компоненты и классы, разрабатывать свои собственные или использовать сторонние, что повышало качество и привлекательность создаваемого программного продукта.

В отличии от маститых конкурентов, имевших тяжкий груз наследия старого кода, разрабатывали уже трёхзвенную архитектуру, чем немало гордились. Вот, мол, у них надо драйвера базы ставить (драйвера Оracle поставить и настроить — это довольно муторно, если рабочих мест за сотню с лишним), кому-то ещё фреймворк для работы клиента, а у нас тонкий клиент: создал ярлык на экзешник с файл-сервера, и уже всё работает. Конкуренты апеллировали, что клиентские места надо создавать в средствах разработки, которые заточены для работы с БД и прям со структуры базы сами рисуют пользовательский интерфейс (страшный и кривой, зато возиться не надо), а не на вашем комбайне, на котором только утилитки десктопные строгать.

Прошло пяток лет, и тонким клиентом стал считаться веб-браузер. В те годы они, конечно, мало что умели и годились для ввода пары строчек в простейшей форме редактирования или отображения не слишком большой таблицы (какие сортировки/фильтрации/группировки — забудьте!). Конкуренты, вышедшие на рынок после нас, потешались над нами за отсталость технологий, мы над ними — за убогость интерфейса.

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

Да, у нас разрабатываются небольшие специализированные рабочие места на веб-технологиях (зачастую с бо́льшими трудозатратами, чем потребовались бы для реализации того же на древнем, но удобном средстве разработки), но переписывать огромный продукт, понимая при этом, что это не только потребует совсем других ресурсов и от сервера приложений, и от клиентских мест, но ещё и ограничит функциональность… Мы это время лучше потратим на развитие системы, а я своё свободное рабочее время — на изучение фич новой версии БД, название которой некоторым образом ассоциируется с описанной средой разработки. Всё-таки основная моя специализация — разработка БД.

К чему это я? Да все к тому же баяну, повторяемому тут на каждой странице: холивар вечен и повторяется на каждом витке развития технологий. А каждой технологии своё место и своё применение.