Ошибка в MPTtree для CodeIgniter

image

Для тех, кто использует модель MPTtree, реализующую вложенные множества в CodeIgniter. Не рекурсией же вы иерархические структуры читаете, смею надеяться?image

В функциях move_to_first_child_of, move_to_last_child_of закралась ошибка. Соответственно, в модели не работает перемещение узлов. Эти же функции используются ORM, поэтому проблема глобальна.

Строки

<?php
if($this->lft != || $node->orphan || $node->instance->tree_table != $this->instance->tree_table
            return 
false;
?>

бессмысленны, так левая граница перемещаемого узла всегда будет неравна единице, так как единица – это левая граница корневого узла. И наоборот, эта функция сработает, если отмечен корень, что не хорошо, ибо корень един и не изменяем.

Меняем $this->lft != 1 на $this->lft == 1 и радуемся.

Тем кто не в теме, срочно просвещаться.

P.S. В рассматриваемой модели поле уровня не используется, оно излишне. Необходимо и достаточно левой и правой границы.

image

Банальности о качестве

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

Увеличение количества ведёт к увеличению штата при сохранении уровня квалификации команды. Нет нужды платить сотрудникам больше, если задачи перед ними стоят неизменной сложности, не нужно тратится на их обучение и  сертификацию. Даже наоборот — можно организовать текучку кадров и платить на треть меньше, прикрываясь испытательным сроком, а вместо премии размещать фотографии на доске почёта, выдавать дипломы “лучшего сотрудника” и прочие “бубенчики для дикарей” вместо денег.

При таком подходе и клиент вам нужен будет специфический — нетребовательный и падкий на дешевизну, с низким культурным багажом и отсутствующими тематическими знаниями. Как такого получить? Путём отсева умных людей — давайте яркую рекламу, заказывайте спам-рассылки, сделайте корявый неудобный сайт. На сайте используйте уродскую типографику, анимацию, разноцветные огромные буквы на "кислотном фоне", неоптимизированные фотографии, слово "успех" во всех возможных вариантах, "100%", "Дёшево!", "Вернём вам деньги". Это гарантированно приведёт к вам одних идиотов.

image

Почему? Так ведь нормальному человеку от продавца возврат денег нужен в последнюю очередь — его качество товара интересует.  Например, возврат денег за неудачную турпоездку не вернёт загубленную неделю жизни, а просроченный медицинский препарат может загубить ему жизнь навсегда.

На слово "успех" клюнут, пожалуй, только НЛП-сектанты и иные психокультисты, типа этих — готовая аудитория. На цифры “100%” — те же, кто реагирует на ценник "499 рублей" вместо "500 рублей" и бирки с надписью “Распродажа”.

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

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

Например, заказывая сайт он понимает, что:

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

Приятный побочный эффект — работа на качество с постоянно усложняющимися проектами ведёт к профессиональному росту имеющейся команды.

Из жизни:

"Завод сайтов" (название изменено) делает сайты по 4000 рублей. Сайты у всех клиентов одинаковы, шаблоны стандартны, выглядит отвратительно. Зато дёшево. Это как раз то, что стоит 110 рублей.

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

Чудо промышленного дизайна

В аэропорт “Внуково” удобнее всего добираться экспрессом от Киевского вокзала. Всего 250 рублей – и через полчаса ты уже в аэропорту. Ну просто всё так ведь быть не может, да?

Чтобы открыть дверь, вагона, нужно нажать на кнопку на двери. Расположена она низко, ничем не выделяется, как кнопка не выглядит и попросту незаметна. Поэтому нубов видно сразу – стоят с чемоданами и ждут, что двери откроются автоматически. Так, по идее, железнодорожники заботятся о том, чтобы кондиционированный воздух не выходил из вагона. Только вот кондиционеры не работают. Как и подвешенные к потолку ЖК-панели.

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

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

Для удобства пассажиров над сиденьями расположены направленные лампы, как в рейсовых автобусах. Ночью приспичило почитать — открыл газету, потянулся к выключателю… Ой, что это, а лампа и выключатель расположены на такой высоте, что нужно встать и протянуть руку. Очень удобно, профилактика гиподинамии. Особенно если поезд вдруг затормозит.

102_001Об удобстве слесарей по ремонту подвижного состава конструкторы тоже позаботились. Полюбуйтесь – люк, довольно просто открываемый специальным ключом. И привинченная к ему стойка для багажа, упирающаяся в потолок.

100_001Ближе к аэропорту экспресс ныряет в тоннель, в котором и останавливается. Выход напоминает обычный выход из городской подземки. Выводит он нас на замечательную бетонную тропу, между заборами и страшнейшими многоярусными стоянками. Тропа сложена из бетонных плит, с перепадами высоты, заботливо оставленными для иностранных туристов, которые врезаются в колдобины тележками с багажом и остаются лежать под пирамидами из своих чемоданов. Правильно, так им, настоящий мужик должен путешествовать в спартанских условиях – нож и коробок спичек должны составлять весь его багаж. Ну может, солонка ещё. Ну и под ноги смотри, да?

Смотреть

Хранители — феерический бред, но местами забавен. Если в США фильм заявлен, как фильм со смыслом, то обычно он заключается в так называемой "диснеевщене" — то бишь слезливом изложении тонкостей взаимоотношений героев, включая измены и насилие, чинимые оными друг другу. Синий профессор Манхеттен мне понравился, как и концепция супергероя-бога. А чего стоит фраза "Вечером у ограждения заметили кровеносную систему" – и видеоряд, как синяя несчастная кровеносная система обивает пороги исследовательского центра. Хорошо смотрится Роршах, хотя принцип меняющих очертания клякс на его маске остался за кадром. Наверное, жидкие кристаллы или электронные чернила.
Вердикт: посмотреть стоит, в коллекцию не взял бы.

image

Тайна Чингисхана. Непонятно, зачем вообще снят и выпущен в прокат. Заведомо проигрышный сюжет после "Монгола". Игра — никакая, операторская работа — уровень любительской видеокамеры. Досматривать не стал, посему зачем там оказался христианский проповедник не могу знать.
Вердикт: безвозвратно утеряны полчаса жизни.

image

Читать полностью

Монетизаторы

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

Клиническая картина проявляется появлением в записях так называемых “постовых” – блоков с рекламными ссылками, появлением дикого количества счётчиков и логотипов каталогов на главной странице.

image

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

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

Во время кратковременных ремиссий больной пытается улучшить читаемость, разбавляя текст картинками, активно используя списки,

  • потому что
  • какой-то идиот
  • написал, что посты
  • со списками
  • легче читаются
  • и привлекают много народу,

и посты с советами а-ля “Как раскрутить свой блог”, “Как поднять ТИЦ за месяц”, “Как выйти в ТОП-10”.

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

Больным овладевает навязчивая идея, что чем больше ссылок на другие сайты он разместит, тем меньше станет его ТИЦ. А если ссылок из его постов практически не будет, но все будут ссылаться на него, то ТИЦ вырастет большим и крепким. А как известно, чем больше ТИЦ, тем дороже платные ссылки. Поэтому пациент сам начинает покупать ссылки и размещать объявления с рекламой себя в AdWords.

На этой фазе больной наиболее заразен – он регистрируется во всех социальных сетях, в популярных форумах в подписях размещает ссылки на свои блоги, массово добавляет всех в твиттере, заводит трансляции в LiveJournal, LiveInternet, Я.ru.

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

Болезнь крайне опасна для общества – отчасти именно из-за неё первые две страницы результатов поиска на Яндексе можно смело пропускать.

И наконец раскрываю главный секрет привлечения толпы народу в ваш блог:

Читать полностью

Всё хотите узнать среднюю цену сайта?

Вот.

Нет, это не дорого. Да, цены упали, но не на много. Нет, это нормальная цена нормального маркетингового инструмента. Да, немного отличается от сайта за 100$ made by студент Вася Пупкин с фриланс.ру, но в таком ценовом сегменте заказчики обычно осознают цели и адекватно распределяют средства.

Добавлю, что это обобщение по сотням студий. В каждом конкретном случае стоимость расчитывается индивидуально. Новиков лучше объясняет.

Юзабилити для дурака

image В рунете часто путают две абсолютно разные вещи – юзабилити и ориентацию на дурака. Как часто приходилось слышать от разработчиков: «Да пользователь дурак, не будет он вводить», «да не знает он», «да не будет регистрироваться».

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

Не дурак пользователь вовсе, как считают заносчивые айтишники,  он просто ленив. Технари забывают, что кроме компьютеров, в мире ещё много всякого разного, и во всём специалистом быть невозможно. А что зарегистрироваться не может – так помоги ему. Может, новый Эйнштейн на форум твоего сайта заглянуть решил, или старичок буржуй-инвестор денег хотел дать, да не смог. А дураками их назвать только дурак и может. Поэтому проектируйте просто, но не жертвуйте функционалом и защитой ради этой простоты. Лучше при клике на большой вопросительный знак красиво с помощью jQuery подсказку по регистрации на страницу вывести, чем убрать защиту от ботов и получить загаженный спамом блог или форум.

О подсказках, кстати. Размещайте их или до непонятностей на самой странице, или выводите на ту же страницу скриптами. Кликать по ссылке, чтобы получить помощь будут единицы. Да, все ленивы.

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