Самописный сайт или CMS (движок)?

Статья посвящается НЕ программистам, а заказчикам, которые желают разобраться в вопросе. Идея написания возникла у меня, после прочтения заявок на фрилансе, где иногда попадается что-то такое: «Надо сайт-визитка на самописном движке» или «только с нуля, никаких CMS»…

Что лучше: самописный сайт или CMS?

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

CMS (система управления контентом, движок) — это система, которая обеспечивает создание, редактирование содержимого на сайте (статьи, фотоальбомы, отзывы и т.п.) и управление им.

Действительно ли самописный сайт лучше сайта на CMS?

Как я понимаю, в ваших глазах выглядит как-то так: самописный сайт не будет тормозить, он будет заточен конкретно под мои нужды, можно будет воплотить все желания.

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

Примеры наших проектов на СMS: Терем Белим, VITPA, DM design

Скорость загрузки сайта на CMS.

Почему же некоторые сайты тормозят? Тут проблема скорее в плохой верстке, в отсутствии оптимизации графики и загружаемых файлов, обилия анимации, неправильного расположения скриптов в коде и т.п. Движок к этому не причастен никоим образом. А вот на все перечисленные моменты обязательно нужно обратить внимание — хороший разработчик это понимает и не винит во всем CMS-ку.

Что касается реализации оригинальных задумок: не хочу обидеть вашего внутреннего творца, но часто задумки не столь уникальны, как может показаться. В большинстве случаев есть готовое решение, его можно использовать для проекта. Даже если такого не имеется, программист способен написать его под выбранную CMS. Популярные движки предусматривают написание новых модулей, плагинов — это стандартный подход к разработке.

Все равно хочу сайт с нуля — в чем минусы?

«Но если разницы нет, то почему бы вам просто не сделать, как я хочу?» — скажете вы.

Дело в том, что разница огромная. А именно в трудозатратах, времени и стоимости.

Вот что повлечет за собой написание с нуля:

  • Продумывание архитектуры
  • Написание контроллеров
  • Планирование структуры баз данных
  • Написание всех функций (к примеру: создание статей, авторизация пользователей, загрузка файлов на сервер)
  • Проработка интерфейса админ панели

Сложности создания сайта с нуля

Все это необходимо для сайта, и уже реализовано в движках. По сути, повторить придется очень многое, и выигрыш окажется минимальный. Это как придумывать велосипед.

Минусы движков. Когда уместно сделать сайт с нуля?

Так что там, с нуля вообще не вариант?

Иногда действительно приходится писать сайты с нуля. Это потому, что есть нетипичные проекты. Например, мы делали систему сравнения прайсов или сайт по поиску работы. Готового движка, который обеспечил бы такие возможности, к сожалению, нет.

Хочу отметить, что к дизайну это ничего общего не имеет. Можно реализовать самый странный и необыкновенный дизайн на любой CMS. Речь идет именно о функционале.

Движки действительно ограничены в своих возможностях. Они рассчитаны на большой круг потребителей. Например, многим заказчикам нужен лэндинг, визитка или магазин — все это можно сделать на CMS.

Что можно сделать на CMS — то нужно делать на CMS.

Но вот сайт-портал с каталогом товаров, форумом, системой постинга в ленту, блогом и еще чем-то там не получится реализовать на движке, либо придется очень многое дописывать. В таком случае действительно можно задуматься над созданием самописного сайта.

Думаю, что решение «делать на движке или с нуля» должен принять программист. Так как ему виднее, какие есть готовые удачные решение, насколько сложно будет написать дополнения и т.д.

Кстати, и статичные сайты (если контент не будет меняться никогда) само собой нет смысла делать на CMS. Пример такого сайта — одностраничник для сбора данных пользователей.

А можно короче?

Давайте уже сравним по пунктам, чтобы быстрее закончить и принять решение.

Сравнительная таблица сайтов на CMS и самописных сайтов.

Скорость загрузки. (выделяю первым, так как это обычно главный аргумент заказчиков) Для лэндинга и визитки будет почти одинаковой: как на движке, так и без него. Магазин не будет тормозить, если правильно подобрать систему управления: большой магазин не рационально делать на WordPress, а маленький — на Magento.

Расширяемость. Оба варианта можно расширить при необходимости. Движки всегда предусматривают написание или подключение дополнений. Сайты с нуля всегда можно дописать.

Надежность.  Этот пункт противоречив. С одной стороны, у популярных движков открытый код. Любой может в нем порыться, и кто-то даже попытается найти уязвимость. Таким образом, сайт можно взломать, что иногда происходит (особенно этим грешит WordPress).

С другой стороны, над CMS-ками работают целые команды разработчиков и тестировщиков. Так что уязвимости устраняются очень быстро. А вот самописы никто толком не тестит, и программист может просто забыть написать пару строчек для предотвращения попадания вредоносного скрипта на сервер. Каким бы хорошим специалистом он ни был, но все-таки это человек, а не робот. И никто не заметит уязвимости до того самого критического момента.

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

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

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

Есть готовые бесплатные шаблоны для популярных движков, также и универсальные html-шаблоны.

Поддержка. Вряд ли случится так, что один сайт сможет удовлетворять вас на протяжении 10 лет. Технологии идут вперед, ваши нужды увеличиваются, новые «фишки» появляются.

У популярных движков часто выходят обновления: что-то улучшают, что-то добавляют. Это вам предлагают получать совершенно бесплатно. За поддержку самописного сайта придется платить, да и не все захотят этим заморачиваться.

Качество. Создание системы управления — непростой процесс. Над этим работает обычно целая команда и длится это долгие месяцы. Вряд ли один человек сможет настолько хорошо продумать систему, интерфейс, протестировать ее… Да, такие люди есть, но сайтами-визитками они не занимаются.

Если сравнивать подавляющее большинство движков и самописных сайтов, то первые по качеству побеждают. Особенно, если взять что-то более сложное, чем сайт-блог.

Сложность разработки. Движки созданы для того, чтобы облегчить разработку типичных проектов. Сайт на CMS можно сделать достаточно легко. Даже не очень квалифицированный программист что-то способен соорудить.

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

Время разработки. Естественно, самописные сайты разрабатываются в разы дольше.

Стоимость разработки. Из предыдущих 2-х пунктов ясно, что стоимость сайта с нуля будет намного превосходить стоимость сайта на CMS. Во-первых, крутой программист захочет больше денег. Во-вторых — плата за потраченное время.

Так какой там вывод?

Получилось, что в числовом эквиваленте движки обставили самописы в 2 раза! Что это значит? Это значит, что надо использовать CMS, если это возможно. Для типового сайта готовая система управления дает только плюсы: дешевле, быстрее, универсальнее и качественнее.

Сайты на CMS по многим параметрам превосходят сайты, написанные с нуля.

Это не значит, что сайты с нуля непременно плохие или хуже. Просто часто в них абсолютно нет смысла. Мы не желаем впаривать заказчику то, что ему не нужно. Никакого удовольствия от недовольных заказчиков мы не получаем! Вот поэтому посчитали полезным поделиться информацией и высказать свою позицию.

 

P.S. Блог, который вы сейчас читаете, сделан с нуля. Это потому, что наш программист так развлекается на досуге :) Я вот предпочла бы перенести сайт на популярный движок, чтобы не приходилось так долго ждать нужных мне апгрейдов!