CMS

индекс
77,39

Мой движок (на примере сайта usemac.ru)

Используй Mac!Приветствую вас! Материал, к чтению которого вы приступили, не является рекламой в обычном понимании слова, но скорее рассказом о создании собственного движка на манер Хабра, такого, который мечтают изобразить многие энузиасты с помощью Drupal. На создание движка мне потребовалось четыре месяца работы. Если вам интересно, как происходила работа над движком, и какие плоды она принесла — милости прошу под хабракат.

Позвольте представится. Меня зовут Дима. Мне 22 года. Мой ник — CuamckuyKot. Многие, должно быть, знают меня, как парня в тельняшке с уточкой, который любит работать на Mac’ах настолько, что готов найти приключения на свою пятую точку, чтобы получить опыт покупки Mac’а за границей.
Чтобы читатель более полно представлял картину происходящего, позволю себе небольшой экскурс в историю. После окончания СПб ИТМО по специальности слабо связанной с программированием, мне повезло устроиться работать в одну из самых привлекательных для меня на то время IT-компаний — Spb Software House. Проработав в стенах Spb около полугода, пришел к выводу, что принадлежу к тому небольшому проценту людей, которым реализовывать свои планы и идеи намного более важно, чем исполнять волю работодателя, поэтому ушел из Spb, приступив к реализации своей мечты. В данном случае слово «стартап» не подходит, потому что мечтал создать свой движок, на базе которого уже эти самые «стартапы» можно было бы строить. Движок был создан в период с марта по июль 2008 года. Процесс разработки потребовал знание следующих технологий: HTML, CSS, Javascript, AJAX, PHP, MySQL, FreeBSD, Photoshop. Так распорядилась судьба, что к моменту зарождения мысли о создании своего чуда, мне повезло владеть хорошей базой знаний и опыта по всем вышеперечисленным технологиям. Не скажу, что себя выдающимся специалистом в какой-либо сфере, но знание всех технологий вместе, пусть даже не на самом высоком уровне, одарило меня возможностью создавать проекты в одиночку, получая бесценный опыт разработки и понимание полной картины происходящего в деталях.

Как неоднократно писали авторитетные умы Хабра — не стоит изобретать велосипед, поэтому, руководствуясь напутствием более опытных специалистов, в качестве основы своей работы выбрал ряд готовых решений:
  1. CodeIgniter — замечательный PHP-framework. Довольно давно ему симпатизировал, изучал. Решил опробовать его в деле, и очень рад своему выбору — эластичная, удобная и производительная модель CI легла в основу движка. Конечно, пришлось вносить много корректив, чтобы добиться всего необходимого, но результат не заставил себя ждать.
  2. MooTools. Судя по последним опросам, мутулсы сильно отстают по популярности от JQuery, но для меня это — дело привычки. Неоднократно использовал MooTools, знаю множество нужных плагинов, поэтому выбор пал именно на эту библиотеку. Использовал версия 1.2beta, совместимую с 1.1. Жаль, что новейшая 1.2 не совместима со многими используемыми плагинами. Жду обновлений.
  3. Smarty. Сколько людей — столько мнений. Для меня было важно, чтобы работать с шаблонизатором было просто и легко. Поскольку до того также был знаком с Smarty, то решил пожертвовать производительностью (хотя при правильном кэшировании библиотека лишь немногим медленнее шаблонов в первозданном PHP) ради комфорта.
  4. TinyMCE. Писать тегами здорово, но не всегда есть широкий канал (бесплатный трафик) связи для предпросмотра, а также сайты могут быть рассчитаны на менее умную аудиторию, которая тегов отродясь не видела.


Конечно, это только основные библиотеки, но к ним также были подключены разнообразные плагины.
Если вам интересен процесс разработки — попросите меня написать о них отдельно, ибо это займет слишком много места для ознакомительного материала, коим является данная статья.
В начале июля движок был готов. Первый сайт, который использует его — это мой проект «Используй Mac!», который на базе нового движка переродился в тематическую социальную сеть.
Используй Mac!
В основе движка заложен принцип саморегулирования, хорошо известный всем посетителям Хабра.
Панель пользователя
Невооруженным глазом заметно сходство с Хабром, но хочу донести до вашего сведения, что кроме внешнего сходства и схожих принципов работы, присутствует большое количество отличий.
Регистрация
Обратим внимание на форуму регистрации. Перед вами типичный пример того, как были реализован формы. Каждое поле проверяется дважды — при помощи JS-валидации, и при помощи валидатора CodeIgniter, на случай если кто-то особо умный решит обойти JS.На поддоменах располагаются разделы сайта (users, blogs, pulse, etc), а также все сообщества пользователей (они же — коллективные блоги).

Создание креатива


Создание креатива
После регистрации пользователь может публиковать материалы в свой блог или же в сообщества, к которым он принадлежит.
Типы постов
Пользователь может создавать разные виды постов, но возможность выбора типов можно ограничить, используя Access Control List (ACL), который руководствуется значениями кармы, рейтинга и т.д.
Интерфейс создания поста
Интерфейс создания материала будет отличаться в зависимости от типа поста, но некоторые поля будут оставаться неизменными. Одно из них сразу же обращает на себя внимание — визуальный редактор TinyMCE. Приятная особенность редактора — работа во всех браузерах (привет, Safari). Были написаны необходимые модули — загрузка изображений, вставка видео (YouTube, RuTube, Vimeo) и т.д. Текст cut’а можно делать произвольным, как здесь.
Загрузка изображений
Порой мне не нравилось, что редактор, в зависимости от браузера, создает много лишних тегов, но проведенный среди пользователь опрос показал, что он полюбился многим из них, и поэтому был написан парсер, который просто-напросто чистил все пустые p и прочий мусор.
Также есть возможность указывать ключевые слова, описание, которая также работает через ACL (поэтому простым пользователям она не предоставляется).
Интересные момент — реализация указания тегов.
Автодополнение в тегах
Реализовал свою старую задумку — теги с автоподбором из уже используемых на сайте.

Любой материал можно сохранить (тогда он будет виден только пользователю в его личном блоге) или опубликовать. Разумеется, есть предпросмотр.
Замечание автору
Модератор (о них позже), редактирующий материал пользователя, может прямо в процессе редактирования написать автору сообщение, чтобы последний знал, что исправил первый, и как следует правильно писать в будущем.

Комментарии


Реализованы при помощи Nested Sets, то есть многомерных деревьях, хранящихся в двумерной таблице. На осознание теории метода ушло несколько дней, но после преимущества способа радовали на каждом этапе работы. Один запрос выводит все комментарии и сортирует их в нужном порядке. Как и на Хабре, новые комментарии (с момента последнего визита) выделены цветной рамкой.
Возможность ответа на каждый комментарий, предпросмотр — этим сейчас никого не удивишь. Комментарий можно оценить, и недостойные будут скрыты (отображены при клике по соответствующей ссылке).
Публикация комментария
Приятные особенности — рост поля вода по мере ввода содержимого, парсинг ссылок и смайликов.

Личные сообщения


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

Оповещения


Оповещение о неудаче
Оповещение об удаче
Маленький помошник, который всегда подскажет что да как. Реализовал на базе собственноручного написанного класса (на MooTools). Сообщения набиваются стек, и через пару секунд после появления уезжают наверх — за пределы экрана.

Сообщества


Список сообществ
Каждый пользователь может создавать сообщества, если ему это позволяет ACL.
Создавший сообщество становится его смотрителем — может назначать модераторов сообщества, и приглашать/исключать участников.
Сообщества бывают трех видов:
  1. Открытое. Вступить может каждый.
  2. По приглашениям.Читать его может каждый (за исключением контента в теге [hide][/hide]), но участие в нем — только по приглашениям, которые рассылаются смотрителем и модераторами.
  3. Закрытое. Читать посты целиком (то что после ката) могут только участиники. Стать участником можно только по приглашению.

Модераторы и смотрители обладают возможностью править посты в сообществе (как писал выше — попутно отправляя замечания в личку автору).
Сообщества обладают кармой, суть которой в сумме всех его постов.

Саморегулирование


Принципиальное отличие от Хабра — нельзя просто прийти и “настрать” человеку за то, что он вам не понравился. Можно влиять на карму пользователя только отдавая свой голос за его посты/комментарии. Изначально пользователь обладает некоторым количеством голосов за карму/комментарии, которые может потратить. Голосуют за ваш пост/коммент — вы получаете соответствующий голос.

Поля профиля


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

Google Adsense


Google Adsense
Идея не новая, но верю в кармический закон — чем больше отдаешь, тем больше получаешь. Поэтому по примеру redhummer’овской «Большой Улицы» предоставил пользователям возможность установить баннер Google Adsense под своими постами.

Дополнительные модули


В процессе отладки возникли новые идеи, поэтому создал дополнительные модули.

Статус


Статус
При помощи блока в сайдбаре можно легко поведать посетителям сайтам планы на будущее (например, “пишу статью на Хабр”) или же сообщить друзьям о своем настроении. Также можно просмотреть статусы друзей при помощи одного клика. Все релизованно асинхронной передачей данных.
Статус в профиле виден всем посетителям

Чат


Чатик
Позволил себе слабость создать маленький чат для друзей первого и второго круга. Мелочь, но приятная.

Онлайн


Кто в онлайн
Приятно осознавать, сколько посетителей смотрят сайт и сколько пользователей на нем находятся.

Камни


Одним из главных подводных камней как обычно является откровенно убогий пресловутый Internet Explorer, особенно шестой версии. Хотя MooTools и заявлена как IE-Killer, тем не менее написаные к ней плагины не всегда корректно работают с чудесным браузером. Постарался сделать максимум возможной совместимости. Тем не менее данный вопрос для меня остается открытым.

Производительность


