Итоги Exception 07, как это было

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

Во-первых хочу поблагодарить организаторов события. Они многое сделали и результаты есть. Предыдущий раз был на Ecxeption #05. Масштабы увеличились.

Несколько замечаний

  • По-моему надо делать жесткий отбор докладов. Новые и платные конференции должны быть более профессиональные, было видно как большая аудитория скучала от примеров “Hello World”. Нужна динамика, четкая прикладная область: проблема - решение.

  • Временные рамки и скомканность в целом присущи всем мероприятиям, может стоит начинать такие мероприятия представления участников конференции, чтобы на протяжении всего времени уже разделялись интересы и жаждущие нашли ответы на свои вопросы не дожидаясь “конца света”. Было трудно быть в трезвом уме до самого конца, сильно утомляет.

Сам Киев!

Красивый город. Уже не первый раз приезжаю и все больше он мне нравится. Напоминает Кишинев, но вот только масштабы больше в разы, есть где развернуться и потеряться =).

Конечно же Пузата Хата и Дрова - достопримечательности. Отличная еда, хороший выбор и адекватные цены. Вкусное пиво конечно же. Била Ничь и Hike.

Весь город - музей =).

О докладах

  • Самый достойный доклад - Как заставить свою лень работать, Дмитрий Кожевин. Четко, быстро, весело и по теме.

  • Мастер класс по Python: Метаклассы + Дескрипторы, Андрей Светлов. Интересная тема и во многом полезная, но чтобы давать такие мастер классы, нужно готовиться так же как и к докладу. Четко рассчитать временные рамки, заранее написать кучу примеров и показывать их в готовом виде. Возможно даже добавить слайды для наглядности. Было видно что проблем с примера у Андрея нет, но вот сама атмосфера предполагала намного большей динамики. Публика оказалась подготовленной. Думаю что нужно больше мастер классов - это хорошо.

  • Python и Django - платформа для фрилансера, Александр Кошелев. Думаю что Александр точно придерживался темы, доклад получился введением в платформу Django и ее применение в малых и средних проектах. Публика внимательно слушала, возможно многим хочется перейти на эту платформу. Было заметно, как часть аудитории ждала примеров кода и интересных трюков, которыми смог бы поделиться автор.

  • StrokeDB: Yet Another Database (Ruby), Юрий Рашковский и Олег Андреев. Очень интересная тема и хорошо подготовленный доклад. Ребята здорово заводили публику яркими картинками и веселыми фразами на английском языке, но к этому времени часть аудитории была в спящем режиме и не улавливала сути доклада. Тема действительно интересная, нашему менеджеру проектов, который приехал на конференцию, очень понравилось и он даже пообщался с ребятами отдельно, т.к. всего узнать во время доклада не получалось. Хотел бы пожелать им удачи в проекте, так держать!

  • По ту сторону ООП: PEAK-Rules и PyProtocols, Cергей Щетинин. По-моему тема была не раскрыта, много времени докладчик бродил вокруг определений ООП и крутости PyProtocols. Было много не точных определений и путаницы. Кратко говоря: PyProtocols - реализация шаблона Адаптер для работы со слабо структурированными данными XML. Сравнения с zope.interface и другими реализациями так и небыло. Уверен что автор умеет использовать данные технологии, но не использовал других.

  • О своем докладе ничего не могу сказать, за исключением того, что не было времени раскрыть тему целиком. Приятно то, что темой заинтересовались многие разработчики. Выложу весь материал у себя в блоге. Был интересный вопрос из зала, по поводу GIL(Global Interpreter Lock), опишу свою точку зрения и примеры в следующих постах. Хочу найти тех самых собеседников: “Товарищи, зачем же убегать так быстро =)?”. Еще я немного не расслышал и подумал о jitter в первую очередь, сам дурак.

Огромное спасибо всем кто был. Было приятно встретить Пашу(Pahanix). Спасибо Олегу, который принес видео с нашего предыдущего выступления в Киеве, импровизационный квартет post-rock.

Был рад познакомиться с Piranha =) и узнать что у меня не работала регистрация в блоге=).

