Обсуждение:Вычислительная геометрия — различия между версиями

Материал из Викиконспекты
Перейти к: навигация, поиск
(Условные обозначения в таблице)
 
(не показаны 3 промежуточные версии 2 участников)
Строка 25: Строка 25:
  
 
# Выбрать тему (из того, что Антон рассказывал на лекциях).
 
# Выбрать тему (из того, что Антон рассказывал на лекциях).
# Проверить, не занята ли она, в таблице: [https://docs.google.com/spreadsheet/pub?key=0Ar0nZy99lVSvdDIzR1E5R1MwdDN0MXBiOHRyQ2NVV1E&gid=1 Распределение презентаций].
+
# Проверить, не занята ли она, в таблице: [https://docs.google.com/spreadsheet/ccc?key=0Aogm6KT9tim1dHg0VV96c0RHNlEyZ1d1ZDZndHBNbFE#gid=0 Распределение презентаций].
 
# Сообщить о вашем выборе куратору.
 
# Сообщить о вашем выборе куратору.
 
# Убедиться в том, что вас записали в табличку.
 
# Убедиться в том, что вас записали в табличку.
Строка 65: Строка 65:
  
 
== Условия и чекеры ==
 
== Условия и чекеры ==
Куратор - Андрей Козлов
+
Куратор -- Андрей Козлов
  
Примерная процедура сдачи выглядит так:
+
=== Процедура сдачи ===
 
# написать в комментарий соответстующего тикета, что вы хотите им заняться
 
# написать в комментарий соответстующего тикета, что вы хотите им заняться
 
# получить одобрение куратора
 
# получить одобрение куратора
Строка 73: Строка 73:
 
# сделать задание
 
# сделать задание
 
# структура папок должна быть следующей:
 
# структура папок должна быть следующей:
#* evaluator-tasks/cg2012.1/statements/<название задачи> - для условий
+
#* evaluator-tasks/cg2012.1/<название задачи>/statement -- для условий
#* evaluator-tasks/cg2012.1/checkers/<название задачи> - для чекеров
+
#* evaluator-tasks/cg2012.1/<название задачи>/checker -- для чекеров
 +
#* evaluator-tasks/cg2012.1/<название задачи>/testgen -- для генераторов тестов
 
# оповестить меня о готовности и ждать проверки
 
# оповестить меня о готовности и ждать проверки
#* в случае успеха - получить баллы (profit)
 
 
#* иначе - пофиксить ошибки и вернуться к пункту 5
 
#* иначе - пофиксить ошибки и вернуться к пункту 5
  
Разногласия между условием и чекером, в большинстве своем, будут трактоваться в пользу того, кто первый начал делать.
+
Разногласия между условием и чекером, в большинстве случаев, будут трактоваться в пользу того, кто первым начал делать.
 +
 
 +
=== Условные обозначения в таблице ===
 +
* желтый -- Ковалевым или куратором найдены баги, отправлено на доработку
 +
* красный -- в принятой версии найдены некие критические баги (согласовать с куратором)
 +
* оранжевый -- принято куратором, но не залито в общий репозиторий (при наличии конфликтов устранить их, затем сделать pull-request)
 +
* зеленый -- принято куратором и залито в общий репозиторий (ждать, пока проверит Ковалев ;) )
 +
* голубой -- принять Ковалевым (profit)
 +
* фиолетовый -- после принятия Ковалевым, поступили жалобы, требует перепроверки и доработки
 +
 
 +
=== Мануал по устранению конфликтов репозиториев ===
 +
После того, как вы поправили ошибки и куратор одобрил текущую версию (в таблице обозначено рыжим цветом), нужно смерждить ваш репозиторий с основным. Для этого нужно сделать pull-request из своего репозитория в основной. При этом могут возникать конфликты (вы можете узнать, конфликтуют ли файлы, нажав на кнопку compare-fork).
 +
 
 +
Если напротив хотя бы одного файла имеется запись "conflicts", вам следует проделать несколько простых действий для решения этой проблемы.
 +
# у себя в репозитории нажать compare-fork
 +
# перейти на вкладку incoming
 +
# выполнить 3 команды:
 +
$ hg pull -r default https://bitbucket.org/assaron/evaluator-tasks
 +
$ hg update default
 +
$ hg merge "имя head"
 +
На последнюю строчку вы получите сообщение "abort" -- ничего страшного. :)
 +
 
 +
Обратите внимание, что после этого файлы заменятся версиями, которые лежат в данный момент в assaron'е. Поэтому:
 +
# если файлы изменились, залейте обновленные версии
 +
# сделайте commit
 +
# сделайте форсированный push
 +
$ hg commit -m "текст коммита"
 +
$ hg push -f
 +
 
 +
Теперь конфликтов быть не должно. Поздравляю, можете сделать pull-request.

Текущая версия на 19:25, 22 июня 2012


Решение задач

Запись на решение задач

Инструкции

Сдача конспектов

  • Распределение тем конспектов
  • Для сдачи конспекта необходимо сообщить об этом одному из редакторов:
    • Артём Васильев
    • Андрей Комаров
    • Андрей Шулаев
  • Конспекты проверяются редакторами, о недочётах сообщается на странице обсуждения.

Презентации

Проверка презентаций