Поскольку изначально предполагалась высокая посещаемость будущих проектов, был сделан упор на оптимизацию:
  • Минимум запросов, денормализация базы данных.
  • Несколько вариантов кэша:
    1. Кэширование вывода в CodeIgniter.
    2. Кэширование запросов к базе в CodeIgniter.
    3. Кэширование шаблонов в Smarty.
    4. Кэширование запросов в базу с помощью Memcached (пока что обхожусь только этим вариантом).

  • Возможность использовать nginx+fastcgi без apache, поскольку нужно лишь одно rewrite-правило, результат которого препарируется уже внутри движка.
  • Автоматическая упаковка всех JS в один файл. Тоже самое касается и CSS.
    Особенно радуют размеры gzip-ованного nginx-ом файла на выходе.
  • Спрайты иконок. Мелочь, но приятно, когда все иконки грузятся одним файлом.
0
1 августа 2008, 15:55
112

комментарии (320)

0
izzikdotorg #
был с вами с того дня когда вы еще прсото варезным сайтом были)))
Да я тот самый иззик) который на nnm постился) и бумажный iphone тоже мой))(http://izzik.org/action/)
0
CuamckuyKot #
Приветствую! :-)
0
Sho #
и Вам привет.
хороший сайт, сижу, читаю.
вот только шриф смущает, глаз режет.
–24
smartello #
Простите за оффтоп, но предлагаю ввести штраф за употребление слова "креатив" вместо слова "творчество" в русскоязычных текстах. Хотя с другой стороны, лишь благодаря людям, применяющим иностранные слова где не надо, я в своё время ощутил красоту родного языка.

а так, хотелось бы процитировать автора "не стоит изобретать велосипед". Чем не устроил BigStreet? Без возможности пощупать внутренности особых отличий не увидел.

ПС: из-за тулбара про "технологически отсталый браузер" на сайт больше не вернусь, не учите меня жить (у меня ие7 и включенный Windows Update). Единственное что меня не устраивает в моём браузере - медленный JS. На остальное мне вобщем-то положить. Я впервые взглянул на эту проблему со стороны пользователя и моя реакция убедила меня, что такие тулбары использовать не буду никогда.
0
chaosty #
К чему это? Можно мАркетнг называть репозиционированием, так, по-русски красиво. Вот только зачем? Весь экономический мир говорит на английском, дизайнеры, программисты, хоть эксгибиционисты... Может стоит начать учить? :)
0
LawbreaK #
А может стоит начать прыгать с крыши, если все "дизайнеры, программисты, хоть эксгибиционисты (с)ваше" начнут это делать? Лично мне так же не нравится употребление иностранных слов тогда, когда в этом нету смысла.
+2
chaosty #
Разве у нас не свобода слова? Волеизъявления? Человек вправе писать, как ему хочется.
0
smartello #
Слово "маркетинг" звучит более ёмко, по сравнению с кривым словом "репозиционирование", кроме того, это не полные синонимы. Слова "творчество" и "креатив" - полные синонимы, одинаково ёмки, но одно русское, а другое нет.
0
Vadim_Kasparov #
Слова "творчество" и "креатив" - не являются полными синонимами.
+2
Novikov #
В английском — являются, в русском — не являются. Прелестно.
0
AmirL #
Так уж сложилось :). Творчество - творить, созидать что-то новое. Креатив - по сути тоже творчество, но в России во всяком случае его выделяет что креатив - значит "оригинально". Не просто самостоятельно, но и необычно. Вотс
+1
Novikov #
Вот всякие бракоделы и мудозвоны (это не к присутствующим здесь) так же извратили смысл слова "дизайн". Каждый пидор, что-то намалевавший на картонке или сделавший "интерьер" — уже, ***дь, "дизайнер". Дизайн стал синонимом оформительства. А дизайн — это проектирование, прежде всего.
0
Anabolik #
в моем понимании "творчество" это процесс, а "креатив" это уже чтото, какойто предмет
+1
Novikov #
Маркетинг и репозиционирование — это разные вещи, примерно как компьютеры и микросхемы. И слово "репозиционирование" тоже не русское, знаете ли.

Слово "креатив" — самое частоупотребляемое слово в ситуациях, когда дизайнеру, менеджеру и т.п. нечего сказать по существу. Вот и балаболят: "креатив", "креативили", "не креативно".
+1
apkaxa #
креатив не является синонимом творчества (сл.ушакова. творчество - Действие по глаг. творить1 в 1 знач. / сл.даля. ТВОРИТЬ - давать бытие, сотворять, созидать, создавать, производить, рождать.), два несколько разных понятия.

1. creative с англ. переводится как творческий, а не творчество.
2. в русском языке слово используется как обозначение оригинального творческого решения.
–5
LawbreaK #
А слово новшество, к примеру? Оригинал? ) Вот видите, английское креатив можно и несколькими вариантами заменить )
+1
apkaxa #
не поверите, но слово оригинал - иностранное.
–2
smartello #
Дело не в том как переводится, а в том как употребляется ;)
+1
apkaxa #
именно, что употребляется оно не как синоним слову творчество.
0
Novikov #
В русском языке оно используется как замена "извините, мне нечего сказать по существу, поэтому я тут сейчас псевдоумных слов вам в бриф наинсертю, чтобы мессидж реинфорсить".
–3
CuamckuyKot #
BigStreet не устроил именно свой архитектурой и незавершенностью.
Там не было четкой модели MVC, многие моменты были реализованы неграмотно.
Сейчас он стал лучше, но пока он только в процессе становления, мой продукт уже готов.
0
smartello #
но BigStreet вроде не имеет проблем с IE :) Правда ещё 4 месяца назад там проблемы были со всеми браузерами.
+2
leosun #
А он в формате каком? Для продажи? Для частного использования? Или открытый, я не увидел что-то нигде.
0
all1 #
А livestreet?
0
CuamckuyKot #
Когда создавал еще первую версию данного движка livestreet еще не существовало.
Сейчас же это вполне достойный продукт.
+2
Bully #
Странно, за что коментарий так минусуют?
Не способность воспринимать критику?
Абсолютно согласен по всем пунктам замечания. Особенно про англицизмы.
Или пиши по-русски или по-английски. Иначе не понятно, что хотел сказать.

Касаемо статьи в целом, спасибо за обзор. Лично для меня было полезным.
0
batyrmastyr #
есть подозрение, что минусуют за приверженность IE.
+3
wdk #
Непонятно, за что столько минусов?
Я Вас полностью поддерживаю. Раздражает, к примеру, когда программист называет стрингами строки, а музыкант - струны. При том, что стринги - это вообще-то долбанные трусы.
+2
Zeldar #
ну почему "долбанные трусы" - очень даже ничего такие женские трусики
0
wdk #
Простите, эмоции. Трусики очень даже ничего, согласен. :)
0
starleu #
целый день смотрю на строки и для меня они весь рабочий день стринги :) При разговоре с обычным народом лексику приходится менять... и что с того?
+1
Sannis #
За IE вам, видимо, тоже досталось :/
0
wdk #
Мне?
0
Sannis #
Извините, нет :) Но, я думаю, мы друг друга поняли :)
–3
moscow_beast #
Ну мне это меня потрясает! Сайт тематический - "Используй Мак" называется, а вас расстраивает что у вас откровенно убогий чужеродный IE7 не работает. Ходите msn.com, microsoft.com и т.д., вобщем где вас ждут. Не жалуются-же пользователи BeOS, что NetPositive показывает правильно только bebits.com. Что за великовиндовый шовинизм?
0
CuamckuyKot #
IE6,7 работают, но в режиме ограниченной функциональности. Каждый браузер и каждое мнение имеет право на жизнь.
Все равно - большинство юзеров начального уровня сидят под IE из-за отсутствия знаний об альтернативе.
–1
Dr_Zoidberg #
Можешь IE и убогий с точки зрения поддержки стандартов, но про технический отсталый это откровенная ересь. Пример: в каком браузере удобная есть интеграция с Microsoft Office?
–1
CuamckuyKot #
Док, вы не правы. IE как раз не поддерживает большинство современных стандартов. Упор в данном случае на версию 6.0.
0
Dr_Zoidberg #
Я про это и писал...
0
printf #
Приведите пример опубликованного стандарта, описывающего интеграцию с Microsoft Office.
0
Dr_Zoidberg #
Не могу. А если бы и мог, то зачем?
0
Dr_Zoidberg #
Я как пользователь, знаю, что мне удобно открывать любой файл Microsoft Office прямо в браузере и редактировать его удаленно. Это, к сожалению, мне позволяет только IE. И срать я хотел на ваши стандарты. Я хочу чтобы мне было удобно, а не веб-разработку. Это его работа.
0
Dr_Zoidberg #
Ну-ну, а показаться подлец не хочет?
+1
Paxa #
Думаю БигСтрит небыл 4 месяца назад таким. И на юзмак щас больше чем в том двиге. К тому-же сам процес не мение важен, чем результат. Почемубы не называть Windows Update — окно-обновлятором ?
+1
ayavryk #
+1000 Тупое калькирование с английского превращает любого говнюка с амбициями в Создателя
+1
chaosty #
Не поверишь, делаю сейчас практически тоже самое что и ты :) На том же самом CI, только jQuery, пока только начал создавать структуру, авторизацию и прочее. Кстати есть интересное предложение отписал в ПМ.
0
mobilz #
молодец! =)
0
Fade #
Рад за вас. Мне с моей CMS пока работы хватает.

Работа вся была сделана собственными силами или кто помогал?
+2
CuamckuyKot #
Собственными силами. Помогали советами mobilz и oowl.
+1
Fade #
Уважаю. У меня пока процесс идет довольно медленно. Правда я все пишу с нуля и не на PHP.

