29 окт. 2010 г.

Лучшее видео для пятницы такой длинной и тяжелой недели

28 окт. 2010 г.

Удивительное рядом * 2

Сегодня с утра, после того, как отвел сына в школу, включил обновление приложений на моем HTC Hero. FBReader обновился до версии 0.7.12 и начал валится с ошибкой. В FBReader’е (а может это android такой) в таких ситуациях предлагается отправить traceback разработчику. Так вот, я его отправил и лег спать (8:19 (GMT+05:00)), а в 8:22 мне пришел ответ от разработчика “Fixed in 0.7.13, sorry.”. В 10 утра я проснулся и скачал 0.7.13 версию, в которой этого бага уже не было. Удивительные скорости реакции, не правда ли?

 

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

Удивительным в этой части сна был тот факт, что я видел город в мельчайших подробностях (что обычно не свойственно для снов). Я мог свободно перемещаться по этому городу и рассматривать его дома, целые районы. Чем больше я там проводил времени, тем больше новых деталей видел и узнавал. Мне становились понятны некоторые причины именно такой архитектуры и жизни, протекавшей в этих дворах, домах и пр.

В какой-то момент сна я понял, что хочу в нем оказаться (материализоваться или что-то в этом роде) – это вторая часть сна. В ней я уже по всем законам физики в своем привычном теле путешествую по этому же городу, но, конечно, по значительно меньшей его части. В какой-то момент я дохожу до большой стройки с плитами разложенными в форме какой-то сложной фигуры-фундамента для будущего здания. Я прохожу этот участок и оборачиваясь вижу, что где-то позади произошел взрыв. Это не смущает меня, но дальше я двигаюсь быстрей.

В какой-то момент я оказываюсь на песчаной дорожке, по которой идут люди, но к этому моменту от долгого бега у меня кончаются силы и я падаю лицом вниз прям на эту дорожку. Голова моя, однако, при этом повернута на лево и я вижу как ко мне приближается девушка в фиолетовом плаще (или пальто – сейчас я уже не так хорошо помню). В ней я узнаю девушку, с которой встречался ещё в школе. Мы вместе идем дальше. Разговариваем. Среди прочих тем выясняется, что я нахожусь в альтернативной реальности, в которой мы с ней не расставались. У нас есть сын Пашка, которого мы так назвали по совету друзей (были действительно такие друзья, но чтоб они что-то такое советовали я не помню). Во время этой беседы, всего содержания которой я передавать не стану, я вижу где-то справа за домами ещё один взрыв, похожий на первый. Через некоторое время я просыпаюсь, но в сознаний у меня остаются чьи-то слова, мол: “не бойся оказаться в эпицентре взрыва (которые происходили на фоне), бойся проснуться, т.к. тогда ты не останешься в этой реальности”. Видимо, чтоб в ней остаться, нужно именно во взрыв попасть?

 

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

 

UPD.




26 окт. 2010 г.

SuperBoxSelect для ExtJS

Он реально крут! Советую всем, кто когда-либо собирается делать формы на ExtJS присмотреться к нему:

http://technomedia.co.uk/SuperBoxSelect/examples3.html

Наиболее приятная (для меня) его часть в том, что допилить djangoextjs для генерации форм с ним сможет даже однорукий дебил.




24 окт. 2010 г.

Ext JS 3.3.0

11 октября вышла 3.3.0 версия ExtJS. Список изменений можно смотреть по адресу http://www.sencha.com/products/js/CHANGES_ext-3.3.0.html. К сожалению, чуда не свершилось – в списке изменений нет исправлений в работе форме через ext.direct, а формы не сабмитятся Печальная рожица.




22 окт. 2010 г.

Updates: django-reversion и cmsplugin_gallery

Хочу акцентировать ваше внимание на двух инструментах для django-cms:

http://github.com/etianen/django-reversion (вообще, можно использовать в проектах на джанго без django-cms) – позволяет хранить ревизии объектов, в django-cms используется для восстановления удаленных страниц.

http://www.django-cms.org/en/extensions/gallery-plugin/detail/ – галерея с Drag&Drop для 2.1 версии, которая все никак не появиться…




20 окт. 2010 г.

Браузеры в песочнице

Протестировать свою очередную веб-поделку во всех популярных браузерах порой не просто, а держать в одной ОСи установленными более 2 версии IE вообще невозможно (или возможно?). Аналогичные проблемы? “Песочница” в помощь: http://spoon.net/Browsers/ (Microsoft Internet Explorer 6-9beta, Mozilla Firefox 2 –4beta, Google Chrome видимо 5 и 6, Apple Safari 3-5, Opera 9 и 10).




17 окт. 2010 г.

Changing Education Paradigms

Прекрасная презентация о необходимости изменения (в широком смысле) образовательной системы. Очень советую посмотреть.

