2007-11-02

Методика проведения семинара

Andrey Orlov  2007-11-02 00:00

В документе описывается правила и методика проведения семинара по Zope3. Все участники семинара должны обязательно ознакомится с ней.

Методика проведения семинара по Zope3:

Цели:

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

Материалы:

  1. Лекции и статьи по Zope3;
  2. Список заданий по программированию, в качестве которых используется т.н репозиторий идей. Задания индивидуальны;
  3. Исходники Zope;
  4. Документация на Zope.

Методика:

Семинар проводится на основе независимой удаленной индивидуальной работы участников. Участники самостоятельно изучают материалы лекций и выполняют задания. При возникновении вопросов и проблем возможны два способа решения: следует связаться с Орловым (+7 926 222 99 63) и Орлов быстро все разъяснит.

Каждому участнику семинара создаются следующие ресурсы:

            - аккаунт на сервере subversion, под которым можно получать
              доступ к рабочей зоне, в которой ведется выполнение очередного
              задания;

            - индивидуальный учебный план, мы не делаем секрета из списков
              заданий в учебных планах, поэтому они доступны в
              <a title="Документ: seminar/members" href="%40%40searchpage.html?name.any_of:record:tuple=seminar/members">списке участников семинара</a>;

            - аккаунт, позволяющий получить доступ в рассылку семинара, которая
              может использоваться для общения участников между собой;

Результатом семинара должен стать "почти работающий код", который, скорее всего будет доводится до блеска и публиковатся под открытой лицензией на PyPI и регистрироваться на http://www.ohloh.net . Кому интересно - может зарегистрироваться там же и отметить свое участие в проектах DreamBot, заодно вы получите объективную оценку степени вашего участия ... ну и количества кода.

Подготовка рабочего места:

Для выполнения заданий вам птребуется установленный Zope-3.3.1 , python-2.4 и созданная инстанция Zope3, в директорию lib/python которой будет выполнятся чекаут рабочей зоны, в которой разрабытывается ваш продукт. Стандарнтая структура директории рабочей зоны имеет вид:

            trunk/src/ng/<имя продукта>,

вы должны выполнить чекаут директории:

            trunk/src/ng/            

Рекомендуется, все это делать под linux.

Порядок выполнения задания:

Помните, основная цель задания - практика программирования под Zope. Некоторые из заданий имеют интересный алгоритмический аспект, но сконцентрироваться нужно на том, что бы получить работающий Zope3-компонент. Поощеряется:

  • Копи-паст из лекций и примеров;
  • Обращение к Орлову.

Крайне недопустимо:

  • Сидеть в углу и долбить свое задание без надежды на успех;
  • Попытки воспроизведения кода из лекций и примеров по памяти;
  • Творческое переосмысление заданий.

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

Я (Орлов) сделал все, что бы участникам семинара не надо было думать, а можно было приобрести механический навык. Если кто-то хочет научится думать - пожалуйста, обращайтесь, у меня есть идея совершенно чумового семинара для тех, кто хочет думать.

Механический навык заключается в следующем сценарии выполнения задания:

  1. Прочитать все лекции в плане, перечисленные до упоминания задания;
  2. Нажать на ссылку на задание и прочитать его на сайте (там есть вики-подобная разметка, которая может ссылаться на дополнительные материалы по заданию);
  3. Осмыслить задание;
  4. Найти продукт, подготовленный под задание в репозитории (на тексте задания на сайте есть ссылка на то место репозитория, в котором оно хранится);
  5. В файлах продукта поставить в пункте "Автор" свое имя-фамилию, и, через запятую, год (2008);
  6. Написать код.
  7. Активировать продукт в Zope3 и продукты, от которых он зависит;
  8. Добится того, что бы Zope3 с активированным продуктом стартовал без ошибок;
  9. Если это возможно, убедится что продукт работает.
  10. Пнуть Орлова, что бы посмотрел результаты.

Выполнение каждого пункта с 5го по 10ый сопровождается командой svn commit.

Напоминаю, что использование табуляций в языке питон запрещено, настройте свой редактор. Требуемый размер отступа - четыре символа. Возможные примеры настроек для разных редакторов и svn-клиентов можно попробовать взять в http://code.dreambot.ru/svn/doc.template/trunk/configsample .

Официальный сайт Zope3 Московская группа изучения реактивного движения The Dream Bot Site noooxml