Писать свой движок или использовать готовую CMS

Михаил Елфимов on Март 31st 2008

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

Каждый раз, когда человек или группа людей собираются сделать сайт, перед ними встает выбор: использовать готовую CMS или писать свой движок. Вот моя мысль: НАХУЙ СВОЙ ДВИЖОК. НАХУЙ РАЗРАБОТКУ. СТАВЬТЕ ГОТОВУЮ CMS.

Если у вас есть цель сделать свою движок или поупражняться в веб-разработке, иными словами, если вы прежде всего программист — пишите свой движок. Но имейте в виду, что через год ваш движок, с многочисленными дырами, убогим дизайном и отсутствием поддержки будет висеть на вашем сайте, а вы будете поглядывать на этого самодельного МОНСТРА, и думать о том, куда лучше мигрировать — на wordpress или drupal. Потому что ни у вас одного, ни даже у целой команды вряд ли хватит энтузиазма поддерживать этот проект. Немногочисленные выжившие open source проекты обладают командой, которая их поддерживает, и цель этой команды — именно поддержка движка, а не создание сайта на нем.

Если у вас есть инвестор — ну, тогда, конечно, надо писать свой движок.

Если же у вас есть цель сделать свой сайт, наполнить его контентом и привлечь туда людей — гораздо разумнее потратить свой энтузиазм именно на выбор подходящего движка и быструю установку движка и необходимых расширений. При этом движок должен быть
а) современный (обновлялся не далее чем месяц назад), поддерживается командой (а не криворуким программистом из Питера)
б) open source
в) OpenID, RSS, FOAF, и все прочие открытые и известные стандарты
г) расширяемый плагинами и имеющий обширную и пополняемую библиотеку
иначе
а) вы окажетесь с куском окаменелого говна через год
б) не сможете поправить запятую в подвале
в) заебетесь с интеграцией, импортом или экспортом
г) будете с тоской взирать на планы команды по поддержке того или иного нововведения

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

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

Ответы на вопросы.
Q: А что делать если движок не делает в точности то, что мне нужно?
A: У нормального движка есть возможности для расширения: плагины и темы. Если то что вам нужно нельзя сделать ни плагином ни темой, значит вы неправильно выбрали движок (например, блогохостинг вместо социальной сети). Если ничего идеально правильного выбрать не получается — выберите максимально правильное и скорректируйте свои требования. Гораздо лучше сделать что-то не совсем так, как вы хотели, чем не сделать совсем ничего, потому что сука движок не подходит.

Filed in - | 9 responses so far

0 нравится не нравится

9 Responses to “Писать свой движок или использовать готовую CMS”

  1. tty01 Март 31st 2008 at 12:35 пп 1

    Не-а. Не могу =) Как посмотрю на код чужой программы - становится плохо. От вордпресса - очень плохо. К тому же все наиболее известные системы разработаны на Западе, что означает их полную несостоятельность в работе с UTF-8 вообще и с русским языком в частности. latin1 only.

    Кое-какие движения к хорошему есть у MediaWiki и phpBB3.

    И у готового софта есть серьезный минус - если его ломают, что происходит нередко, то мгновенно появляется эксплоит и в новостях мы слышим “вломано столько-то тысяч сайтов”.

    [reply to this comment]

    Михаил Елфимов reply on 31 Март 2008:

    Русский язык — wordpress, drupal, mediawiki, elgg поддерживают. Это практически признак зрелости проекта — utf-8 и многоязычность.

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

    [reply to this comment]

  2. Дмитрий Апр 4th 2008 at 11:22 дп 2

    Все зависит от размеров проекта.
    Для небольших проектов покупные цмс — отличное решение.
    А вот если речь идет о больших проектах — покупные движки будут впоследствии тормозить развитие.

    [reply to this comment]

    Михаил Елфимов reply on 4 Апрель 2008:

    Я бы сказал больше зависит от цели проекта. Если цель проекта именно создать большой сложный сайт — скорее всего действительно лучше писать свой движок. И держать для этого команду программистов.

    [reply to this comment]

  3. Михаил Елфимов про мобильные телефоны » Идеи развития мобильных сервисов Апр 8th 2008 at 03:13 пп 3

    […] Необязательно писать свой сервис, для начала можно воспользоваться готовыми движками, существует копия движка хабра (убогая, конечно), существуют готовые движки социальных сетей, такие как elgg.com. С помощью готовых или своих плагинов недостающую функциональность можно дописать самому (в тему, Писать свой движок или использовать готовую CMS). […]

  4. developer Окт 5th 2008 at 10:04 пп 4

    почему сразу убогие копии хабра? Посмотрите http://livestreet.ru - бесплатный движок Хабра :)

    [reply to this comment]

    Михаил Елфимов reply on 7 Октябрь 2008:

    Это и есть убогая копия Хабра. Я, правда, писал про Explay.

    [reply to this comment]

    developer reply on 7 Октябрь 2008:

    про эксплей не знаю, но LiveStreet на убогу не тянет точно

    [reply to this comment]

  5. ML Июль 7th 2010 at 02:58 пп 5

    По моему Михаил Елфимов порит полную чушь.
    Если он считает что для поддержки своей CMS нужна комманда, значит он такой херовый программист.
    Своя CMS в любом случае лучше. Это факт.

    [reply to this comment]

Trackback URI | Comments RSS

Leave a Reply