понедельник, 11 апреля 2011 г.

Маркетинг vs Разработки

Не знаю на сколько адекватна тема топика, тому что будет изложено ниже. Так или иначе хочу поделиться вот такими мыслями.

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

Но при детальном изучении портфолио понимаешь, что половина реализованных проектов имеют столько общего с высоконагруженными системами сколько персональный сайт Сысоева с Web дизайном.

Ну, предположим, реализовали они какой-то крупной финансовой группе Web-сайт. Ну что, кто-то считает что там больше 20-50 тис. хостов в неделю? Ну вспомните, когда Вы последний раз заходили на сайт банка, в котором храните деньги. Я один раз, в жизни зашел, чтобы посмотреть телефон поддержки.

Или вот сайт популярного футбольного клуба. Да сайт красивый, там про футболистов, интервью, но какую нагрузку он создает? Да и чем он нагружать может? Разве что контентом, но тут работы на пол дня для толкового системного администратора.

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

Но вот в чем суть-то. Все эти сайты из портфолио они имеют больше маркетинговую ценность для Web-студии, 90% знают компанию "Бла-бла-бла Банк" (выдумал), и если Вы/Ваша студия писала им сайт, то средний обыватель подумает: "Ну, это круто! Все знают банк "Бла-бла-бла Банк", и все знают facebook и google, значит эта студия сможет реализовать любой проект, будь-то Социальная сеть, или Мега-портал, или файловый хостинг".

А знаете, что парадоксально. Они действительно могут...

Нет, нет, они реализуют Вам прекрасную соц.сеть, которая с легкостью выдержит 10-15 тис. хостов в день (это где-то 1000 пользователей) (НО заплатите Вы, конечно, как за клон facebook-а).

Вы запуститесь, а дальше...
70% - не наберут и 250 постоянных пользователей, через год закроются, так как финансировать такое мероприятие, затея не из дешевых.
20-25% - смогут дотянуть до 500-700 постоянных пользователей и тоже закроются.
3-4% - скорее всего сумеют втюхать данный проект какому-нибудь инвестору и радоваться жизни, проект скорее всего загнется, если инвестор не наймет толковую команду, которая потихоньку все перепишет.

У остальных, естественно, возникнут проблемы с нагрузками, но к тому времени уже пройдет год-два как Вы запустились, и Вы решите просто проапгрейдить железо и Вам этого хватит еще на полгода-год. А через 3 года, когда будет тяжко, Вы уже не пойдете к той мега-популярной Web-студии, так как много воды утечет. Да и за 3 года столько всего поменяется. Web на месте не стоит. А может появиться понимание того, что такое высокие нагрузки.

Подумайте, кто работает в Web-студиях на должности программистов? Зачем студии держать толкового perl-программиста со знаниями c, или гуру unix систем, или профессионального js-разработчика? Ведь 90% задач сводиться к написанию визитки или интернет-магазина на базе какой-нибудь CMS, где важен дизайн и CEO-оптимизация.

Какая репликация, какой шардинг, какой Memcached, какие нереляционные БД? Зачем?!?
Тут все сводится к вопросу нужно ли использовать для визитки шаблонизатор.

Нет. конечно есть Web-студии, которые реализую серьезные проекты, но как правило они ориентированы на иностранного заказчика (рынок слишком узкий), реализовав для них 2-3 действительно серьезных проекта, и продолжая из поддержку, но они не вешаются на первый попавшийся проект тем более от отечественных заказчиков.

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

Представьте высоконагруженную систему без поддержки:

Мне надо опимизировать БД, я иду в Web-студию и говорю, у меня проблема с БД. Стоп... Не так...

Сайт начинает очень медленно работать. Вы идете в Web-студию и говорите сайт медленно работает, что делать? Они говорят:
- N-килобаксов и мы в течении 3-5 дней ищем и устраняем проблемы.
- Еб.. 3-5 дней! От меня пользователи разбегутся! Мне надо сейчас!
- К сожалению мы не можем прям сейчас, разработчик(и), который писал(и) Ваш сайт ушли/умерли/в отпуске/в отгуле/верстаю срочно кому-то визитки.
Вы с матюгами:
- 2*N-килобаксов!
- Секундочку! (деньги делают чудо). Сережа посмотри, что там с сайтом товарища.

Какой-то непонятный Сережа мыкается 2 часа по сайту и выдает: "Проблема с БД. Надо оптимизировать! Как?!? Сервер БД уже давным-давно на отдельной мега-машине!?! Ну давайте попробуем Memcached. Но у Вас код не заточен, чтобы его использовать, поэтому нам надо 2 недели, чтобы все переписать (кто не знает, но на практике через 2 недели никогда ничего не бывает). И Вы понимаете, что дешевле было держать 2-3 Сереж-программистов у себя в офисе полгода, чем решить эту проблему с БД. А пользователи тем временем бегут с Вашего сайта, потому что он превратился в унылое медленно "Г".


Маркетинг сила, часто на одном только словоблудии и красивых картинках можно получить проекты рассчитанные на высокие нагрузки, но будет ли это рабочим вариантом не так уже и важно. Почему? Для заказчика, потому что он ничего не понимает, для Web-студии, так как только 1 из 100 проектов действительно станут популярными в сети.

В общем парадоксальная ситуация в разработке серьезных проектов "КАЧЕСТВО ПРОГРАММНОЙ ЧАСТИ" часто имеет меньшее значение, чем дизайн, ceo или promotion. Как Вам такой вывод?

С ув. antonfin.

6 комментариев:

  1. Однозначно :).
    Я знаю веб-студию, которая делает веб-сайты для больших компаний: банки, торговые сети...
    Дизайн их сайтов отличный, но только каждый второй сайт в их портфолио подвержен SQL-injection. Когда я поговорил с разработчиками этой веб-студии, то оказалось, что они даже не знаюю, что такое SQL-injection :)

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

    ОтветитьУдалить
  2. Мало конкретики. Студии редко занимаются разработкой вебсервисов которые должны приносить прибыль, в основном сайты это дополнение основного бизнеса.

    ОтветитьУдалить
  3. @Vitaliy Yanchuk

    Я не настаиваю на научном подходе к данной проблеме и поливать грязью конкретные Web-студии не цель данного поста.

    Есть определенная проблема, если ты хочешь решить задачу: реализовать свой файловый/видео/фото хостинг или реализовать социальную сеть, то по сути тебе не к кому обратиться, так как наши Web-студии это сделать не могут, их конек маркетинг, а не профессиональная разработка высоконагружанных сайтов!

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

    ОтветитьУдалить
  4. Cогласен студии такого не делают, я просто не понял кто это идет в веб-студию за реализацией файловый/видео/фото хостинга. У студии есть Битрикс или Уми-цмс, они на нем и клепают.

    ОтветитьУдалить
  5. @ Vitaliy Yanchuk

    Посмотри хотя бы сюда http://alexeymas.livejournal.com/369893.html, и какие Web-студии предлагаются. Возможно это и серьезные компании, но вот высоконагруженных проектов у них в портфолио я не нашел (возможно плохо искал)

    ОтветитьУдалить
  6. Теперь я знаю кто идет за веб-сервисами в веб-студию :-)

    ОтветитьУдалить