Почему на вашем сайте дорогое обслуживание?
На самом деле все проблемы вы наживаете себе сами. Изучая последние проекты, которые поступили к нам на обслуживание я понял самое главное. Заказчик экономил!
Подрядчики - бракоделы, работали за булку хлеба и банку тушенки. В результате мы имеем массу сайтов, где почти весь контент упакован в статике, а та часть, что попала в админку реализована криво.
Простой пример: Заказчик попросил обновить портфолио. Я зашел на сайт и просто обалдел от уведенного. 40 элементов размещено статически, на каждый элемент своя страница с такой же статикой. Спасибо большое разработчикам, что хотя бы подключили шапку!
В итоге за добавление 10 новых элементов, заказчик заплатил 7 000 руб.
С админкой это стоит - бесплатно.
Разница очевидна.
Еще один пример: На сайте продажи недвижимости есть модуль - апартаменты. Квартиры загружаются фидом (Эксель файл), но картинки нужно загрузить заранее в определенный каталог на сайте.
Это неправильно.
Импорт здорового программиста это фид + каталог с изображениями упакованный в zip архив. Парсер уже сам решает куда ему класть картинки и тд.
Теперь опять к цифрам.
Загрузить фид на текущем парсере - 2 500 руб.
На нормальном - бесплатно.
И это только пол беды. В самом модуле нет возможности добавлять новые корпуса и жк. То есть все жестко зашито в код. Соответственно вся работа в этом направлении стоит денег с учетом качества реализации - больших денег.
А вот так выглядит контроллер, который у нормального человека должен обеспечивать связь с моделью и видом, но тут он сам выполняет всю грязную работу:
Контроллер модуля Апартаменты с проекта на Джумле
Всего этот контроллер содержит около 6200 строк кода. На них большая часть приходится генерация html. Надо ли говорить что этот контроллер помойка и его нужно переписать. Но это очеень дорого, поэтому не переписываем, а тратим кучу денег на мелкие правки.
Как говорил один мой знакомый - проще перезачать чем перевосписать.
Кстати еще подолью масла в огонь. Контроллер, что на скриншоте выше отвечает не только за работу фронта, но и бека😂.
Теперь давайте посмотрим пример как реализуют фронт.
Проект другой, запилено на Yii2.
Плитки портфолио в статике
Плитки портфолио - это тупо статика, необходимо добавлять руками. По клику на кнопку открывается fancybox галерея. Давайте поглядим где она в коде)
Галереи fancybox
А за ними далеко ходить не надо. Они в самом низу страницы. На самом деле даже тут криво. Можно было опустить img тег и тупо проциклить ссылками. Но в любом случае так не делается.
Если заказчику надо добавить или удалить работу из портфолио ему придется лезть в код.
Теперь перейдем к самому важному вопросу.
Как не платить кучу денег на обслуживание сайта?
Тут я постараюсь объяснить все попроще, что бы было понятно большинству заказчиков.
1. Не надо экономить
Каждая зажатая копейка на этапе разработки = большим убыткам в последующем обслуживании.
2. Ищите нормальных подрядчиков
Работайте только с нормальными командами, не стесняйтесь спрашивать. Например, мы запиливаем управление для всех элементов сайта, пишем техническую документацию для разработчиков и бесплатно обучаем сотрудников работе с админкой.
3. Иногда лучше переписать с нуля
Не держитесь за старый сайт. Да вы потратили деньги на разработку. Но огромные, бестолковые траты на обслуживание только усугубляют положение. Переписав старый сайт вы получаете более качественный продукт с низкой стоимостью обслуживания.
А поисковые позиции легко сохранить, мы так что раз делали).
Данная статья больше крик души чем полезное чтиво. Всем спасибо за внимание!