Архив для March, 2007

Python веб-фреймворки - 2007

Качественный, полный, объективный обзор фреймворков, с достоинствами, недостатками, планами на будущее. Что интересно, в обзор включается и вариант собственного фреймворка. Что называется, must read.Выводы вполне закономерны: Django и Pylons. Автор советует попробовать хотя бы один из них, а лучше — оба.P.S.Куда же делся TurboGears? С ним возникла ситуация, когда разработчики разрываются между поддержкой 1.0 и созданием 2.0. Природа не терпит пустоты и пользователи переметнулись (в зависимости от пристрастий) либо к Django, либо к Pylons.

Django-0.96

Вышла новая версия Django, 0.96. Краткий обзор основных новинок. продолжить чтение

Новые старые статьи на IBM developerWorks

Русский раздел IBM developerWorks пополнился тремя переводными статьями:
  • «Основанные на генераторах конечные автоматы и сопрограммы»
  • «Реализация “невесомых нитей” с помощью генераторов Python»
  • «Взгляд изнутри на JPython и Python for .NET»
Но не стоит тешить себя иллюзиями, что вы прочитаете про новые возможности генераторов в Python-2.5 или узнаете новости про Jython/IronPython — этим статьям уже сто лет в обед. Наслаждайтесь.

Ресурсы по Pylons

Полезные ссылки по Pylons:
  • Официальная документация (в textile идет вместе с Pylons)
  • Официальная вики
  • Поиск по документации Pylons и сопутствующих проектов (Paste, Mygthy, Routes и т.д.)
  • Новая вики по Pylons (Pylons Cookbok, Pylons FAQ)
  • Блоги/персональные сайты:
    • Groovie — автор Бен Бангерт
    • Jjinux land — автор Шеннон Беренс
    • Ian Bicking: A Blog — автор Ян Бикинг
    • Sluggo’s Python stuff — автор Майк Орр

Py-проекты Google Summer of Code 2007

Python-проекты Google Summer of Code 2007.

продолжить чтение

[email protected]

Ранее упомянутые статьи с IBM DeveloperWorks про Django и TurboGears теперь доступны и в переводе: l-django, l-turbogears.

Результаты Django Live Tutorial

Сегодня прошел семинар Django Live Tutorial. Дело происходило на факультете компьютерных наук ОмГУ.Что из себя представлял данный семинар: я по слайдам сделал небольшую вводную по Django (в основном по определениям), потом вживую показал как создается Django-приложение (где-то на полтора часа). Делал действительно вживую, т.е. заранее код не писал, лишь прикинул модели да набросал план рассказа. Было где-то человек десять. Естественно, большинство — студенты ФКН.По результатам могу сказать: формат “live tutorial” показался мне удачным. Планирую на этом не останавливаться. Из моментов, заслуживающих критики, могу отметить непродуманность плана доклада. Сам заметил, что “скакал” с одного места на другое.Анонсы мероприятия есть на форумах PyDev и FKN, там же и некоторые отзывы участников. Код и презентация — на .

Две вишенки для гиков

Я не использую CherryPy, и в ближайшем будущем не планирую. Но эти два проекта привлекли своей нестандартностью.

RhubarbTart — WSGIsh CherryPy

RhubarbTart — это “стиль CherryPy на WSGI-движке”. То есть внешний API от CherryPy, но сделано на Paste.

Слово автору — Джулиану Краузе:

Q. Зачем еще один фреймворк?
A. RhubarbTart не новый фреймворк, это комбинация двух существующих фреймворков: пользовательский API и структура кода CherryPy, и инфраструктура Paste. Пересмотр старых вещей ради создания новых — необходимое условие эволюции.

Q. Получится ли просто поместить свой CherryPy-код в RhubarbTart?
A. Скорее всего нет. Хотя RhubarbTart по возможности использует имена и методы CherryPy, он не реализует все возможности CherryPy. Больше всего нареканий к тому, что не реализованы фильтры. Мы надеемся, что большинство фильтров можно заменить декораторами или WSGI middleware.

TurboGears new traversal — Cherrie Nevow

TGNewTraversal — управление URLами в стиле Nevow в TurboGears/CherryPy-приложениях.

Вот что говорит Даг Винтер о своём проекте:

Если вы создаете крупное, сложное приложение, вам нужен полный контроль над обходом (имеется ввиду обход методов контроллера при определении, какой метод будет “работать” для данного URLа, англ. traversal — прим. pythy), и CherryPy не дает такой возможности. Для того, чтобы механизм обхода нормально работал, необходимо зафиксировать компоненты URLа. Если же вы хотите, чтобы компоненты URLа могли меняться, то придется писать много кода, большая часть которого — “борьба” с CherryPy.

По мне это большой недостаток приложения, которое в остальном весьма приятно. […]

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

Так что встречайте TGNewTraversal. Я взял код механизма обхода из Nevow, на мой взгляд, это лучший способ обхода. Я немного “допилил” его для большей дружелюбности к CherryPy. Совсем немного кода нужно для того, чтобы приобщиться к грамотной концепции обхода из Nevow.

Играемся с twisted.plugins

Продолжаем тему плагинов. Сегодня разговариваем о системе плагинов в Twisted.

продолжить чтение

В копилку Django

Две заметные фигуры в сообществе Django буквально подряд запустили интересные сервисы, сделанные на Django.Джейкоб Каплан-Мосс запустил CheeseRater — сервис для оценки “нужности” пакетов с сырного магазина.Джеймс Беннетт организовал DjangoSnippets — небольшие подсказки, хаки и примеры по Django.Что очень здорово — доступны исходные коды обеих сайтов.По желанию, можете проголосовать за Pytils и за любой другой понравившийся пакет. Django rocks!Если кто не понял — Fresh это плюс, Moldy — это минус.

PyCon2007

В конце февраля (с 23 по 25) в Далласе прошла ежегодная конференция PyCon. Вообще, по Python две международных конференции — PyCon в Америке, EuroPython — в Европе. Конференции не имеют фиксированного места проведения. И, к примеру, EuroPython2007 будет проходить в Вильнюсе.Что касается PyCon2007, то обзор мнений достаточно полно приведен в import this. Я добавлю лишь ссылку на стенограмму web framework panel записанную Джеймсом Беннеттом. Из тех слайдов, что я посмотрел, очень понравились .