rutube
Блог команды разработчиков RuTube
пятница, 10 апреля 2015 г.
воскресенье, 4 декабря 2011 г.
Система кеширования для Django ORM
Основные характеристики
- автоматическое кеширование результата запросов;
- ручное кеширование результата запросов;
- автоматическая инвалидация кеша по событию;
- ручная инвалидация кеша;
- кеширование результата функции с автоматической инвалидацией;
- redis в качестве бэкэнда;
- простота настройки;
Ссылки:
- https://github.com/Suor/django-cacheops - офф. сайт
- http://habrahabr.ru/blogs/django/129122/ - статья на хабре
- http://habrahabr.ru/blogs/nosql/129185/ - не про cacheops, но даёт примерное представление как он устроен.
среда, 23 ноября 2011 г.
БЭМ!
От KorWin_SV:
http://bem.github.com/bem-method/pages/beginning/beginning.ru.html
Хотелось бы видеть у нас css именно в таком исполнении, а не каскадным от всея-body до низов.
Наиболее интересный коммент от Johnner:
Статья хорошая (особенно картинки), есть несколько соображений:
http://bem.github.com/bem-method/pages/beginning/beginning.ru.html
Хотелось бы видеть у нас css именно в таком исполнении, а не каскадным от всея-body до низов.
Наиболее интересный коммент от Johnner:
Статья хорошая (особенно картинки), есть несколько соображений:
- БЭМ дает сильную упорядоченность в структуру файлов проекта
- Реализация позволяет легко управлять видом страницы используя серверные шаблоны: по специально сформированному json, клиент строит html (раньше Яндекс использовал xslt, сейчас похоже активно переходят на js-шаблонизаторы). Нужно будет пилить как клиент так и сервер-сайд.
- Одним CSS не отделаемся, придется выделять и строить структуру компонентов используемых на всех страницах (панели, кнопки, табы, формы и т.д), и не совсем понятно, как делать сборку единого css-файла, оторванную от общей технологии БЭМ.
- Для каждой страницы есть контроллер, который смотрит какие компоненты используются на этой странице, строит по этим данными html и подтягивает нужные CSS.
- Не совсем понятно как быть с библиотеками (у нас еще висит Prototype), и как использовать при этом jQuery
четверг, 3 ноября 2011 г.
Validation::Class - то, что нам нужно!
Господа Perl-разработчики, на CPAN появился замечательный модуль Validation::Class. Прелесть его заключается в его парадигме и хорошей документации:
http://search.cpan.org/~awncorp/Validation-Class-0.110280/lib/Validation/Class.pm
Есть скринкаст, доходчиво объясняющий парадигму этого модуля:
http://b.ana.io/post/12275755157/validation-class-overview-screencast-in-this
Следует внедрить использование этого модуля в нашем перловом коде.
http://search.cpan.org/~awncorp/Validation-Class-0.110280/lib/Validation/Class.pm
Есть скринкаст, доходчиво объясняющий парадигму этого модуля:
http://b.ana.io/post/12275755157/validation-class-overview-screencast-in-this
Следует внедрить использование этого модуля в нашем перловом коде.
Вопрос про проектирование интерфейса класса
Мне тут недавно приснилось (сам в шоке!), что я хочу к дате прибавлять и отнимать 1 месяц.
Возник интересный вопрос (и тут же пачка следом, привожу в порядке появления)
1) Что будет, если к 3 ноября прибавить 1 месяц? Вроде как 3 декабря.
2) Что будет, если к 28 января прибавить 1 месяц? 28 февраля по идее...
3) Идем дальше, 29 января? Тут есть нюанс ;) Думаю, наилучший выход, если выходим за диапазон дней месяца, ставить 1 число следующего и не париться.
4) Если у нас сложение работает как в п.3, то 29.01, 30.01, 31.01 и 1.02 после прибавления 1 месяца становятся одной датой - 1 марта.
5) А самое интересное начинается при вычитании 1 месяца. Оказывается, что (30.01 + 1 месяц) - 1 месяц = 1 февраля, а (30.01 - 1 месяц) + 1 месяц = 30 января.
Вот такие вот пирожки...
Мне тут недавно приснилось (сам в шоке!), что я хочу к дате прибавлять и отнимать 1 месяц.
Возник интересный вопрос (и тут же пачка следом, привожу в порядке появления)
1) Что будет, если к 3 ноября прибавить 1 месяц? Вроде как 3 декабря.
2) Что будет, если к 28 января прибавить 1 месяц? 28 февраля по идее...
3) Идем дальше, 29 января? Тут есть нюанс ;) Думаю, наилучший выход, если выходим за диапазон дней месяца, ставить 1 число следующего и не париться.
4) Если у нас сложение работает как в п.3, то 29.01, 30.01, 31.01 и 1.02 после прибавления 1 месяца становятся одной датой - 1 марта.
5) А самое интересное начинается при вычитании 1 месяца. Оказывается, что (30.01 + 1 месяц) - 1 месяц = 1 февраля, а (30.01 - 1 месяц) + 1 месяц = 30 января.
Вот такие вот пирожки...
среда, 26 октября 2011 г.
Morgoth - асинхронный драйвер отчетов
В скором времени в бой по линии ПРД пойдет асинхронный драйвер отчетов, разработанный в подпольях техотдела в свободное от работы время.
По просьбе А.М. полное описание перенесено на confluence по адресу https://confluence.rutube.ru/pages/viewpage.action?pageId=6456193
И еще раз, большая просьба задавать вопросы в почту, дабы я смог расширить и углубить знания по описанному, кхм, инструменту, сконцентрированные на жалком клочке экранного пространства в конфе.
По просьбе А.М. полное описание перенесено на confluence по адресу https://confluence.rutube.ru/pages/viewpage.action?pageId=6456193
И еще раз, большая просьба задавать вопросы в почту, дабы я смог расширить и углубить знания по описанному, кхм, инструменту, сконцентрированные на жалком клочке экранного пространства в конфе.
вторник, 25 октября 2011 г.
Новая фича в demarshal()
В demarshal() добавлена костыль фича для автоматичекого перекодирования значений свойств в кодировку системы. Для включения у свойства данного функционала, требуется установить атрибут force_encode в карте маршалинга.
За подробностями прошу в http://pod.ezn-dev01.rutube.corp/perldoc/Rutube::Obj::Persistent
За подробностями прошу в http://pod.ezn-dev01.rutube.corp/perldoc/Rutube::Obj::Persistent
Подписаться на:
Сообщения (Atom)