14 окт. 2010 г.

Перепост по розыску г. Тюмень

Перепост по розыску г. Тюмень



'''
12 октября 2010 года из дома по адресу: г. Тюмень, ул. Комбинатская, 42-а, ушла и до настоящего времени не вернулась Анисимова Анна Андреевна 1998 года рождения.
На вид 11 лет, низкого роста, телосложение худощавое, лицо овальное, по цвету смуглое, глаза голубые, волосы волнистые, светло-русые.
Одета: плащ тёмно-зелёного цвета, сапоги чёрного цвета.
Последний раз Анисимову Анну видели на перекрёстке улиц Л. Толстого – Пролетарской, недалеко от стройки, она разговаривала с незнакомым мужчиной, которому на вид 30 – 35 лет, лицо круглое, щёки полные, среднего роста, полного телосложения, на голове кепка, одет в куртку, брюки тёмно-зелёного цвета. Недалеко от них стояла автомашина «Жигули»-классика тёмно-зелёного цвета.
Предположительно, может находиться в районе садоводческих обществ д. Метелёвой.
Всем, кто располагает сведениями о местонахождении Анисимовой Анны, просьба обратиться в отдел милиции № 8 УВД по г. Тюмени по телефонам: 43-02-02, 79-41-64, 29-11-50 или 02.
Контактные телефоны родителей: 8-922-485-34-00, 8-912-994-19-78.
'''

К.О. об excel в python.

Недавно я задавался вопросом о изменении существующих файлов excel в python. В процессе изучения задача обросла новыми требованиями, но все же стало ясно, что продолжать пользоваться pyExcelerator для генерации “похожих” на существующие файлы клонов я не хочу (долго, сложно, муторно, не точно). На помощь пришел кэп – сайт называется http://www.python-excel.org/.

Там ссылки на 3 библиотеки xlrd (чтение), xlwt (запись) и xlutils, которая объединяет использование первых двух. Кроме того, на сайте есть ссылки на примеры и документацию.




12 окт. 2010 г.

Вконтакте и джанги с питонами.

Обертка для методов API Вконтакте:

http://bitbucket.org/kmike/vkontakte/src/

http://bitbucket.org/kmike/django-vkontakte-iframe/src

Документация по методам:

http://vkontakte.ru/page2369282

Есть ещё мерчант, хотелось бы поиметь нативное API и к нему:

http://vkontakte.ru/pages.php?o=-1&p=Merchant%20API

но я тут не один такой умный

http://moikrug.ru/vacancies/168071264/




ExcelResponse

Опробовал ExcelResponse с http://bitbucket.org/kmike/django-excel-response/src.  Понравилась возможность выгружать эксель вот таким простым способом:


def excelview(request):

    data = [

        ['Column 1''Column 2'],

        [1,2],

        [23,67]

    ]

    return ExcelResponse(data, 'my_data')


Далее, буду переписывать под свои нужды, т.к. мне почти всегда нужно переопределить default стиль оформления.

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




7 окт. 2010 г.

Используем “укротитель” ссылок от Google в django.

На самом деле, кончено не “укротитель”, а “укорачиватель” ссылок: http://djangosnippets.org/snippets/2220/


import urllib

import json



def GooGL(url):

    params = urllib.urlencode({'security_token'None'url': url})

    f = urllib.urlopen('http://goo.gl/api/shorten', params)

    return json.loads(f.read())['short_url']


Пример для адреса сниппета:


>>> = 'http://djangosnippets.org/snippets/2220/'

>>> GooGL(l)

'http://goo.gl/HSal'


5 окт. 2010 г.

Django 1.3

Релиз планируется на 17 января 2011. 18 октября уже наверное можно будет пощупать нововведения: логирование и основанные на классах views (подробней на djangoproject.com).




Сказ о inlineformset_factory в Django

Как говориться, все уже давно украдено до нас – в django есть поддержка наборов форм (formset), объединенных отношением к общему объекту (т.е. у одной сущности есть ForeignKey к другой – К.О.). Ниже листинг, который позволяет очень просто управляться с этим набором (листинг шаблонов и моделей не привожу – он тривиален):


# in views

from django.forms.models import inlineformset_factory

...

@render_to('my_template.html')

def step2(request, hash):

    h = get_object_or_404(ModelWithHash, hash=hash)

    MyFormSet = inlineformset_factory(ModelWithHash, \

                RelatedWithModelWithHashModel, extra=1)

    if request.POST:

        formset = MyFormSet (request.POST, instance=h)

        if formset.is_valid():

            formset.save()

            formset = MyFormSet(instance=h) # Затер лишние формы

    else:

        formset = MyFormSet(instance=h)

    return {

        'formset':formset,

    }


Уже используете? Где пригодилось?