Чужой опыт всегда полезен.
0
simonoff #
мне одному показалось что дизайн смахивает на хабр?
0
startupboy #
Это теперь называется хабра-стайл )
0
CuamckuyKot #
Разве вы не читали материал? Прямым текстом сказал, что прообраз движка - Хабр.
+2
simonoff #
там сказано ДВИЖКА НА МАНЕР ХАБРА , но ни как не дизайна
+1
S2nek #
Какой блин дизайн?
Структура страницы, да и всё. Сколько сейчас сайтов и у большинства структура макетов одинакова, это же не говорит что они "смахивают" дизайн друг у друга.
0
kovpas #
Зарегистрировался. Спасибо за интересную статью и интересный сайт ;)
–2
Felicitto #
А может обрежите немного версию, сделаете убогий шаблон и выложите для общего пользования? :)
Не представляете, как буду благодарин..
0
izzikdotorg #
+0,5 предлагаю продавать))
0
CuamckuyKot #
Сомнения о варианте продажи лицензий на движок описаны в самом посте.
0
Felicitto #
Я понимаю, что вы потратили на написание этого движка немало времени и не хотите, чтобы каждый мог плодить однотипные (по дизайну и расположению функционала) сайты. Но если бы вы его немного перекрутили, чтоб сделать "продукт на продажу разработчикам", которые бы благодаря вам сэкономили время на разработку основы (а ведь, как видно даже из комментариев, многие именно сейчас этим и занимаются).
Второй пункт не столь важен, если покупатели будут соответствующие (заинтересованы в доработке и завершению под свои нужды продукта, а не просто юзеры).
–1
chaosty #
Проблема возникает в том что движок то есть, но он не выдерживает нагрузок. Грубо говоря я делаю сейчас тоже самое что и он, на том же самом CI, правда он уже скинул в размерах 600кб, из 1.6мб. + все запросы в базу профилируются и отлаживаются. Дальше вопрос стоит в увеличении нагрузки и тестировании, отключение каких-то функций, вынос других на кроновские апдейты.. На это нужно время. И глубокие знания. Цена естественно сразу становится другой :)
0
CuamckuyKot #
Собственно этим я и занимаюсь сейчас. Знания черпаю по ходу, опыт получаю в процессе.
0
CuamckuyKot #
В этом с вами согласен. Но не хочется заниматься кодированием исходников от кулхацкеров или же продавать открытый код.
0
chaosty #
закрыть можно привязать скрипты к оборудованию, ип адресам, выдаче ифконфига, зазендить все последним зендером, немного поможет. Главное завязать множество функций и скриптов на апдейт и проверки своих серверов и везде выдавать алерты на эту тему :) Будут покупать. Самое же главное это апдейты ;)
+1
Jama #
"...знание следующих технологий:..." + "..FreeBSD, Photoshop.."

Дико звучит :-)
0
CuamckuyKot #
Дико, согласен.
+2
donflash #
Хороший, грамотно оформленный обзор "стартапа"! Автор - пиши дальше в таком же стиле, ещё раз оформлено - супер!
0
mkdotam #
HTTP gateway timed out
+1
jopa #
Автор забыл поставить ссылку на скачивание)
По-поводу Волна однообразных хабраклонов от людей, которые не осознают силу ответственности создания таких проектов.
Главное не движок(хотя без него тоже проекта не будет), а отношению к своему проекту(контент, юзабельность и тп)
Вы же не заходите на Хабр только потому, что здесь можно карму и рейтинги плюсовать/минусовать
Вы заходите читать и общаться)
0
Groove #
Позвольте не согласиться. Если Вы почитаете серч, то тамошние малолетки, которые к счастью появляются только на период каникул, первым делом спрашивают: на каком движке создать очередной говносайт.
И потом на 10 страниц: Drupal,CI,Wordpress, и еще много страшных слов.
Причем даже среди советующих мало кто понимает отличие CMF от CMS.
И что самое интересное, более менее настроенным решением является только вордпресс и то из него сложно что то делать. А порог вхождения для того же друпала весьма и весьма высок.
Что же делать бедному глупому школьнику? Ведь ему надо создать СВОЙ неповторимый, с уникально спизженным украденным контентом. Да и при этом хотелось бы чтобы было как у всех, по модному, с тегами, кармой, френдами и чтобы только с помощью онлайн-генератора графики сделать себе полоски с наклоном, логотип с отражением и гордо сказать! Я написал свою CMS!
Наблюдаю, сколько сайтов появляется массово на том же bigstreet, explay.
Сейчас реально мода на хабраклонов идет.
Я не являюсь противником открытого кода, это здорово. Но, по моему, надо как то делать так, чтобы плодами не могли легко пользоваться такие школьники. Давать им базовый функционал и пусть дописывают если смогут.
Иначе реально мутит-с уже от хабракармавебдванольноподобных сайтов....

Короче как говорил герой Вицина "У нынешней молодежи нет никакого романтизьма"
+2
redhummer #
Вот пусть школьники хреначат собственные сайты. Это я не из злобы, а хотябы из того, что нужен "свежий ветер". Нюкоклонирование умерло. Умрёт и хабраклонирование. Пусть дальше соображают, что делать и представляют миру свои шизо-решения шизо-проблем. А равно создают собственные шизо-культы.
P.S. Вообще извините. Затыкаюсь. У нас тут солнечное затмение было сегодня. Так что соображаю уже очень-очень слабо xD
0
maxic #
А почему школьники? Чувство архитектуры, как раз приходит с опытом.
Рынку сейчас надо гибкая cms.
То что сейчас выходит - всё узконаправленные движки (cms не поворачивается язык назвать) основанные на каком-нибудь framework-e, т.е. ничего интересного с точки зрения технологий.
Просто проанализировав, разработчикам надо сделать кое-какие выводы.
Т.е. переориентировать сms больше "под пользователей %username%". (сейчас с этим большие проблемы у всех игроков рынка)
Унифицировать данные (для простоты использования конетента, тогда можно создать действительно единый контроллер управления и распределения).
Сделать действительно иерахическую БД. (здесь алгоритмов хватает..NS и материализованный путь (кстати я совместил два алгоритма в одном, правда уклон оказался больше к мат.пути)). "Дерево" рулит и всегда будет рулить, а также хорошо вписываться в модель унификации контроллера и контента.

То что сделал Дима - молодец, он довел работу до конца.
Вопрос к Диме: сколько ты потратил времени именно на движок. И по сколько часов в день им занимался?
Едиственное что хотелось бы ему пожелать - то все таки уделить технологичности движка. При реляционно-денормализованной модели - тяжело сделать единый контроллер (в прямом смысле слова - а не псевдоконтроллер fw).
Насчет топика. Я бы назвал все же его не "Мой движок" ... А "Юзабилити проекта". Я честно говоря купился на заголовок, но практически ничего с технической точки зрения не увидел, кроме использования fw. Просто описание юзабилити проекта.
0
CuamckuyKot #
Что такое fw? :-)
Работал по настроению. Могу пять дней сидеть с утра и до вечера, но мог другие пять дней позволить себе не делать ничего.
Думаю, если убрать отдых головы и тела, то около двух рабочих месяцев получится ( с пн. по пт., восьмичасовой рабочий день). Ответ на многие вопросы приходит во время отдыха, когда нет активной нагрузки на ум.
0
maxic #
Совершенно верно:) многие моменты приходят как раз во время "отдыха"
Сам такое же испытываю.
В основном все "решения" приходят после отдыха.
+2
bumbarash #
Спасибо! Теперь фанатам эппл есть где выразить свой восторг по поводу своей любви к данному бренду, и хабр не будет заполняться инфой каждый раз, когда яблоня снова созреет и сбросит очередной плод)
+1
tigrenok #
«A Database Error Occurred - ошибка БД» :(
0
kuroles #
Похоже это второй сайт за сегодня, сраженный Хабром )) А так почитал, скриншотики симпотичные, молодца, видно что делалось с любовью.
0
bumbarash #
Скромняга не выдержал такого внимания)
–1
NewStoic #
третий BigStreet. ужэ пару минут лежит :)
0
redhummer #
С "Улицей" было есть и будет всё нормально. Улица падает только вместе с общей нагрузкой хоста )
funtastic.ru (работает на движке большой улицы) крутится на сервере, где ещё пара десятков сайтов, которые в сумме уже около трёх десятков тысяч хостов в сутки дают. Хитов даже не скажу сколько. Региональный сервер и аудитория там постоянная (соответственно и хитов делают больше, чем по 10 на человека;))
0
Integra #
пробовали БигСтрит. 1 запуск кушает 3-4 метра памяти. Многовато, однако.
Формирование страницы занимает 200-900 мсек, это вообще катастрофически
+1
marazmiki #
По-моему, тезисы
Реализованы при помощи Nested Sets, то есть многомерных деревьях, хранящихся в двумерной таблице.

и
Минимум запросов, денормализация базы данных.

друг с другом не очень коррелируют. Nested sets, безусловно, отличный метод, но не там, где дерево будет постоянно перестраиваться. А в случае с комментариями оно будет перестраиваться при каждой отправке. Думаю, не самый подходящий вариант.
0
brainon #
Materialized path?
0
marazmiki #
Да, для древовидных комментариев, materialized path, как мне кажется, лучшее решение.
0
CuamckuyKot #
На вывод всех комментов - 1 запрос, дополнительная сортировка не требуется. Перестроить int-овские индексы (лево и право) даже если комментов к посту штук 200 - дело долей секунд.
0
marazmiki #
Один комментарий - да. А если Ваш сайт начнёт набирать популярность? :)
–2
CuamckuyKot #
Начнет набирать - куплю сервер помощнее.
0
CuamckuyKot #
Есть один сайт, с посещаемость в 200к в день, так он работает на двух серверах с 2xXeon каждый. Там реализованы комментарии именно с помощью Nested Sets.
+1
marazmiki #
Что ж, безумству храбрых поем мы славу :)