Жаль что не встретился с товарищем,Артёмом Дёминым, который не смог приехать т.к. выступал днем ранее на конференции http://conf.linux.md.

Скоро выложу полный фотоотчет, жаль в byteflow еще не прикрутили photologue, а самому лень, которая в скором победит.


Add post to:   Yandex.ru Google Yahoo Bobrdobr.ru Newsland.ru Smi2.ru Rumarkz.ru Memori.ru Myscoop.ru 100zakladok.ru Rucity.com Moemesto.ru News2.ru Delicious Reddit Slashdot Digg Technorati
Make comment

Comments

У тебя был ужасно мелкий шрифт на слайдах.

Мастер про метаклассы делал Андрей Светлов, а не Соловьев.

Спасибо, исправил. Ошибок у меня было не мало, это точно.

доклад был нормальный, но я б хотел услышать например чем тяжёлый твистед круче того же asyncore “stdlib’овский” (в плане асинхронности ), как он себя ведёт при нагрузке (pyicqt течёт и никуйва из-за него ;] ) Ну и как это всё работает (хотя упоминания были, но толи размытые, толи уже был поздний час и я засыпал :) ) надеюсь в блоге накидаешь чего по твистеду + теперь я должен тебя ликвидировать, ибо ты меня запалил на фотках =)

Хе хе … вот сейчас посмотрел фотки, не нашел ((. Зато bialix запечатлен, помню как он ворчал во время пафоса с подъемом рук на докладе PyProtocols.

На счет производительности надо будет отдельно написать статьи, может результаты стресс тестов выложить получится.

Ну, насчет докладов в отдельности я еще у себя отпишусь, хочется отметить другое: все доклады были очень разнородные в плане сложности.

Как заставить свою лень работать” - ну это понятно - легко и весело.

Python и Django - платформа для фрилансера” - практически никакой конкретики, ничего нового для себя я не узнал (хотя джанго сам не пользовался, подозреваю, что тем, кто с джанго знаком было еще скучнее).

StrokeDB: Yet Another Database (Ruby)” - мне лично очень понравилась атмосфера, которую делали Олег с Юрой (насчет англ. - похоже, Юре на англ общаться удобнее даже :)), да и сам доклад был интересным, хотя и с синтаксисом руби я знаком постольку-поскольку.

PEAK-Rules и PyProtocols” и твой “Twisted” - по крайней мере для меня были достаточно сложными. Общую суть я понял, но вот как это всё реализовано, на чем базируется и т.д. и т.п. - мне осталось непонятным (посоветуй, кстати, почитать про асинхронную работу приложения, а то я так и не вьехал - КАК там может быть только один тред на всё).

Мастер класс по Python: Метаклассы + Дескрипторы” - тема в принципе легкая и понятная, но разговаривать докладчику безо всяких “эээ” следует поучиться :)

И пропиши у себя в CSS:

.blogcomment .text, .pingback .text { clear:left; }

;)

Андрей Светлов 17.03.2008 22:24

По поводу моего мастер-класса (выводы):

  • временные рамки рассчитать сложно (неясен объем вопросов) но можно попытаться. (Мелкое замечание - простой предмет в виде часов, хорошо видных докладчику, сильно поможет).
  • вставлять слайды почти невозможно - они будут лишь мелькать на несколько секунд. По той же причине не хотелось приводить код готовых примеров. Я еще подумаю, как обойти это ограничение.
  • добавить больше динамики можно, посадив второго докладчика за кнопки, и оставшись наедине с микрофоном. Одновременно печатать и говорить нелегко, проверил.
  • стоит использовать ipython, тогда можно быстро подгружать в консоль заранее написанные скрипты (спасибо, bialix).
  • и, конечно, нужно заранее настраивать шрифты.
  • по поводу “эээ”: вам когда-нибудь приходилось выступать с микрофоном? У меня поначалу всегда некоторый мандраж. Конечно, это моя проблема. Но, похоже, не только моя. А еще печатать нужно…

Если Иван позволит, вскорости постараюсь сделать лучше. Первый блин все таки (в смысле - первый мастер-класс для exception)…

