2008-07-07

EuroPython 2008 день один

Итак, мой первый день на EuroPython 2008 и впечатления.

Впечатления положительные. Много народа со всего мира. Народ разный в размерах и разного возраста. Стараются ломать языковой барьер и прочие комплексы. Общаемся.

Организаторы не подкачали. В отеле совсем не плохо. Всё почти ясно и прозрачно.

Посетил только одну треть докладов. Меня ещё не клонировали - поэтому появиться одновременно в 3 аудиториях я не смог.

Первым был Marcin Kaszynski: Build an App in a Week. Человек объяснил как быстро построить сайт на Django. Жаль что всё так коротко и доклад бы о маленьких сайтах. Но идеи с автоматическим развёртыванием на системе разработчика мне понравился. Были не плохие замечания относительно синхронизации моделей и структуры базы данных.

Далее я попал на Tommi Virtanen: My God, it’s Full of Files. Чувствуется, что для Tommi Virtanen это не первая презентация и человек много общается. Скорость и дикция отличная, слайды подобраны под темп доклада. Тема работы с файловой системой затронута очень актуально и правильно. Идеи тоже хорошии. С ним удалось пообщаться в перерывах относительно Twisted и его возможностей, http streams и загрузки огромных файлов. Приятный собеседник, огромный багаж знаний.

Потом был Dinu Gherman: Accessing File-Specific Attributes on Steroids. Может оно было-бы и очень хорошей утилитой, но как-то слабо представлено. Я слабо представляю применение её себе. Поиск по атрибутам файлов. По моему есть готовые решения для многих платформ и довольно неплохих. На одно из них было сделано отличное указание во время презентации. Кстати, народ очень интересовало как это сделано, именно сам поиск и анализ файлов без “открытия или запуска” файла, техническое решение. Ответа конкретного небыло.

Отличный длинный обед.

После обеда был Zope. Malthe Borch: A New Approach to Web Authoring on Zope - после нескольких лет паузы, меня заинтриговало. Очень. Надо обязательно вернуться к Zope и посмотреть на что он уже способен и как действует.

И конечно, неповторимый Harald Armin Massa: Discouraging the Use of Python. Отличная презентация, почему не стоить использовать Python. Отличное чувство юмора и отличные доводы почему не стоит использовать столь прекрасный язык программирования.

И в конце первого дня, на закусочку с нами напрямую связался сам Guido van Rossum. Рассказал про Python 3000. Тоже молодец, человек с юмором. Учитывая что была видео-конференция (плюс постоянно кто-то врывался в кабинет где сидел Guido van Rossum и ему мешал глупыми вопросами), презентация была на 10! Они делают довольно серьёзные и смелые изменения в языке.

Blog, Python, Web — Sergej Kurakin @ 22:43
Таги: ,
2008-06-25

Я и Python, или…

Наверно никому не секрет, что я интересуюсь Python, этим прекрасным, динамическим объектно-ориентированным языком программирования.

Первый раз я его попробовал довольно давно. И меня до сих пор “колбасит” от правил табуляции кода. Тогда мне показалось это ужасным, а теперь уже привык.

Несколько недель назад я собрал интерфейс на TkInter, использующий threading для закачивания файла при помощи XML-RPC на один сервер. Уникальность работы была в том, что файл перед загрузкой бился на часто по 1,5 Мб, что-бы не изменять настройки сервера (максимальный размер операции POST на сервере ограничен). На сервере, по мере поступления частей, файл собирался. Во время испытаний всё работало отлично даже через reverse-proxy на Apache 2.2.

Правда, при работе с Python и его библиотекой md5 или hashlib я был удивлён, что нет отдельной функции для работы с большими файлами. Конечно я встал на грабли с чтением всего файла в переменную, причём с современными компьютерами данная операция проходит отлично (изза кол-ва оперативной памяти) и вылезла когда я уже начал тестировать на старенькой машинке.

Python Imaging Library (PIL) приятно удивил. Это был запасной план. Значит задача была: согласно определённым правилам, забирать данные о товарах с картинками с определённого сайта, картинкам изменять размер и ложить это всё в базу (данные и связь с картинкой) и на диск (саму картинку, в базе ей делать нечего), причём всё это было написано на Zend Framewrok и должно было работать “демоном” на CentOS 5.1, но переставало после часа работы, скушав всю оперативную память. Не то tidy порол, не то SimpleXML, а может всё вместе: там было PHP 5.1.6. За пару выходных в спокойном режиме, дома, я собрал на Python модель, выполняющую всё тоже, что и выше описанный скрипт на PHP (зацепил меня Python). Но, потом, с утра, на работе, я сам, из исходников собрал PHP 5.2.6 и утечка памяти испарилась.

А вот MySQLdb у Python меня не радует. Нет, я ничего не имею против написания запросов руками. Но вот передавать параметры через %s или %d, при этом динамически формируя запрос, не очень как-то получается.