Если вдруг дерево сломается (такое редко, но бывает), восстанавливать такую уйму комментариев будет ой как проблематично.

Впрочем, не в надёжности дело, а в производительности и удобстве поддержки: вывод дерева в nested sets (ns) - один запрос с сортировкой по int-ключу. В materialized path (mp) - один запрос с сортировкой по строковому полю. Соответственно, при выводе выгоднее использовать ns.

С добавлением записей интереснее: ns - 3 запроса (получение информации родительской ветки (ключей, если быть точным), собственно INSERT и перестройка всех правых ключей дерева). В mp - тоже 3 запроса: опять же получение информации о родителе, опять же INSERT и опять обновление, но уже всего одной, вновь созданной записи. Думаю, для больших деревьев это нехилая экономия. Да и чинить (не дай бог :)) будет много проще
0
marazmiki #
и кстати: как это так - "дополнительная сортировка не требуется"? А по левому ключу как же?
0
CuamckuyKot #
По левому ключу в момент выборки. Я имел в виду сортировку результатов запроса.
+1
snoopckuu #
504 Gateway Time-out хабраэффект :)
–9
protiv #
Так бывает, когда изобретают велосипед, а не пользуются Юкоз. http://www.ucoz.ru/?uz=17791 -
–1
dab512 #
Почему я должен доверять кому то левому свой будующий сайт?
+1
CuamckuyKot #
Юкоз - это очень крутая система. На ней много "отличных" сайтов.
Им пользуются те, кто не только не умеют программить/верстать, но и те, кто не в состоянии установить хотя бы Wordpress самостоятельно.
0
dab512 #
ну то есть те, кому не важно что их сайт закроется если что
0
protiv #
http://top.ucoz.ru/
Здесь, конечно, мало сайтов с хорошим дизайном. Но движок супер. А главное - отсутствие головной боли. А тренироваться в программировании можно и на домашней страничке.
0
protiv #
Если б не моя карма, я б тебе грамотно ответил постом.
+1
dab512 #
грамотно ответь комментом - возможно народ кармы и накидает за коммент достойный поста
–1
protiv #
Самое трудное на Юкоз - присобачить хороший дизайн к движку. Всё остальное - пустяки. Думай только о контенте.
В твоём случае - головная больс утра до вечера.
НЛО прилетело и опубликовало эту надпись здесь
0
protiv #
С платой за отключение рекламы, убирание копирайтов Юкоз и расширением пространства — это вид договора и покупки профессионального движка под свой проект. К которому ты должен прикрутить хороший дизайн, javascriptы и прочее.
НЛО прилетело и опубликовало эту надпись здесь
0
romychs #
Да, работа проделана глобальная. Respect! Ой, извините, Уважение! :)
НЛО прилетело и опубликовало эту надпись здесь
0
CuamckuyKot #
Комменты шлются асинхрнонно, подгружается только новый коммент и JS-ом ставится в нужное место.
–14
Lenoi #
Бугага. Сайт лежит. Автор мудак.
0
redhummer #
Не постремаюсь сказать, что мудак здесь ты.
+1
CuamckuyKot #
Дима, спокойно. Всего лишь еще один тролль. Слава Богу, такой падали все меньше и меньше на Хабре.
+3
MARDEN #
>Cреднее время генерации стандартной страницы (код+БД+Smarty) - 1 сек.
Имхо, слишком долго...
0
crocodile2u #
Непростительно долго, я бы сказал. Для нагруженного проекта такое время генерации смерти подобно. 100-200 мс для тех запросов, которые требуют запросов к БД (я имею в виду ресурсоемкие запросы, типа поиска, для простых рутинных задач должно быть меньше) и 5-20 мс, если работаем полностью из кэша - это приемлемое время генерации на современном железе.
0
CuamckuyKot #
Читайте ниже - удалось достичь много лучших показателей.
+3
bvasya #
Под IE предложил перейти на Firefox или Opera. Странно, что на сайте про маки не предлагает Safari...
0
CuamckuyKot #
Потому что Safari не требует дополнительной работы по настройке конкретно под него :-)
НЛО прилетело и опубликовало эту надпись здесь
+2
CuamckuyKot #
Настраиваю сервак - он не ожидал такого хабраэффекта.
+1
bumbarash #
С виду, честно говоря, все превосходно. Единственное - меня как постоянного пользователя эксплорера, т.к. на работе жесткое корпоративное полиси, огорчает дискриминация по использованию браузера, мне кажется, это подобно тому, что Толстой сказал бы, что смысл его произведения можно постигнуть читая только глянцевую бумагу в кожанном переплете.
0
CuamckuyKot #
Согласен. Когда IE научится делать все, что мне нужно - уберу табличку.
0
Dimituri #
Например, что?

Простите, но мне это напоминает времена, когда в конце главной страницы писали «этот сайт рекомендуется просматривать в 1024x768».
0
CuamckuyKot #
Вы можете ее закрыть, и она не будет мозолить глаз до следующего захода на сайт.
0
tigrenok #
а лучше добавить пряник - чтобы один раз закрыл и больше на этой машине никогда не открывалось... или для этого юзера...
+1
CuamckuyKot #
У меня итак плашка эта на прянике - только до закрытия браузера.
Чтобы юзер помнил, что IE - мировое зло :-)
0
bumbarash #
Почему зло? Я считаю, что микрософт, популяризировало информационные технологии и принесла их в массы, это очень большое добро, они на этом правда хорошо заработали, но мне кажется, что они продклали масштабную техническую и информационную работу. Называть их злом, а какую-то другую компанию добром - это проявление одной из сторон детского максимализма, по моему. У компании Эппл теже самые цели, что и у Микрософт, заработать денег, просто сейчас эппл делает это более успешно, во всяком случае создает видимость этого.
0
CuamckuyKot #
Зло - это то что верстальщики должны тратить время на верстку специально под IE. Про мелкомягких я не говорил :-)
–2
bumbarash #
Мнение о том, что IE зло, как раз идет с тойже стороны, что и общее мнение о микрософт в целом, хотя он не сильно отличается от остальных браузеров. А судя по ниже приведенной статистике от хотлога:
MSIE 6.0 71.41%
2 MSIE 5.01 6.68%
3 Opera 5.77%
4 MSIE 5.0 5.75%
5 Mozilla 5.15%
6 MSIE 5.5 4.29%
Вы, как мне кажется слишком пренебрежительно пишите о верстке для IE/
Его преволирование - это реальность, и можно сколько угодно говорить о его несостоятельности, но не считаться с ним странно)
+1
homm #
Вы с ума сошли! Это статистика десятилетней давности, слава богу!
0
DenVdmj #
Что вы такое говорите?
MSIE 6 - 30.4793%
MSIE 7 - 27.1919%
Opera 9 - 18.1509%
FireFox 2 - 13.3570%
FireFox 3 - 6.2138%
Opera 8 - 1.5346%
Safari 3 - 0.7241%
FireFox 1 - 0.5977%
Mozilla 5 - 0.4298%
MSIE 5 - 0.3924%

http://gs.spylog.ru/r/?reportId=10&categoryId=1&printVersion=1
–2
bumbarash #
Я не заметил сразу такую возможность. Но мне кажется, что отличие разных браузеров минимально, просто конкуренты эксплорера - это браузеры, которые юзают разработчики и еже с ними айтишный люд, который вечно думает, что умнее всех. Мое мнение: плохая репутация микрософта в этом направление - естественный пиар, но не следствие его низкого качества исполнения.
+1
monIToringe #
Пожалуй вы просто не верстали под IE. Тем более, об отвратительной работе IE6 говорят даже MVP (Microsoft Most Valuable Professional), а это люди, которые не могут не любить продукцию MS и относятся к ней очень объективно.
0
homm #
Когда кажется — креститься нужно.
0
tigrenok #
пример некорректный... вот если бы из книги повыпадали каждая 10 страница и несколько десяткой абзацев - вот тогда пример лучше был бы... ;)
0
smartello #
Толстой хорошо писал. Его книги читаются и с глянца и с папирусов, и страницы при это не выпадают.
Ему приходилось использовать очень сложные предложения, однако он передал мысль так, как хотел передать.
0
homm #
Да, хорошо Толстой писал… Страницы в его книжках не выпадывают…
–1
kremlin #
WOW!
0
Arhivator #
К сожалению сайт не справился с хаброэффектом. Значит есть что еще оптимизировать. Тем не менее обзор весьма интересный.
0
CuamckuyKot #
Сайт с ним справляется - подстраиваю сервер "на лету".
0
corbenov #
красивый сайт, мне будет очень интересно почитать как вы его делали и на какие грабли наступали
интересно узнать как реализован поиск
+1
schmooser #
Сайт понравился (по скриншотам), в свободное время обязательно досконально изучу статью.

Но налицо Хабраэффект - сайт лежит с ошибкой доступа к БД. Причем после ошибки он в красивом таком окошечке выкинул SQL запрос зачем-то...

SELECT c.id as id, c.nid as nid, u.name as user_name, u.url_name as user_url, n.name as post_name, n.url_name as post_url, u.points as upoints, n.points as npoints, a.name as author_name, a.url_name as author_url, g.name as group_name, g.url_name as group_url, (SELECT COUNT(cn.id) FROM comments cn WHERE cn.nid = n.id AND cn.deleted IS NULL ) as comm_num FROM comments c INNER JOIN users u ON c.aid = u.id INNER JOIN nodes n ON c.nid = n.id AND n.published = 'true' AND n.deleted IS NULL INNER JOIN users a ON n.aid = a.id LEFT JOIN groups g ON n.gid = g.id WHERE c.deleted IS NULL ORDER BY c.id DESC LIMIT 0,30
+2
gerstep #
I wanna download it!
0
le0pard #
A Database Error Occurred - ошибка БД

