Краудсорсинговая документация

Пришла идея сделать документацию для разработчиков. Судя по всему, такая необходимость давно назрела. К сожалению, документация быстро устаревает, а бывает и совсем исчезает. Чтобы такого не произошло и её существование не сильно зависело от меня — решил разместить её на GitHub — оттуда уж точно никуда не денется. Надеюсь на вашу помощь в написании.

В общем, вот — livestreet.net

Бесплатные плагины на GitHub

На хостинг исходных кодов GitHub для удобства и распределения разработки переехали следующие плагины:

Плагин «Аватары с Gravatar» (топик, git)
Топики только из личного блога в профиле пользователя (топик, git)
Плагин «Автовысота полей ввода» (топик, git)
Плагин «Lepra-style приветствия» (топик, git)
Запрет изменения топика при наличии комментариев (топик, git)
Плагин «No IE» (топик, git)
Изменение даты редактирования топика при комментировании (топик, git)
Плагин «Улучшенный „Закрытый режим“» (топик, git)
Плагин «No www» (топик, git)

Все знающие и умеющие приглашаются к увлекательному процессу поддержки и развития бесплатных Livestreet плагинов.
Благодарю за внимание.

Чего я хочу для LiveStreet или HighLoad играет значение

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

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

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

Redis(а может и Node.js)
Первое изменение которой я бы сделал в своем проекте — использовал Redis для хранения событий пользователей. Использование MySQL для таких вещей не самоубийсво, но все таки очень тормознутое решение нежели Redis, для которой шустрость второе имя. Ко всему прочему можно добавить возможность publish/subscribe, позволяющая в купе с node.js выводить уведомления такие же как в Вконтакте. Размышляя в этом направлении можно расширить границы использования этой БД. Для осуществления работы можно использовать библиотеку Rediska, разработанную с подачи нашего соотечественника.

Тем кто заинтересовался темой будет уютнее почитать подробности тут, чем читать обрывки вырезанных из текста абзацев — Redis.

MongoDB
Данных у нас много и все они хранятся в реляционной базе данных. Что если нам координально изменить парадигму хранения данных и использовать MongoDB. Выиграем мы и в скорости запросов и в скорости работы с данными продолжая использовать ORM, потому как в MongoDB оно организованно на уровне C++, а не эмулируются как сделанно в данный момент в LiveStreet. Но за это разработчикам стоит сказать отдельное спасибо, т.к это было действительно ценное решение ускоряющее разработку.

Подробности в виде презентации — Mongodb.

PS
Я просто показываю вам что вы можете сделать со своим LiveStreet и какой космос открыт перед вами :)

Если вы в этом шарите думаю все будут только рады перенять ваш опыт :)

Проект Livestreet, Github и Git

Как я создавал проект на GitHub:
  1. Форкнул проект на GitHub — github.com/livestreet/livestreet
  2. Клонировал реп на локальную машину
  3. Отклолол ветвь myproject
  4. Установил ЛС
  5. Добавил в .gitignore
    .idea/
    install/
    templates/skin/developer/
    templates/skin/synio/
  6. Направил ветку myproject смотреть за основным репозиторием
  7. Запушил ветку в свою репу
  8. Удалил папку инсталл
    git rm -r -f install/
  9. Подключил сабмодуль для собственного шаблона
  10. Подключил сабмодули для бесплатных плагинов
  11. Профит
Ветка master нам пригодится в том случае если захотим изменить движ на этапе установки из папки install (например, подправить/добавить поля в БД)
Если же мы захотим изменить ф-ции движка мы сможем это сделать из ветки myproject.

GitHub: StickyTopics, Hookets, Must Have Blogs и остальные мои плагины

Прошу прощения у всех за такую дикую задержку, но… Все-таки, нет у меня времени заниматься адаптированием плагинов :(

В настоящий момент у меня нет проектов на LS 5.1, поэтому и необходимости нет. А все свободное время занято более актуальными и интересными проектами.

Читать дальше →

Азы работы с git или как скачать себе livestreet с github

В этой статье я расскажу про азы использования git'a на примере установки livestreet с github.
У нас будет основной репозиторий на сервере в дев папке и версии проекта на локальных машиных у нескольких разработчиков.
Почему так?
Наш проект не открытый, поэтому бесплатно его на github выкладывать не получится. Поэтому принято решение держать общий репозиторий проекта на сервере, доступном всем работающим над проектом программистам.

Читать дальше →