twisted. Он не течет, если правильно все написано (ИМХО). Круче из-за своих Deferred, кардинально облегчающих жизнь - и enterprise здесь не при чем. twisted может быть и очень маленьким и легким.

GIL: думаю, этот вопрос не имеет к twisted прямого отношения. Хотя и очень интересный, не отрицаю

Андрей Светлов 17.03.2008 22:26

По поводу моего мастер-класса (выводы):

  • временные рамки рассчитать сложно (неясен объем вопросов) но можно попытаться. (Мелкое замечание - простой предмет в виде часов, хорошо видных докладчику, сильно поможет).
  • вставлять слайды почти невозможно - они будут лишь мелькать на несколько секунд. По той же причине не хотелось приводить код готовых примеров. Я еще подумаю, как обойти это ограничение.
  • добавить больше динамики можно, посадив второго докладчика за кнопки, и оставшись наедине с микрофоном. Одновременно печатать и говорить нелегко, проверил.
  • стоит использовать ipython, тогда можно быстро подгружать в консоль заранее написанные скрипты (спасибо, bialix).
  • и, конечно, нужно заранее настраивать шрифты.
  • по поводу “эээ”: вам когда-нибудь приходилось выступать с микрофоном? У меня поначалу всегда некоторый мандраж. Конечно, это моя проблема. Но, похоже, не только моя. А еще печатать нужно…

Если Иван позволит, вскорости постараюсь сделать лучше. Первый блин все таки (в смысле - первый мастер-класс для exception)…

twisted. Он не течет, если правильно все написано (ИМХО). Круче из-за своих Deferred, кардинально облегчающих жизнь - и enterprise здесь не при чем. twisted может быть и очень маленьким и легким.

GIL: думаю, этот вопрос не имеет к twisted прямого отношения. Хотя и очень интересный, не отрицаю

по поводу “эээ”: вам когда-нибудь приходилось выступать с микрофоном?

Ну я ж особо без притензий :) я вообще не могу выступать перед аудиторией. просто фактик :)

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

Насчет второго докладчика - тут самое оно. Ты на strokedb был? Там Юра набирал/копипастил, а Олег комментировал, т.е.: всё же набрать предварительно код, пусть ты его не 1 в 1 покажешь, но всё-таки будет получше, ИМХО + комментатора, если ты в реалтайме будешь набирать.

Приветствую. Часы! ДА, часы очень полезны. Думаю, что из-за отсутствия в аудитории табло с часами, можно и лучше будет купить для таких мероприятий свои. Электронные часы с большим табло, тогда будет видно и за столом и у доски.

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

ipython кстати можно встраивать в Zope3, прямо в сессию =). Думаю что и в django и в twisted можно, но не игрался.

Говорить с микрофоном надо тренироваться - это факт. Даже без занятости за буком, сложно говорить не говоря уже о том, что мне тяжело говорить, когда я печатаю или думаю не на конференции =).

Twisted тестировал на утечки памяти, у него они есть, но очень не значительные. Они зависят от кода используемого в самих Deferred объектах. Еще лучше использовать python 2.5.

Вообще утечка памяти и отладка - отдельная тема. На практике у нас тек сервис, который постоянно работает с данными. Кушал до 600 Мб за неделю. Теперь тот же сервис работает месяц и остается на своих холостых 15 Мб.

Руки надо мыть и выравнивать перед работой =). А то что он легкий, еще раз +1. В основном нужен только TwistedCore, модулей минимум. Из ресурсов на сервере как уже говорил выше.

На счет GIL - тема интересная и касается twisted только в случае больших нагрузок и объемов данных. Тут надо настраивать сервисы отдельно и мониторить их отдельным приложением,использовать разделяемую память. Способов куча, на вкус и цвет.

Вообще, спасибо тебе за поддержку еще раз!

Андрей Светлов 17.03.2008 22:54

Вместо него слушал REBOL - и, похоже, прогадал. При всей моей любви к DSL… Надеюсь посмотреть видео (да что там - посмотрю, мой друг его подготавливает к выкладке в инет) - и поучиться.

Самое обидное - на моем ноуте, который рядом стоял - все эти исходники были, и я в них подсматривал.