SELECT c.id as id, c.nid as nid, u.name as user_name, u.url_name as user_url, n.name as post_name, n.url_name as post_url, u.points as upoints, n.points as npoints, a.name as author_name, a.url_name as author_url, g.name as group_name, g.url_name as group_url, (SELECT COUNT(cn.id) FROM comments cn WHERE cn.nid = n.id AND cn.deleted IS NULL ) as comm_num FROM comments c INNER JOIN users u ON c.aid = u.id INNER JOIN nodes n ON c.nid = n.id AND n.published = 'true' AND n.deleted IS NULL INNER JOIN users a ON n.aid = a.id LEFT JOIN groups g ON n.gid = g.id WHERE c.deleted IS NULL ORDER BY c.id DESC LIMIT 0,30

Думаю это выводить не надо, это нужно только на разработке.

Кстати даже без ошибки скорость генерации страницы поражает. На сайте 89 посетителей - 6 пользователей и 83 гостей, а он еле дышит.
0
CuamckuyKot #
Пытаюсь разобраться с сервером. До того спокойно держал и 100 посетителей. Магия Хабраэффекта.
0
NickMitin #
Судя по запросу, ошибка у вас явно в архитектуре проекта.
0
CuamckuyKot #
Вы укажите на ошибку точно, а не говорите "про между прочим".
0
NickMitin #
Как я вам укажу на ошибку точно, если я ничего про вашу архитектуру не знаю, я знаю только то, что такие запросы в продакшн-коде существовать не должны. Если хотите консультаций - пишите ЛС.
0
CuamckuyKot #
Вы сказали - "судя по запросу". Можете сказать - что в запросе не так, на ваш взгляд? Опять-таки "такие запрос" - это какие?
0
CuamckuyKot #
Друзья, мне нужен спец по настройке FreeBSD-шного сервера. Если такой имеется, пусть стучится в асю (видна в профиле).
0
juks #
Я думаю, FreeBSD тут непричём.

Единственное, что может от него зависить - треды. Чтобы MySQL использовал новые:

/etc/libmap.conf:

[/usr/local/libexec/mysqld]
libpthread.so.2 libthr.so.2
libpthread.so libthr.so

Eсли используется действительно выделенный сервер, то используется он как-то из рук вон.

Что тут посоветовать?

Индексы в базе
Проверить работает ли кеширование: show status like 'Qcache%'
Взять конфигурацию MySQL из примеров (/usr/local/share/mysql my-large, my-medium)

Пишу только из солидарности к ОС. Сам никогда бы не поддержал идею основывать проект на дрочерских веяниях :-)
0
juks #
На самом деле, такой скудный набор данных даже дохлый сервер способен перемолоть с лёгкостью, как бы его ни настраивали. Значительно просчёты в проектиоровании ДБ можно компенсировать если использовать InnoDB с большим заделом памяти:

innodb_additional_mem_pool_size = 16M
innodb_buffer_pool_size = 2500M

В данном случае подразумевается, что у сервера 4G.

Но это, конечно, способ для девочек, в том смысле, что прежде чем так поступать, надо убедиться, что база спроектирована ровно.
0
CuamckuyKot #
Спасибо вам за советы. Я не большой специалист по тонкой настройке. У меня не INNODB.
0
juks #
Незачто. Вообще, неплохо бы вывесить то, что показывает top
0
t1myrkq #
крута - крута..
а интересно аналоги такого движка существуют?
0
CuamckuyKot #
Есть bigstreet, есть explay.
Первая хороша, на redhummer делает ее уже больше года. На данный момент она находится в состоянии беты.
Вторая слишком сырая и дрявая, чтобы ее использовать в серьезных проектах. Но господин lauri постоянно ее латает.
0
Groove #
Еще есть http://excms.ru/ eXcalibur

Правда там бесконечные терки кто у кого что позаимствовал http://excms.ru/articles/99.html и сейчас они переписывают движок на ROR с PHP.
–1
chaosty #
маразм. ROR медленнее в несколько раз.. Я не знаю ниодного действительно урпного портала на ROR.
–1
wdk #
Ну чтоб и ник, и имя свои в теги запихать..
0
redhummer #
Чувак, бигстрит рухнул! Мускул сдулся от Хбра-волны!
Извини за фривольность. Надеюсь, что поймёшь правильно ))
0
CuamckuyKot #
Дим, я знаю. Настраиваю сервер на нужный тон.
0
CuamckuyKot #
Народ, все окей. Сайт летает. Надо было просто подправить конфиг mysql-сервера.
0
olegi #
а что именно?
0
CuamckuyKot #
Настройки my.cnf поставил отличные от тех, что были по-умолчанию.
+1
olegi #
а какие именно настройки?
0
k0d #
не стоило давать возможность пользователям давать объявления ЯД и Адсенс.
Сайт интересный, собираются фанаты дорогой торговой марки, и всякая чепуха в предложениях рекламодателей отвлекает.

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

Удачи!
+2
CuamckuyKot #
Дело оказалось в настройке mysql на сервере. Играю с параметрами - нагрузка почти нормальная.
0
jopa #
FreeBSD знаете, а MySQL нет?) Это поправимо - теперь уже есть опыт)
0
CuamckuyKot #
MySQL в плане тонкой настройки - несильно. Всегда есть узкие места, которые приходится уплотнять по мере приобретения опыта.
+1
simonoff #
советую посмотреть на скрипт mysqltuner - http://rackerhacker.com/mysqltuner/ позволяет оттюнить очень хорошо базу.
0
CuamckuyKot #
Спасибо, посмотрю.
0
DYPA #
- при ошибке при логине лучше об том сообщить
- цвет оповещений выбивается из дизайна (толи не хватает градиента, толи слишком ярко) и смотрелось бы лучше со скругленными краями

ps картинками раздразнили, еще бы взглянуть на код ;)
0
CuamckuyKot #
;-) Вот там выше запрос один засветили - который выводит "Пульс" (последние комменты). Посмотрели? Как вам? :-D
При ошибке сообщается оповещением.
На вкус и цвет товарищей нет, но оповещения должны привлекать внимание в первую очередь визуально ;-)
0
MiniSoft #
Я восхищен Вами, такой огромный объём работы выполнен за такой короткий промежуток времени.
0
CuamckuyKot #
Спасибо большое. Признателен за добрые слова.
0
fantom_ua #
Довольно не дурно, но пока ничего интересного лично для себя не увидел. Но работа хорошая,похвально
НЛО прилетело и опубликовало эту надпись здесь
0
lauri #
Вы просто, наверно, никогда сайты не верстали
НЛО прилетело и опубликовало эту надпись здесь
0
CuamckuyKot #
Если реализуешь все мои задумки под IE - буду признателен. Сверстать простой сайт под все браузеры - дело несложно, но когда много современных эффектов и примочек - то здесь уже требуется недюжинное терпение и знания.
0
S2nek #
Респект.
Насколько я понял сети у вас одной и той же направленности и аудитория--маководы.
Но у вас есть преимущество в виде уже готовой реализации.
http://habrahabr.ru/blog/i_am_advertisin…
Имхо, поработать вам над дизайном, чтобы довести до уровня Apple и всё ОК :)
Успехов.
0
CuamckuyKot #
Нет, у тот сайт ко мне не относится, не путайте.
0
S2nek #
Я то ничего не перепутал. Ваш сайт это usemac.ru
0
CuamckuyKot #
>Насколько я понял сети у вас одной и той же направленности и аудитория--маководы.
Непонятно, "у вас" - это у кого?
0
R1nat #
Дима, хорошая статья, спасибо за обзор. Вообще… спасибо за UseMac!
Думаю, что народа прибавится, прибавится и много-много хороших статьей, обзоров, подкастов, etc
Удачи тебе!
+2
andrushkaaaa #
Мое безмерное уважение автору за титанический труд и профессионализм во всех областях! Человек, который в одиночку (!) поднял стартап (пока все остальные только обсуждали, что это невозможно) — герой!

Буду ждать подробностей - и про движок, и про жизнь :)
0
CuamckuyKot #
Спасибо большое, благодарен. Можно создать реалити-шоу - "Жизнь во время стартапа" :-)
0
andrushkaaaa #
Даешь еще один стартап под названием "жизнь во время стартапа!" :-)

И правда, очень интересно. Jason Calacanis на своем сайте писал: "Come on folks, this is startup life, it's not a game." (http://www.calacanis.com/2008/03/07/how-…) Читать про Startup Life будет очень интересно - особенно потому, что usemac - не twitter, и его начальная версия на коленке не делается. (А тут четыре месяца разработки в одиночку - фантастика!)
0
ur001 #
Круто, мне понравилось!
По сравнению с Explay - это действительно похоже на работоспособный движок.
Очень любопытно, как у Вас реализованы дополнительные модули (типа чата и прямого эфира). Насколько они автономны и переносимы с проекта на проект? И как устроена фильтрация и обработка данных от пользователя (посты, комменты). Если не секрет - поделитесь )))

Из придирок - немного сумбурный дизайн, особенно что касается типографики, отступов и размеров шрифта. Опять же серая панелька - как на Дрибблёре. Хотя, обе они смахивают а Apple.com, но карандашик для публикации точно с Дрибблёра :)

И, ещё, по поводу облака тегов: недавно обнаружил насколько они красивее начинают смотреться, когда устанавливаешь логарифмическую зависимость размера тега от количества постов вместо линейной. Даже пост об этом написал
0
CuamckuyKot #
Дрибблер открылся уже после того, как движок заработал на usemac.ru :-)
Иконки - только свободно распространяемые использовал (да, да, famfamfam).
Я использовал модель HMVC. Чата и прямой эфир - это модели, которые подключаются при загрузке.
Читайте доки по CodeIgniter. Правда, мне пришлось порядком поправить код CI, чтобы хранить все модули и их модели в своих папках - например, /modules/blogs/model/blog.
0
InDel #
согласен с andrushkaaaa и присоеденяюсь! создать такое в одиночку, это что то и говорит о многом! С удовольствием почитаю дальше.
0
homm #
Ну и какое теперь время генерации страницы?
0
CuamckuyKot #
Число запросов: 10. Общее время: 0.789 сек.
Время скрипта: 0.9135 сек. Память: 1.83MB
Время Smarty: 0.0350 секунд.