Чтобы сдать презентацию нужно:

  1. Выбрать тему (из того, что Антон рассказывал на лекциях).
  2. Проверить, не занята ли она, в таблице: Распределение презентаций.
  3. Сообщить о вашем выборе куратору.
  4. Убедиться в том, что вас записали в табличку.
  5. Сделать fork репозитория.
  6. Создать папку computational-geometry-presentations/cg2012.1/presentations/<название темы>/
  7. Сделать презентацию.
  8. Сообщить куратору и получить ответ.
  9. Исправить недочеты (если есть) и вернуться к предыдущему пункту.

Дедлайн: две недели после выбора темы — черновик презентации, через месяц — готовая презентация.

В репозитории есть два примера презентаций в Beamer'e.

Требования к презентациям

Обновлены 14.04.2012

  1. Презентация должна быть презентацией, а не полотном текста.
  2. Неинформативные картинки не приветствуются.
  3. Копипаста в любом виде не приветствуется.
  4. Презентации надо делать в TeX'е. Презентации в MS PowerPoint или аналогах будут караться отрубанием головы. А именно, для этого стоит использовать пакет beamer. Он хороший, презентации в нём красивые, а аналогов вроде как и нет. Почитать про него можно тут. В конце статьи есть ссылки на документацию.
  5. Картинки лучше рисовать с помощью MetaPost или его аналогов (например, PGF/TikZ). (Примеры MetaPost, Мануал METAPOST, можно взять Руководство по PGF/TikZ).
    • Проблема: beamer не поддерживает использование latex + dvipdfmx, а, например, pdfLatex не умеет рисовать label в картинках сделанных в METAPOST, поэтому нужно использовать latex + dvips + ps2pdf, если нужны подписи в METAPOST, но latex + dvips + ps2pdf не поддерживает вставку jpeg.
    • TikZ плохо опускает перпендикуляры. По ссылке есть пример (три высоты в треугольнике не пересекаются в одной точке) и решение, как это сделать более точно с помощью других пакетов.
  6. Весь текст должен выглядеть красиво и правильно. Нерусские кавычки в тексте, дефисы вместо минуса или тире, курсив вместо прямого шрифта и тому подобное не будут одобряться.
  7. Антон не одобряет неторопливость!
  8. Собирайте так, чтобы текст был векторным (при приближении буквы не растеризовались).
  9. Избегайте дублирования на слайдах
  10. Из всех вариантов выбирайте самый короткий
  11. Придумывайте хорошие заголовки. Если на слайде изображен пример, то в заголовке должно быть слово пример.
    • Подзаголовки — это хорошо, но злоупотреблять ими не стоит.
  12. Если презентация об алгоритме, то он должен присутствовать в явном виде. Нужен "скетч" реализации.
  13. Постановка задачи должна быть формальной
  14. Нужны доказательства всех фактов, которые вы используете.

И вообще, надо ещё специально постараться, чтобы что-то в TeX'е выглядело плохо.

Шаблон для презентаций

Условия и чекеры

Куратор -- Андрей Козлов

Процедура сдачи

  1. написать в комментарий соответстующего тикета, что вы хотите им заняться
  2. получить одобрение куратора
  3. сделать fork от evaluator-tasks
  4. сделать задание
  5. структура папок должна быть следующей:
    • evaluator-tasks/cg2012.1/<название задачи>/statement -- для условий
    • evaluator-tasks/cg2012.1/<название задачи>/checker -- для чекеров
    • evaluator-tasks/cg2012.1/<название задачи>/testgen -- для генераторов тестов
  6. оповестить меня о готовности и ждать проверки
    • иначе - пофиксить ошибки и вернуться к пункту 5

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

Условные обозначения в таблице

  • желтый -- Ковалевым или куратором найдены баги, отправлено на доработку
  • красный -- в принятой версии найдены некие критические баги (согласовать с куратором)
  • оранжевый -- принято куратором, но не залито в общий репозиторий (при наличии конфликтов устранить их, затем сделать pull-request)
  • зеленый -- принято куратором и залито в общий репозиторий (ждать, пока проверит Ковалев ;) )
  • голубой -- принять Ковалевым (profit)
  • фиолетовый -- после принятия Ковалевым, поступили жалобы, требует перепроверки и доработки

Мануал по устранению конфликтов репозиториев

После того, как вы поправили ошибки и куратор одобрил текущую версию (в таблице обозначено рыжим цветом), нужно смерждить ваш репозиторий с основным. Для этого нужно сделать pull-request из своего репозитория в основной. При этом могут возникать конфликты (вы можете узнать, конфликтуют ли файлы, нажав на кнопку compare-fork).

Если напротив хотя бы одного файла имеется запись "conflicts", вам следует проделать несколько простых действий для решения этой проблемы.

  1. у себя в репозитории нажать compare-fork
  2. перейти на вкладку incoming
  3. выполнить 3 команды:
$ hg pull -r default https://bitbucket.org/assaron/evaluator-tasks
$ hg update default
$ hg merge "имя head"

На последнюю строчку вы получите сообщение "abort" -- ничего страшного. :)

Обратите внимание, что после этого файлы заменятся версиями, которые лежат в данный момент в assaron'е. Поэтому:

  1. если файлы изменились, залейте обновленные версии
  2. сделайте commit
  3. сделайте форсированный push
$ hg commit -m "текст коммита"
$ hg push -f

Теперь конфликтов быть не должно. Поздравляю, можете сделать pull-request.