Дневник программиста

Опубликовано 2013.07.18

В этом посте я попытаюсь написать реальный дневник программиста. Что из него получится - я пока незнаю. Будет он шуточным или серьёзным, пригодится ли кому-то или нет ну и так далее. Я постараюсь описать значимые, или интересные моменты из своей практики. Или же просто буду трепаться обо всё на свете:) Свежие посты сверху.
30 июля 2013г.
Делаю "вечный" кэш для редкоизменяемых блоков. Суть в том, что время жизни кэша не ограничено. Зато в отдельном модуле прописаны все взаимосвязи материалов, и изменение одного из связанных друг с другом материалов повлечёт за собой очистку кэша. Таким образом инфа всегда будет актуальной и закэшированной. Подходить к такому способу кэширования нужно очень внимательно, особенно если система достаточно объемная и сложная.
26 июля 2013г.
Сегодня надумали большую мысль. Сайт собран на панелях, на страницах множество пейнов. Большая часть из них - самописные. Они дергают достаточно много ненужной инфы. Решили закэшировать их следующим образом: есть универсальный Content type плагин, который может подсосать абсолютно любой другой контент тайп плагин, или поле материала, или что-нибудь ещё из того что предлагают панели. и соответственно кэширует всё это дело. Плагин наверное на четверть готов:) В настройки плагина подтянул все остальные плагины, осталось их выводить и кэшировать. И вторая половина этого модуля - это установление всех взаимосвязей типа Nodereference и их использование в тех или иных плагинах. И соответственно чистка кэшэй при апдейте нод.
25 июля 2013г.
С утра зарядил дождь, похоже лето уже закончилось... Продолжаем программировать и фиксить баги. Решил посмотреть переходы в liveinternet и наткнулся на это: Отзыв о php-include.ru Отвечаю. Да, у чувака реально сумасшествие, и всё потому, что он не любит Друпал :))
24 июля 2013г.
Сегодня поступила оригинальная задача, из разряда
"оно должно само всё работать, нам не нужен мозг"
Если конкретней - то это автоподстановка тэгов в материал, на основании слов, используемых в материале. Задача то несложная, уже даже решенная. Фишка в другом. Есть допустим Иван Петров - депутат, и Иван Петров - директор фирмы "Web агентство Ашот+". И нужно положить в один словарь два одинаковых термина "Иван Петров". Один "Иван Петров" это депутат, а второй "Иван Петров" - это директор. Понять кто-же он такой нужно из окружения вхождения. То есть если присутствует в тексте слово "депутат" - значит это первый "Иван Петров", а если присутствует слово "директор" - это второй "Иван Петров". Не может быть в одном словаре двух одинаковых терминов. А что будет, если в тексте присутствуют и "директор", и "депутат"? Или отсутствуют оба вхождения? Пока не стали спрашивать об этом заказчика... По прогнозу сегодня должен быть дождь, а его всё нет и нет, и не предвидится. Значит пойдём после работы бухать гулять на ВДНХ :)
23 июля 2013г.
Начал осваивать Symfony 2. Очень пригодится при написании кода для Drupal 8. Во вреймворке используется система бандлов, тут я немного описал как создать бандл. Пока конечно сложновато, некоторые вещи также нужно делать через консоль. А так вообще достаточно интересно, узнаётся много нового.
22 июля 2013г.
Пришлось повозиться с кастомными токенами. При формировании алиасов использовались термины таксономии, поле таксономии со множественным выбором. И для того, чтобы понять, какой термин главный - используется ещё одно cck поле типа integer, в котором хранится tid термина. Сдружил это поле со стандартной таксономией и всё корректно заработало. P.S. Обнаружили, что когда закрывали правую колонку от индексирования - ничего не закрылось. Правая колонка и один левый блок в шапке имели одинаковый класс - rightcolumn. В итоге закрыли не то. Поправил, посмотрим как быстро переиндексируется вся эта муть.
19 июля 2013г.
Снова ругались с заказчиком, ему видимо общения в жизни нехватает. Да, при работе с друпалом используйте функцию drupal_strlen(), вместо strlen(). Русские символы тоже будут корректно считаться. Недавно закрыли правую колонку сайта от индексирования, должен уйти один непонятный глюк, связанный с гуглом и яшей.
18 июля 2013г, четверг.
Уже почти пятница, хочется на выходные. Заказчик опять прибегал, у него как всегда всё не работает. Как выяснилось,
"всё работает, но это некретично, но напрягает"
Пообещал посмотреть что случилось, обнаружил баг фичу, тем не менее будем править. Хочется кофе с печеньками... Опять прибегал, у него на сайте пропала картинка, а у меня корректно отображается, хотя тоже пропадала, минут 15 назад. А потом появилась. Объяснить такое поведение не можем. Да, картинка обрабатывается библиотекой GD. Ростом посещаемости такой глюк тоже не мог быть спровоцирован. К скачкам посещаемости мы привыкли, то конец света в челябинске, то развод путина, сегодня вот Навальному дали 5 лет.
10 июля 2013г.
Купил недавно USB вентилятор. В душном офисе самое оно. Втыкается в монитор и крутится.