Рассылка закрыта
При закрытии подписчики были переданы в рассылку "Профессиональное создание сайтов с помощью CMS SiteEdit" на которую и рекомендуем вам подписаться.
Вы можете найти рассылки сходной тематики в Каталоге рассылок.
Принципы создания движка сайта (CMS) // Общая структура двигателя сайтов // Выпуск 2
Общая структура двигателя сайтов // выпуск 2В текущем выпуске: дана общая структура нового двигателя сайтов: 1) чего принципиально не хватает существующим движками; 2) зачем нужен новый двигатель; 3) мое предположение, почему до сих пор не реализованы эти идеи. В этом выпуске начинаю описывать как собираюсь организовывать команду. В конце выпуска даны ответы на письма читателей. Ну, что, начнем? Сразу скажу, что весь свой наполеоновский план сразу выкладывать не буду. Голова закружится. Начну с описания самых основных компонентов системы. Вот чего не хватает существующим движкам? Стандартизации не хватает. Нет, я не о стандартах между движками. До этого еще далеко. В существующих движках даже внутри ничего не стандартизировано. Вот может кто-нибудь ответить, какие есть связи между модулями у разных движков? Модули обычно написаны как отдельные программы. Такое складывается ощущение, что кроме ядра модулям ничего не известно. Дам простой пример связи: импорт/экспорт новостей. Например, есть два модуля: новостная лента и каталог товаров. Новостная лента позволяет в себя импортировать новости из других сайтов или из других модулей. Каталог товаров позволяет экспортировать информацию о своих изменениях в любой другой модуль или во вне сайта. Таким образом, пользователь, установив оба модуля может их объединить. И новостная лента будет автоматически отображать все изменения внутри каталога товаров! Как вам такая фича? Да, нельзя забывать, что этот пользователь не программист. И все операции по объединению должны быть прозрачными для любого неспециалиста. А теперь, если подумать немножко над такой возможностью, прикинуть перспективы, чего еще не хватает в существующих движках? Каких подобных фич не хватает? Не знаю как вам, а мне многие движки напоминают старый советский трактор. Такие они неудобные и очень громко тарахтят. Ладно, на тракторе хоть что-то можно сделать. А на этих движках даже простого (см. выше) не выполнить без изучения программирования и последующей за этим переделки кода. Программист себе еще как-то и что-то сделает. А конечным пользователям как быть? Общая структура двигателя такова: ядро как специализированная операционная система, обеспечивает стандарты обмена информацией между приложениям, которые устанавливаются отдельно для расширения базовых возможностей системы. Все это очень напоминает обычную операционную систему, типа Windows или Линукс. Посмотрите, как прост и удобен в использовании любой компонент... не побоюсь этого слова... Microsoft Office. Не хмурьтесь, для конечного пользователя он действительно удобен. Главное для них ведь результат. И желательно с наименьшими накладными расходами. Такими же простыми и удобными должны быть приложения для операционной системы сайтов. Чтобы можно было поставить с предустановленными настройками и сразу поехать. Зачем нужен новый двигатель? Или вообще зачем нужен двигатель сайтов? Начну с того, что в Интернете есть две категории граждан. Бездельники, которые лепят сайты не понятно зачем, без всякой цели и уж тем более стратегии. И остальные, которые имеют цель, а иные даже стратегию. Вторая категория делает сайты для извлечения прибыли (не только деньги). И этим людям обычно не до программирования. У них другие задачи. Эти задачи не так уникальны как кажется, если их разбить на более мелкие задачи. Например, возьмем сайт знакомств. Разобьем его на части. Любой сайт знакомств состоит из: каталога анкет, регистрации (авторизация, подтверждение и пр.), поиска по каталогу по определенным полям, работа с фотографиями (см. редактор у самого навороченного движка http://corp.mambo.ru/), персональный чат для общения тет-а-тет, почтовый робот. Остальные не буду перечислять. Вот эти компоненты можно создать как мощные приложения для универсального двигателя и их можно будет использовать как для сборки сайта знакомств, так и во множестве других сайтах. Каталог анкет где еще можно использовать? А поиск? А редактор фоток? Наверняка не только на сайтах знакомств. Улавливаете изюминку? В результате получается, что для организации сайта знакомств, нужен хитрый инсталлятор всех этих компонент, который проинсталлировав сам на автомате создаст нужные связи (см. выше) между ними. И сайт знакомств готов! Итак, такой двигатель нужен, чтобы раз и навсегда решить неуникальные задачи, которые стоят перед любым сайтостроителем. Упростить до максимума их инсталляцию и настройку. Создать стандарты на внутридвижковые связи между приложениями (модулями). Ядро собственно и отвечает за эти связи. И почему эти идеи до сих пор не реализованы? Люди, которые строят себе сайты, например, предприниматели, зачастую плохо разбираются в двигателях сайтов. И как следствие, толком не могут выдвинуть требования к ним. Точнее могут, но вот в виде технического задания, понятного программистам, они не могут. В результате упущено очень важное звено между ними: постановщики задач. Которые могут разбираться в проблемах сайтостроителей (тех же предпринимателей) и могут четко донести это в виде технического задания до программистов. Вот потому у нас до сих пор так все плохо. Хотя и не очень. Есть все-таки движки, более-менее удовлетворяющие запросы клиентов. Но сразу все удовлетворить они не в состоянии. Да и возможности у них один процент от того, что хотелось бы. Возьмем хотя бы движок http://corp.mambo.ru/. Это ведь супероружие в руках предпринимателя. Почти на все 100 процентов автономное. Поставил, и этот сайт-робот может спокойно полгода или год приносить прибыль. Потом придется его модернизировать, конечно. А ведь в нем ничего такого уникального нет. Особо уникального. Просто хорошо поставленная задача и отлично выполненная работа программистов. А сейчас они занимаются приятным делом — добавляют новые функции и получают прибыль. Ну, ладно на других смотреть. Мы тоже можем все, что захотим. Надо только задачу поставить грамотно. План составить. И выполнить в кратчайшие сроки. КомандаЯ сначала думал начать уже описывать базовые принципы, но решил просто ответить на вопросы. А принципы подождут. В следующем выпуске напишу. А то не о чем будет потом поговорить:) Итак, письма читателей: Здравствуйте, Хусамов Сухроб. Сразу скажу, рассматривать чью-либо кандидатуру я не буду. Вы сами решайте, готовы ли участвовать в проекте или нет и какой вклад можете внести. Я никого не нанимаю на наемную работу. Оплатой будет конечный продукт, который вы сможете использовать будто сами создали с нуля. Еще письмо: Привет, заинтересовала твоя рассылка
по поводу движка сайтов. И еще одно: Здравствуйте! Участие в команде творческое. То есть можно свободно вносить свои предложения. Немного расскажу на каких принципах собираю разработчиков-участников. Продукт я замышляю коммерческим, с разными версиями по функциональности и, соответственно, стоимости. Далее в рассылке буду обосновывать почему именно так. Но, окончательно это будет решаться ядром команды. Под ядром команды я понимаю тех людей, чей вклад в общее дело будет самым высоким. Сначала это конечно программисты. Когда команда будет собрана, этот и другие важные вопросы будут решены окончательно. А пока я даю лишь базовые установки проекта. По поводу языка программирования. Я буду предлагать Парсер. Настоящим программистам его изучить и использовать ничего не стоит. За две недели можно спокойно изучить от корки до корки. Но, предполагая, что рассылку читают приверженцы двух 'фронтов' (Парсер и PHP), то предлагаю присылать мне письма с описанием ключевых достоинств того или иного языка. В рассылке и обсудим, какой язык выбрать. В конечном варианте предполагается программирование на системной языке (С++ или др.). Дабы сделать коды ядра закрытыми и более быстрыми в исполнении. Также предлагаю сделать возможность написания приложений (модулей) как на системной языке, так и на скриптовом (Парсере или PHP, кстати, тут даже лучше сделать возможность использования обоих языков:). Для чего это нужно? А чтобы была возможность быстрой разработки приложения без использования тяжелых средств типа MS Visual Studio C++. Время разработки. Пока точного расчета я не делал. Грубая прикидка: 4 месяца с помощью команды из 10-20 разработчиков до получения первой версии. Сроки я собираюсь уточнять после того, как появятся конкретные люди с конкретными ресурсами как по навыкам, так и по свободному времени. И конечно для определения сроков следует выдвинуть требования к первой версии и составить план. Критерии к участникам. Критерии хотите? Чтобы шкала была? Подходите к шкале, замеряетесь и сразу определяете подходите или не подходите. Так что-ли? Типа и думать не надо. Уж даже не знаю что и ответить. Главное это ваше личное желание добиться успеха в виде конечного работоспособного продукта. А как это вы сделаете это уже решать вам. Значит так, будем считать, что это были ваши предварительные заявки. Окончательные заявки лучше делать через несколько выпусков. Когда картина проекта более-менее прояснится. А пока про себя продумывайте, какие ресурсы у вас есть (время, навыки и пр.), а нужен ли вам лично такой двигатель сайтов, готовы ли вы идти до победного конца и т.п. А я тем временем, в последующих рассылках, расскажу как собираюсь вести проект, как будет организована паралелльная работа команды разработчиков, как мы будем тестировать и собирать конечный продукт и вообще, отвечать на прочие организационные и технические вопросы. Да, пока не забыл, я не разобрался с одним вопросом. Пока мы тут будем обсуждаться, то придет лето, пора отпусков. Как у вас с этим делом? Будет ли время и желание работать над проектом летом? Или захотите на осень отложить? Обязательно пишите свои соображения по этому поводу уже сейчас. Я не хочу откладывать наш проект на потом. Хочу сделать быстро. И мне нужно уже сейчас соображать как летом вести проект. Жду писем на эту тему. Поехали дальше. Вот интересное письмо поступило в нашу редакцию: Здравствуйте, khusamov. Если можете, то пишите и немедленно! Раскрутку обеспечу! Лучше конечно, если вы свою рассылку откроете. В таком случае в моей рассылке будет постоянная ссылка на подписку. И анонсы выпусков, конечно. Не думаю, что стоит в данной рассылке публиковать уроки. Люди все-таки подписались под другой аннотацией. Хотя, можно спросить аудиторию. Может никто не против будет. Я не знаю зачем нужна новостная группа. Это типа дискуссионного листа на Сабскрайбе? Пока можно повременить. Появятся участники — тогда и создадим эту группу. Сейчас просто некому и не о чем говорить толком. Итак, от Алексея ждем первый выпуск рассылки с уроками по Парсеру. Раскрутку я обеспечу (организатор я или нет:) Еще письмо: gig <igor2@***> На С++ написать реально. И в будущем стоит это сделать. Но сейчас это не ко времени. Сейчас надо концепцию обкатать и понять что она работоспособная. Быстро это можно сделать только на скриптовом языке. А если вы подробно можете, то читайте выпуски и шлите свои реальные выкладки! Обязательно опубликую. А сейчас цитирую из разных форумов: Габдуллин Эдуард // 23.03 Спасибо! Принял к сведению! Буду рад, если присоединишься к обсуждению проблем CMS. Сразу скажу, что скорей всего твои коды потерпят значительные изменения. Будь готов. Мы же делаем принципиально новую систему! Да, человек попросил советы и предложения относительно сайта HimOil.ru. Окажите содействие! Еще сообщение: keep Конечно будет! Я предложу свою концепцию. Расскажу как собираюсь в КОМАНДНОЙ работе ее реализовать. Ну, а дальше будет обсуждение, внесение поправок. Работа творческая, но с жесткими сроками и жестким руководителем:) В частности, одна из главных задач руководителя довести дело до ума:) georgick Разрешаю не делать! Если для вас лично это не реально, то я вам не завидую. Мне это реально. А заметки xekc я уже прочел. Очень оптимистично! И вполне реально. Не все сразу, конечно. Лучше расскажите, что реально для вас сделать:) Про парадигму не понял. Кстати, для всех публикую адрес xekc: http://xekc.livejournal.com/ Владимир (xekc) в своем журнале описывает Хорошую Систему, подразумевая CMS будущего. Думаю, вы его еще не раз услышите. И еще был пост от georgick-а: georgick А мы сходимся в мыслях:) Я всегда был уверен, что все люди думают об одном и том же. Я внимательно прочитал ваш текст, Gosha (georgick), и пришел к выводу, что мы говорим и думаем об одном и том же. Особенно, если судить по последнему абзацу. А по поводу смысла мы еще поговорим на просторах моей рассылки! Сразу скажу, я не собираюсь делать CMS для определенных категорий сайтов. И нигде об этом не писал. Это вы мне лишнее приписываете:) А говорить лучше не с разработчиками (хотя и имеет небольшой смысл). Говорить лучше с клиентами. Которые и будут в своей работе движок использовать. Они гораздо лучше знают, что им нужно:) Далее мне дали ссылку на нечто: Чудовище (qmax) Обращаюсь ко всем. Там все на английском. Если кто знает эту систему http://redfoot.net/ (а вдруг и использует) или сможет сходу перевести, прошу прислать хотя бы тезисно что это такое. Я пока буду переводить много времени пройдет. Единственное, что выяснил, там все на Питоне!
РезюмеИтак, вкратце о главном в этом выпуске: 1. В существующих движках нет стандартов обмена информацией между модулями. На мой взгляд, упущение огромнейшее. 2. Двигатель должен быть специализированной операционной системой с устанавливаемыми в него приложениями. Пока обозначил, что в такой системе будет ядро, отвечающее за связи между компонентами и будут, устанавливаемые отдельно, приложения (модули). 3. Проблема с постановщиками задач есть. 4. Я никого не принимаю на наемную работу. В команду могут войти любой желающий. Оплатой считается конечный продукт. Участие в команде творческое, можно вносить любые предложения на обсуждение. 5. Продукт скорее всего будет коммерческим. С несколькими вариантами поставки. Окончательно это будет решать ядро команды. 6. Язык программирования Парсер или PHP. Окончательно это будет решать ядро команды. 7. Главный критерий выбора участника это его личное огромное желание. Если желание подходит по критерию, то вы сможете и Парсер изучить и программирование в общем и PHP и XML и... в общем человек может все! 8. На С++ и JavaScript-е будем писать чуточку позже. Сейчас концепцию надо обкатать до действующего продукта. 9. Что мы сейчас делаем? Сейчас пока обсуждаем концепцию, по-тихоньку набираются предварительные заявки, конкретизируется форма командной работы, определяются цели и стратегия в общем, затем определяется ядро команды, запускается первый этап (создание первой экспериментальной версии) и... что у нас там по стратегии? А, еще стратегии нет? Всем домашнее задание: написать вчерне свой вариант стратегии*! И ко мне в ящик! Опубликую и будем обсуждать. На сегодня все. Всем пока! Ссылки по теме:Хорошая Система (заметки о CMS
будущего) Сообщество на ЖЖ RU_CMS (пишут
непонятно о чем): Форум на официальном сайте скриптового языка программирования
Парсер (хорошая техническая поддержка): Ководство, как основа для создания дизайна, интерфейса и
юзабилити в нашей будущей системе (кратко и емко): Дизайн пользовательского интерфейса (В. Головач), как основа
для создания интерфейсов (вкусно): Вот на кого следует равняться (пример отличного
специализированного движка, к сожалению доступен только front-end): В следующем выпуске: продолжим темы про общую структуру двигателя и организацию команды. В частности, будет рассказ о навигации по сайту и приложениях как модулях системы. Выпуск выйдет на выходных. Всего доброго! _________
|
В избранное | ||