Андрей Коновалов, руководитель проекта «HR-Info.ru – сеть кадровых ресурсов».
Спросите на любом более-менее посещаемом IT-шном форуме – «На чем лучше сделать мой веб-проект (интернет-магазин, сообщество,
корпоративный портал и пр.). Общественность моментально расколется надвое – часть участников будет советовать вам какие-то готовые решения,
CMS различной степени специализированности, а часть непременно и со значением скажет: «Самый лучший вариант – написать с нуля под заказ. Тогда оно будет полностью соответствовать вам и вашей задаче!».
Так вот, как бы логично не выглядели эти слова – в 90% случаев это абсолютная неправда!
Холивар
Вопрос о том, что лучше использовать – решения готовые или индивидуальные, относится к категории «религиозных войн». Сторонники каждого из подходов готовы часами отстаивать свою правоту. Одни кричат, что чем каждый раз велосипед изобретать, проще взять готовое и настроить под себя, другие упорствуют, что чем пытаться разобраться с чужой логикой, лучше свою нагородить.
Однако, в отличии от словесных баталий поклонников разных браузеров, в этом споре истина нащупывается чуть проще.
Итак, рассмотрим факты. И аргументы.
Индпошив
Что может быть лучше костюма, сидящего точно по фигуре? Вещь, которая полностью соответствует не только вашему телу, но и вашему характеру, ведь хороший портной – он и психолог, и художник, и поэт… Так и веб-сайт, созданный заботливыми руками мастера с нуля по вашему вдохновенному техзаданию, нежно обволакивает ваш бизнес, окружает вас негой и любовью…
В то время как бездушные «коробки» вываливают на вас свои жесткие шаблоны и заготовки, давят в тисках предопределенности, не дают полностью раскрыться вашей индивидуальности!
Примерно так говорят сторонники «индивидуальных решений». Подразумевая при этом, что мастер – всегда с большой буквы «М», а готовая CMS – непременно малофункциональная поделка.
Но так ли это на самом деле?
…только в профиль.
Вот типичный путь хождения заказчика сайта за индивидуальным решением.
Вначале приходит понимание того, что Нужен Сайт. Скажем – интернет-магазин. Потом начинаются поиски исполнителя, и самый главный вопрос, который интересует заказчика (помимо сроков и цены) – «А вы что-то подобное раньше делали?». Можно ли заказать написание серьезного интернет-магазина людям, никогда за такую задачу не бравшимся? Ответ очевиден – нет, нет, и еще раз нет.
Итак, техзадание согласовано, предоплата внесена, процесс пошел. Заглянем программисту через плечо. Вот Мастер, написавший «с нуля» уже не одну дюжину магазинов, усаживается в эргономическое кресло, взмахивает гибкими пальцами над клавиатурой, и… Но, что мы видим? Вместо того, чтобы открыть «блокнот» и вывести гордое <HTML>, он открывает свои наработки с прошлых проектов и копирует их в ваш… Собственно, тем и ценен для разработчика его опыт – однажды решив некую задачу (успешно сделав свой первый магазин), он будет копировать это решение в последующих, для экономии времени и уменьшения риска ошибок. Постепенно добавляя туда все новые и новые элементы.
Более того, чаще всего в процессе «индивидуальных разработок» у разработчика создается своя собственная, так называемая «внутренняя» CMS, включающая готовые решения типовых задач, с помощью которой и строятся сайты. Этот факт прямо подтверждает рейтинг
Tagline-2008: согласно опросу, CMS в работе использует 95% российских
веб-студий, из них 68% - пользуются «внутренними» системами управления.
Что же это получается? «Индивидуальное»-то решение на поверку оказывается вполне типовым, только никому не известным! Так вокруг чего же столько копий ломалось? Почему столько пафоса вокруг «индивидуальных» решений?
А этот вопрос находится уже в плоскости психологии. Туда и переместимся.
Ручная работа!
Основных причин, по которым «индивидуальные решения» еще массово держат свои позиции, три. Все они, так или иначе, завязаны на психологический фактор и все они являются, по сути, ошибками.
Причина первая – «индивидуальную» работу легче продать дороже. Действительно, на первый взгляд, гораздо проще назначить высокую цену за «написание с нуля», чем объяснять, почему это работа по созданию сайта на готовой системе обойдется дороже ее стоимости.
Однако опыт вполне высокооплачиваемых партнеров таких систем как NetCat и 1С-Битрикс показывает, что проблема здесь не в объективной ситуации, а всего лишь в том, что менеджеры «студий индпошива» не умеют донести до клиента смысл и содержание их работы.
Причина вторая – «индивидуальное решение» привязывает клиента к разработчику, не давая ему возможности уйти в другую студию. Т.е. студия получает постоянного клиента не потому, что тот так доволен услугами, а потому, что в получившемся продукте никто больше не разберется.
Порочность этой практики очевидна – довольные клиенты и так не уходят от своих партнеров, а недовольный, но не имеющий возможности уйти без проблем клиент способен превратить жизнь студии в ад.
Причина третья – российские программисты в массе своей не верят в умственные способности своих коллег :(
От готовых CMS изначально ожидают невероятных «глючностей» и жестких ограничений, в то время как неказистость собственных разработок воспринимается естественной и даже милой.
Это приводит к тому, что студии тратят дорогущее время своих разработчиков на создание и совершенствование внутренней системы, вместо того, чтобы сосредоточиться на выполнении собственно заказов.
Пилот Косяков
Качество любой CMS (
движок для сайта) напрямую зависит от уровня профессионализма его разработчиков, это очевидно. Однако есть и нюанс – в разработке «внутренней» системы участвуют только сотрудники данной студии, а «коробочную» CMS совершенствуют еще и сотни разработчиков, использующих эту систему в своей работе (через обратную связь с производителем).
В итоге, уровень качества «коробочной» системы зачастую значительно выше, чем у «внутреннего» продукта.
Неположенные удовольствия
Что получает клиент, выбирающий «индивидуальные решения»? В теории – продукт «по фигуре». А на практике? На практике такое решение часто становится ограничителем развития – если через некоторое время появляется желание расширить проект за счет новых функционалов или сервисов, может оказаться, что «индпошив» не расширяем, проект придется серьезно переделывать.
Кроме этого, у «коробок» значительное преимущество в скорости разработки – в них из-за необходимой универсальности изначально заложен избыточный функционал. А вот при «индивидуальных решениях», если у разработчиков в практике не было каких-либо задач, присутствующих в проекте, им придется в буквальном смысле разрабатывать решение с нуля, фактически заставляя заказчика оплачивать их обучение.
Удобство пользователя, как ни странно, тоже часто приносится в жертву при «индивидуальном подходе». «Внутренние» CMS чаще всего не имеют удобных для пользователя инструментов управления, поскольку разрабатываются в первую очередь для удобства разработчика. Соответственно, удобный и красивый интерфейс управления нужно спроектировать и создать. Это стоит денег и не всегда заказчик готов их заплатить, считая, что он привыкнет, разберется и т.д. В то время как в серьезных системах пользовательские интерфейсы присутствуют изначально, как обязательный элемент.
Не все «коробки» одинаково «коробки»
Важное отступление. Возможности различных «коробочных» систем – различны. И наиболее продвинутые из них представляют собой не столько готовые решения для сайтов, сколько целую среду разработки, с готовыми шаблонами и неограниченной свободой творчества.
На отечественном рынке системами такого класса, безусловно, являются два лидера – CMS NetCat и 1С-Битрикс. Эти системы очень сильно отличаются друг от друга (совершенно разная архитектура, инструменты, функционал модулей и состав редакций), но объединяет их одно – они позволяют создавать проекты, полностью соответствующие задаче пользователя, без «создания велосипеда с нуля», но с большими возможностями дальнейшего безболезненного развития.
Так есть ли жизнь на Марсе?
Итак, возвращаясь к вопросу, вынесенному в заголовок. Существуют ли «индивидуальные решения» в веб-разработках? Да, существуют. Но их не более 10%. Это проекты со специфическими задачами, для которых готовые системы управления сайтом никак не подходят. Например, нет смысла переводить на «коробку» Яндекс. Или, скажем, пытаться написать на ней полноценный «Клиент-банк». Или – посадить на готовую CMS управление абонентами сотового оператора. Совершенно очевидно, что все названные проекты требуют других технологий. Но, как правило, под такие задачи готовые CMS и не рассматриваются изначально.
Оставшиеся же 90% проектов – это разработки, подаваемые как индивидуальные, но на деле являющиеся внедрениями внутренних CMS студий-разработчиков. И в подавляющем большинстве случаев все они могли бы быть реализованы с помощью стандартных инструментов серьезных «коробочных» систем за меньшие деньги и меньшее время. И с гораздо большим потенциалом развития в будуще
Так что, в очередной раз слушая волшебный рассказ о точном соответствии сайта вашей фигуре, вспомните – где-то вы уже про это читали…