Скоро эти исходники в несколько обработанном виде появятся на сайте мероприятия.

Вместо него слушал REBOL - и, похоже, прогадал.

Та же фигня. :-((

Андрей Светлов 17.03.2008 23:23

Кстати, offtop. twisted.flow, похоже, умер - туда ему и дорога. С генераторами от 2.5 он должен быть кардинально пересмотрен. А есть ли такие разработки?

А часы Иван обеспечит, уверен. Это мой третий доклад на exception. И часов, как я сейчас понял, вечно не хватало. Но только нынче смог это сформулировать. На первом попытался положить рядом телефон с включенным секундомером, но у него, заразы, постоянно гас экран. А все закончилось тем, что мне стали звонить родственники с вопросом: ну как оно, успешно все происходит? Пришлось телефон срочно отключить :)

Кстати сейчас написал как раз о анонсе пререлиза 8.0, так там есть Flow и в тикетах что-то вскользь о декораторах читал =). Думаю код значительно почистили.

Андрей Светлов 19.03.2008 0:00

Фигня. Ничего не поменялось

Да, я тоже проверил.

Андрей Светлов 20.03.2008 2:43

А есть ли еще альтернативы zope.interface и peak protocols?

Откровенно говоря, в protocols вижу только одно преимущество - цепочки адаптеров.

Андрей Орлов на пятом exception говорил, что в interface планируют такую фичу включить.

Лично мне было не нужно, но вещь мощная.

В остальном, ИМХО, протоколы проигрывают интерфейсам (хотя бы по простоте описания).

Поправьте, если я ошибаюсь.

Все это лишь реализация шаблона Адаптер(Adapter) и не более того. Конечно добавили кучу наворотов, но они были сделаны только для решения определенных задач и не стоит их пихать куда попало. В простейшем варианте как аналог пишется свое решение и это встречается довольно часто в чужом коде.

Protocols и Interfaces безусловно круто и универсально, но честно говоря мне очень не нравятся идеи с “цепочками”. Учитывая то, что говорили во время доклада, мы получаем Графы которые лишь усложняют нашу программу. Лично я бы от таких “макарон” избавлялся, а если увидел бы в них(графах) необходимость с учетом задачи, то в первую очередь подумал бы о том что надо выкинуть 50% моего кода и понять, что графы никчему. В противном случае, максимально однозначно выбирать стратегии адаптации (шаблон Strategy), ну и на самый крайний случай использовать графы.

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

Как вы говорили: “Люблю понять как все это работает, не люблю “магию”!”. Согласен с вами.

На счет простоты zope.interface +1, думаю это повлияло на выбор технологии в проекте Twisted.

У меня, кстати, есть вопрос относительно спортбокса. Насколько я знаю, сайт этот делали и открывали “Key Solutions”. А что с ним потом произошло и как ты в нем замешан оказался?

KS работали по контракту как субподряд. Контракт разорвали, причин много, но это не моя головная боль. Я просто искал работу в прошлом году, мне предложили работу тут.

А почему это интересует? Надеюсь меня теперь не забанят в интернете, параноиков много =).

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

Андрей Светлов 21.03.2008 22:49

Жив Key Solutions. Трое ребят из него на конфе были

Это я знаю, я с ними хорошо знаком - я не знал, почему они от sportbox’а отказались :)

Андрей Светлов 21.03.2008 22:57

Так-то так… Но Андрей Орлов говорил, что иногда в zope цепочек не хватает. К тому же в twisted не очень широко распространены адаптеры (разве что в web2)…

Я активно использовал адаптеры в проектах twisted, помогает. Не знаю в каких именно задачах Андрею Орлову понадобились цепочки адаптаций. У меня на этот счет скептическое мнение…

Андрей Светлов 22.03.2008 4:26

Я не о твоем использовании, я об использовании адаптеров в стандартгом twisted. Сам тоже применяю их везде, где можно (стараясь не прейти за те рамки, где нельзя). Если ты запомнил слова о магии, поймешь и о “молотке и большом гвозде”


Required. 30 chars of fewer.

Required.