Задачка про move_month

21.01.2009

Python

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

Кодировка статических файлов в lighttpd под Ubuntu

17.01.2009

Ubuntu

Только что удалось, кажется, более-менее правильно победить давно мучающую читателей "Учебника" проблему, которую на днях снова озвучили. Проблема, казалось бы, дурацкая и простая, но вот не давалась долгое время. Пишу этот пост-мортем, чтобы мне рассказали, как это сделать еще лучше, и чтобы это потом поисковиками находилось. Итак, есть статические .html, ...

Джанговские агрегации

15.01.2009

Django

Сделали: http://docs.djangoproject.com/en/dev/topics/db/aggregation/! Особо приглянувшиеся мне вещи: Store.objects.annotate(Count('books__authors')) Store — это магазин, у него many-to-many на Book, у которого есть many-to-many на Author. Тут делается join по всем нужным таблицам и group by на них. * Book.objects.annotate(num_authors=Count('authors')).filter(num_authors__gt=1) Я очень рад, что having не стали делать отдельным понятием. Это просто фильтр. А ...

Изменённые данные в форме

14.01.2009

Django

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

Dropbox

Я когда-то рассказывал, что для синхронизации файлов между домом и работой стал использовать subversion. Это устраивало меня до какого-то времени, но недавно я все это заменил на Dropbox, и пребываю нынче в свинячьем востороге :-) Начну с того, что было неудобно с subversion. Первую проблему я озвучил прямо тогда же ...

Как работает SM.Org

Недавно расквитался в первом приближении с давно висящей и давящую на голову задачкой: опубликовал исходный код всех Джанго-приложений, которые поддерживают разные части SoftwareManiacs.Org. И меня посетила мысль поделиться тем, как оно вообще у меня тут все живет. Сайт SoftwareManiacs.Org работает на VPS-сервере (у компании TekTonic) и представляет собой сборную солянку ...