Это в момент, когда обновляется кеш.
Когда кэш обновился, показывает следующее:

Число запросов: 4. Общее время: 0.004 сек.
Время скрипта: 0.2141 сек. Память: 1.79MB
Время Smarty: 0.0304 секунд

Спасибо посмотреть профиль juks за советы по настройке сервера.
0
zboris #
А на вашем сайте раньше можно было найти ссылки на бесплатный Soft под Mac или я ошибаюсь?

Очнь хотелось бы иметь раздел не просто с длинными рассуждениями и описаниями Soft`а, а в котором был бы по сути каталог Soft`а под Mac, ну с кратким описанием конечно. И с указанием где его можно скачать (если он бесплатный конечно) или с указанием где его можно купить (если платный).
Да и надо конечно попросить поделиться ссылками самих пользователей сайта, где они привыкли брать свой самый часто используемый Soft (например: мелкие бесплатные, но не заменимые утилитки типа архиваторов или конвертеров).

Это было бы очень огромный помощью начинающим пользователям Mac`ов!
+1
CuamckuyKot #
Собственно для этого сайт и создавался. У нас есть сообщество "Софт", там участники рассказывают про платный и бесплатный софт, ссылки дают.
0
zboris #
Но раньше этот раздел был намного удобнее и практичнее.
Я раньше реально находил себе интересные проги, например ссылки на разные версии Хакинтоша, а сегодня там просто большие статьи с описаниями (практически без ссылок), да и их то очень мало:(
Зря вы убили старый каталог:(
0
CuamckuyKot #
У нас никогда не было каталога.
Старая версия сайта живет по адресу archive.usemac.ru.
Форум живет на forum.usemac.ru.
0
unclegluk #
Что-то после регистрации на электропочту ничего не приходит про активацию, уже час прождал. Электропочта указана абсолютно правильно.
0
CuamckuyKot #
В спам-ящике проверяли? Какой ник у вас был при регистрации?
0
unclegluk #
Первым делом проверил, кроме спама там ничего нет. Ник такой-же как и на хабре.
0
CuamckuyKot #
Валидировал вручную.
Письмо вам было отправлено.

Aug 1 20:09:20 usemac sendmail[95311]: m71G9Kfd095311: to=mail@unclegluk.ru, delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=32465, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (m71G9KkH095312 Message accepted for delivery)
Aug 1 20:09:21 usemac sm-mta[95314]: m71G9KkH095312: to=<mail@unclegluk.ru>, ctladdr=<postmaster@usemac.ru> (1019/1002), delay=00:00:01, xdelay=00:00:01, mailer=esmtp, pri=32689, relay=cluster.relay.agava.net. [89.108.67.9], dsn=5.1.1, stat=User unknown
0
unclegluk #
Странно, но спасибо. Кстати, можно отослать мне какое-нть письмецо с того-же адреса— попробую посмотреть куда девается?
0
CuamckuyKot #
Когда вам ответят на коммент или пришлют письмо в личку - письма с оповещением будут идти с того же ящика.
0
unclegluk #
Ну и ладненько, позже проверю, что-то я сегодня устал. Буду надеятся, что ресурс окажется жизнеспособным и будет развиваться. Попробую принять участие.
0
iloveya #
Спасибо :)
Расскажите, пожалуйста, подробнее про саморегуляцию: как рассчитываются карма и рейтинг? Вряд ли голоса разных пользователей равноценны...
0
CuamckuyKot #
Конечно. Если ваша карма > 10, то вы получаете коэффициент +ваша карма% округленный в меньшую сторону до кратного 10 числа.
Также модераторы и администраторы помимо этого имеют свои доп. коэффициенты.
0
iloveya #
С рейтингом разобрался: "Помощь" помогла :)

1. А вот про карму так и не понял: давайте рассмотрим следующую ситуацию: новый пользователь с (0.000) [0.000] написал "Авторскую статью". Вы ее прочли и "одобрили" статью. На сколько вырастет карма?

2. И, по аналогии, Вы одобрили комментарий: как будет рассчитываться прибавление к карме в этому случае?

3. "Определяет отношение других пользователей сайта к тебе. Чем интереснее материалы и комментарии ты пишешь — тем выше их оценка. Если вдруг кто решит «нагадить», то с отрицательной кармой ему дороги на сайте не будет."
Может — мне?
0
CuamckuyKot #
1. Секрет.
2. Секрет.
1 и 2 - одно скажу точно, если проголосую я, то кармы прибавится в 1,5 раза больше, чем простой новенький юзер.
3. Нет. Кто решит "нагадить" - тому (ему) не будет.
0
iloveya #
1-2. Жаль(

3. Т.е. минусовать вредно?
0
CuamckuyKot #
Нет. "Нагадить" - написать плохой пост или коммент. Минусовать таких как раз нужно :-D
0
iloveya #
Ясно, правильно))... на Хабре это слово воспринимается, как синоним "заминусовать" :)
0
zol #
статейка супер для поднятие мутевации в познании теории и воплощение идей на практике.
если не сложно хотел бы спросить по поводу литературы и/или сайтов/статей которые помогли именно в разработки. Интересует именно JavaScript, AJAX, PHP, MySQL, FreeBSD
0
CuamckuyKot #
Единственные статьи, которые читал в момент создания движка - это цикл статей про Nested Sets. Конечно, постоянно гулял по докам php, mysql для корректировки знаний.
По FreeBSD очень полезный сайт есть - http://www.lissyara.su.
Все остальные знания у меня уже имелись. До IT-Будды мне еще далеко, но знание свои оцениваю как выше средних по каждому из направлений.
0
zol #
понятно. Спасибо за ответ и ссылку. Буду ждать новые статьи по этой теме с более детальными расказами о том как воплощал этот проект и какак обходитл проблемы которые были в процесе работы
+1
Wave #
[quote]Если вам будет интересно - могу написать цикл статей о своей работе над движком - узкие места, сложности и т.д.[/quote]

Очень интересно.
1. Проектирование как оно есть.
2. Мой любимый фреймворк.
0
CuamckuyKot #
ББ-теги здесь не работают :-)
Как найду в себе силы - начну писать хабра-книжку "Как я делал ЭТО" :-)
0
Wave #
[цитата]ББ-теги здесь не работают :-)[/цитата]
Я знаю, просто html мне не доступен (зачем о нём только говорить?), а так хотя бы логически выделил.
0
CuamckuyKot #
Простите, не знал. Думал, что эта возможность доступна с самого начала. Видимо, слишком давно зарегался на Хабре.
0
Wave #
Угу. Написано, "между прочим, можно использовать html-теги", но при этом теги вырезаются. И кстати, писать даже в личный блог нельзя, ибо ноль кармы, голосовать (даже за комментарии) тоже нельзя, ибо ноль кармы, а то что мне комментарии плюсуют - ничего абсолютно не даёт. А больше меня плюсовать не за что, потому что ничего не написал. А написать не могу - ноль кармы...
И так далее, и так далее, и так далее...
Люблю я хабр.
0
durik #
Тоже с удовольствием почитаю про то как это создавалось. :) И, думаю, таких желающих будет очень много, примите на заметку. =)
0
masterL #
Не стесняйтесь, побольше грязных технических подробностей.
0
BadMinus #
Молодец чувак. Ты будешь смеяться, но я данный момент начал делать примерно тоже самое))) Только вместо тех технологий которые ты используешь использую Ruby и Postgresql) И сам один все делаю. Только вот пока знаний не хватает. Но блин, если ты сделал это за 4 месяца... ты 23 апреля 86 года а я 25 ноября 86 года.... Ты из питера и я из питера... значит у меня есть 7 месяцев чтобы сделать релиз моего стартапа(про эппл так уж и быть забуду и так уже третья по счету твоя))) Я те потом в асю напишу. Ты мужик. Тоже как и я один поднимаешь сайт. Это придает мне уверенности.
0
CuamckuyKot #
Я 29 апреля 1986 года :-) Астрология рулит в понимании любых процессов этого мира.
Моя была и первая - openmac.ru. Продал на днях.
Насчет Ruby говорят, что очень жадный до ресурсов.
0
preprocessor #
ну конечно, куда ему секунду страницу генерировать и 40 мб отжирать для вывода комментов.
0
CuamckuyKot #
Я - не чувак :-) Я - человек.
0
amordezomb #
Охенно!
Молодец и молодцы!
НЛО прилетело и опубликовало эту надпись здесь
0
CuamckuyKot #
Исправил багу :-) Спасибо!
0
durik #
И почему поле "О себе" обязательное при изменении данных?
0
CuamckuyKot #
Теперь - необязательное.
0
mefa #
Здорого! Я тоже интереса ради начал делать во многом похожий движок, но и с некоторыми принципиальными отличиями. Было бы здорого, если бы ты продолжил цикл статей, я думаю, твой опыт может оказаться очень полезным.
0
CuamckuyKot #
Хорошо, если будет время и желание — обязательно создам цикл статей.
0
lgar #
потестировал usemac.ru, по хождению по данному ресурсу захотелось поюзать этот движочек, но не буду, так как есть Drupal)))
0
kostin #
Отлично изложено! Так увлёкся чтением и проникся энтузиазмом автора, что в конце ожидал встретить ссылку на скачивание или на svn :)
0
John_Cherep #
выкладывай двиг на опен соурс =)
статья отличная.
0
Suomi #
Странно что я только успел зарегистрироваться и изменить Профиль, а рейтинг у меня уже -11.

И вот форум еще. Выглядит плохо. Идея со сворачиванием меню неплохая. Только лучше и популярные темы туда же засунуть, чтобы убирались. И кстати у вас в названии написано "Используй Маc. Форум про Apple Mac, iPhone, Mac OS X Leopard.", а тема то не от Леопарда :).

Кстати, реклама Яндекс Директа четверть страницы занимает? У них это в правилах описано, чтобы такой шрифт крупный был?
0
va1en0k #
наверное, я как-то не в теме или еще чего, но ажиотаж меня удивляет :)
сначала статья
Реализованы при помощи Nested Sets, то есть многомерных деревьях, хранящихся в двумерной таблице. На осознание теории метода ушло несколько дней, но после преимущества способа радовали на каждом этапе работы. Один запрос выводит все комментарии и сортирует их в нужном порядке. Как и на Хабре, новые комментарии (с момента последнего визита) выделены цветной рамкой.
не смешно, нет? ;)

потом производительность
Получаем, что на каждую страницу приходится от 3 до 15 запросов (когда обновляется кэш).
Cреднее время генерации стандартной страницы (код+БД+Smarty) - 1 сек.
Cредняя память геренации стандартной страницы - 2Мб.
Время генерации страницы с 200 комментами - 2,6 сек, память - 40Мб (Smarty видимо).
Я так понимаю, страница с уже закешированным смарти-шаблоном и данными из мемкеша, а не бд, генерируется одну секунду? Вы что, прикалываетесь? ;)

Ну ладно, движок-движком, после друпала, который тут все время упоминается, ваш движок выглядит довольно-таки неплохо. Вот комментарии к статье меня просто поражают :) Автора статьи принимают, наверное, за Хабра-Грабового, Апостола Нового Движка, не знаю даже :) Интересно, связан ли этот странный ажиотаж с тем, э-э, потоком сознания про антисемантический CSS — там тоже все будто с ума сошли? :)

Удачи вам. И будьте скромней :)
0
CuamckuyKot #
Заметьте, я не претендую на звание "мастер ку-фу" :-) Сервер подстроил вчера - сейчас показатели много лучшие.
Поймите, что не все такие классные профи как вы, поэтому не смешно все то, что вы пишите.
–1
va1en0k #
много лучше — это сколько? ваше приложение раз в 20-100 тормознее одного аналогичного, которое я профилировал на не самом быстром сервере. вы смогли его ускорить в 20-100 раз переездом на другой сервер?
смешны ваши попытки назвать то, чем все люди давно пользуются не задумываясь, названиями на иностранных языках. а еще — то, что вы на такую придумку потратили несколько дней. ну и, разумеется, то, что вы эту придумку реализовали жутко криво — 2,6 секунд на небольшом обьеме данных!

хотя чувак, который мне ссылку на этот топик скинул, да и я сам, впрочем, больше всего смеялся над вашей просто невероятной гордостью ;)
+2
CuamckuyKot #
:-) Не устали кичиться собственной крутостью? "аналогичного", "которого я". Приглашаю ваши супер-приложения в студию под аплодисменты.
Рекомендую сначала школу закончить, в институт поступить, а потом уже говорить про свои таланты и способности ;-)
–3
va1en0k #
Рекомендую сначала школу закончить, в институт поступить, а потом уже говорить про свои таланты и способности ;-)
— хех, какой же ты скучный! :)

приложение покажем. попозже: http://habrahabr.ru/blog/i_am_advertisin…
+2
CuamckuyKot #
Ах, так бы сразу и сказали, что кипит зависть, вместо того, чтобы брызнуть слюной. Дефакто, 16-летний подросток мыслит много уже 22-летнего человека — сознание-то крепнет только к 18 годам как минимум ;-)
На "ты" не переходил, и вам не советую, молодой человек.
–6
va1en0k #
иначе что? в угол поставите? :) поставишь, в смысле. к людям, которые меня не уважают, буду обращаться так, как сочту нужным :P

да, зависть-завистью, все завидуют (ну кроме Тебя, наверное, да?). но это не делает мою критику хуже, хоть ты меня и не слушаешь, а лишь рассматривыешь разные числа вроде года рождения в профиле ;)

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

хотя да, о чем я говорю. я же младше тебя на 6 лет, а потому ущербнее и все, что я говорю, глупость и бессмыслица :)
+3
CuamckuyKot #
Сами ответили на все вопросы. Надеюсь, подрастете — поумнеете.
Критика без почвы примеров и советов пуста, также как и ваши сообщения.
Было бы за что вас уважать. За хамство и неуважение к старшим можно только посочувствовать несознательности.
НЛО прилетело и опубликовало эту надпись здесь
0
CuamckuyKot #
В данном случае это не моветон, поскольку va1en0k (говорящий ник) ведет себя ровным счетом как неокрепший юноша. Вы точно подметили - юношеский максимализм, обычно проявляющий себя только лишь на словах.
–1
CuamckuyKot #
Нашел причину зависти va1en0k'а.
Из его топика про разработку собственного проекта:
Да, у нас нет опыта работы с крупными проектами (и маленькими, получается, тоже?) и нам (черт, параноидальное чувство) кажется, что всё очень плохо: движок повалит сервер, хакер повалит движок, а юзер просто ничего не поймёт: среди всех (обоих) наших сотрудников так мало экспертов по юзабилити!. Другими словами нам нужен программист, имеющий дело с Проектами с большой буквы, хороший дизайнер и технолог. Но, Ёшкин ведь кот, у нас нет денег, чтобы заплатить всем этим незнакомым людям!

Как и говорил, пока они вдвоем пытаются хоть что-то сотворить, у меня все уже работает.
–1
CuamckuyKot #
Набрел на
–1
CuamckuyKot #
Опечатался.
Набрел на блог va1en0k'а — он не сдержался и выплеснул свою несостоятельность в открытом виде в пост под названием «Желчь».
Жалко, что он скатился до оскорблений.
Наглядный пример того, что с людьми делает зависть.
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
0
va1en0k #
ну, значит, не умный, чего уж теперь :)
–1
CuamckuyKot #
Зависть видна за версту. В то время как va1en0k с друзьями только лишь ваяет своей проект, мой уже во всю работает — отсюда и причина его юношеской обиды.
–1
megadoizer #
какой нафиг мак...тут понимаешь лёд на Марсе нашли....если честно неосилил...ну раз слово Mac в тексте есть значит зачётно !=)
0
helios #
Пользователь может создавать разные виды постов, но возможность выбора типов можно ограничить, используя Access Control Level (ACL), который руководствуется значениями кармы, рейтинга и т.д.


Насколько знаю, ACL всегда расшифровывалось, как Access Control Lists, то бишь списки контроля доступа. Исправьте=)
0
CuamckuyKot #
Хорошо, сейчас исправлю.
–1
mightymouse #
Здравствуйте.
Я тут новый. Так что прошу сильно не пинать.
Давно читаю Хабр - отличный ресурс. Все пишется свежо и приятно читать.
UseMac тоже хороший ресурс, всегда можно найти маковода и поговорить с ним на любые темы. Обстановка и тут и там мягкая и приятная.
Спасибо.
0
lronman #
вёрстка сата мега ужасная, и свалка эффектов, отключаю яву и ксс что бы что-то прочесть
0
CuamckuyKot #
Языком трепать горазды? Судя по карме - плохо это у вас получается.
0
lronman #
А вы я смотрю горазды, судя по карме, трепать то язычком.
+1
CuamckuyKot #
Жаль, что в 19 лет вы позволяете себе так себя вести. Надеюсь, что-нибудь хорошее из вас все-таки выйдет.
0
lronman #
Знаете что ужасней, что вы натсолько глупы в свои 22, что хотите слышать только хвальбу о своём "хабра движке", когда на деле я правду говорю. Очень жаль что вы в свои 22 нумеете строить предложения, и еще и опрадваетесь каким-то жалкими оговрками про возраст.
0
CuamckuyKot #
Выключите обиженного ребенка. О человеке судят по его речи, по его поступкам. Если в школе были проблемы с грамотностью - подучитесь. Никому не интересно читать про то, как вы обижены на весь мир.
0
lronman #
дядь а дядь, а почему у вас логин форма прозрачная ? незнаете как бэкграунд тарнспернтом делать ?
0
onthefly #
Да что вы к человеку прицепились с этой вёрсткой? Автор русским языком в посте написал о временно заимствованном дизайне и о том, что объявлен конкурс на его замену.

Если вы такой прыткий, взяли бы да сделали конфетку. Получили бы всеобщий респект и три штуцера на пиво.
0
onthefly #
Упс, ошибочка вышла :-)

В другом окне читал каменты о движке livestreet, отвлёкся и вернувшись продолжил читать каменты уже из другого поста в другом окошке.

Извините за путаницу, три штуцера вы можете заработать на своих знаниях здесь: habrahabr.ru/blogs/i_am_advertising/39482/
0
Entropius #
>Если вам будет интересно - могу написать цикл статей о своей работе над движком - узкие места, сложности и т.д.

ждём-с
–1
willwin #
Давайте собирать подписи за то, чтобы автор выложил движок в open source :)
–1
John_Cherep #
— ЗА! =)
+2
CuamckuyKot #
Опенсурса и халявы не будет - уважайте чужой труд.
0
payalnic #
Судя по тому что вы использовали OpenSource продукты PHP, MySQL, FreeBSD, вы чужой труд не уважаете... Так получается?
0
CuamckuyKot #
Нет, уважаю их труд. Одно лишь различие - я один, а названные вами технологии делают десятки тысяч людей. И работают они тоже не за бесплатно.
0
willwin #
Не за халявой я гонюсь и труд ваш уважаю.
Судя по описанию, движок вышел интересный, и в нём можно много чего полезного подчерпнуть для себя… мне, например, интересно как вы реализовали сжатие js и css — тоже на своём проекте давно хочу это сделать, но откладываю до удобного случая… Кроме этого и другие конкретные моменты есть, которые хотелось бы изучить.
То есть мне движок не для разведения клонов хабра нужен.
Кроме того, не знаю кто как, а я бы с удовольствием сделал donation в пользу вашего проекта, дабы высказать поддержку и уважение вашего труда. Думаю многие, нашедшие для себя пользу, сделали бы так же.
НЛО прилетело и опубликовало эту надпись здесь
0
CuamckuyKot #
Может быть это и есть та самая стилизация, о которой все говорят? :-) Она не тыренная. Когда художник рисует пейзаж - тырит ли он природу, которую изображает? :-D
Людей, готовых из принципа схожести одной лишь панельки не посещать хороший сайт, немного. Будьте проще, предвзятое отношение сейчас не в моде.
НЛО прилетело и опубликовало эту надпись здесь
0
CuamckuyKot #
Изначально у меня был свой стиль, но пользователи просили стилизацию под Apple.
НЛО прилетело и опубликовало эту надпись здесь
0
Pirate #
A PHP Error was encountered

Message: Undefined variable: friends_second
Filename: models/user.php
Line Number: 164

Message: Undefined variable: page
Filename: modules/index.php
Line Number: 66
0
Pirate #
Иногда возникают такие ошибки
0
CuamckuyKot #
Спасибо.
НЛО прилетело и опубликовало эту надпись здесь
0
CuamckuyKot #
Я знаю. Не стремлюсь соблюдать валидность верстки. Если бы был только лишь HTML-кодером - тогда да. В одиночку за всем не угонишься.
0
homm #
Ну дак поставте хотя-бы HTML strict, если не собираетесь делать валидным.
НЛО прилетело и опубликовало эту надпись здесь
0
homm #
Ну строго коворя, транзишионал тоже требует соблюдения стандартов, просто стандарты у него другие.
НЛО прилетело и опубликовало эту надпись здесь
+1
mihailt #
про отрицательные числа - в одном месте исправили а в остальных не надо?
http://usemac.ru/new/-1/ - ошибка дб, если иправлять то везде.

кстати что бы sql не светить поставте в codeigniter'овском database.php
$db['default']['db_debug'] = FALSE;
0
CuamckuyKot #
Спасибо, исправил.
–1
webclick #
Все как бы аккуратно, но бессмысленно, неинтересно, стандартно, невкусно, вторично и никому не нужно.
НЛО прилетело и опубликовало эту надпись здесь
0
CuamckuyKot #
Спасибо всем, кто давал дельные советы.
Сервер настроен на новый лад, движок модернизирован.

Новые показатели (средние по сайту):
Время работы БД: 0.07.
Время Smarty: 0.03.
Общее генерации страницы: 0.18.
+1
crocodile2u #
Простите, а сколько на данный момент записей в блогах и комментариях? В принципе, время генерации сейчас приемлемо для проекта со средней посещаемостью, надо думать, что 50-100 тысяч хитов может держать. Но ведь размер БД будет расти. И все эти нестедсетс могут еще выйти боком.
0
CuamckuyKot #
"все эти нестедсетс" - что это?
Будет расти, на то и индексы есть, и memcache.
+1
crocodile2u #
Nested Sets (вложенные множества) - принцип хранения деревьев, который вы используете. На каждый комментарий будут идти множественные апдейты, влекущие за собой тормоза - это раз - и проблемы с блокировками таблиц - это два. Выборки могут ускориться - это факт (по сравнению с теми списками смежности), но вставка (перемещение не рассматриваем, так как неприменимо к предметной области) будет тормознее. Есть также мнение, что можно на списках смежности выбирать все комментарии одним запросом и строить из них дерево программой (+кэширование в мемкэш - и вы в шоколаде).
0
CuamckuyKot #
Больше 300-500 комментариев к посту редко пишут. Думаете, много времени нужно MySQL, чтобы изменить 300-500 mediumint, а то и smallint?
Комментарий добавляется мгновенно, даже если до него уже 200 комментариев было.
Я согласен с вами — метод списков смежности имеет место быть, но:
  • Строить дерево программой более ресурсоемко, чем просто делать выборку.

  • Кэшировать комментарии к каждому посту в memcached — понадобиться очень много памяти при большом количестве комментариев и постов. Представьте, на Хабре недавно было 1000000 комментариев. Держать их в memcache постоянно?
  • +1
    crocodile2u #
    кэшируют, вообще-то, те данные, которые "пользуются спросом". Спросом пользуется ограниченное кол-во постов (один пост - одно дерево комментариев). Кэшировать весь миллион незачем. Читайте комментарии внимательнее, пожалуйста: я писал о проблемах блокировки таблиц, которые могут возникнуть при конкурентных апдейтах. А блокировка означает дополнительные тормоза. Замерять время добавления одного комментария в данном случае бессмысленно: надо смотреть время добавления одного комментария в условиях конкурентного добавления нескольких комментариев и нескольких десятков запросов на чтение этих же самых комментариев. (впрочем, порядок цифр зависит от конкретного проекта, так же как и соотношение кол-ва запросов на чтение/запись)
    0
    CuamckuyKot #
    Хорошо. Спасибо большое за поправку.
    +1
    crocodile2u #
    + надо еще будет посмотреть, насколько быстро будут осуществляться выборки в условиях постоянных конкурентных вставок.
    +1
    crocodile2u #
    Вообще же, лично я считаю, что вложенные множества применимы лишь к квазистатическим большим деревьям - в других условиях это влечет за собой лишние накладные расходы.
    0
    CuamckuyKot #
    Спасибо большое за советы. Я не позиционирую себя, как большого профи в какой-либо конкретной области, но знаю достаточно в каждой, чтобы создать работающий продукт и представлять, как он работает.
    Мне очень приятно и интересно читать советы и наставления людей, знающих намного больше чем я сам.
    0
    InternetHaetMacheen #
    При переходе на профиль пользователя выдается - Fatal error: Call to a member function num_rows() on a non-object in /home/usemac/data/www/usemac.ru/modules/blogs/models/blog.php on line 250
    0
    CuamckuyKot #
    Укажите, пожалуйста, ссылку, по которой вы переходите.
    0
    InternetHaetMacheen #
    например - http://blogs.usemac.ru/admin/
    0
    CuamckuyKot #
    Спасибо. Ошибка исправлена.
    0
    InternetHaetMacheen #
    Кажется, нет.
    0
    CuamckuyKot #
    Кажется. Она действительно была исправлена.
    0
    InternetHaetMacheen #
    Залить не забыли?

    http://browsershots.org/http://blogs.usemac.ru/admin/
    0
    CuamckuyKot #
    Действительно. Просто запросы для залогиненных юзеров и гостей различаются. Поправил. Спасибо.
    0
    bubuq #
    Зачем столько восклицательных знаков в топиках на упомянутом сайте? Несколько раздражает.
    0
    CuamckuyKot #
    Это к пользователям. Свои посты оформляю аккуратно.
    0
    bubuq #
    Вообще я всё не листал, но под двумя такими на передней странице стоит подпись "админ".
    –1
    CuamckuyKot #
    Да, прошу прощения, не придал этому внимания, когда смотрел. Восклицательные знаки там по смыслу подходят. Не нравится - не смотрите на них.
    +2
    ajaxtelamonid #
    Неплохой сайт! Сделать такой за 4 месяца одному - это персональное достижение, я считаю.

    Осталось только найти толкового дизайнера, который бы причесал дизайн к одному виду и убить мелкие баги. И все будет отлично.
    Например, http://search.usemac.ru/ - в строке поиска или font-size уменьшите или height увеличьте.
    НЛО прилетело и опубликовало эту надпись здесь
    0
    neyronius #
    Автору интереснее это сделать самому. Кроме того, иногда CMS не позволяет сделать того, что тебе нужно + производительность. В начале статьи, кстати, Drupal упоминается.
    –1
    CuamckuyKot #
    Если бы можно было бы использовать готовый продукт - свой бы не писал. Ни одна из бесплатных и платных CMS не реализует того, что сделал сам, в полной мере.
    0
    goodbye #
    теперь я яростный юзер usemac :)
    –1
    CuamckuyKot #
    Приветствуем :-)
    0
    budulay #
    Я вот для свого проекта жду на выход ExpressionEngine 2.0, которую уже тоже полностю перевели на CodeIgniter.
    Мне также интересно еще почитать про вашу работу с CodeIgniter
    0
    Alex1985 #
    На системе "Битрикс" при грамотном использовании то же бы нормально получилось. По крайней мере с безопасностью у них дело налажено.
    Кстати, я давний пользователь этого ресурса и честно скажу - старая версия мне больше нравится, но это, наверное, уже чисто субьективно.
    0
    CuamckuyKot #
    Об аппетитах и тормознутости этой системы не зря ходят легенды.
    +1
    Alex1985 #
    Это только легенды. Сайт "Эльдорадо" то же на Битриксе, и где там тормознутость? А посетителей у них сами понимаете немало. Но это лирика, а Вам в "+" несомненно разработка своего, нового. В, конце концов, если не "изобретать велосипед", то на рынке НИКОГДА не появятся нормальные конкурентные системы. А отсутствие конкуренции в этой сфере гораздо вреднее чем в остальных. Хотелось бы пожелать Вам успехов и развития - пользователей Маков все больше, а Вы у них в разряде первых. У меня тоже Ваш сайт в "Избранном".
    0
    CuamckuyKot #
    Спасибо вам большое за добрые слова. Жаль, что активных пользователей маков на так много в России — посещаемость самых популярных ресурсов колышется на уровне 7к уникальный посетителей в день.

    Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.