µTidylib - TidyLib Python wrapper, ведёт себя абсолютно как оригинальный HTML Tidy, что на этих выходных меня озадачило. Он нагло отказался превратить в валидный xHTML одину страницу сайтов (это было http://www.delfi.lt/, содержащее 706 ошибок в данный момент времени), причём tidy, входящий в PHP 5.2.6 это делает. Вобщем, плохо думать о вещах со стороны PHP.

Опробовал я и Django 0.96. Правда я пока сомневаюсь, что он for perfectionists with deadlines. Как-то пока тяжело мне понять его логику. На платформе одной известной компании он устанавливается только после бубна, на нормальных платформах намного быстрее. Автоматический генерируемый админ не сильно удобный, особенно если у вас в базе скажем 5000 записей и они соединены с другим объектом в режиме ManyToMany. Пока мне остро не хватает документации и, конечно, опыта использования. И язык шаблонов, хочется большего. Конечно, местами присутствующая простота очень радует.

Ах, да, камень надо бросить в огород создателей Python за httplib — HTTP protocol client. Он не способен нормально передать при помощи POST или PUT большой файл на сервер, не загружая его целиком в память и загонять в переменную. Пришлось самому писать “костыль”, способный параметры принимать как dictionary и проверять, строка это или объект типа file, и, если это file, посылать его прямо в stream. Надо будет его как следует оттестировать и выложить в публичный доступ.

Ну и о предстоящем EuroPython 2008, который пройдёт с 7 по 9 июля в Вильнюсе. Организаторы подтвердили моё участие в конференции, так что я буду среди слушателей. Теперь осталось выбрать, куда я пойду, так как программа очень насыщенная.

Python, Web — Sergej Kurakin @ 09:25
Таги: , , , , , ,
2008-03-01

XML-RPC в Zend Framework 1.5 RC1

На днях разрабатывал для одного проекта тестовое API на основе XML-RPC. Конечно-же нужно было создать тестовую модель. Так как под рукой всегда есть PHP, я естественно взял Zend Framework 1.5 RC1 и посмотрел, что в нём есть по плану XML-RPC. Оказалось есть - Zend_XmlRpc, как клиент, так и сервер. Если посмотреть на примеры в документации - всё легко, просто и прозрачно. При первых попытках всё прошло очень и очень успешно. Как в написании клиента, так и в написании сервера. Что меня очень обрадовало и уже в ближайшие часы я сделал всю основную работу, всё работало идеально, пока я не захотел передать немного данных, закодированных по стандарту base64 (XML-RPC имеет специальный тип для этого).

(далее…)

PHP, Web, Zend Framework — Sergej Kurakin @ 17:10
Таги: , , , , ,
2008-02-17

Gaumina работает и в выходные?

Интересно, наш интернет-гигант в плане штамовки и производства искуственных интеллектов Gaumina уже работает по выходным и мне повезло попасть на сайт в момент обновления одного сайта (сегодня воскресенье, 2008 год, 17 февраля, 14:54 GMT +02:00) или мне не повезло и я обнаружил очередной их прокол после запуска/обновления?

(далее…)

Blog, Web — Sergej Kurakin @ 16:08
Таги:
2008-02-12

Live Search Webmaster Center

Ага! Наконец, у них оно тоже есть. И даже публично доступно. Live Search Webmaster Center. Согласно Live Search Webmaster Center Blog оно доступно с 15 ноября 2007 года. Но, его запуск прошёл уж как-то очень тихо.

Нашёл я его ещё вчера, и совсем почти нечаянно. В очередной раз пересматривал помощь на live.com и решил переключиться с литовского на американский английский - и опа, сслылочка на Live Search Webmaster Center появилась вместо помощи. Я тут-же побежал регистрироваться.

По сравнению с Google Webmaster Tools и даже с Yahoo! Site Explorer выглядит убого.

(далее…)

Google, Microsoft, Sitemaps, Standards, Web, Yahoo — Sergej Kurakin @ 15:49
Таги: , , , , , ,
2008-01-03

Когда новости сами приходят

Сегодня получил письмо с приглашением присоединиться к сообществу Zend Framework, в котором общаются на моём родном русском языке. Отличная новость - русскоязычное сообщество, форум, раздел статей (правда на данный момент пустовато, но, как я понимаю, всё только начинается), полезные ссылки.

Очень приятно, что мой любимый Zend Framework начинает набирать обороты и становиться популярнее, следовательно, появятся примеры, статьи, уроки и жизнь разработчиков станет более лёгкой.

Ещё в сети можно найту Google Group: ru-zend-framework и конечно родной сайт Zend Framework.

PHP, Web, Zend Framework — Sergej Kurakin @ 18:33
Таги: ,
2007-10-24

Mobile test

Will this post be posted succesfuly from my mobile?

In standard WP admin area works even javascript in post’s sidebar!

Blog, Web — Sergej Kurakin @ 22:02
2007-09-14

Написал статью для pixel.lt

После долгих лет молчания я вновь вернулся на публичную сцену Литвы.

Первый (и последний на тот момент) раз, на публику я свою статью выложил в августе 2002 года, на литовский сайт посвещённый PHP. Это было короткое писание класса SDF - Serialized Data File. Он до сих пор болтается на phpClasses. Тогда, в 2002, это было небольшой сенсацией для Литвы - MySQL был тогда достаточно дорог, его нужно было заказывать отдельно, бывали проблемы со стабильностью - а этот класс для маленьких проектов решал многое и был удобен при переносе сайта.

После чего были долгие годы молчания. Небыло ни интересных тем, ни времени, ни особого желания. Тем более есть 2 блога.

Что меня толкнуло в сентябре 2007 написать поверхностную статью о росте сайтов и том, как добавляются серверные ресурсы для pixel.lt на литовском - Tinklalapių augimas - ką daryti, jei jiems pasidaro ankštoka? - я до сих пор не знаю. Особых надежд победить в конкурсе у меня нет, XBOX 360 мне без нужды (но если выиграю делиться или отказываться не буду), „Microsoft“ Bluetooth клавиатуру или „Microsoft“ Wireless Optical мышь я бы хотел конечно. Если мою статью опубликуют в журнале “NK” - будет очень даже круто.

Вот такие новости у меня на сегодняшний день. Вчера был день программиста, 256 день в году, а я его так и не отметил…

Кстати, мою статью опубликовали 13 числа… Символично. Как-то по жизни с числом 13 мне везёт (серьёзно).

Blog, Web — Sergej Kurakin @ 10:19
Таги: , ,