<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://mit.spbau.ru/sewiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Igorjirkov</id>
		<title>SEWiki - Вклад участника [ru]</title>
		<link rel="self" type="application/atom+xml" href="http://mit.spbau.ru/sewiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Igorjirkov"/>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php/%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F:%D0%92%D0%BA%D0%BB%D0%B0%D0%B4/Igorjirkov"/>
		<updated>2026-04-08T16:44:17Z</updated>
		<subtitle>Вклад участника</subtitle>
		<generator>MediaWiki 1.26.2</generator>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=%D0%9F%D0%B0%D1%80%D0%B0%D0%B4%D0%B8%D0%B3%D0%BC%D1%8B_2014&amp;diff=4839</id>
		<title>Парадигмы 2014</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=%D0%9F%D0%B0%D1%80%D0%B0%D0%B4%D0%B8%D0%B3%D0%BC%D1%8B_2014&amp;diff=4839"/>
				<updated>2014-11-14T07:45:46Z</updated>
		
		<summary type="html">&lt;p&gt;Igorjirkov: /* Сдача работ */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= MIT Полезности =&lt;br /&gt;
&lt;br /&gt;
* [http://mit.spbau.ru/sewiki/index.php/Файл:Far_Colorer_Haskell.zip Far Colorer — Haskell]&lt;br /&gt;
* [https://www.dropbox.com/s/xyvsmk0zn5w2ro2/haskell_examples.zip?dl=0 Haskell Examples]&lt;br /&gt;
&lt;br /&gt;
== Разбиение на группы ==&lt;br /&gt;
&lt;br /&gt;
Группа #1&lt;br /&gt;
     1	Беляев Станислав Валерьевич&lt;br /&gt;
     2	Галеев Денис Рифович&lt;br /&gt;
     3	Кравченко Дмитрий Сергеевич&lt;br /&gt;
     4	Кравченко Юрий Николаевич&lt;br /&gt;
     5	Лабутин Игорь Николаевич&lt;br /&gt;
     6	Лапшин Дмитрий Владимирович&lt;br /&gt;
     7	Лиференко Даниил&lt;br /&gt;
     8	Маркелов Александр Сергеевич&lt;br /&gt;
     9	Никонов Михаил Иванович&lt;br /&gt;
    10	Подгузов Никита Владимирович&lt;br /&gt;
    11	Ребрик Юрий Андреевич&lt;br /&gt;
    12	Смирнов Петр Юрьевич&lt;br /&gt;
    13	Степанов Владимир Игоревич&lt;br /&gt;
    14	Степанов Всеволод Андреевич&lt;br /&gt;
    15	Суворов Егор Фёдорович&lt;br /&gt;
    16	Черникова Ольга Александровна&lt;br /&gt;
&lt;br /&gt;
Группа #2&lt;br /&gt;
    17	Бойкий Дмитрий Игоревич&lt;br /&gt;
    18	Бочкарев Глеб Александрович&lt;br /&gt;
    19	Бугакова Надежда Александровна&lt;br /&gt;
    20	Валин Глеб Александрович&lt;br /&gt;
    21	Гайдашенко Анастасия Валериевна&lt;br /&gt;
    22	Пластинин Виталий Вячеславович&lt;br /&gt;
    23	Розплохас Дмитрий Александрович&lt;br /&gt;
    24	Старкова Анастасия Алексеевна&lt;br /&gt;
    25	Третьякова Елизавета Алексеевна&lt;br /&gt;
&lt;br /&gt;
[https://github.com/HFxTA/Programming-Paradigms Примеры] (Группа 2).&lt;br /&gt;
&lt;br /&gt;
== Формат сдачи работ ==&lt;br /&gt;
&lt;br /&gt;
Для сдачи работ используйте адрес [mailto:paradigms-2014@osll.ru paradigms-2014@osll.ru]. В качестве темы письма указывайте строку&lt;br /&gt;
&lt;br /&gt;
MIT SE &amp;lt;номер подгруппы 1 или 2&amp;gt; &amp;lt;Фамилия Имя&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Задания ==&lt;br /&gt;
&lt;br /&gt;
# [https://www.dropbox.com/sh/l7zh2fquflldw9y/AAArxvYNcScTLqPJ5IL355EZa?dl=0 Задание 1] (каждая задача оценивается в 1 балл)&lt;br /&gt;
# [https://docs.google.com/document/d/1fjUSJ-H5oPnoUFzy3mWtyLWkcFBcOdofN7ZFyuCmNcQ/edit?usp=sharing Задание 2]&lt;br /&gt;
# [https://docs.google.com/document/d/1_OTyKQjtrjYJR79pAKz5TFuhz-a9950Kv4MTF7vK-Cw/edit?usp=sharing Задание 3] и [https://github.com/HFxTA/Programming-Paradigms/blob/master/binary_1/Fun%20With%20Floats.pdf?raw=true шпаргалка про представление вещественных чисел]&lt;br /&gt;
# [https://docs.google.com/document/d/1q6e6CJSHZET-sQGExtPFuKSWkrGIAuJcI-gWJeCaTb0/edit?usp=sharing Задание 4]&lt;br /&gt;
# [https://docs.google.com/document/d/1VvrQTZ_xEvwAOHSsPWf40Ra3iQTQAGMMNyu5mWeQhhc/edit?usp=sharing Задание 5] [https://docs.google.com/document/d/1VDAlruzSJygHbxlfjFzEB3SaUodHDxBEqebLk4FAGYo/edit?usp=sharing примеры программ на ЯТЬ]&lt;br /&gt;
# [https://docs.google.com/document/d/1w-g04FpgAR_fTtrtPInWGX9JD2VaXi7i54mMYDMi1lc/edit?usp=sharing Задание 6]&lt;br /&gt;
# [https://docs.google.com/document/d/19Sh53nrGIdGlIUXd7z45Vs88k8KzkCw1NAnddhnVLh0/edit?usp=sharing Задание 7]&lt;br /&gt;
&lt;br /&gt;
== Результаты проверки ==&lt;br /&gt;
&lt;br /&gt;
https://docs.google.com/spreadsheets/d/1SKMMDfHtsxXS_Rf8k_UCg1TFZDgqOy5K42n037ZUcso/edit?usp=sharing&lt;br /&gt;
&lt;br /&gt;
= Physics =&lt;br /&gt;
== Преподаватели ==&lt;br /&gt;
* Карташов Дмитрий Артурович (группа 1)&lt;br /&gt;
* Баталов Евгений Александрович (email: eabatalov89@gmail.com) (группа 2)&lt;br /&gt;
&lt;br /&gt;
== Разбиение на группы ==&lt;br /&gt;
&lt;br /&gt;
Группа #1&lt;br /&gt;
    1  Агафонов Игорь Юрьевич&lt;br /&gt;
    2  Беляков Михаил Андреевич&lt;br /&gt;
    3  Буренев Иван Николаевич&lt;br /&gt;
    4  Ильчук Иван Андреевич&lt;br /&gt;
    5  Кукуй Петр Алексеевич&lt;br /&gt;
    6  Новиков Александр Сергеевич&lt;br /&gt;
    7  Перков Сергей Антонович&lt;br /&gt;
    8  Полушкин Артем Сергеевич&lt;br /&gt;
    9  Сычев Станислав Кириллович&lt;br /&gt;
   10  Тапинов Олег&lt;br /&gt;
   11  Тихоновская Татьяна Ильинична&lt;br /&gt;
   12  Черный Юрий Анатольевич&lt;br /&gt;
&lt;br /&gt;
Группа #2&lt;br /&gt;
   13  Белоусов Никита Максимович&lt;br /&gt;
   14  Беляев Владислав Валерьевич&lt;br /&gt;
   15  Бойков Иван Константинович&lt;br /&gt;
   16  Гончаров Артем Сергеевич&lt;br /&gt;
   17  Жильцов Никита Сергеевич&lt;br /&gt;
   18  Затенко Марина Ильинична&lt;br /&gt;
   19  Кайданов Никита Евгеньевич&lt;br /&gt;
   20  Минин Михаил Дмитриевич&lt;br /&gt;
   21  Муретова Мария Евгеньевна&lt;br /&gt;
   22  Николаева Анна Андреевна&lt;br /&gt;
   23  Русанов Вячеслав Сергеевич&lt;br /&gt;
   24  Соколова Ника Сергеевна&lt;br /&gt;
&lt;br /&gt;
== Формат сдачи работ ==&lt;br /&gt;
&lt;br /&gt;
Для сдачи работ используйте адрес paradigms-2014@osll.ru. В качестве темы письма указывайте строку&lt;br /&gt;
&lt;br /&gt;
PHYS &amp;lt;номер подгруппы 1 или 2&amp;gt; &amp;lt;Фамилия Имя&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Для каждого файла с заданием создайте отдельный текстовый файл с расширением .py с кодом решения задач из файла.&lt;br /&gt;
&lt;br /&gt;
И вышлите их во вложении к письму.&lt;br /&gt;
&lt;br /&gt;
Также можно создать архив zip|rar|tar|tar.gz и выслать его. Тогда в названии архива укажите свою фамилию, имя и дату дедлайна.&lt;br /&gt;
&lt;br /&gt;
== Задания ==&lt;br /&gt;
&lt;br /&gt;
# Нужно сделать только задачи list_task.py и string_task.py: [https://www.dropbox.com/sh/l7zh2fquflldw9y/AAArxvYNcScTLqPJ5IL355EZa?dl=0 задание] Дедлайн: 15.09 23:55 Вам может помочь изучение туториала [https://docs.python.org/3/tutorial/index.html ссылка]. На русском качественного туториала, к сожалению, не нашел.&lt;br /&gt;
# Напишите программу reverse_file.py, которая переворачивает строчки входного текстового файла, пишет их в консоль и в выходной текстовый файл. Пути к входному (аргумент --if) и выходному (аргумент --of) файлам передаются в виде аргументов командной строки при запуске программы. Аргументы могут быть переданы в любом порядке.&lt;br /&gt;
## Пример запуска: python reverse_file.py --if c:\in.txt --of c:\out.txt и с переставленными аргументами: python reverse_file.py --of c:\out.txt --if c:\in.txt&lt;br /&gt;
## Символ конца строки не должен появляться в начале перевернутой строки, уберите его из перевернутой строки&lt;br /&gt;
## Последняя строчка входного файла не обязательно заканчивается символом перевода строки. В ее конце может стоять любой символ.&lt;br /&gt;
## Открывайте каждый файл (open(path, mode)) с минимально необходимым mode - не открывайте файл на чтение и запись, если достаточно только для чтения.&lt;br /&gt;
## После завершения работы с файлом он должен быть закрыт (функция close() у переменной файла)&lt;br /&gt;
## Всем переменным в программе должны быть даны имена, описывающие как они используются (пример: вместо переменной f для входного файла, используйте input_file)&lt;br /&gt;
## Названия всех функции должны показывать что делает функция. (пример: вместо названия функции, переворачивающей строку,  fun1 используем название reverse_str)&lt;br /&gt;
## Старайтесь разные части функциональности программы выносить в отдельные функции, а не писать код, который выполняет сразу всю работу. Пример: отдельная функция для переворачивания строки, принимающия на вход строку, которую нужно перевернуть, и возвращающая перевернутую строку.&lt;br /&gt;
## При наличии синтаксических ошибок в программе преподаватель может засчитать задачу не выполненной.&lt;br /&gt;
## Все данные, необходимые для работы функции, должны передаваться ей в виде параметров. Если все-так используете глобальные переменные, то необходимость использования глобальных переменных нужно доказать при помощи комментария (#) возле определения глобальной переменной.&lt;br /&gt;
## Можно вместе с решением прислать один из файлов, на котором вы тестировали. Это поможет помочь проще решить спорные ситуации, если они возникнут.&lt;br /&gt;
## Можно пользоваться материалами презентации: [https://docs.google.com/presentation/d/1SbXFEA-199-HD0FujYbEUNBWyGG795bbU0NM6MgkJGE/edit?usp=sharing ссылка]&lt;br /&gt;
## Дедлайн 22.09 23:55&lt;br /&gt;
# Задача wordcount.py из [https://www.dropbox.com/sh/l7zh2fquflldw9y/AAArxvYNcScTLqPJ5IL355EZa?dl=0 ссылка]. Дедлайн: 29.09 23:55 (+2 балла тем кто решит до 22.09) [https://docs.google.com/presentation/d/1oOecr3HX2werYu6RoaALFKA3PoSjg5Q3XS_-OaPmAR0/edit?usp=sharing Презентация с практики с необходимым материалом].&lt;br /&gt;
# Задание: [https://docs.google.com/document/d/124xSnnWT4GpLytQiZ471Q2D2RnAC2lCbAJpIWWFcO3U/edit?usp=sharing ссылка]. Скачайте файл с заданием (doc/odt/rtf), запишите в нем ответы и пришлите на почту. Дедлайн: 07.10 23:55. Материалы: [https://docs.google.com/presentation/d/1MqQwLoIXdQGEmvKHUd1_4SCsS9A0euPyjPzplIsNlSU/edit?usp=sharing ссылка].&lt;br /&gt;
# На 13.10 ДЗ не будет. Можно сдать долги и задать вопросы по старым темам. Презентация по представлению чисел в компьютере и модулям в Python: [https://docs.google.com/presentation/d/1A9cBSpddjAaiGebD35unlKMxDemr6rzgj7HxVDi6Ztg/edit?usp=sharing ссылка]&lt;br /&gt;
# [https://docs.google.com/document/d/1IB_KxOkX8y2JXaAcECwDm0u1mbfCkWQVll-Mv84nS48/edit?usp=sharing Задание], [https://docs.google.com/presentation/d/1G0UP_aK4FN2zDfSf7tvynSkh0DIvLgL7Jf3XvqTPSP4/edit?usp=sharing презентация]. Дедлайн: 20.10 23:55. На следующем занятии будет '''контрольная работа''' по пройденному материалу (модули, файлы, словари, списки, строки и т. п.)&lt;br /&gt;
# Контрольная работа. [https://docs.google.com/document/d/1pcy6cnITQtpX-75RVt2i7ck1HnDp95S5dND_mNYxk48/edit?usp=sharing Задание]&lt;br /&gt;
# Решения задач с контрольной работы и с практики: [https://drive.google.com/folderview?id=0B-KXDlig5kwVVGtFOEV6WWNTYzQ&amp;amp;usp=sharing Ссылка]. Задание с практики: [https://docs.google.com/document/d/1tC7t_7nIyFCEdwrkGmZ8-oEoVFVZJusrpy8edgAnZ5k/edit?usp=sharing Ссылка]&lt;br /&gt;
# [https://docs.google.com/document/d/1a5HMJSgklATw8n7jWm9vDQnMvt7jtLvQJ-__1A8ZlcI/edit?usp=sharing Задание]. Дедлайн: 03.11 23:55&lt;br /&gt;
# Классная работа + ДЗ [https://docs.google.com/document/d/1VIILGvhU7HHBRaSoKiV6yJEwecXZBY8m0i1qOckddfE/edit?usp=sharing Ссылка]. Дедлайн: 10.11 23:55 К дедлайну нужно прислать обе части задания (1 и 2).&lt;br /&gt;
# Классная работа + ДЗ [https://docs.google.com/document/d/1FZnyUJ845RCVHmShSo8zJKQe94-mzmOMefGBAQTDYNA/edit?usp=sharing Ссылка]. Дедлайн: 17.11 23:55 К дедлайну нужно прислать обе части задания (1 и 2).&lt;br /&gt;
&lt;br /&gt;
= Общие ресурсы =&lt;br /&gt;
&lt;br /&gt;
== Планы лекций ==&lt;br /&gt;
&lt;br /&gt;
* [http://mit.spbau.ru/sewiki/images/1/1d/Pp-lecture-01.pdf    1. Введение. Понятие вычислений. Декларативные и императивные знания. Язык программирования.]&lt;br /&gt;
* [http://mit.spbau.ru/sewiki/images/8/89/Pp-lecture-02-03.pdf 2-3. Исполение программ. Система типов ]&lt;br /&gt;
* [http://mit.spbau.ru/sewiki/images/8/89/Pp-lecture-04-05.pdf 4-5. Вычислительный контекст, состояния ]&lt;br /&gt;
&lt;br /&gt;
== Образ виртуальной машины ==&lt;br /&gt;
В ней установлены Ubuntu Linux 14.04 32bit, Python2 и 3. Образ для Virtual Box. Лучше использовать одну и ту же виртуальную машину или дистрибутив Linux.&lt;br /&gt;
Позже нам это может очень помочь.&lt;br /&gt;
&lt;br /&gt;
https://drive.google.com/folderview?id=0B-KXDlig5kwVM0NDWWMwOVhZcGM&amp;amp;usp=sharing&lt;br /&gt;
&lt;br /&gt;
Virtual Box для Windows можно взять здесь:&lt;br /&gt;
&lt;br /&gt;
http://download.virtualbox.org/virtualbox/4.3.16/VirtualBox-4.3.16-95972-Win.exe&lt;br /&gt;
&lt;br /&gt;
== Сдача работ ==&lt;br /&gt;
&lt;br /&gt;
# Количество попыток сдачи работ в течение семестра неограниченно&lt;br /&gt;
# При успешной сдаче в рамках дедлайна - полный балл (1 бал за 1 задачу)&lt;br /&gt;
# При сдаче в последующие 2 недели - половина балла за каждую задачу&lt;br /&gt;
&lt;br /&gt;
== Рекомендации и типичные ошибки ==&lt;br /&gt;
* Если в работе присутствует хотябы одна ошибка из  [[Типичные_ошибки_и_рекомендации_к_программам_на_Python_в_курсе_&amp;quot;парадигмы_программирования&amp;quot;]], то преподаватель имеет право считать работу не сделанной в текущей попытке&lt;/div&gt;</summary>
		<author><name>Igorjirkov</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=IgnoreMe&amp;diff=4634</id>
		<title>IgnoreMe</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=IgnoreMe&amp;diff=4634"/>
				<updated>2014-11-05T09:24:25Z</updated>
		
		<summary type="html">&lt;p&gt;Igorjirkov: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Описание ==&lt;br /&gt;
&lt;br /&gt;
Понимаем, на каком языке программирования написан данный файл с кодом; генерируем .gitignore.&lt;br /&gt;
&lt;br /&gt;
== Состав ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Никита Карташов&lt;br /&gt;
* Марат Тураев&lt;br /&gt;
* Марат Хабибуллин&lt;br /&gt;
* Константин Новокрещенов&lt;br /&gt;
* Игорь Жирков&lt;/div&gt;</summary>
		<author><name>Igorjirkov</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=IgnoreMe&amp;diff=4633</id>
		<title>IgnoreMe</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=IgnoreMe&amp;diff=4633"/>
				<updated>2014-11-05T09:23:36Z</updated>
		
		<summary type="html">&lt;p&gt;Igorjirkov: Новая страница: «'''IgnoreMe'''   Понимаем, на каком языке программирования написан данный файл с кодом; генерируе…»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''IgnoreMe'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Понимаем, на каком языке программирования написан данный файл с кодом; генерируем .gitignore.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Состав'''&lt;br /&gt;
* Никита Карташов&lt;br /&gt;
* Марат Тураев&lt;br /&gt;
* Марат Хабибуллин&lt;br /&gt;
* Константин Новокрещенов&lt;br /&gt;
* Игорь Жирков&lt;/div&gt;</summary>
		<author><name>Igorjirkov</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=%D0%A1%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%87%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B5%D0%BA%D1%82%D0%BE%D0%B2&amp;diff=4631</id>
		<title>Странички проектов</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=%D0%A1%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%87%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B5%D0%BA%D1%82%D0%BE%D0%B2&amp;diff=4631"/>
				<updated>2014-11-05T09:21:15Z</updated>
		
		<summary type="html">&lt;p&gt;Igorjirkov: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* [[Омское метро]]&lt;br /&gt;
* [[IgnoreMe]]&lt;br /&gt;
* [[Ns3]]&lt;br /&gt;
* [[Stash'n'Read]]&lt;br /&gt;
* [[IgnoreMe]]&lt;/div&gt;</summary>
		<author><name>Igorjirkov</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=StatisticalLearning_2014&amp;diff=4609</id>
		<title>StatisticalLearning 2014</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=StatisticalLearning_2014&amp;diff=4609"/>
				<updated>2014-11-03T12:08:29Z</updated>
		
		<summary type="html">&lt;p&gt;Igorjirkov: /* Группы по проектам */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Программа =&lt;br /&gt;
&lt;br /&gt;
== Прочитанные лекции ==&lt;br /&gt;
# Введение. Что такое statistical learning. Примеры. ''(05.09)'' [[Файл:SL-01-SLIntro.pdf]]&lt;br /&gt;
# И снова линейная регрессия. Оценивание. Проверка гипотез относительно коэффициентов. Доверительные интервалы для коэффициентов.  ''(19.09)'' [[Файл:SL-02-Regression.pdf]]&lt;br /&gt;
# Категориальные переменные в регрессии. Выбор информативных признаков (немного). ''(26.09)'' [[Файл:SL-03-Regression.pdf]] [[Файл:SL-Advertising.zip]] &lt;br /&gt;
# Классификация. Линейные методы. Логистическая регрессия. ''(03.10)'' [[Файл:SL-04-Classification.pdf]]&lt;br /&gt;
# Классификация. Дискриминантный анализ. Понятие ROC-кривой, AUC. Naive Bayes. ''(10.10)'' [[Файл:SL-04-Classification.pdf]]&lt;br /&gt;
# Resampling: Кросс-валидация. Бутстреп. ''(17.10)'' [[Файл:SL-05-CVBoot.pdf]]&lt;br /&gt;
# Feature extraction: Principal Component Analysis. ''(24.10)'' [[Файл:SL-06-PCA.pdf]]&lt;br /&gt;
# Кластеризация (k-means, иерархическая, model based clustering) ''(31.11)'' [[Файл:SL-07-Clustering.pdf]]&lt;br /&gt;
&lt;br /&gt;
== Возможные темы будущих лекций ==&lt;br /&gt;
&lt;br /&gt;
# Регрессия. Выбросы, гетероскедастичность, high leverage points.&lt;br /&gt;
# Снова о подборе линейной модели. Регуляризация (ridge regression, LASSO, elastic net). Робастная регрессия.&lt;br /&gt;
# Нелинейности. Полиномиальная регрессия. Сплайны. Локальная регрессия. GAM.&lt;br /&gt;
# Деревья. Bagging. Boosting.&lt;br /&gt;
# Support vector machines&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Материалы с практик =&lt;br /&gt;
Конспект [[Файл:Rcourse.pdf]] (черновик). Будет обновляться. Внутри все листинги и результат выполнения + какие-то комментарии.&lt;br /&gt;
&lt;br /&gt;
Результаты проверки заочных домашних заданий: [https://www.dropbox.com/s/xt4s5qa5xrnpp92/%D0%98%D1%82%D0%BE%D0%B3%D0%B8.ods?dl=0 Dropbox]&lt;br /&gt;
&lt;br /&gt;
# Сырая версия history от 5 и 19 сентября (выложил в виде отформатированного конспекта) [[Файл:hist5sep.R.gz]] [[Файл:hist19sep.R.gz]]. Домашнее задание [[Файл:task_19sep.pdf]]&lt;br /&gt;
# Листинг для несостоявшегося занятия 26 сентября (будем с ним работать + еще немного) [[Файл:hist26sep.R.gz]]&lt;br /&gt;
# Задание с 3 октября [[Файл:Task2.pdf]], данные для задания [[Файл:data3oct.tar.gz]]&lt;br /&gt;
# Задание с 10 октября [[Файл:Task3.pdf]], данные для задания [[Файл:data10oct.tar.gz]]&lt;br /&gt;
# Задание с 17 октября (обновил файл, добавил комментарий) [[Файл:Task4.pdf]], данные из демонстрации [[Файл:data17oct.tar.gz]]&lt;br /&gt;
# Задание с 24 октября [[Файл:Task5.pdf]]&lt;br /&gt;
&lt;br /&gt;
= Дедлайны =&lt;br /&gt;
* 10 октября - деление на группы по проектам&lt;br /&gt;
* 24 октября - финализация темы проекта&lt;br /&gt;
* TBA - презентации проектов&lt;br /&gt;
&lt;br /&gt;
= Группы по проектам =&lt;br /&gt;
* Герман Демидов&lt;br /&gt;
* Бондарев Тимофей, Демидов Герман, Сидоров Святослав, Яснев Олег *&lt;br /&gt;
* Екатерина Старостина, Дмитрий Мелешко, Маргарита Аксешина, Елена Бушманова.&lt;br /&gt;
* Павел Авдеев, Татьяна Малыгина, Анна Лиознова, Надия Ситдыкова *&lt;br /&gt;
* Комаров Александр, Крыщенко Антон, Тураев Тимур, Устюжанина Екатерина *&lt;br /&gt;
* Андроник Ордиян, Аркадий Калакуцкий, Богдан Бугаев, Денис Жарков&lt;br /&gt;
* Антон Иванов, Гончарова Ирина, Жирков Игорь *&lt;br /&gt;
* Гайдай Игорь, Карташов Никита, Новокрещенов Константин, Хабибуллин Марат *&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
* Коваленко, Ворончихин, Овчинников, Цветков *&lt;br /&gt;
* Тураев М., Аманов, Афанасьев,&lt;br /&gt;
* Атамась, Обедин, Лучихин&lt;br /&gt;
  * --- тема проекта выбрана и согласована&lt;br /&gt;
&lt;br /&gt;
= Результаты и итоги =&lt;br /&gt;
&lt;br /&gt;
= Литература=&lt;br /&gt;
==  Основная ==&lt;br /&gt;
# Hadley Wickham: &amp;quot;Advanced R&amp;quot; [http://adv-r.had.co.nz/] - Достаточно краткое, но исчерпывающее руководство от очень известного R-гуру, автора множества пакетов&lt;br /&gt;
# Patrick Burns: &amp;quot;The R Inferno&amp;quot; [http://www.burns-stat.com/documents/books/the-r-inferno/] - &amp;quot;Ад R&amp;quot;, потенциальные ошибки при программировании на R и способы их избежать. Рекомендуется к чтению после некоторого опыта в R&lt;br /&gt;
#  Gareth James, Daniela Witten, Trevor Hastie and Robert Tibshirani: &amp;quot;An Introduction to Statistical Learning (with Applications in R)&amp;quot; [http://www-bcf.usc.edu/~gareth/ISL/] - ISL, введение в SL с примерами, основное пособие курса&lt;br /&gt;
# Trevor Hastie, Robert Tibshirani, Jerome Friedman: &amp;quot;The Elements of Statistical Learning&amp;quot;[http://statweb.stanford.edu/~tibs/ElemStatLearn/] - ESL, для тех, кому предыдущая книга покажется недостаточно подробной и глубокой. Больше теории и шире охват, но гораздо сложнее и нет примеров кода&lt;br /&gt;
&lt;br /&gt;
== Дополнительная ==&lt;br /&gt;
# [http://ggplot2.org/] - Сайт lattice&lt;br /&gt;
# Sarkar, Deepayan: &amp;quot;Lattice. Multivariate Data Visualization with R&amp;quot; [http://www.springer.com/978-0-387-75968-5] - Исчерпывающий обзор графической системы &amp;quot;lattice&amp;quot; с примерами использования&lt;br /&gt;
# [http://lattice.r-forge.r-project.org/] - Сайт ggplot2&lt;br /&gt;
# Winston Chang: &amp;quot;R Graphics Cookbook&amp;quot; [http://amzn.com/1449316956?tag=ggplot2-20] - Введение в ggplot и рецепты&lt;br /&gt;
# Hadley Wickham: &amp;quot;ggplot2: Elegant Graphics for Data Analysis&amp;quot; [http://amzn.com/0387981403?tag=ggplot2-20] - Книга от создателя ggplot, для тех, кто хочет разобраться с внутренним устройством пакета и проектировать собственные графики&lt;br /&gt;
#  Q. Ethan McCallum, Stephen Weston: &amp;quot;Parallel R. Data Analysis in the Distributed World &amp;quot; [http://shop.oreilly.com/product/0636920021421.do] - Книга содержит исчерпывающую информацию о параллельном программировании на R (включая кластеры и облака)&lt;/div&gt;</summary>
		<author><name>Igorjirkov</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=Computational_geometry_2013&amp;diff=2982</id>
		<title>Computational geometry 2013</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=Computational_geometry_2013&amp;diff=2982"/>
				<updated>2013-11-16T09:03:00Z</updated>
		
		<summary type="html">&lt;p&gt;Igorjirkov: /* Ссылки */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Лектор - &lt;br /&gt;
&lt;br /&gt;
Практика -&lt;br /&gt;
&lt;br /&gt;
== Лекции ==&lt;br /&gt;
&lt;br /&gt;
[http://vk.com/video11773921_166317565 Видео 2.1]&lt;br /&gt;
[http://vk.com/video11773921_166317513 Видео 2.2]&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
[http://vk.com/video11773921_166380537 Видео 3.1]&lt;br /&gt;
[http://vk.com/video11773921_166381399 Видео 3.2]&lt;br /&gt;
[http://vk.com/video11773921_166381548 Видео 3.2]&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
[http://vk.com/video11773921_166437694 Видео 4.1]&lt;br /&gt;
[http://vk.com/video11773921_166437799 Видео 4.2]&lt;br /&gt;
[http://vk.com/video11773921_166437863 Видео 4.3]&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
[http://vk.com/video11773921_166493901 Видео 5.1]&lt;br /&gt;
[http://vk.com/video11773921_166493902 Видео 5.2]&lt;br /&gt;
[http://vk.com/video11773921_166493903 Видео 5.3]&lt;br /&gt;
&lt;br /&gt;
== Домашние задания ==&lt;br /&gt;
&lt;br /&gt;
== Список литературы ==&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
&lt;br /&gt;
Wiki по курсу на github: https://github.com/AndreyG/CG-Lecture-Notes/wiki/&lt;br /&gt;
&lt;br /&gt;
Qt проект:&lt;br /&gt;
https://github.com/AndreyG/Geometry-Visualization-Library&lt;br /&gt;
&lt;br /&gt;
Пример использования:&lt;br /&gt;
https://github.com/AndreyG/Visualization-Example&lt;/div&gt;</summary>
		<author><name>Igorjirkov</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=Computational_geometry_2013&amp;diff=2981</id>
		<title>Computational geometry 2013</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=Computational_geometry_2013&amp;diff=2981"/>
				<updated>2013-11-16T09:00:12Z</updated>
		
		<summary type="html">&lt;p&gt;Igorjirkov: /* Ссылки */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Лектор - &lt;br /&gt;
&lt;br /&gt;
Практика -&lt;br /&gt;
&lt;br /&gt;
== Лекции ==&lt;br /&gt;
&lt;br /&gt;
[http://vk.com/video11773921_166317565 Видео 2.1]&lt;br /&gt;
[http://vk.com/video11773921_166317513 Видео 2.2]&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
[http://vk.com/video11773921_166380537 Видео 3.1]&lt;br /&gt;
[http://vk.com/video11773921_166381399 Видео 3.2]&lt;br /&gt;
[http://vk.com/video11773921_166381548 Видео 3.2]&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
[http://vk.com/video11773921_166437694 Видео 4.1]&lt;br /&gt;
[http://vk.com/video11773921_166437799 Видео 4.2]&lt;br /&gt;
[http://vk.com/video11773921_166437863 Видео 4.3]&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
[http://vk.com/video11773921_166493901 Видео 5.1]&lt;br /&gt;
[http://vk.com/video11773921_166493902 Видео 5.2]&lt;br /&gt;
[http://vk.com/video11773921_166493903 Видео 5.3]&lt;br /&gt;
&lt;br /&gt;
== Домашние задания ==&lt;br /&gt;
&lt;br /&gt;
== Список литературы ==&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
По первой лекции (гомогенные координаты, прямые и т.д.):&lt;br /&gt;
http://robotics.stanford.edu/~birch/projective/node4.html&lt;br /&gt;
&lt;br /&gt;
Трапециоидная карта&lt;br /&gt;
http://cg.scs.carleton.ca/~cdillaba/comp5008/mulmuley.html&lt;br /&gt;
http://cgm.cs.mcgill.ca/~athens/cs507/Projects/2002/JukkaKaartinen/&lt;br /&gt;
&lt;br /&gt;
Qt проект:&lt;br /&gt;
https://github.com/AndreyG/Geometry-Visualization-Library&lt;br /&gt;
&lt;br /&gt;
Пример использования:&lt;br /&gt;
https://github.com/AndreyG/Visualization-Example&lt;/div&gt;</summary>
		<author><name>Igorjirkov</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=Networks_2013&amp;diff=2832</id>
		<title>Networks 2013</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=Networks_2013&amp;diff=2832"/>
				<updated>2013-11-08T11:37:39Z</updated>
		
		<summary type="html">&lt;p&gt;Igorjirkov: /* Домашние задания */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Лектор - Антон Кузнецов&lt;br /&gt;
&lt;br /&gt;
Практика - Антон Кузнецов&lt;br /&gt;
&lt;br /&gt;
== Рейтинг ==&lt;br /&gt;
&lt;br /&gt;
[https://docs.google.com/spreadsheet/pub?key=0Aif17q2hwUt4dHVscFgwX3Z5c3QtNVZsdVY5MGZnM2c&amp;amp;output=html Рейтинг]&lt;br /&gt;
&lt;br /&gt;
== Лекции ==&lt;br /&gt;
&lt;br /&gt;
[[Медиа:Networks_2013_HTTP.ppt|HTTP]]&lt;br /&gt;
&lt;br /&gt;
=== Cокеты ===&lt;br /&gt;
[[Медиа:Networks_2013_Sockets_01.ppt|Сокеты-01]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Медиа:Networks_2013_Sockets_02.ppt|Сокеты-02]]&lt;br /&gt;
&lt;br /&gt;
== Домашние задания ==&lt;br /&gt;
&lt;br /&gt;
Домашнее задание от 11/10&lt;br /&gt;
&lt;br /&gt;
a) ICMP-типы 13 -- запрос синхронизации времени и 14 -- время отправки, получения и т.д.&lt;br /&gt;
Нужно реализовать клиент и сервер.&lt;br /&gt;
Проверить, чтобы работало со стандартными службами ОС.&lt;br /&gt;
&lt;br /&gt;
б) ICMP-типы 17 и 18. В 17-ом пакете есть адрес, а  в 18 -- маска, соответствующая его сети. &lt;br /&gt;
Клиент и сервер.&lt;br /&gt;
C, С++, С++ + Boost.Asio, Java, C#, Python, Haskell, Erlang&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Дедлайн 25/10&lt;br /&gt;
&lt;br /&gt;
Домашнее задание -- сетевой чатик&lt;br /&gt;
Добавить возможность считать метрики:&lt;br /&gt;
* Среднее время обработки клиента;&lt;br /&gt;
* Среднее время простоя потока&lt;br /&gt;
Протокол:&lt;br /&gt;
https://lh5.googleusercontent.com/-YQCK_bdGt8k/UnOKDDQL8MI/AAAAAAAABvk/uX_QN90tNDI/w1598-h899-no/20131011_152621.jpg&lt;br /&gt;
&lt;br /&gt;
Еще две &amp;quot;четкие&amp;quot; фотографии:&lt;br /&gt;
[https://drive.google.com/file/d/0B82SeuyS2ofNVGZVaHV1ODB3cWs/edit?usp=sharing раз],&lt;br /&gt;
[https://drive.google.com/file/d/0B82SeuyS2ofNZE92Yld6QXdJMTA/edit?usp=sharing два]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Если вы не используете паттерн Products and consumers в чате, то нужно сделать дополнительное задание.&lt;br /&gt;
&lt;br /&gt;
Крайний срок для чата -- 15 ноября.&lt;br /&gt;
&lt;br /&gt;
Посчитать метрики для чата:&lt;br /&gt;
Среднее время обработки клиента и понять, с какого момента оно начинает резко расти;&lt;br /&gt;
Среднее время простоя.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Еще задание про REST. До конца ноября.&lt;br /&gt;
Про REST читать здесь:&lt;br /&gt;
http://www.vogella.com/articles/REST/article.html&lt;br /&gt;
&lt;br /&gt;
== Список литературы ==&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
[http://www.pcvr.nl/tcpip/ TCP/IP Illustrated, Vol. 1]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
---Также (добавил не Антон):&lt;br /&gt;
http://book.itep.ru/4/44/icmp_444.htm&lt;/div&gt;</summary>
		<author><name>Igorjirkov</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=Networks_2013&amp;diff=2831</id>
		<title>Networks 2013</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=Networks_2013&amp;diff=2831"/>
				<updated>2013-11-08T11:37:16Z</updated>
		
		<summary type="html">&lt;p&gt;Igorjirkov: /* Домашние задания */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Лектор - Антон Кузнецов&lt;br /&gt;
&lt;br /&gt;
Практика - Антон Кузнецов&lt;br /&gt;
&lt;br /&gt;
== Рейтинг ==&lt;br /&gt;
&lt;br /&gt;
[https://docs.google.com/spreadsheet/pub?key=0Aif17q2hwUt4dHVscFgwX3Z5c3QtNVZsdVY5MGZnM2c&amp;amp;output=html Рейтинг]&lt;br /&gt;
&lt;br /&gt;
== Лекции ==&lt;br /&gt;
&lt;br /&gt;
[[Медиа:Networks_2013_HTTP.ppt|HTTP]]&lt;br /&gt;
&lt;br /&gt;
=== Cокеты ===&lt;br /&gt;
[[Медиа:Networks_2013_Sockets_01.ppt|Сокеты-01]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Медиа:Networks_2013_Sockets_02.ppt|Сокеты-02]]&lt;br /&gt;
&lt;br /&gt;
== Домашние задания ==&lt;br /&gt;
&lt;br /&gt;
Домашнее задание от 11/10&lt;br /&gt;
&lt;br /&gt;
a) ICMP-типы 13 -- запрос синхронизации времени и 14 -- время отправки, получения и т.д.&lt;br /&gt;
Нужно реализовать клиент и сервер.&lt;br /&gt;
Проверить, чтобы работало со стандартными службами ОС.&lt;br /&gt;
&lt;br /&gt;
б) ICMP-типы 17 и 18. В 17-ом пакете есть адрес, а  в 18 -- маска, соответствующая его сети. &lt;br /&gt;
Клиент и сервер.&lt;br /&gt;
C, С++, С++ + Boost.Asio, Java, C#, Python, Haskell, Erlang&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Дедлайн 25/10&lt;br /&gt;
&lt;br /&gt;
Домашнее задание -- сетевой чатик&lt;br /&gt;
Добавить возможность считать метрики:&lt;br /&gt;
* Среднее время обработки клиента;&lt;br /&gt;
* Среднее время простоя потока&lt;br /&gt;
Протокол:&lt;br /&gt;
https://lh5.googleusercontent.com/-YQCK_bdGt8k/UnOKDDQL8MI/AAAAAAAABvk/uX_QN90tNDI/w1598-h899-no/20131011_152621.jpg&lt;br /&gt;
&lt;br /&gt;
Еще две &amp;quot;четкие&amp;quot; фотографии:&lt;br /&gt;
[https://drive.google.com/file/d/0B82SeuyS2ofNVGZVaHV1ODB3cWs/edit?usp=sharing раз],&lt;br /&gt;
[https://drive.google.com/file/d/0B82SeuyS2ofNZE92Yld6QXdJMTA/edit?usp=sharing два]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Если вы не используете паттерн Products and consumers в чате, то нужно сделать дополнительное задание.&lt;br /&gt;
&lt;br /&gt;
Крайний срок для чата -- 15 ноября.&lt;br /&gt;
&lt;br /&gt;
Посчитать метрики для чата:&lt;br /&gt;
Среднее время обработки клиента и понять, с какого момента оно начинает резко расти;&lt;br /&gt;
Среднее время простоя.&lt;br /&gt;
&lt;br /&gt;
Про REST читать здесь:&lt;br /&gt;
http://www.vogella.com/articles/REST/article.html&lt;br /&gt;
&lt;br /&gt;
== Список литературы ==&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
[http://www.pcvr.nl/tcpip/ TCP/IP Illustrated, Vol. 1]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
---Также (добавил не Антон):&lt;br /&gt;
http://book.itep.ru/4/44/icmp_444.htm&lt;/div&gt;</summary>
		<author><name>Igorjirkov</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=Networks_2013&amp;diff=2790</id>
		<title>Networks 2013</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=Networks_2013&amp;diff=2790"/>
				<updated>2013-11-01T11:37:24Z</updated>
		
		<summary type="html">&lt;p&gt;Igorjirkov: /* Домашние задания */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Лектор - Антон Кузнецов&lt;br /&gt;
&lt;br /&gt;
Практика - Антон Кузнецов&lt;br /&gt;
&lt;br /&gt;
== Лекции ==&lt;br /&gt;
&lt;br /&gt;
[[Медиа:Networks_2013_HTTP.ppt|HTTP]]&lt;br /&gt;
&lt;br /&gt;
=== Cокеты ===&lt;br /&gt;
[[Медиа:Networks_2013_Sockets_01.ppt|Сокеты-01]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Медиа:Networks_2013_Sockets_02.ppt|Сокеты-02]]&lt;br /&gt;
&lt;br /&gt;
== Домашние задания ==&lt;br /&gt;
&lt;br /&gt;
Домашнее задание от 11/10&lt;br /&gt;
&lt;br /&gt;
a) ICMP-типы 13 -- запрос синхронизации времени и 14 -- время отправки, получения и т.д.&lt;br /&gt;
Нужно реализовать клиент и сервер.&lt;br /&gt;
Проверить, чтобы работало со стандартными службами ОС.&lt;br /&gt;
&lt;br /&gt;
б) ICMP-типы 17 и 18. В 17-ом пакете есть адрес, а  в 18 -- маска, соответствующая его сети. &lt;br /&gt;
Клиент и сервер.&lt;br /&gt;
C, С++, С++ + Boost.Asio, Java, C#, Python, Haskell, Erlang&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Дедлайн 25/10&lt;br /&gt;
&lt;br /&gt;
Домашнее задание -- сетевой чатик&lt;br /&gt;
Добавить возможность считать метрики:&lt;br /&gt;
-- Среднее время обработки клиента;&lt;br /&gt;
-- Среднее время простоя потока&lt;br /&gt;
Протокол:&lt;br /&gt;
https://lh5.googleusercontent.com/-YQCK_bdGt8k/UnOKDDQL8MI/AAAAAAAABvk/uX_QN90tNDI/w1598-h899-no/20131011_152621.jpg&lt;br /&gt;
&lt;br /&gt;
== Список литературы ==&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
[http://www.pcvr.nl/tcpip/ TCP/IP Illustrated, Vol. 1]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
---Также (добавил не Антон):&lt;br /&gt;
http://book.itep.ru/4/44/icmp_444.htm&lt;/div&gt;</summary>
		<author><name>Igorjirkov</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=Networks_2013&amp;diff=2711</id>
		<title>Networks 2013</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=Networks_2013&amp;diff=2711"/>
				<updated>2013-10-17T16:24:24Z</updated>
		
		<summary type="html">&lt;p&gt;Igorjirkov: /* Ссылки */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Лектор - Антон Кузнецов&lt;br /&gt;
&lt;br /&gt;
Практика - Антон Кузнецов&lt;br /&gt;
&lt;br /&gt;
== Лекции ==&lt;br /&gt;
&lt;br /&gt;
== Домашние задания ==&lt;br /&gt;
&lt;br /&gt;
Домашнее задание от 11/10&lt;br /&gt;
&lt;br /&gt;
a) ICMP-типы 13 -- запрос синхронизации времени и 14 -- время отправки, получения и т.д.&lt;br /&gt;
Нужно реализовать клиент и сервер.&lt;br /&gt;
Проверить, чтобы работало со стандартными службами ОС.&lt;br /&gt;
&lt;br /&gt;
б) ICMP-типы 17 и 18. В 17-ом пакете есть адрес, а  в 18 -- маска, соответствующая его сети. &lt;br /&gt;
Клиент и сервер.&lt;br /&gt;
C, С++, С++ + Boost.Asio, Java, C#, Python, Haskell, Erlang&lt;br /&gt;
&lt;br /&gt;
Дедлайн 25/10.&lt;br /&gt;
&lt;br /&gt;
== Список литературы ==&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
[http://www.pcvr.nl/tcpip/ TCP/IP Illustrated, Vol. 1]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
---Также (добавил не Антон):&lt;br /&gt;
http://book.itep.ru/4/44/icmp_444.htm&lt;/div&gt;</summary>
		<author><name>Igorjirkov</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=Networks_2013&amp;diff=2675</id>
		<title>Networks 2013</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=Networks_2013&amp;diff=2675"/>
				<updated>2013-10-11T10:12:19Z</updated>
		
		<summary type="html">&lt;p&gt;Igorjirkov: /* Домашние задания */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Лектор - &lt;br /&gt;
&lt;br /&gt;
Практика -&lt;br /&gt;
&lt;br /&gt;
== Лекции ==&lt;br /&gt;
&lt;br /&gt;
== Домашние задания ==&lt;br /&gt;
&lt;br /&gt;
Домашнее задание от 11/10&lt;br /&gt;
&lt;br /&gt;
a) ICMP-типы 13 -- запрос синхронизации времени и 14 -- время отправки, получения и т.д.&lt;br /&gt;
Нужно реализовать клиент и сервер.&lt;br /&gt;
Проверить, чтобы работало со стандартными службами ОС.&lt;br /&gt;
&lt;br /&gt;
б) ICMP-типы 17 и 18. В 17-ом пакете есть адрес, а  в 18 -- маска, соответствующая его сети. &lt;br /&gt;
Клиент и сервер.&lt;br /&gt;
C, С++, С++ + Boost.Asio, Java, C#, Python, Haskell, Erlang&lt;br /&gt;
&lt;br /&gt;
Дедлайн 25/10.&lt;br /&gt;
&lt;br /&gt;
== Список литературы ==&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;/div&gt;</summary>
		<author><name>Igorjirkov</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=FunctionalProgramming2_2013&amp;diff=2669</id>
		<title>FunctionalProgramming2 2013</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=FunctionalProgramming2_2013&amp;diff=2669"/>
				<updated>2013-10-07T12:21:13Z</updated>
		
		<summary type="html">&lt;p&gt;Igorjirkov: /* Домашние задания */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Лектор - &lt;br /&gt;
&lt;br /&gt;
Практика -&lt;br /&gt;
&lt;br /&gt;
== Лекции ==&lt;br /&gt;
&lt;br /&gt;
== Домашние задания ==&lt;br /&gt;
Задачи:&lt;br /&gt;
&lt;br /&gt;
1. Есть тип из haskell: Bool, домен: _|_ &amp;lt; false, _|_ &amp;lt; true, true и false не сравнимы.&lt;br /&gt;
&lt;br /&gt;
Сколько элементов в домене, соответствующем типу Bool -&amp;gt; Bool? &lt;br /&gt;
&lt;br /&gt;
2. Функция seq :: a -&amp;gt; b -&amp;gt; b&lt;br /&gt;
&lt;br /&gt;
seq _|_ _ = _|_&lt;br /&gt;
&lt;br /&gt;
seq _ b = b&lt;br /&gt;
&lt;br /&gt;
Доказать: seq -- непрерывна. &lt;br /&gt;
&lt;br /&gt;
3. Придумайте пример монотонной, но не непрерывной функции.&lt;br /&gt;
&lt;br /&gt;
4. Рассмотрим наибольший элемент T: \forall x : x &amp;lt; T.&lt;br /&gt;
&lt;br /&gt;
Максимальный элемент m:\forall x : x \geq m =&amp;gt; x это m.&lt;br /&gt;
&lt;br /&gt;
Придумайте пример частично упорядоченного множества, в котором есть ровно один максимальный элемент, но нет наибольшего.&lt;br /&gt;
&lt;br /&gt;
== Список литературы ==&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
&lt;br /&gt;
Страница курса:&lt;br /&gt;
http://migmit.info/course/fp2&lt;/div&gt;</summary>
		<author><name>Igorjirkov</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=FunctionalProgramming2_2013&amp;diff=2668</id>
		<title>FunctionalProgramming2 2013</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=FunctionalProgramming2_2013&amp;diff=2668"/>
				<updated>2013-10-07T12:12:12Z</updated>
		
		<summary type="html">&lt;p&gt;Igorjirkov: /* Ссылки */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Лектор - &lt;br /&gt;
&lt;br /&gt;
Практика -&lt;br /&gt;
&lt;br /&gt;
== Лекции ==&lt;br /&gt;
&lt;br /&gt;
== Домашние задания ==&lt;br /&gt;
Задачи:&lt;br /&gt;
&lt;br /&gt;
1. Есть тип из haskell: Bool, домен: _|_ &amp;lt; false, _|_ &amp;lt; true, true и false не сравнимы.&lt;br /&gt;
&lt;br /&gt;
Сколько элементов в домене, соответствующем типа Bool -&amp;gt; Bool? &lt;br /&gt;
&lt;br /&gt;
2. Функция seq :: a -&amp;gt; b -&amp;gt; b&lt;br /&gt;
&lt;br /&gt;
seq _|_ _ = _|_&lt;br /&gt;
&lt;br /&gt;
seq _ b = b&lt;br /&gt;
&lt;br /&gt;
Доказать: seq -- непрерывна. &lt;br /&gt;
&lt;br /&gt;
3. Придумайте пример монотонной, но не непрерывной функции.&lt;br /&gt;
&lt;br /&gt;
4. Рассмотрим наибольший элемент T: \forall x : x &amp;lt; T.&lt;br /&gt;
&lt;br /&gt;
Максимальный элемент m:\forall x : x \geq m =&amp;gt; x это m.&lt;br /&gt;
&lt;br /&gt;
Придумайте пример частично упорядоченного множества, в котором есть ровно один максимальный элемент, но нет наибольшего.&lt;br /&gt;
&lt;br /&gt;
== Список литературы ==&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
&lt;br /&gt;
Страница курса:&lt;br /&gt;
http://migmit.info/course/fp2&lt;/div&gt;</summary>
		<author><name>Igorjirkov</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=FunctionalProgramming2_2013&amp;diff=2640</id>
		<title>FunctionalProgramming2 2013</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=FunctionalProgramming2_2013&amp;diff=2640"/>
				<updated>2013-10-01T11:39:30Z</updated>
		
		<summary type="html">&lt;p&gt;Igorjirkov: /* Домашние задания */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Лектор - &lt;br /&gt;
&lt;br /&gt;
Практика -&lt;br /&gt;
&lt;br /&gt;
== Лекции ==&lt;br /&gt;
&lt;br /&gt;
== Домашние задания ==&lt;br /&gt;
Задачи:&lt;br /&gt;
&lt;br /&gt;
1. Есть тип из haskell: Bool, домен: _|_ &amp;lt; false, _|_ &amp;lt; true, true и false не сравнимы.&lt;br /&gt;
&lt;br /&gt;
Сколько элементов в домене, соответствующем типа Bool -&amp;gt; Bool? &lt;br /&gt;
&lt;br /&gt;
2. Функция seq :: a -&amp;gt; b -&amp;gt; b&lt;br /&gt;
&lt;br /&gt;
seq _|_ _ = _|_&lt;br /&gt;
&lt;br /&gt;
seq _ b = b&lt;br /&gt;
&lt;br /&gt;
Доказать: seq -- непрерывна. &lt;br /&gt;
&lt;br /&gt;
3. Придумайте пример монотонной, но не непрерывной функции.&lt;br /&gt;
&lt;br /&gt;
4. Рассмотрим наибольший элемент T: \forall x : x &amp;lt; T.&lt;br /&gt;
&lt;br /&gt;
Максимальный элемент m:\forall x : x \geq m =&amp;gt; x это m.&lt;br /&gt;
&lt;br /&gt;
Придумайте пример частично упорядоченного множества, в котором есть ровно один максимальный элемент, но нет наибольшего.&lt;br /&gt;
&lt;br /&gt;
== Список литературы ==&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;/div&gt;</summary>
		<author><name>Igorjirkov</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=Computational_geometry_2013&amp;diff=2574</id>
		<title>Computational geometry 2013</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=Computational_geometry_2013&amp;diff=2574"/>
				<updated>2013-09-13T11:12:03Z</updated>
		
		<summary type="html">&lt;p&gt;Igorjirkov: /* Ссылки */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Лектор - &lt;br /&gt;
&lt;br /&gt;
Практика -&lt;br /&gt;
&lt;br /&gt;
== Лекции ==&lt;br /&gt;
&lt;br /&gt;
== Домашние задания ==&lt;br /&gt;
&lt;br /&gt;
== Список литературы ==&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
По первой лекции:&lt;br /&gt;
http://robotics.stanford.edu/~birch/projective/node4.html&lt;/div&gt;</summary>
		<author><name>Igorjirkov</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=Devdays1h2013&amp;diff=2492</id>
		<title>Devdays1h2013</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=Devdays1h2013&amp;diff=2492"/>
				<updated>2013-06-05T19:07:37Z</updated>
		
		<summary type="html">&lt;p&gt;Igorjirkov: /* Страницы проектов */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Страницы проектов ==&lt;br /&gt;
&lt;br /&gt;
* [[XOnD_audd13| XOnD ]], status: release&lt;br /&gt;
* [[Anki]], status: alpha&lt;br /&gt;
* [[Аренда Недвижимости]], status: reviewed&lt;br /&gt;
* [[compiler error assistant]], status: '''1st Place'''&lt;br /&gt;
* [[Life in Cube]], status: '''2nd Place'''&lt;br /&gt;
* [[Music Sync]], status: reviewed&lt;br /&gt;
* [[Погодный оракул]], status: reviewed&lt;br /&gt;
* &amp;lt;del&amp;gt; [[Megapuck]], status: reviewed &amp;lt;/del&amp;gt;&lt;br /&gt;
* [[QRMenu]], status: '''3rd Place, special prize''' &lt;br /&gt;
* [[Key Binder]], status: beta&lt;br /&gt;
&lt;br /&gt;
== Разное ==&lt;br /&gt;
&lt;br /&gt;
* Официальный хештег #audd13&lt;/div&gt;</summary>
		<author><name>Igorjirkov</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=XOnD_audd13&amp;diff=2454</id>
		<title>XOnD audd13</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=XOnD_audd13&amp;diff=2454"/>
				<updated>2013-05-14T20:01:42Z</updated>
		
		<summary type="html">&lt;p&gt;Igorjirkov: /* Репозиторий */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= XOnD =&lt;br /&gt;
&lt;br /&gt;
Крестики-нолики в новых пространствах&lt;br /&gt;
&lt;br /&gt;
== Фичи ==&lt;br /&gt;
&lt;br /&gt;
* 4-х мерные крестики-нолики&lt;br /&gt;
* визуализация через трёхмерные проекции&lt;br /&gt;
* управление с помощью мыши&lt;br /&gt;
* игра в режиме hot seat&lt;br /&gt;
&lt;br /&gt;
== Технологии ==&lt;br /&gt;
&lt;br /&gt;
* Coffeescript&lt;br /&gt;
* WebGL &lt;br /&gt;
&lt;br /&gt;
== Репозиторий ==&lt;br /&gt;
&lt;br /&gt;
* https://github.com/sayon/XOnD&lt;br /&gt;
&lt;br /&gt;
== Команда ==&lt;br /&gt;
&lt;br /&gt;
* Сторожев Антон&lt;br /&gt;
* Жирков Игорь&lt;/div&gt;</summary>
		<author><name>Igorjirkov</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=XOnD_audd13&amp;diff=2431</id>
		<title>XOnD audd13</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=XOnD_audd13&amp;diff=2431"/>
				<updated>2013-05-13T22:48:59Z</updated>
		
		<summary type="html">&lt;p&gt;Igorjirkov: /* Фичи */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= XOnD =&lt;br /&gt;
&lt;br /&gt;
Крестики-нолики в новых пространствах&lt;br /&gt;
&lt;br /&gt;
== Фичи ==&lt;br /&gt;
&lt;br /&gt;
* 4-х мерные крестики-нолики&lt;br /&gt;
* визуализация через трёхмерные проекции&lt;br /&gt;
* управление с помощью мыши&lt;br /&gt;
* игра в режиме hot seat&lt;br /&gt;
&lt;br /&gt;
== Технологии ==&lt;br /&gt;
&lt;br /&gt;
* Coffeescript&lt;br /&gt;
* WebGL &lt;br /&gt;
&lt;br /&gt;
== Репозиторий ==&lt;br /&gt;
&lt;br /&gt;
* https://github.com/vinni-au/XOnD&lt;br /&gt;
&lt;br /&gt;
== Команда ==&lt;br /&gt;
&lt;br /&gt;
* Сторожев Антон&lt;br /&gt;
* Жирков Игорь&lt;/div&gt;</summary>
		<author><name>Igorjirkov</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=Unix_%D0%B8_%D0%A1%D0%BA%D1%80%D0%B8%D0%BF%D1%82%D0%BE%D0%B2%D1%8B%D0%B5_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B8_2012&amp;diff=2055</id>
		<title>Unix и Скриптовые языки 2012</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=Unix_%D0%B8_%D0%A1%D0%BA%D1%80%D0%B8%D0%BF%D1%82%D0%BE%D0%B2%D1%8B%D0%B5_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B8_2012&amp;diff=2055"/>
				<updated>2012-11-30T08:21:48Z</updated>
		
		<summary type="html">&lt;p&gt;Igorjirkov: /* Задание по модулям Python */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Лектор - Кузнецов Антон Михайлович&lt;br /&gt;
&lt;br /&gt;
== Лекции. ==&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
 |-&lt;br /&gt;
!Лекция 1&lt;br /&gt;
 |04.09.2012&lt;br /&gt;
 |История UNIX&lt;br /&gt;
 |Слайды [[Медиа:Unix2012-01.pdf|PDF]]&lt;br /&gt;
 |[[Медиа:Unix2012-Test01.pdf|Тест]]&lt;br /&gt;
 |-&lt;br /&gt;
!Лекция 2&lt;br /&gt;
 |07.09.2012&lt;br /&gt;
 |Введение в команды UNIX&lt;br /&gt;
 |Слайды [[Медиа:Unix2012-02.pdf|PDF]]&lt;br /&gt;
 |- &lt;br /&gt;
!Лекция 3&lt;br /&gt;
 |14.09.2012&lt;br /&gt;
 |Регулярные выражения. Sed, grep&lt;br /&gt;
 |Слайды [[Медиа:Unix2012-03.pdf|PDF]]&lt;br /&gt;
 |-&lt;br /&gt;
!Лекция 4&lt;br /&gt;
 |21.09.2012&lt;br /&gt;
 |Bash scripts&lt;br /&gt;
 |Слайды [[Медиа:Unix2012-04.pdf|PDF]] [http://gordin.us/sergo/abs-guide/x4165.html Работа со строками]&lt;br /&gt;
 |[[Домашнее_задание_&amp;quot;Unix_и_Скриптовые_языки&amp;quot;_2012|Задание]]&lt;br /&gt;
 |-&lt;br /&gt;
!Контрольная&lt;br /&gt;
 |28.09.2012&lt;br /&gt;
 |[https://docs.google.com/document/pub?id=1sF9Nmr2hIF84YcfP-KPkEzvFfmnvOScFvqA1mGNwcqs Задачи]&lt;br /&gt;
 |&lt;br /&gt;
 |&lt;br /&gt;
 |-&lt;br /&gt;
!Лекция 4&lt;br /&gt;
 |19.10.2012&lt;br /&gt;
 |Python введение&lt;br /&gt;
 |Слайды [[Медиа:Unix-2012-07-Python.pdf|PDF]]&lt;br /&gt;
 |&lt;br /&gt;
 |-&lt;br /&gt;
!Лекция 5&lt;br /&gt;
 |26.10.2012&lt;br /&gt;
 |Python строки&lt;br /&gt;
 |Слайды [[Медиа:Unix-2012-08-Python.pdf|PDF]]&lt;br /&gt;
 |&lt;br /&gt;
 |-&lt;br /&gt;
!Лекция 6&lt;br /&gt;
 |2.11.2012&lt;br /&gt;
 |Python модули, итераторы&lt;br /&gt;
 |Слайды [[Медиа:Unix_2012_09_Modules.pdf|PDF]] [[Медиа:Unix_2012_09_Iterators.pdf|PDF]]&lt;br /&gt;
 |&lt;br /&gt;
 |-&lt;br /&gt;
!Контрольная&lt;br /&gt;
 |9.11.2012&lt;br /&gt;
 |Тест [[Медиа:Test.pdf|PDF]]&lt;br /&gt;
 |&lt;br /&gt;
 |&lt;br /&gt;
 |-&lt;br /&gt;
!Лекция 7&lt;br /&gt;
 |16.11.2012&lt;br /&gt;
 |Python ООП&lt;br /&gt;
 |Слайды [[Медиа:Unix_Slides_20111117.pdf |PDF]]&lt;br /&gt;
 |&lt;br /&gt;
 |-&lt;br /&gt;
!Лекция 8&lt;br /&gt;
 |23.11.2012&lt;br /&gt;
 |Python ООП&lt;br /&gt;
 |Слайды [[Unix_20121123|Задание]] [[PDF]]&lt;br /&gt;
 |&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
== Зачет по Bash ==&lt;br /&gt;
&lt;br /&gt;
Для зачета контрольной необходимо набрать не менее 10 баллов! &amp;lt;br /&amp;gt;&lt;br /&gt;
Стоимость одной задачи на контрольной - 2 балла. &amp;lt;br /&amp;gt;&lt;br /&gt;
До 23:59 30 сентября - 1 балл. &amp;lt;br /&amp;gt;&lt;br /&gt;
После - 0.5 балла.&lt;br /&gt;
&lt;br /&gt;
== Задачи по Bash для &amp;quot;должников&amp;quot; ==&lt;br /&gt;
&lt;br /&gt;
Данные задачи необходимо решить для того, чтобы получить допуск для сдачи зачета! Зачет будет состоять из беседы и решения нескольких задач (часть из них в течение ограниченного времени в присутствии преподавателя).&lt;br /&gt;
&lt;br /&gt;
# Найдите, сколько времени прошло с момента создания самого старого до создания самого молодого файла на компьютере.&lt;br /&gt;
# Напишите скрипт, принимающий в качестве параметра каталог. Задача скрипта состоит в том, чтобы изменить имя каждого файла в каталоге и подкаталогах дописав в начало число, равное глубине вложенности файла. Например, файл A/B/C/x.txt должен превратиться в A/B/C/3x.txt.&lt;br /&gt;
# Напишите визуализатор сортировки пузырьком. При визуализации каждый элемент массива отображается столбиком из символов '#'. Высота столбика совпадает со значением элемента массива. Два столбика, соответствующие элементам, которые сравниваются в данный момент, должны отличаться по цвету от остальных.&lt;br /&gt;
&lt;br /&gt;
Вариант для тех, кому разрешили делать &amp;quot;эти&amp;quot; задачи:&lt;br /&gt;
&lt;br /&gt;
# Пусть у вас есть кластер состоящий из большого числа узлов. Список узлов находится в файле nodes.txt. Часто возникает ситуация завести нового пользователя и прописать его на всех узлах (это происходит там, где кто-то не знает, что можно использовать, например, LDAP ^) ). Ваша задача -- написать скрипт, который после запуска получает от пользователя все необходимые данные для создания нового пользователя и создает такого пользователя на всех узлах кластера.&lt;br /&gt;
# Напишите интерактивную утилиту для работы с XEN. Должны поддерживаться следующие возможности - запуск и остановка виртуальной машины; доступ к консоли виртуальной машины; вывод информации о занятости дисков виртуальных машин; разворачивание новой виртуальной машины из образа при этом задаются новые имя компьютера и его IP адрес.&lt;br /&gt;
&lt;br /&gt;
== Задание по модулям Python ==&lt;br /&gt;
# '''NamPy, SciPy, Matplotlib: Чаднов, Сонина, Шабалин, Плахотник, Монцев, Аристархов''' - заполнено&lt;br /&gt;
# '''PIL: Аверьянов, Осипов, Цаплев, Арутюнова''' - заполнено&lt;br /&gt;
# '''NetworkX: Орлов, Ломшаков, Таланов, Служаев, Майоров''' - заполнено&lt;br /&gt;
# Socket: Пивоваров, Колмогоров, Яковлев&lt;br /&gt;
# SMTPlib, POPlib:&lt;br /&gt;
# pyQwt: Козятинский, Карташов&lt;br /&gt;
# thread, threading: Гулецкий, Азаров, Савенко, Пальчиков&lt;br /&gt;
# pyGame: Токарев, Сторожев, Шумилин, Полушкин, Гончарова * (''как альтернатива - есть ещё движок Panda3d, там тоже можно на Python писать'')&lt;br /&gt;
# pyasm: Жирков&lt;br /&gt;
&lt;br /&gt;
== Рейтинг ==&lt;br /&gt;
* [https://docs.google.com/spreadsheet/pub?key=0Aif17q2hwUt4dEdwVXVZX3ZzVGJUY1ZiaEpjSG52SHc&amp;amp;output=html Рейтинг.]&lt;/div&gt;</summary>
		<author><name>Igorjirkov</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=Unix_%D0%B8_%D0%A1%D0%BA%D1%80%D0%B8%D0%BF%D1%82%D0%BE%D0%B2%D1%8B%D0%B5_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B8_2012&amp;diff=2054</id>
		<title>Unix и Скриптовые языки 2012</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=Unix_%D0%B8_%D0%A1%D0%BA%D1%80%D0%B8%D0%BF%D1%82%D0%BE%D0%B2%D1%8B%D0%B5_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B8_2012&amp;diff=2054"/>
				<updated>2012-11-30T08:19:08Z</updated>
		
		<summary type="html">&lt;p&gt;Igorjirkov: /* Задание по модулям Python */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Лектор - Кузнецов Антон Михайлович&lt;br /&gt;
&lt;br /&gt;
== Лекции. ==&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
 |-&lt;br /&gt;
!Лекция 1&lt;br /&gt;
 |04.09.2012&lt;br /&gt;
 |История UNIX&lt;br /&gt;
 |Слайды [[Медиа:Unix2012-01.pdf|PDF]]&lt;br /&gt;
 |[[Медиа:Unix2012-Test01.pdf|Тест]]&lt;br /&gt;
 |-&lt;br /&gt;
!Лекция 2&lt;br /&gt;
 |07.09.2012&lt;br /&gt;
 |Введение в команды UNIX&lt;br /&gt;
 |Слайды [[Медиа:Unix2012-02.pdf|PDF]]&lt;br /&gt;
 |- &lt;br /&gt;
!Лекция 3&lt;br /&gt;
 |14.09.2012&lt;br /&gt;
 |Регулярные выражения. Sed, grep&lt;br /&gt;
 |Слайды [[Медиа:Unix2012-03.pdf|PDF]]&lt;br /&gt;
 |-&lt;br /&gt;
!Лекция 4&lt;br /&gt;
 |21.09.2012&lt;br /&gt;
 |Bash scripts&lt;br /&gt;
 |Слайды [[Медиа:Unix2012-04.pdf|PDF]] [http://gordin.us/sergo/abs-guide/x4165.html Работа со строками]&lt;br /&gt;
 |[[Домашнее_задание_&amp;quot;Unix_и_Скриптовые_языки&amp;quot;_2012|Задание]]&lt;br /&gt;
 |-&lt;br /&gt;
!Контрольная&lt;br /&gt;
 |28.09.2012&lt;br /&gt;
 |[https://docs.google.com/document/pub?id=1sF9Nmr2hIF84YcfP-KPkEzvFfmnvOScFvqA1mGNwcqs Задачи]&lt;br /&gt;
 |&lt;br /&gt;
 |&lt;br /&gt;
 |-&lt;br /&gt;
!Лекция 4&lt;br /&gt;
 |19.10.2012&lt;br /&gt;
 |Python введение&lt;br /&gt;
 |Слайды [[Медиа:Unix-2012-07-Python.pdf|PDF]]&lt;br /&gt;
 |&lt;br /&gt;
 |-&lt;br /&gt;
!Лекция 5&lt;br /&gt;
 |26.10.2012&lt;br /&gt;
 |Python строки&lt;br /&gt;
 |Слайды [[Медиа:Unix-2012-08-Python.pdf|PDF]]&lt;br /&gt;
 |&lt;br /&gt;
 |-&lt;br /&gt;
!Лекция 6&lt;br /&gt;
 |2.11.2012&lt;br /&gt;
 |Python модули, итераторы&lt;br /&gt;
 |Слайды [[Медиа:Unix_2012_09_Modules.pdf|PDF]] [[Медиа:Unix_2012_09_Iterators.pdf|PDF]]&lt;br /&gt;
 |&lt;br /&gt;
 |-&lt;br /&gt;
!Контрольная&lt;br /&gt;
 |9.11.2012&lt;br /&gt;
 |Тест [[Медиа:Test.pdf|PDF]]&lt;br /&gt;
 |&lt;br /&gt;
 |&lt;br /&gt;
 |-&lt;br /&gt;
!Лекция 7&lt;br /&gt;
 |16.11.2012&lt;br /&gt;
 |Python ООП&lt;br /&gt;
 |Слайды [[Медиа:Unix_Slides_20111117.pdf |PDF]]&lt;br /&gt;
 |&lt;br /&gt;
 |-&lt;br /&gt;
!Лекция 8&lt;br /&gt;
 |23.11.2012&lt;br /&gt;
 |Python ООП&lt;br /&gt;
 |Слайды [[Unix_20121123|Задание]] [[PDF]]&lt;br /&gt;
 |&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
== Зачет по Bash ==&lt;br /&gt;
&lt;br /&gt;
Для зачета контрольной необходимо набрать не менее 10 баллов! &amp;lt;br /&amp;gt;&lt;br /&gt;
Стоимость одной задачи на контрольной - 2 балла. &amp;lt;br /&amp;gt;&lt;br /&gt;
До 23:59 30 сентября - 1 балл. &amp;lt;br /&amp;gt;&lt;br /&gt;
После - 0.5 балла.&lt;br /&gt;
&lt;br /&gt;
== Задачи по Bash для &amp;quot;должников&amp;quot; ==&lt;br /&gt;
&lt;br /&gt;
Данные задачи необходимо решить для того, чтобы получить допуск для сдачи зачета! Зачет будет состоять из беседы и решения нескольких задач (часть из них в течение ограниченного времени в присутствии преподавателя).&lt;br /&gt;
&lt;br /&gt;
# Найдите, сколько времени прошло с момента создания самого старого до создания самого молодого файла на компьютере.&lt;br /&gt;
# Напишите скрипт, принимающий в качестве параметра каталог. Задача скрипта состоит в том, чтобы изменить имя каждого файла в каталоге и подкаталогах дописав в начало число, равное глубине вложенности файла. Например, файл A/B/C/x.txt должен превратиться в A/B/C/3x.txt.&lt;br /&gt;
# Напишите визуализатор сортировки пузырьком. При визуализации каждый элемент массива отображается столбиком из символов '#'. Высота столбика совпадает со значением элемента массива. Два столбика, соответствующие элементам, которые сравниваются в данный момент, должны отличаться по цвету от остальных.&lt;br /&gt;
&lt;br /&gt;
Вариант для тех, кому разрешили делать &amp;quot;эти&amp;quot; задачи:&lt;br /&gt;
&lt;br /&gt;
# Пусть у вас есть кластер состоящий из большого числа узлов. Список узлов находится в файле nodes.txt. Часто возникает ситуация завести нового пользователя и прописать его на всех узлах (это происходит там, где кто-то не знает, что можно использовать, например, LDAP ^) ). Ваша задача -- написать скрипт, который после запуска получает от пользователя все необходимые данные для создания нового пользователя и создает такого пользователя на всех узлах кластера.&lt;br /&gt;
# Напишите интерактивную утилиту для работы с XEN. Должны поддерживаться следующие возможности - запуск и остановка виртуальной машины; доступ к консоли виртуальной машины; вывод информации о занятости дисков виртуальных машин; разворачивание новой виртуальной машины из образа при этом задаются новые имя компьютера и его IP адрес.&lt;br /&gt;
&lt;br /&gt;
== Задание по модулям Python ==&lt;br /&gt;
# '''NamPy, SciPy, Matplotlib: Чаднов, Сонина, Шабалин, Плахотник, Монцев, Аристархов''' - заполнено&lt;br /&gt;
# '''PIL: Аверьянов, Осипов, Цаплев, Арутюнова''' - заполнено&lt;br /&gt;
# '''NetworkX: Орлов, Ломшаков, Таланов, Служаев, Майоров''' - заполнено&lt;br /&gt;
# Socket: Пивоваров&lt;br /&gt;
# SMTPlib, POPlib:&lt;br /&gt;
# pyQwt: Козятинский, Карташов&lt;br /&gt;
# thread, threading: Гулецкий, Азаров, Савенко, Пальчиков&lt;br /&gt;
# pyGame: Токарев, Сторожев, Шумилин, Полушкин, Гончарова * (''как альтернатива - есть ещё движок Panda3d, там тоже можно на Python писать'')&lt;br /&gt;
# pyasm: Жирков&lt;br /&gt;
&lt;br /&gt;
== Рейтинг ==&lt;br /&gt;
* [https://docs.google.com/spreadsheet/pub?key=0Aif17q2hwUt4dEdwVXVZX3ZzVGJUY1ZiaEpjSG52SHc&amp;amp;output=html Рейтинг.]&lt;/div&gt;</summary>
		<author><name>Igorjirkov</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=SynchronizedPlayer&amp;diff=1979</id>
		<title>SynchronizedPlayer</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=SynchronizedPlayer&amp;diff=1979"/>
				<updated>2012-11-15T13:54:29Z</updated>
		
		<summary type="html">&lt;p&gt;Igorjirkov: /* Ссылки */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Devdays, 432 аудитория.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Состав ==&lt;br /&gt;
&lt;br /&gt;
* Гончарова Ирина&lt;br /&gt;
* Лазарев Сергей&lt;br /&gt;
* Жирков Игорь&lt;br /&gt;
* Евгений Служаев&lt;br /&gt;
&lt;br /&gt;
== Описание ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Состоит из двух плееров: плеер для компьютера и плеер для смартфона.&lt;br /&gt;
* При проигрывании видео или аудио на компьютере возможно продолжить его проигрывание на смартфоне с той же позиции (при условии его наличия).&lt;br /&gt;
* При проигрывании видео или аудио на смартфоне возможно продолжить его проигрывание на компьютере с той же позиции (при условии его наличия).&lt;br /&gt;
* Синхронизация плейлиста на лету.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
[http://code.google.com/p/synchronized-player Репозиторий]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[http://code.google.com/p/synchronized-player/downloads/list Ссылки для скачивания]&lt;br /&gt;
&lt;br /&gt;
[http://code.google.com/p/synchronized-player/wiki/Documentation Документация]&lt;/div&gt;</summary>
		<author><name>Igorjirkov</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=SynchronizedPlayer&amp;diff=1861</id>
		<title>SynchronizedPlayer</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=SynchronizedPlayer&amp;diff=1861"/>
				<updated>2012-11-12T09:48:06Z</updated>
		
		<summary type="html">&lt;p&gt;Igorjirkov: /* Описание */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Devdays, 432 аудитория.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Состав ==&lt;br /&gt;
&lt;br /&gt;
* Гончарова Ирина&lt;br /&gt;
* Лазарев Сергей&lt;br /&gt;
* Жирков Игорь&lt;br /&gt;
* Евгений Служаев&lt;br /&gt;
&lt;br /&gt;
== Описание ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Состоит из двух плееров: плеер для компьютера и плеер для смартфона.&lt;br /&gt;
* При проигрывании видео или аудио на компьютере возможно продолжить его проигрывание на смартфоне с той же позиции (при условии его наличия).&lt;br /&gt;
* При проигрывании видео или аудио на смартфоне возможно продолжить его проигрывание на компьютере с той же позиции (при условии его наличия).&lt;br /&gt;
* Синхронизация плейлиста на лету.&lt;/div&gt;</summary>
		<author><name>Igorjirkov</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=SynchronizedPlayer&amp;diff=1860</id>
		<title>SynchronizedPlayer</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=SynchronizedPlayer&amp;diff=1860"/>
				<updated>2012-11-12T09:43:46Z</updated>
		
		<summary type="html">&lt;p&gt;Igorjirkov: /* Состав */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Devdays, 432 аудитория.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Состав ==&lt;br /&gt;
&lt;br /&gt;
* Гончарова Ирина&lt;br /&gt;
* Лазарев Сергей&lt;br /&gt;
* Жирков Игорь&lt;br /&gt;
* Евгений Служаев&lt;br /&gt;
&lt;br /&gt;
== Описание ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Состоит из серверной части для компьютера и клиентской части для смартфона&lt;br /&gt;
* Обеспечивает возможность поставить проигрывание видео или аудио на паузу на смартфоне и продолжить проигрывание с той же позиции на компьютере (или наоборот).&lt;/div&gt;</summary>
		<author><name>Igorjirkov</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=Devdays2h2012&amp;diff=1823</id>
		<title>Devdays2h2012</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=Devdays2h2012&amp;diff=1823"/>
				<updated>2012-11-12T07:18:09Z</updated>
		
		<summary type="html">&lt;p&gt;Igorjirkov: /* Страницы проектов */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Идеи проектов ==&lt;br /&gt;
&lt;br /&gt;
* Андроид клиент для biletolovilka.ru&lt;br /&gt;
* Сетевые шахматы на троих; бессмысленно и беспощадно.&lt;br /&gt;
* Фреймворк для организации CTF-соревнований&lt;br /&gt;
* Experimental project for http://www.chromeexperiments.com/&lt;br /&gt;
* Just another extension for Chrome&lt;br /&gt;
* Платформа для Web Автоматизации&lt;br /&gt;
* HDR-creator&lt;br /&gt;
&lt;br /&gt;
== Страницы проектов ==&lt;br /&gt;
&lt;br /&gt;
* [[Project_Grothendieck|Визуализатор алгебраических структур]]&lt;br /&gt;
* [[MorseKeyboard|Клавиатура Морзе]]&lt;br /&gt;
* [[Cheque recognizer 2.0|Распознавание чеков]]&lt;br /&gt;
* [[DontMissStop|Будильник &amp;quot;Не проспи остановку&amp;quot;]]&lt;br /&gt;
* [[Машина_Тьюринга|Машина Тьюринга]]&lt;br /&gt;
* [[SynchronizedPlayer]]&lt;br /&gt;
&lt;br /&gt;
=== Андроид клиент для biletolovilka.ru===&lt;br /&gt;
Очень тяжело найти билет в питер в ночь с пятницы на субботу.&lt;br /&gt;
Однако билеты периодически возвращаются клиентами и очень хочется заменить кнопку F5 на cron-task.&lt;br /&gt;
Пройдя по ссылки уже становиться понятен юзкейс приложения, и было бы здорово, сделать андроид(multiplatform)&lt;br /&gt;
клиент с удобным UI'ем.&lt;br /&gt;
&lt;br /&gt;
=== Мечта меломана ===&lt;br /&gt;
Клиентская и серверная части.&lt;br /&gt;
&lt;br /&gt;
Сервер:&lt;br /&gt;
- Мониторит аккаунты на youtube, vk&lt;br /&gt;
- При добавлении трека в аудиозаписи сама добавляет его в музыкальную&lt;br /&gt;
коллекцию со структурой по папочкам, скачивает обложку, приводит в&lt;br /&gt;
порядок все тэги автоматически. Использует, например, информацию о&lt;br /&gt;
длительности .&lt;br /&gt;
- При добавлении видео в избранное на youtube конвертирует его в mp3,&lt;br /&gt;
дальше всё аналогично.&lt;br /&gt;
- Синхронизируется со всеми устройствами. В домашней wifi сетке&lt;br /&gt;
автоматом синхронизируется со всеми android-девайсами по wifi. При&lt;br /&gt;
подключении MTP-девайса (плеер) автоматом синхронизируется с ним.&lt;br /&gt;
Можно в две стороны.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Клиенты: всякие мобильные платформы&lt;br /&gt;
Обеспечивают синхронизацию с базой на сервере при входе в зону&lt;br /&gt;
домашнего Wifi или вручную.&lt;br /&gt;
&lt;br /&gt;
=== Python type checking ===&lt;br /&gt;
Предлагаю реализовать cli tool для проверки типов в Python проектах. Вдохновиться можно [[http://www.erlang.org/doc/man/dialyzer.html аналогичным]] инструментом из мира Erlang. Основная идея: в динамическом языке мы не можем вывести тип для '''любого''' выражения, но нас это устраивает! будем проверять типы только там, где их можно вывести. Таким образом, если уж наш инструмент найдет ошибку типов, то она всегда истиная. Как это делать? давайте типизируем __builtin__ и часть стандартной библиотеки, этого должно хватить, чтобы находить ошибки вида &amp;lt;code&amp;gt;map(1, 2)&amp;lt;/code&amp;gt; или &amp;lt;code&amp;gt;os.path.exists([])&amp;lt;/code&amp;gt;. Всё, что мы таким образом типизировать не можем считаем значением типа &amp;lt;code&amp;gt;object&amp;lt;/code&amp;gt;. Примеры:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# Assign a type signature to `os.path.exists`, it's a function, which takes a string and returns a boolean.&lt;br /&gt;
signature(os.path.exists, Function(str, bool))&lt;br /&gt;
&lt;br /&gt;
# Now try to infer a type of the following expressions.&lt;br /&gt;
os.path.exists([])   # type: error, the input argument should be a string!&lt;br /&gt;
os.path.exists(&amp;quot;/&amp;quot;)  # type: bool&lt;br /&gt;
&lt;br /&gt;
# Try the same for a function, with an unknown signature.&lt;br /&gt;
os.listdir(&amp;quot;/&amp;quot;)      # type: object, since we don't know the signature of `os.listdir`.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Можно сразу ориентироваться на Python3 и использовать [[http://www.python.org/dev/peps/pep-3107/ function annotations]] в качестве источника информации о типах:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
def f(x : int) -&amp;gt; float:&lt;br /&gt;
    return float(x) &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
P. S. Создатели dialyzer написали paper по мотивам своих изысканий: [[http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.66.699 Experience from Developing the Dialyzer: A Static Analysis Tool Detecting Defects in Erlang Applications]]&lt;br /&gt;
&lt;br /&gt;
=== stream-lib revisited ===&lt;br /&gt;
Для Java [[https://github.com/clearspring/stream-lib есть]] замечательная библиотека, реализующая summary statistics для потоков данных. Было бы здорово реализовать что-то похожее на Python.&lt;br /&gt;
&lt;br /&gt;
=== Клиент для Google Play ===&lt;br /&gt;
Есть только 2 способа пользоваться Google Play, с телефона, или из браузера, при этом если хочется получить apk файл на компьютер, то единственный способ это вытаскивать его с телефона.&lt;br /&gt;
Почему бы не написать кросс платформенный клиент с использованием Qt, который позволит качать файлы прямо на ПК(и можно добавить различные возможности). Притом что протокол довольно прост.&lt;br /&gt;
&lt;br /&gt;
=== Экстеншен для идеи про обход массивов ===&lt;br /&gt;
Экстеншен для идеи, который видит, что двумерный массив обходится в &amp;quot;плохом&amp;quot; порядке (с потерей кэшей) и предлагает поправить.&lt;br /&gt;
&lt;br /&gt;
=== Парсер теховских формул на хаскелле (или на скале) ===&lt;br /&gt;
Хочется взять теховскую формулу и получить по ней объект, который умеет ее исполнять.&lt;br /&gt;
&lt;br /&gt;
-- Обычно идут другим путем, записывают формулу на каком-нибудь DSL, чтобы можно было её вычислить и сконвертировать в TeX. (С. Лебедев)&lt;br /&gt;
&lt;br /&gt;
=== Платформа для Web автоматизации ===&lt;br /&gt;
Было бы здорово написать библиотеку, которая бы позволила писать простые скрипты: зайти на сайт N, вытащить данные с помощью данного регулярного выражения, сохранить данные.&lt;br /&gt;
В будущем возможно расширение скриптов добавлением различных возможностей, как минимум ветвлений.&lt;br /&gt;
Основное требование: скорость работы и максимальная загрузка сетевого соединения.&lt;br /&gt;
&lt;br /&gt;
=== HDR-creator ===&lt;br /&gt;
Оказалось, что бесплатные программы для создания HDR-фото не найти. А фото получаются хорошие, и задача создания одного фото из нескольких кажется интересной.&lt;/div&gt;</summary>
		<author><name>Igorjirkov</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=SE_Wiki&amp;diff=1822</id>
		<title>SE Wiki</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=SE_Wiki&amp;diff=1822"/>
				<updated>2012-11-12T07:17:48Z</updated>
		
		<summary type="html">&lt;p&gt;Igorjirkov: /* Dev Days */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Учебная информация ==&lt;br /&gt;
[http://mit.spbau.ru/ru/scheduleSE Расписание]&lt;br /&gt;
&lt;br /&gt;
5 курс:&lt;br /&gt;
* [[Базы_данных_2012|Базы данных]]&lt;br /&gt;
* [[Алгебраические_структуры_2012|Алгебраические структуры]]&lt;br /&gt;
* [[Алгоритмы_и_структуры_данных_2012|Алгоритмы и структуры данных]]&lt;br /&gt;
* [[Операционные_системы_2012|Операционные системы]]&lt;br /&gt;
* [[Основы_программной_инженерии_2012|Основы программной инженерии]]&lt;br /&gt;
* [[Теория_графов_2012|Теория графов]]&lt;br /&gt;
* [[Комбинаторика_2012|Комбинаторика]]&lt;br /&gt;
* [[Мат_логика_2012|Мат. логика]]&lt;br /&gt;
* [[Unix_и_Скриптовые_языки_2012|Unix и скриптовые языки]]&lt;br /&gt;
* [[C___2012|С++]]&lt;br /&gt;
* [[Технологический_семинар_2012|Технологический семинар]]&lt;br /&gt;
* [[НИР_2012|НИР]]&lt;br /&gt;
&lt;br /&gt;
6 курс:&amp;lt;br/&amp;gt;&lt;br /&gt;
[http://www.google.com/calendar/embed?mode=WEEK&amp;amp;src=9f7hm9olebmkjnkglq6ussvd7s%40group.calendar.google.com&amp;amp;color=%23060D5E&amp;amp;src=e0hc0uakdjbknh05tcr5fomct8%40group.calendar.google.com&amp;amp;color=%232F6309&amp;amp;src=notnpt47cf0g3cufakpqpcecp5nt1505%40import.calendar.google.com&amp;amp;color=%235A6986&amp;amp;ctz=Europe%2FMoscow Расписание в гугл календаре (html)] [http://www.google.com/calendar/ical/9f7hm9olebmkjnkglq6ussvd7s%40group.calendar.google.com/public/basic.ics (ical)]&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
* [[Виртуальные_машины_2012|Виртуальные машины]]&lt;br /&gt;
* [[Машинное_обучение_2012|Машинное обучение]]&lt;br /&gt;
* [[UML_2012|UML]]&lt;br /&gt;
* [[Компьютерная_графика_2012|Компьютерная графика]]&lt;br /&gt;
* [[Параллельные_и_распределенные_вычисления_2012|Параллельные и распределенные вычисления]]&lt;br /&gt;
* [[Программирование_в_ядре_Windows_2012|Программирование в ядре Windows]]&lt;br /&gt;
* [[Тестирование_ПО_2012|Тестирование ПО]]&lt;br /&gt;
* [[Анализ_данных_2012| Анализ данных]]&lt;br /&gt;
* [[Формальные_языки_2012|Формальные языки]]&lt;br /&gt;
* [[Методы_формальной_верификации_программ_2012|Методы формальной верификации программ]]&lt;br /&gt;
* [[Разработка_интерактивных_интерфейсов_2012|Разработка интерактивных интерфейсов]]&lt;br /&gt;
* [[SCALA_2012|Scala]]&lt;br /&gt;
* [[Сетевые технологии]]&lt;br /&gt;
* [[Обобщенное и генеративное программирование]]&lt;br /&gt;
&lt;br /&gt;
== Dev Days ==&lt;br /&gt;
&lt;br /&gt;
* [[Devdays2h2012| Dev days Осень 2012]]&lt;br /&gt;
** [[WhereIsMyMoney]]&lt;br /&gt;
&lt;br /&gt;
== Архив за прошлые семестры ==&lt;br /&gt;
* [[Весна_2012|Весенний семестр 2012]]&lt;br /&gt;
* [[Осень_2011|Осенний семестр 2011]]&lt;br /&gt;
&lt;br /&gt;
== Практики ==&lt;br /&gt;
* [[НИР 5SE осень 2012|Темы практик, осень 2012-го года]]&lt;br /&gt;
* [https://docs.google.com/spreadsheet/pub?key=0Aif17q2hwUt4dG9CRFdGa2tLeV9ab1l1QWlkOFp3bFE&amp;amp;output=html Темы практик, лето 2012-го года]&lt;br /&gt;
* [[Темы практик, 5SE, осень 2011-го года | Темы практик, осень 2011-го года]]&lt;br /&gt;
* [[Темы практик |Темы практик, весна 2011-го года]]&lt;br /&gt;
&lt;br /&gt;
== Студенты ==&lt;br /&gt;
* [[2010|Набор 2010-го года]]&lt;br /&gt;
* [[2011|Набор 2011-го года]]&lt;br /&gt;
* [[2012|Набор 2012-го года]]&lt;br /&gt;
&lt;br /&gt;
== Важные ссылки ==&lt;br /&gt;
Для 5-го курса:&lt;br /&gt;
* [http://code.google.com/p/spbau-cpp-2011/ cpp] - репозиторий для лабораторных по С++.&lt;br /&gt;
* [http://code.google.com/p/aptu-os/source/checkout aptu-os] - репозиторий для лабораторных по операционным системам.&lt;br /&gt;
&lt;br /&gt;
Для 6-го курса:&lt;br /&gt;
* [http://code.google.com/p/hpcource/ hpcource] - репозиторий для лабораторных по параллельному программированию.&lt;br /&gt;
* [http://code.google.com/p/mathvm/ mathvm] - репозиторий для лабораторных по виртуальным машинам.&lt;br /&gt;
* [http://code.google.com/p/spbau-network-2011/source/checkout spbau-network-2011] -  репозиторий для лабораторных по сетевым технологиям.&lt;br /&gt;
&lt;br /&gt;
== Дополнительно == &lt;br /&gt;
* [[Q&amp;amp;A]]&lt;br /&gt;
* [[Мероприятия]]&lt;/div&gt;</summary>
		<author><name>Igorjirkov</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=SE_Wiki&amp;diff=1816</id>
		<title>SE Wiki</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=SE_Wiki&amp;diff=1816"/>
				<updated>2012-11-12T07:13:53Z</updated>
		
		<summary type="html">&lt;p&gt;Igorjirkov: /* Dev Days */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Учебная информация ==&lt;br /&gt;
[http://mit.spbau.ru/ru/scheduleSE Расписание]&lt;br /&gt;
&lt;br /&gt;
5 курс:&lt;br /&gt;
* [[Базы_данных_2012|Базы данных]]&lt;br /&gt;
* [[Алгебраические_структуры_2012|Алгебраические структуры]]&lt;br /&gt;
* [[Алгоритмы_и_структуры_данных_2012|Алгоритмы и структуры данных]]&lt;br /&gt;
* [[Операционные_системы_2012|Операционные системы]]&lt;br /&gt;
* [[Основы_программной_инженерии_2012|Основы программной инженерии]]&lt;br /&gt;
* [[Теория_графов_2012|Теория графов]]&lt;br /&gt;
* [[Комбинаторика_2012|Комбинаторика]]&lt;br /&gt;
* [[Мат_логика_2012|Мат. логика]]&lt;br /&gt;
* [[Unix_и_Скриптовые_языки_2012|Unix и скриптовые языки]]&lt;br /&gt;
* [[C___2012|С++]]&lt;br /&gt;
* [[Технологический_семинар_2012|Технологический семинар]]&lt;br /&gt;
* [[НИР_2012|НИР]]&lt;br /&gt;
&lt;br /&gt;
6 курс:&amp;lt;br/&amp;gt;&lt;br /&gt;
[http://www.google.com/calendar/embed?mode=WEEK&amp;amp;src=9f7hm9olebmkjnkglq6ussvd7s%40group.calendar.google.com&amp;amp;color=%23060D5E&amp;amp;src=e0hc0uakdjbknh05tcr5fomct8%40group.calendar.google.com&amp;amp;color=%232F6309&amp;amp;src=notnpt47cf0g3cufakpqpcecp5nt1505%40import.calendar.google.com&amp;amp;color=%235A6986&amp;amp;ctz=Europe%2FMoscow Расписание в гугл календаре (html)] [http://www.google.com/calendar/ical/9f7hm9olebmkjnkglq6ussvd7s%40group.calendar.google.com/public/basic.ics (ical)]&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
* [[Виртуальные_машины_2012|Виртуальные машины]]&lt;br /&gt;
* [[Машинное_обучение_2012|Машинное обучение]]&lt;br /&gt;
* [[UML_2012|UML]]&lt;br /&gt;
* [[Компьютерная_графика_2012|Компьютерная графика]]&lt;br /&gt;
* [[Параллельные_и_распределенные_вычисления_2012|Параллельные и распределенные вычисления]]&lt;br /&gt;
* [[Программирование_в_ядре_Windows_2012|Программирование в ядре Windows]]&lt;br /&gt;
* [[Тестирование_ПО_2012|Тестирование ПО]]&lt;br /&gt;
* [[Анализ_данных_2012| Анализ данных]]&lt;br /&gt;
* [[Формальные_языки_2012|Формальные языки]]&lt;br /&gt;
* [[Методы_формальной_верификации_программ_2012|Методы формальной верификации программ]]&lt;br /&gt;
* [[Разработка_интерактивных_интерфейсов_2012|Разработка интерактивных интерфейсов]]&lt;br /&gt;
* [[SCALA_2012|Scala]]&lt;br /&gt;
* [[Сетевые технологии]]&lt;br /&gt;
* [[Обобщенное и генеративное программирование]]&lt;br /&gt;
&lt;br /&gt;
== Dev Days ==&lt;br /&gt;
&lt;br /&gt;
* [[Devdays2h2012| Dev days Осень 2012]]&lt;br /&gt;
** [[SynchronizedPlayer]]&lt;br /&gt;
&lt;br /&gt;
== Архив за прошлые семестры ==&lt;br /&gt;
* [[Весна_2012|Весенний семестр 2012]]&lt;br /&gt;
* [[Осень_2011|Осенний семестр 2011]]&lt;br /&gt;
&lt;br /&gt;
== Практики ==&lt;br /&gt;
* [[НИР 5SE осень 2012|Темы практик, осень 2012-го года]]&lt;br /&gt;
* [https://docs.google.com/spreadsheet/pub?key=0Aif17q2hwUt4dG9CRFdGa2tLeV9ab1l1QWlkOFp3bFE&amp;amp;output=html Темы практик, лето 2012-го года]&lt;br /&gt;
* [[Темы практик, 5SE, осень 2011-го года | Темы практик, осень 2011-го года]]&lt;br /&gt;
* [[Темы практик |Темы практик, весна 2011-го года]]&lt;br /&gt;
&lt;br /&gt;
== Студенты ==&lt;br /&gt;
* [[2010|Набор 2010-го года]]&lt;br /&gt;
* [[2011|Набор 2011-го года]]&lt;br /&gt;
* [[2012|Набор 2012-го года]]&lt;br /&gt;
&lt;br /&gt;
== Важные ссылки ==&lt;br /&gt;
Для 5-го курса:&lt;br /&gt;
* [http://code.google.com/p/spbau-cpp-2011/ cpp] - репозиторий для лабораторных по С++.&lt;br /&gt;
* [http://code.google.com/p/aptu-os/source/checkout aptu-os] - репозиторий для лабораторных по операционным системам.&lt;br /&gt;
&lt;br /&gt;
Для 6-го курса:&lt;br /&gt;
* [http://code.google.com/p/hpcource/ hpcource] - репозиторий для лабораторных по параллельному программированию.&lt;br /&gt;
* [http://code.google.com/p/mathvm/ mathvm] - репозиторий для лабораторных по виртуальным машинам.&lt;br /&gt;
* [http://code.google.com/p/spbau-network-2011/source/checkout spbau-network-2011] -  репозиторий для лабораторных по сетевым технологиям.&lt;br /&gt;
&lt;br /&gt;
== Дополнительно == &lt;br /&gt;
* [[Q&amp;amp;A]]&lt;br /&gt;
* [[Мероприятия]]&lt;/div&gt;</summary>
		<author><name>Igorjirkov</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=SynchronizedPlayer&amp;diff=1815</id>
		<title>SynchronizedPlayer</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=SynchronizedPlayer&amp;diff=1815"/>
				<updated>2012-11-12T07:12:59Z</updated>
		
		<summary type="html">&lt;p&gt;Igorjirkov: Новая страница: «Devdays, 432 аудитория.   == Состав ==  * Гончарова Ирина * Лазарев Сергей * Жирков Игорь   == Описание …»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Devdays, 432 аудитория.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Состав ==&lt;br /&gt;
&lt;br /&gt;
* Гончарова Ирина&lt;br /&gt;
* Лазарев Сергей&lt;br /&gt;
* Жирков Игорь&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Описание ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Состоит из серверной части для компьютера и клиентской части для смартфона&lt;br /&gt;
* Обеспечивает возможность поставить проигрывание видео или аудио на паузу на смартфоне и продолжить проигрывание с той же позиции на компьютере (или наоборот).&lt;/div&gt;</summary>
		<author><name>Igorjirkov</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=Devdays2h2012&amp;diff=1795</id>
		<title>Devdays2h2012</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=Devdays2h2012&amp;diff=1795"/>
				<updated>2012-11-11T20:15:48Z</updated>
		
		<summary type="html">&lt;p&gt;Igorjirkov: /* Платформа для Web автоматизации */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Идеи проектов ==&lt;br /&gt;
&lt;br /&gt;
* Андроид клиент для biletolovilka.ru&lt;br /&gt;
* Сетевые шахматы на троих; бессмысленно и беспощадно.&lt;br /&gt;
* Фреймворк для организации CTF-соревнований&lt;br /&gt;
* Experimental project for http://www.chromeexperiments.com/&lt;br /&gt;
* Just another extension for Chrome&lt;br /&gt;
* Платформа для Web Автоматизации&lt;br /&gt;
&lt;br /&gt;
=== Андроид клиент для biletolovilka.ru===&lt;br /&gt;
Очень тяжело найти билет в питер в ночь с пятницы на субботу.&lt;br /&gt;
Однако билеты периодически возвращаются клиентами и очень хочется заменить кнопку F5 на cron-task.&lt;br /&gt;
Пройдя по ссылки уже становиться понятен юзкейс приложения, и было бы здорово, сделать андроид(multiplatform)&lt;br /&gt;
клиент с удобным UI'ем.&lt;br /&gt;
&lt;br /&gt;
=== Мечта меломана ===&lt;br /&gt;
Клиентская и серверная части.&lt;br /&gt;
&lt;br /&gt;
Сервер:&lt;br /&gt;
- Мониторит аккаунты на youtube, vk&lt;br /&gt;
- При добавлении трека в аудиозаписи сама добавляет его в музыкальную&lt;br /&gt;
коллекцию со структурой по папочкам, скачивает обложку, приводит в&lt;br /&gt;
порядок все тэги автоматически. Использует, например, информацию о&lt;br /&gt;
длительности .&lt;br /&gt;
- При добавлении видео в избранное на youtube конвертирует его в mp3,&lt;br /&gt;
дальше всё аналогично.&lt;br /&gt;
- Синхронизируется со всеми устройствами. В домашней wifi сетке&lt;br /&gt;
автоматом синхронизируется со всеми android-девайсами по wifi. При&lt;br /&gt;
подключении MTP-девайса (плеер) автоматом синхронизируется с ним.&lt;br /&gt;
Можно в две стороны.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Клиенты: всякие мобильные платформы&lt;br /&gt;
Обеспечивают синхронизацию с базой на сервере при входе в зону&lt;br /&gt;
домашнего Wifi или вручную.&lt;br /&gt;
&lt;br /&gt;
=== Python type checking ===&lt;br /&gt;
Предлагаю реализовать cli tool для проверки типов в Python проектах. Вдохновиться можно [[http://www.erlang.org/doc/man/dialyzer.html аналогичным]] инструментом из мира Erlang. Основная идея: в динамическом языке мы не можем вывести тип для '''любого''' выражения, но нас это устраивает! будем проверять типы только там, где их можно вывести. Таким образом, если уж наш инструмент найдет ошибку типов, то она всегда истиная. Как это делать? давайте типизируем __builtin__ и часть стандартной библиотеки, этого должно хватить, чтобы находить ошибки вида &amp;lt;code&amp;gt;map(1, 2)&amp;lt;/code&amp;gt; или &amp;lt;code&amp;gt;os.path.exists([])&amp;lt;/code&amp;gt;. Всё, что мы таким образом типизировать не можем считаем значением типа &amp;lt;code&amp;gt;object&amp;lt;/code&amp;gt;. Примеры:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# Assign a type signature to `os.path.exists`, it's a function, which takes a string and returns a boolean.&lt;br /&gt;
signature(os.path.exists, Function(str, bool))&lt;br /&gt;
&lt;br /&gt;
# Now try to infer a type of the following expressions.&lt;br /&gt;
os.path.exists([])   # type: error, the input argument should be a string!&lt;br /&gt;
os.path.exists(&amp;quot;/&amp;quot;)  # type: bool&lt;br /&gt;
&lt;br /&gt;
# Try the same for a function, with an unknown signature.&lt;br /&gt;
os.listdir(&amp;quot;/&amp;quot;)      # type: object, since we don't know the signature of `os.listdir`.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Можно сразу ориентироваться на Python3 и использовать [[http://www.python.org/dev/peps/pep-3107/ function annotations]] в качестве источника информации о типах:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
def f(x : int) -&amp;gt; float:&lt;br /&gt;
    return float(x) &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
P. S. Создатели dialyzer написали paper по мотивам своих изысканий: [[http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.66.699 Experience from Developing the Dialyzer: A Static Analysis Tool Detecting Defects in Erlang Applications]]&lt;br /&gt;
&lt;br /&gt;
=== stream-lib revisited ===&lt;br /&gt;
Для Java [[https://github.com/clearspring/stream-lib есть]] замечательная библиотека, реализующая summary statistics для потоков данных. Было бы здорово реализовать что-то похожее на Python.&lt;br /&gt;
&lt;br /&gt;
=== Клиент для Google Play ===&lt;br /&gt;
Есть только 2 способа пользоваться Google Play, с телефона, или из браузера, при этом если хочется получить apk файл на компьютер, то единственный способ это вытаскивать его с телефона.&lt;br /&gt;
Почему бы не написать кросс платформенный клиент с использованием Qt, который позволит качать файлы прямо на ПК(и можно добавить различные возможности). Притом что протокол довольно прост.&lt;br /&gt;
&lt;br /&gt;
=== Экстеншен для идеи про обход массивов ===&lt;br /&gt;
Экстеншен для идеи, который видит, что двумерный массив обходится в &amp;quot;плохом&amp;quot; порядке (с потерей кэшей) и предлагает поправить.&lt;br /&gt;
&lt;br /&gt;
=== Парсер теховских формул на хаскелле (или на скале) ===&lt;br /&gt;
Хочется взять теховскую формулу и получить по ней объект, который умеет ее исполнять.&lt;br /&gt;
&lt;br /&gt;
-- Обычно идут другим путем, записывают формулу на каком-нибудь DSL, чтобы можно было её вычислить и сконвертировать в TeX. (С. Лебедев)&lt;br /&gt;
&lt;br /&gt;
=== Платформа для Web автоматизации ===&lt;br /&gt;
Было бы здорово написать библиотеку, которая бы позволила писать простые скрипты: зайти на сайт N, вытащить данные с помощью данного регулярного выражения, сохранить данные.&lt;br /&gt;
В будущем возможно расширение скриптов добавлением различных возможностей, как минимум ветвлений.&lt;br /&gt;
Основное требование: скорость работы и максимальная загрузка сетевого соединения.&lt;/div&gt;</summary>
		<author><name>Igorjirkov</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=Devdays2h2012&amp;diff=1794</id>
		<title>Devdays2h2012</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=Devdays2h2012&amp;diff=1794"/>
				<updated>2012-11-11T20:15:18Z</updated>
		
		<summary type="html">&lt;p&gt;Igorjirkov: /* Платформа для Web автоматизации */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Идеи проектов ==&lt;br /&gt;
&lt;br /&gt;
* Андроид клиент для biletolovilka.ru&lt;br /&gt;
* Сетевые шахматы на троих; бессмысленно и беспощадно.&lt;br /&gt;
* Фреймворк для организации CTF-соревнований&lt;br /&gt;
* Experimental project for http://www.chromeexperiments.com/&lt;br /&gt;
* Just another extension for Chrome&lt;br /&gt;
* Платформа для Web Автоматизации&lt;br /&gt;
&lt;br /&gt;
=== Андроид клиент для biletolovilka.ru===&lt;br /&gt;
Очень тяжело найти билет в питер в ночь с пятницы на субботу.&lt;br /&gt;
Однако билеты периодически возвращаются клиентами и очень хочется заменить кнопку F5 на cron-task.&lt;br /&gt;
Пройдя по ссылки уже становиться понятен юзкейс приложения, и было бы здорово, сделать андроид(multiplatform)&lt;br /&gt;
клиент с удобным UI'ем.&lt;br /&gt;
&lt;br /&gt;
=== Мечта меломана ===&lt;br /&gt;
Клиентская и серверная части.&lt;br /&gt;
&lt;br /&gt;
Сервер:&lt;br /&gt;
- Мониторит аккаунты на youtube, vk&lt;br /&gt;
- При добавлении трека в аудиозаписи сама добавляет его в музыкальную&lt;br /&gt;
коллекцию со структурой по папочкам, скачивает обложку, приводит в&lt;br /&gt;
порядок все тэги автоматически. Использует, например, информацию о&lt;br /&gt;
длительности .&lt;br /&gt;
- При добавлении видео в избранное на youtube конвертирует его в mp3,&lt;br /&gt;
дальше всё аналогично.&lt;br /&gt;
- Синхронизируется со всеми устройствами. В домашней wifi сетке&lt;br /&gt;
автоматом синхронизируется со всеми android-девайсами по wifi. При&lt;br /&gt;
подключении MTP-девайса (плеер) автоматом синхронизируется с ним.&lt;br /&gt;
Можно в две стороны.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Клиенты: всякие мобильные платформы&lt;br /&gt;
Обеспечивают синхронизацию с базой на сервере при входе в зону&lt;br /&gt;
домашнего Wifi или вручную.&lt;br /&gt;
&lt;br /&gt;
=== Python type checking ===&lt;br /&gt;
Предлагаю реализовать cli tool для проверки типов в Python проектах. Вдохновиться можно [[http://www.erlang.org/doc/man/dialyzer.html аналогичным]] инструментом из мира Erlang. Основная идея: в динамическом языке мы не можем вывести тип для '''любого''' выражения, но нас это устраивает! будем проверять типы только там, где их можно вывести. Таким образом, если уж наш инструмент найдет ошибку типов, то она всегда истиная. Как это делать? давайте типизируем __builtin__ и часть стандартной библиотеки, этого должно хватить, чтобы находить ошибки вида &amp;lt;code&amp;gt;map(1, 2)&amp;lt;/code&amp;gt; или &amp;lt;code&amp;gt;os.path.exists([])&amp;lt;/code&amp;gt;. Всё, что мы таким образом типизировать не можем считаем значением типа &amp;lt;code&amp;gt;object&amp;lt;/code&amp;gt;. Примеры:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# Assign a type signature to `os.path.exists`, it's a function, which takes a string and returns a boolean.&lt;br /&gt;
signature(os.path.exists, Function(str, bool))&lt;br /&gt;
&lt;br /&gt;
# Now try to infer a type of the following expressions.&lt;br /&gt;
os.path.exists([])   # type: error, the input argument should be a string!&lt;br /&gt;
os.path.exists(&amp;quot;/&amp;quot;)  # type: bool&lt;br /&gt;
&lt;br /&gt;
# Try the same for a function, with an unknown signature.&lt;br /&gt;
os.listdir(&amp;quot;/&amp;quot;)      # type: object, since we don't know the signature of `os.listdir`.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Можно сразу ориентироваться на Python3 и использовать [[http://www.python.org/dev/peps/pep-3107/ function annotations]] в качестве источника информации о типах:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
def f(x : int) -&amp;gt; float:&lt;br /&gt;
    return float(x) &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
P. S. Создатели dialyzer написали paper по мотивам своих изысканий: [[http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.66.699 Experience from Developing the Dialyzer: A Static Analysis Tool Detecting Defects in Erlang Applications]]&lt;br /&gt;
&lt;br /&gt;
=== stream-lib revisited ===&lt;br /&gt;
Для Java [[https://github.com/clearspring/stream-lib есть]] замечательная библиотека, реализующая summary statistics для потоков данных. Было бы здорово реализовать что-то похожее на Python.&lt;br /&gt;
&lt;br /&gt;
=== Клиент для Google Play ===&lt;br /&gt;
Есть только 2 способа пользоваться Google Play, с телефона, или из браузера, при этом если хочется получить apk файл на компьютер, то единственный способ это вытаскивать его с телефона.&lt;br /&gt;
Почему бы не написать кросс платформенный клиент с использованием Qt, который позволит качать файлы прямо на ПК(и можно добавить различные возможности). Притом что протокол довольно прост.&lt;br /&gt;
&lt;br /&gt;
=== Экстеншен для идеи про обход массивов ===&lt;br /&gt;
Экстеншен для идеи, который видит, что двумерный массив обходится в &amp;quot;плохом&amp;quot; порядке (с потерей кэшей) и предлагает поправить.&lt;br /&gt;
&lt;br /&gt;
=== Парсер теховских формул на хаскелле (или на скале) ===&lt;br /&gt;
Хочется взять теховскую формулу и получить по ней объект, который умеет ее исполнять.&lt;br /&gt;
&lt;br /&gt;
-- Обычно идут другим путем, записывают формулу на каком-нибудь DSL, чтобы можно было её вычислить и сконвертировать в TeX. (С. Лебедев)&lt;br /&gt;
&lt;br /&gt;
=== Платформа для Web автоматизации ===&lt;br /&gt;
Было бы здорово написать библиотеку, которая бы позволила писать простые скрипты: зайти на сайт N, вытащить данные с помощью данного регулярного выражения, сохранить данные.&lt;br /&gt;
В будущем возможно расширение скриптов добавлением различных возможностей, как минимум ветвлений.&lt;br /&gt;
Основное требование: скорость работы и максимальная загрузка сетевого соединения.&lt;br /&gt;
&lt;br /&gt;
-- Внезапно! таких уже миллион, google web crawler DSL. (С. Лебедев)&lt;/div&gt;</summary>
		<author><name>Igorjirkov</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=Devdays2h2012&amp;diff=1791</id>
		<title>Devdays2h2012</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=Devdays2h2012&amp;diff=1791"/>
				<updated>2012-11-11T15:32:13Z</updated>
		
		<summary type="html">&lt;p&gt;Igorjirkov: /* Парсер теховских формул на хаскелле (или на скале) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Идеи проектов ==&lt;br /&gt;
&lt;br /&gt;
* Андроид клиент для biletolovilka.ru&lt;br /&gt;
* Сетевые шахматы на троих; бессмысленно и беспощадно.&lt;br /&gt;
* Фреймворк для организации CTF-соревнований&lt;br /&gt;
* Experimental project for http://www.chromeexperiments.com/&lt;br /&gt;
* Just another extension for Chrome&lt;br /&gt;
&lt;br /&gt;
=== Андроид клиент для biletolovilka.ru===&lt;br /&gt;
Очень тяжело найти билет в питер в ночь с пятницы на субботу.&lt;br /&gt;
Однако билеты периодически возвращаются клиентами и очень хочется заменить кнопку F5 на cron-task.&lt;br /&gt;
Пройдя по ссылки уже становиться понятен юзкейс приложения, и было бы здорово, сделать андроид(multiplatform)&lt;br /&gt;
клиент с удобным UI'ем.&lt;br /&gt;
&lt;br /&gt;
=== Мечта меломана ===&lt;br /&gt;
Клиентская и серверная части.&lt;br /&gt;
&lt;br /&gt;
Сервер:&lt;br /&gt;
- Мониторит аккаунты на youtube, vk&lt;br /&gt;
- При добавлении трека в аудиозаписи сама добавляет его в музыкальную&lt;br /&gt;
коллекцию со структурой по папочкам, скачивает обложку, приводит в&lt;br /&gt;
порядок все тэги автоматически. Использует, например, информацию о&lt;br /&gt;
длительности .&lt;br /&gt;
- При добавлении видео в избранное на youtube конвертирует его в mp3,&lt;br /&gt;
дальше всё аналогично.&lt;br /&gt;
- Синхронизируется со всеми устройствами. В домашней wifi сетке&lt;br /&gt;
автоматом синхронизируется со всеми android-девайсами по wifi. При&lt;br /&gt;
подключении MTP-девайса (плеер) автоматом синхронизируется с ним.&lt;br /&gt;
Можно в две стороны.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Клиенты: всякие мобильные платформы&lt;br /&gt;
Обеспечивают синхронизацию с базой на сервере при входе в зону&lt;br /&gt;
домашнего Wifi или вручную.&lt;br /&gt;
&lt;br /&gt;
=== Python type checking ===&lt;br /&gt;
Предлагаю реализовать cli tool для проверки типов в Python проектах. Вдохновиться можно [[http://www.erlang.org/doc/man/dialyzer.html аналогичным]] инструментом из мира Erlang. Основная идея: в динамическом языке мы не можем вывести тип для '''любого''' выражения, но нас это устраивает! будем проверять типы только там, где их можно вывести. Таким образом, если уж наш инструмент найдет ошибку типов, то она всегда истиная. Как это делать? давайте типизируем __builtin__ и часть стандартной библиотеки, этого должно хватить, чтобы находить ошибки вида &amp;lt;code&amp;gt;map(1, 2)&amp;lt;/code&amp;gt; или &amp;lt;code&amp;gt;os.path.exists([])&amp;lt;/code&amp;gt;. Всё, что мы таким образом типизировать не можем считаем значением типа &amp;lt;code&amp;gt;object&amp;lt;/code&amp;gt;. Примеры:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# Assign a type signature to `os.path.exists`, it's a function, which takes a string and returns a boolean.&lt;br /&gt;
signature(os.path.exists, Function(str, bool))&lt;br /&gt;
&lt;br /&gt;
# Now try to infer a type of the following expressions.&lt;br /&gt;
os.path.exists([])   # type: error, the input argument should be a string!&lt;br /&gt;
os.path.exists(&amp;quot;/&amp;quot;)  # type: bool&lt;br /&gt;
&lt;br /&gt;
# Try the same for a function, with an unknown signature.&lt;br /&gt;
os.listdir(&amp;quot;/&amp;quot;)      # type: object, since we don't know the signature of `os.listdir`.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Можно сразу ориентироваться на Python3 и использовать [[http://www.python.org/dev/peps/pep-3107/ function annotations]] в качестве источника информации о типах:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
def f(x : int) -&amp;gt; float:&lt;br /&gt;
    return float(x) &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
P. S. Создатели dialyzer написали paper по мотивам своих изысканий: [[http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.66.699 Experience from Developing the Dialyzer: A Static Analysis Tool Detecting Defects in Erlang Applications]]&lt;br /&gt;
&lt;br /&gt;
=== stream-lib revisited ===&lt;br /&gt;
Для Java [[https://github.com/clearspring/stream-lib есть]] замечательная библиотека, реализующая summary statistics для потоков данных. Было бы здорово реализовать что-то похожее на Python.&lt;br /&gt;
&lt;br /&gt;
=== Клиент для Google Play ===&lt;br /&gt;
Есть только 2 способа пользоваться Google Play, с телефона, или из браузера, при этом если хочется получить apk файл на компьютер, то единственный способ это вытаскивать его с телефона.&lt;br /&gt;
Почему бы не написать кросс платформенный клиент с использованием Qt, который позволит качать файлы прямо на ПК(и можно добавить различные возможности). Притом что протокол довольно прост.&lt;br /&gt;
&lt;br /&gt;
=== Экстеншен для идеи про обход массивов ===&lt;br /&gt;
Экстеншен для идеи, который видит, что двумерный массив обходится в &amp;quot;плохом&amp;quot; порядке (с потерей кэшей) и предлагает поправить.&lt;br /&gt;
&lt;br /&gt;
=== Парсер теховских формул на хаскелле (или на скале) ===&lt;br /&gt;
Хочется взять теховскую формулу и получить по ней объект, который умеет ее исполнять.&lt;br /&gt;
&lt;br /&gt;
-- Обычно идут другим путем, записывают формулу на каком-нибудь DSL, чтобы можно было её вычислить и сконвертировать в TeX. (С. Лебедев)&lt;/div&gt;</summary>
		<author><name>Igorjirkov</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=Devdays2h2012&amp;diff=1789</id>
		<title>Devdays2h2012</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=Devdays2h2012&amp;diff=1789"/>
				<updated>2012-11-11T14:43:56Z</updated>
		
		<summary type="html">&lt;p&gt;Igorjirkov: /* Python type checking */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Идеи проектов ==&lt;br /&gt;
&lt;br /&gt;
* Андроид клиент для biletolovilka.ru&lt;br /&gt;
* Сетевые шахматы на троих; бессмысленно и беспощадно.&lt;br /&gt;
* Фреймворк для организации CTF-соревнований&lt;br /&gt;
* Experimental project for http://www.chromeexperiments.com/&lt;br /&gt;
* Just another extension for Chrome&lt;br /&gt;
&lt;br /&gt;
=== Андроид клиент для biletolovilka.ru===&lt;br /&gt;
Очень тяжело найти билет в питер в ночь с пятницы на субботу.&lt;br /&gt;
Однако билеты периодически возвращаются клиентами и очень хочется заменить кнопку F5 на cron-task.&lt;br /&gt;
Пройдя по ссылки уже становиться понятен юзкейс приложения, и было бы здорово, сделать андроид(multiplatform)&lt;br /&gt;
клиент с удобным UI'ем.&lt;br /&gt;
&lt;br /&gt;
=== Мечта меломана ===&lt;br /&gt;
Клиентская и серверная части.&lt;br /&gt;
&lt;br /&gt;
Сервер:&lt;br /&gt;
- Мониторит аккаунты на youtube, vk&lt;br /&gt;
- При добавлении трека в аудиозаписи сама добавляет его в музыкальную&lt;br /&gt;
коллекцию со структурой по папочкам, скачивает обложку, приводит в&lt;br /&gt;
порядок все тэги автоматически. Использует, например, информацию о&lt;br /&gt;
длительности .&lt;br /&gt;
- При добавлении видео в избранное на youtube конвертирует его в mp3,&lt;br /&gt;
дальше всё аналогично.&lt;br /&gt;
- Синхронизируется со всеми устройствами. В домашней wifi сетке&lt;br /&gt;
автоматом синхронизируется со всеми android-девайсами по wifi. При&lt;br /&gt;
подключении MTP-девайса (плеер) автоматом синхронизируется с ним.&lt;br /&gt;
Можно в две стороны.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Клиенты: всякие мобильные платформы&lt;br /&gt;
Обеспечивают синхронизацию с базой на сервере при входе в зону&lt;br /&gt;
домашнего Wifi или вручную.&lt;br /&gt;
&lt;br /&gt;
=== Python type checking ===&lt;br /&gt;
Предлагаю реализовать cli tool для проверки типов в Python проектах. Вдохновиться можно [[http://www.erlang.org/doc/man/dialyzer.html аналогичным]] инструментом из мира Erlang. Основная идея: в динамическом языке мы не можем вывести тип для '''любого''' выражения, но нас это устраивает! будем проверять типы только там, где их можно вывести. Таким образом, если уж наш инструмент найдет ошибку типов, то она всегда истиная. Как это делать? давайте типизируем __builtin__ и часть стандартной библиотеки, этого должно хватить, чтобы находить ошибки вида &amp;lt;code&amp;gt;map(1, 2)&amp;lt;/code&amp;gt; или &amp;lt;code&amp;gt;os.path.exists([])&amp;lt;/code&amp;gt;. Всё, что мы таким образом типизировать не можем считаем значением типа &amp;lt;code&amp;gt;object&amp;lt;/code&amp;gt;. Примеры:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# Assign a type signature to `os.path.exists`, it's a function, which takes a string and returns a boolean.&lt;br /&gt;
signature(os.path.exists, Function(str, bool))&lt;br /&gt;
&lt;br /&gt;
# Now try to infer a type of the following expressions.&lt;br /&gt;
os.path.exists([])   # type: error, the input argument should be a string!&lt;br /&gt;
os.path.exists(&amp;quot;/&amp;quot;)  # type: bool&lt;br /&gt;
&lt;br /&gt;
# Try the same for a function, with an unknown signature.&lt;br /&gt;
os.listdir(&amp;quot;/&amp;quot;)      # type: object, since we don't know the signature of `os.listdir`.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Можно сразу ориентироваться на Python3 и использовать [[http://www.python.org/dev/peps/pep-3107/ function annotations]] в качестве источника информации о типах:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
def f(x : int) -&amp;gt; float:&lt;br /&gt;
    return float(x) &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
P. S. Создатели dialyzer написали paper по мотивам своих изысканий: [[http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.66.699 Experience from Developing the Dialyzer: A Static Analysis Tool Detecting Defects in Erlang Applications]]&lt;br /&gt;
&lt;br /&gt;
=== stream-lib revisited ===&lt;br /&gt;
Для Java [[https://github.com/clearspring/stream-lib есть]] замечательная библиотека, реализующая summary statistics для потоков данных. Было бы здорово реализовать что-то похожее на Python.&lt;br /&gt;
&lt;br /&gt;
=== Клиент для Google Play ===&lt;br /&gt;
Есть только 2 способа пользоваться Google Play, с телефона, или из браузера, при этом если хочется получить apk файл на компьютер, то единственный способ это вытаскивать его с телефона.&lt;br /&gt;
Почему бы не написать кросс платформенный клиент с использованием Qt, который позволит качать файлы прямо на ПК(и можно добавить различные возможности). Притом что протокол довольно прост.&lt;br /&gt;
&lt;br /&gt;
=== Экстеншен для идеи про обход массивов ===&lt;br /&gt;
Экстеншен для идеи, который видит, что двумерный массив обходится в &amp;quot;плохом&amp;quot; порядке (с потерей кэшей) и предлагает поправить.&lt;/div&gt;</summary>
		<author><name>Igorjirkov</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=Devdays2h2012&amp;diff=1788</id>
		<title>Devdays2h2012</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=Devdays2h2012&amp;diff=1788"/>
				<updated>2012-11-11T14:42:35Z</updated>
		
		<summary type="html">&lt;p&gt;Igorjirkov: /* Python type checking */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Идеи проектов ==&lt;br /&gt;
&lt;br /&gt;
* Андроид клиент для biletolovilka.ru&lt;br /&gt;
* Сетевые шахматы на троих; бессмысленно и беспощадно.&lt;br /&gt;
* Фреймворк для организации CTF-соревнований&lt;br /&gt;
* Experimental project for http://www.chromeexperiments.com/&lt;br /&gt;
* Just another extension for Chrome&lt;br /&gt;
&lt;br /&gt;
=== Андроид клиент для biletolovilka.ru===&lt;br /&gt;
Очень тяжело найти билет в питер в ночь с пятницы на субботу.&lt;br /&gt;
Однако билеты периодически возвращаются клиентами и очень хочется заменить кнопку F5 на cron-task.&lt;br /&gt;
Пройдя по ссылки уже становиться понятен юзкейс приложения, и было бы здорово, сделать андроид(multiplatform)&lt;br /&gt;
клиент с удобным UI'ем.&lt;br /&gt;
&lt;br /&gt;
=== Мечта меломана ===&lt;br /&gt;
Клиентская и серверная части.&lt;br /&gt;
&lt;br /&gt;
Сервер:&lt;br /&gt;
- Мониторит аккаунты на youtube, vk&lt;br /&gt;
- При добавлении трека в аудиозаписи сама добавляет его в музыкальную&lt;br /&gt;
коллекцию со структурой по папочкам, скачивает обложку, приводит в&lt;br /&gt;
порядок все тэги автоматически. Использует, например, информацию о&lt;br /&gt;
длительности .&lt;br /&gt;
- При добавлении видео в избранное на youtube конвертирует его в mp3,&lt;br /&gt;
дальше всё аналогично.&lt;br /&gt;
- Синхронизируется со всеми устройствами. В домашней wifi сетке&lt;br /&gt;
автоматом синхронизируется со всеми android-девайсами по wifi. При&lt;br /&gt;
подключении MTP-девайса (плеер) автоматом синхронизируется с ним.&lt;br /&gt;
Можно в две стороны.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Клиенты: всякие мобильные платформы&lt;br /&gt;
Обеспечивают синхронизацию с базой на сервере при входе в зону&lt;br /&gt;
домашнего Wifi или вручную.&lt;br /&gt;
&lt;br /&gt;
=== Python type checking ===&lt;br /&gt;
Предлагаю реализовать cli tool для проверки типов в Python проектах. Вдохновиться можно [[http://www.erlang.org/doc/man/dialyzer.html аналогичным]] инструментом из мира Erlang. Основная идея: в динамическом языке мы не можем вывести тип для '''любого''' выражения, но нас это устраивает! будем проверять типы только там, где их можно вывести. Таким образом, если уж наш инструмент найдет ошибку типов, то она всегда истиная. Как это делать? давайте типизируем __builtin__ и часть стандартной библиотеки, этого должно хватить, чтобы находить ошибки вида &amp;lt;code&amp;gt;map(1, 2)&amp;lt;/code&amp;gt; или &amp;lt;code&amp;gt;os.path.exists([])&amp;lt;/code&amp;gt;. Всё, что мы таким образом типизировать не можем считаем значением типа &amp;lt;code&amp;gt;object&amp;lt;/code&amp;gt;. Примеры:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# Define a type signature for `os.path.exists`, it's a function, which takes a string and returns a boolean.&lt;br /&gt;
signature(os.path.exists, Function(str, bool))&lt;br /&gt;
&lt;br /&gt;
# Now try to infer a type of the following expressions.&lt;br /&gt;
os.path.exists([])   # type: error, the input argument should be a string!&lt;br /&gt;
os.path.exists(&amp;quot;/&amp;quot;)  # type: bool&lt;br /&gt;
&lt;br /&gt;
# Try the same for a function, with an unknown signature.&lt;br /&gt;
os.listdir(&amp;quot;/&amp;quot;)      # type: object, since we don't know the signature of `os.listdir`.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Можно сразу ориентироваться на Python3 и использовать [[http://www.python.org/dev/peps/pep-3107/ function annotations]] в качестве источника информации о типах:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
def f(x : int) -&amp;gt; float:&lt;br /&gt;
    return float(x) &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
P. S. Создатели dialyzer написали paper по мотивам своих изысканий: [[http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.66.699 Experience from Developing the Dialyzer: A Static Analysis Tool Detecting Defects in Erlang Applications]]&lt;br /&gt;
&lt;br /&gt;
=== stream-lib revisited ===&lt;br /&gt;
Для Java [[https://github.com/clearspring/stream-lib есть]] замечательная библиотека, реализующая summary statistics для потоков данных. Было бы здорово реализовать что-то похожее на Python.&lt;br /&gt;
&lt;br /&gt;
=== Клиент для Google Play ===&lt;br /&gt;
Есть только 2 способа пользоваться Google Play, с телефона, или из браузера, при этом если хочется получить apk файл на компьютер, то единственный способ это вытаскивать его с телефона.&lt;br /&gt;
Почему бы не написать кросс платформенный клиент с использованием Qt, который позволит качать файлы прямо на ПК(и можно добавить различные возможности). Притом что протокол довольно прост.&lt;br /&gt;
&lt;br /&gt;
=== Экстеншен для идеи про обход массивов ===&lt;br /&gt;
Экстеншен для идеи, который видит, что двумерный массив обходится в &amp;quot;плохом&amp;quot; порядке (с потерей кэшей) и предлагает поправить.&lt;/div&gt;</summary>
		<author><name>Igorjirkov</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=Devdays2h2012&amp;diff=1787</id>
		<title>Devdays2h2012</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=Devdays2h2012&amp;diff=1787"/>
				<updated>2012-11-11T14:41:52Z</updated>
		
		<summary type="html">&lt;p&gt;Igorjirkov: /* Python type checking */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Идеи проектов ==&lt;br /&gt;
&lt;br /&gt;
* Андроид клиент для biletolovilka.ru&lt;br /&gt;
* Сетевые шахматы на троих; бессмысленно и беспощадно.&lt;br /&gt;
* Фреймворк для организации CTF-соревнований&lt;br /&gt;
* Experimental project for http://www.chromeexperiments.com/&lt;br /&gt;
* Just another extension for Chrome&lt;br /&gt;
&lt;br /&gt;
=== Андроид клиент для biletolovilka.ru===&lt;br /&gt;
Очень тяжело найти билет в питер в ночь с пятницы на субботу.&lt;br /&gt;
Однако билеты периодически возвращаются клиентами и очень хочется заменить кнопку F5 на cron-task.&lt;br /&gt;
Пройдя по ссылки уже становиться понятен юзкейс приложения, и было бы здорово, сделать андроид(multiplatform)&lt;br /&gt;
клиент с удобным UI'ем.&lt;br /&gt;
&lt;br /&gt;
=== Мечта меломана ===&lt;br /&gt;
Клиентская и серверная части.&lt;br /&gt;
&lt;br /&gt;
Сервер:&lt;br /&gt;
- Мониторит аккаунты на youtube, vk&lt;br /&gt;
- При добавлении трека в аудиозаписи сама добавляет его в музыкальную&lt;br /&gt;
коллекцию со структурой по папочкам, скачивает обложку, приводит в&lt;br /&gt;
порядок все тэги автоматически. Использует, например, информацию о&lt;br /&gt;
длительности .&lt;br /&gt;
- При добавлении видео в избранное на youtube конвертирует его в mp3,&lt;br /&gt;
дальше всё аналогично.&lt;br /&gt;
- Синхронизируется со всеми устройствами. В домашней wifi сетке&lt;br /&gt;
автоматом синхронизируется со всеми android-девайсами по wifi. При&lt;br /&gt;
подключении MTP-девайса (плеер) автоматом синхронизируется с ним.&lt;br /&gt;
Можно в две стороны.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Клиенты: всякие мобильные платформы&lt;br /&gt;
Обеспечивают синхронизацию с базой на сервере при входе в зону&lt;br /&gt;
домашнего Wifi или вручную.&lt;br /&gt;
&lt;br /&gt;
=== Python type checking ===&lt;br /&gt;
Предлагаю реализовать cli tool для проверки типов в Python проектах. Вдохновиться можно [[http://www.erlang.org/doc/man/dialyzer.html аналогичным]] инструментом из мира Erlang. Основная идея: в динамическом языке мы не можем вывести тип для '''любого''' выражения, но нас это устраивает! будем проверять типы только там, где их можно вывести. Таким образом, если уж наш инструмент найдет ошибку типов, то она всегда истиная. Как это делать? давайте типизируем __builtin__ и часть стандартной библиотеки, этого должно хватить, чтобы находить ошибки вида &amp;lt;code&amp;gt;map(1, 2)&amp;lt;/code&amp;gt; или &amp;lt;code&amp;gt;os.path.exists([])&amp;lt;/code&amp;gt;. Всё, что мы таким образом типизировать не можем считаем значением типа &amp;lt;code&amp;gt;object&amp;lt;/code&amp;gt;. Примеры:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# Define a type signature for `os.path.exists`, it's a function, which takes a string and returns a boolean.&lt;br /&gt;
signature(os.path.exists, Function(str, bool))&lt;br /&gt;
&lt;br /&gt;
# Now try to infer a type of the following expressions.&lt;br /&gt;
os.path.exists([])   # type: error, the input argument should be a string!&lt;br /&gt;
os.path.exists(&amp;quot;/&amp;quot;)  # type: bool&lt;br /&gt;
&lt;br /&gt;
# Try the same for a function, which wasn't assigned a signature.&lt;br /&gt;
os.listdir(&amp;quot;/&amp;quot;)      # type: object, since we don't know the type of `os.listdir`.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Можно сразу ориентироваться на Python3 и использовать [[http://www.python.org/dev/peps/pep-3107/ function annotations]] в качестве источника информации о типах:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
def f(x : int) -&amp;gt; float:&lt;br /&gt;
    return float(x) &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
P. S. Создатели dialyzer написали paper по мотивам своих изысканий: [[http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.66.699 Experience from Developing the Dialyzer: A Static Analysis Tool Detecting Defects in Erlang Applications]]&lt;br /&gt;
&lt;br /&gt;
=== stream-lib revisited ===&lt;br /&gt;
Для Java [[https://github.com/clearspring/stream-lib есть]] замечательная библиотека, реализующая summary statistics для потоков данных. Было бы здорово реализовать что-то похожее на Python.&lt;br /&gt;
&lt;br /&gt;
=== Клиент для Google Play ===&lt;br /&gt;
Есть только 2 способа пользоваться Google Play, с телефона, или из браузера, при этом если хочется получить apk файл на компьютер, то единственный способ это вытаскивать его с телефона.&lt;br /&gt;
Почему бы не написать кросс платформенный клиент с использованием Qt, который позволит качать файлы прямо на ПК(и можно добавить различные возможности). Притом что протокол довольно прост.&lt;br /&gt;
&lt;br /&gt;
=== Экстеншен для идеи про обход массивов ===&lt;br /&gt;
Экстеншен для идеи, который видит, что двумерный массив обходится в &amp;quot;плохом&amp;quot; порядке (с потерей кэшей) и предлагает поправить.&lt;/div&gt;</summary>
		<author><name>Igorjirkov</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=Devdays2h2012&amp;diff=1785</id>
		<title>Devdays2h2012</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=Devdays2h2012&amp;diff=1785"/>
				<updated>2012-11-11T14:29:45Z</updated>
		
		<summary type="html">&lt;p&gt;Igorjirkov: /* Python type checking */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Идеи проектов ==&lt;br /&gt;
&lt;br /&gt;
* Андроид клиент для biletolovilka.ru&lt;br /&gt;
* Сетевые шахматы на троих; бессмысленно и беспощадно.&lt;br /&gt;
* Фреймворк для организации CTF-соревнований&lt;br /&gt;
* Experimental project for http://www.chromeexperiments.com/&lt;br /&gt;
* Just another extension for Chrome&lt;br /&gt;
&lt;br /&gt;
=== Андроид клиент для biletolovilka.ru===&lt;br /&gt;
Очень тяжело найти билет в питер в ночь с пятницы на субботу.&lt;br /&gt;
Однако билеты периодически возвращаются клиентами и очень хочется заменить кнопку F5 на cron-task.&lt;br /&gt;
Пройдя по ссылки уже становиться понятен юзкейс приложения, и было бы здорово, сделать андроид(multiplatform)&lt;br /&gt;
клиент с удобным UI'ем.&lt;br /&gt;
&lt;br /&gt;
=== Мечта меломана ===&lt;br /&gt;
Клиентская и серверная части.&lt;br /&gt;
&lt;br /&gt;
Сервер:&lt;br /&gt;
- Мониторит аккаунты на youtube, vk&lt;br /&gt;
- При добавлении трека в аудиозаписи сама добавляет его в музыкальную&lt;br /&gt;
коллекцию со структурой по папочкам, скачивает обложку, приводит в&lt;br /&gt;
порядок все тэги автоматически. Использует, например, информацию о&lt;br /&gt;
длительности .&lt;br /&gt;
- При добавлении видео в избранное на youtube конвертирует его в mp3,&lt;br /&gt;
дальше всё аналогично.&lt;br /&gt;
- Синхронизируется со всеми устройствами. В домашней wifi сетке&lt;br /&gt;
автоматом синхронизируется со всеми android-девайсами по wifi. При&lt;br /&gt;
подключении MTP-девайса (плеер) автоматом синхронизируется с ним.&lt;br /&gt;
Можно в две стороны.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Клиенты: всякие мобильные платформы&lt;br /&gt;
Обеспечивают синхронизацию с базой на сервере при входе в зону&lt;br /&gt;
домашнего Wifi или вручную.&lt;br /&gt;
&lt;br /&gt;
=== Python type checking ===&lt;br /&gt;
Предлагаю реализовать cli tool для проверки типов в Python проектах. Вдохновиться можно [[http://www.erlang.org/doc/man/dialyzer.html аналогичным]] инструментом из мира Erlang. Основная идея: в динамическом языке мы не можем вывести тип для '''любого''' выражения, но нас это устраивает! будем проверять типы только там, где их можно вывести. Таким образом, если уж наш инструмент найдет ошибку типов, то она всегда истиная. Как это делать? давайте типизируем __builtin__ и часть стандартной библиотеки, этого должно хватить, чтобы находить ошибки вида &amp;lt;code&amp;gt;map(1, 2)&amp;lt;/code&amp;gt; или &amp;lt;code&amp;gt;os.path.exists([])&amp;lt;/code&amp;gt;. Всё, что мы таким образом типизировать не можем считаем значением типа &amp;lt;code&amp;gt;object&amp;lt;/code&amp;gt;. Примеры:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# Type signatures for `os` module.&lt;br /&gt;
signature(os.path.exists, Function(str, bool))&lt;br /&gt;
&lt;br /&gt;
os.path.exists([])   # type: error&lt;br /&gt;
os.path.exists(&amp;quot;/&amp;quot;)  # type: bool&lt;br /&gt;
&lt;br /&gt;
os.listdir(&amp;quot;/&amp;quot;)      # type: object, since we don't know the type of `os.listdir`.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Можно сразу ориентироваться на Python3 и использовать [[http://www.python.org/dev/peps/pep-3107/ function annotations]] в качестве источника информации о типах:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
def f(x : int) -&amp;gt; float:&lt;br /&gt;
    return float(x) &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
P. S. Создатели dialyzer написали paper по мотивам своих изысканий: [[http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.66.699 Experience from Developing the Dialyzer: A Static Analysis Tool Detecting Defects in Erlang Applications]]&lt;br /&gt;
&lt;br /&gt;
=== stream-lib revisited ===&lt;br /&gt;
Для Java [[https://github.com/clearspring/stream-lib есть]] замечательная библиотека, реализующая summary statistics для потоков данных. Было бы здорово реализовать что-то похожее на Python.&lt;br /&gt;
&lt;br /&gt;
=== Клиент для Google Play ===&lt;br /&gt;
Есть только 2 способа пользоваться Google Play, с телефона, или из браузера, при этом если хочется получить apk файл на компьютер, то единственный способ это вытаскивать его с телефона.&lt;br /&gt;
Почему бы не написать кросс платформенный клиент с использованием Qt, который позволит качать файлы прямо на ПК(и можно добавить различные возможности). Притом что протокол довольно прост.&lt;/div&gt;</summary>
		<author><name>Igorjirkov</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=Devdays2h2012&amp;diff=1784</id>
		<title>Devdays2h2012</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=Devdays2h2012&amp;diff=1784"/>
				<updated>2012-11-11T14:24:40Z</updated>
		
		<summary type="html">&lt;p&gt;Igorjirkov: /* Python type checking */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Идеи проектов ==&lt;br /&gt;
&lt;br /&gt;
* Андроид клиент для biletolovilka.ru&lt;br /&gt;
* Сетевые шахматы на троих; бессмысленно и беспощадно.&lt;br /&gt;
* Фреймворк для организации CTF-соревнований&lt;br /&gt;
* Experimental project for http://www.chromeexperiments.com/&lt;br /&gt;
* Just another extension for Chrome&lt;br /&gt;
&lt;br /&gt;
=== Андроид клиент для biletolovilka.ru===&lt;br /&gt;
Очень тяжело найти билет в питер в ночь с пятницы на субботу.&lt;br /&gt;
Однако билеты периодически возвращаются клиентами и очень хочется заменить кнопку F5 на cron-task.&lt;br /&gt;
Пройдя по ссылки уже становиться понятен юзкейс приложения, и было бы здорово, сделать андроид(multiplatform)&lt;br /&gt;
клиент с удобным UI'ем.&lt;br /&gt;
&lt;br /&gt;
=== Мечта меломана ===&lt;br /&gt;
Клиентская и серверная части.&lt;br /&gt;
&lt;br /&gt;
Сервер:&lt;br /&gt;
- Мониторит аккаунты на youtube, vk&lt;br /&gt;
- При добавлении трека в аудиозаписи сама добавляет его в музыкальную&lt;br /&gt;
коллекцию со структурой по папочкам, скачивает обложку, приводит в&lt;br /&gt;
порядок все тэги автоматически. Использует, например, информацию о&lt;br /&gt;
длительности .&lt;br /&gt;
- При добавлении видео в избранное на youtube конвертирует его в mp3,&lt;br /&gt;
дальше всё аналогично.&lt;br /&gt;
- Синхронизируется со всеми устройствами. В домашней wifi сетке&lt;br /&gt;
автоматом синхронизируется со всеми android-девайсами по wifi. При&lt;br /&gt;
подключении MTP-девайса (плеер) автоматом синхронизируется с ним.&lt;br /&gt;
Можно в две стороны.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Клиенты: всякие мобильные платформы&lt;br /&gt;
Обеспечивают синхронизацию с базой на сервере при входе в зону&lt;br /&gt;
домашнего Wifi или вручную.&lt;br /&gt;
&lt;br /&gt;
=== Python type checking ===&lt;br /&gt;
Предлагаю реализовать cli tool для проверки типов в Python проектах. Вдохновиться можно [[http://www.erlang.org/doc/man/dialyzer.html аналогичным]] инструментом из мира Erlang. Основная идея: в динамическом языке мы не можем вывести тип для _любого_ выражения, но нас это устраивает! будем проверять типы только там, где их можно вывести. Таким образом если уж наш инструмент найдет ошибку типов, то она точно истиная. Как это делать? давайте типизируем __builtin__ и часть стандартной библиотеки, этого должно хватить, чтобы находить ошибки вида &amp;lt;code&amp;gt;map(1, 2)&amp;lt;/code&amp;gt; или &amp;lt;code&amp;gt;os.path.exists([])&amp;lt;/code&amp;gt;. Всё, что мы таким образом типизировать не можем считаем значением типа &amp;lt;code&amp;gt;object&amp;lt;/code&amp;gt;. Примеры:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# Type signatures for `os` module.&lt;br /&gt;
signature(os.path.exists, Function(str, bool))&lt;br /&gt;
&lt;br /&gt;
os.path.exists([])   # type: error&lt;br /&gt;
os.path.exists(&amp;quot;/&amp;quot;)  # type: bool&lt;br /&gt;
&lt;br /&gt;
os.listdir(&amp;quot;/&amp;quot;)      # type: object, since we don't know the type of `os.listdir`.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Можно сразу ориентироваться на Python3 и использовать [[http://www.python.org/dev/peps/pep-3107/ function annotations]] в качестве источника информации о типах:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
def f(x : int) -&amp;gt; float:&lt;br /&gt;
    return float(x) &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
P. S. Создатели dialyzer написали paper по мотивам своих изысканий: [[http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.66.699 Experience from Developing the Dialyzer: A Static Analysis Tool Detecting Defects in Erlang Applications]]&lt;br /&gt;
&lt;br /&gt;
=== stream-lib revisited ===&lt;br /&gt;
Для Java [[https://github.com/clearspring/stream-lib есть]] замечательная библиотека, реализующая summary statistics для потоков данных. Было бы здорово реализовать что-то похожее на Python.&lt;br /&gt;
&lt;br /&gt;
=== Клиент для Google Play ===&lt;br /&gt;
Есть только 2 способа пользоваться Google Play, с телефона, или из браузера, при этом если хочется получить apk файл на компьютер, то единственный способ это вытаскивать его с телефона.&lt;br /&gt;
Почему бы не написать кросс платформенный клиент с использованием Qt, который позволит качать файлы прямо на ПК(и можно добавить различные возможности). Притом что протокол довольно прост.&lt;/div&gt;</summary>
		<author><name>Igorjirkov</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=Devdays2h2012&amp;diff=1783</id>
		<title>Devdays2h2012</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=Devdays2h2012&amp;diff=1783"/>
				<updated>2012-11-11T14:15:36Z</updated>
		
		<summary type="html">&lt;p&gt;Igorjirkov: /* Python type checking */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Идеи проектов ==&lt;br /&gt;
&lt;br /&gt;
* Андроид клиент для biletolovilka.ru&lt;br /&gt;
* Сетевые шахматы на троих; бессмысленно и беспощадно.&lt;br /&gt;
* Фреймворк для организации CTF-соревнований&lt;br /&gt;
* Experimental project for http://www.chromeexperiments.com/&lt;br /&gt;
* Just another extension for Chrome&lt;br /&gt;
&lt;br /&gt;
=== Андроид клиент для biletolovilka.ru===&lt;br /&gt;
Очень тяжело найти билет в питер в ночь с пятницы на субботу.&lt;br /&gt;
Однако билеты периодически возвращаются клиентами и очень хочется заменить кнопку F5 на cron-task.&lt;br /&gt;
Пройдя по ссылки уже становиться понятен юзкейс приложения, и было бы здорово, сделать андроид(multiplatform)&lt;br /&gt;
клиент с удобным UI'ем.&lt;br /&gt;
&lt;br /&gt;
=== Мечта меломана ===&lt;br /&gt;
Клиентская и серверная части.&lt;br /&gt;
&lt;br /&gt;
Сервер:&lt;br /&gt;
- Мониторит аккаунты на youtube, vk&lt;br /&gt;
- При добавлении трека в аудиозаписи сама добавляет его в музыкальную&lt;br /&gt;
коллекцию со структурой по папочкам, скачивает обложку, приводит в&lt;br /&gt;
порядок все тэги автоматически. Использует, например, информацию о&lt;br /&gt;
длительности .&lt;br /&gt;
- При добавлении видео в избранное на youtube конвертирует его в mp3,&lt;br /&gt;
дальше всё аналогично.&lt;br /&gt;
- Синхронизируется со всеми устройствами. В домашней wifi сетке&lt;br /&gt;
автоматом синхронизируется со всеми android-девайсами по wifi. При&lt;br /&gt;
подключении MTP-девайса (плеер) автоматом синхронизируется с ним.&lt;br /&gt;
Можно в две стороны.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Клиенты: всякие мобильные платформы&lt;br /&gt;
Обеспечивают синхронизацию с базой на сервере при входе в зону&lt;br /&gt;
домашнего Wifi или вручную.&lt;br /&gt;
&lt;br /&gt;
=== Python type checking ===&lt;br /&gt;
Предлагаю реализовать cli tool для проверки типов в Python проектах. Вдохновиться можно [[http://www.erlang.org/doc/man/dialyzer.html аналогичным]] инструментом из мира Erlang. Основная идея: давайте типизируем __builtin__ и часть стандартной библиотеки, этого должно хватить, чтобы находить ошибки вида &amp;lt;code&amp;gt;map(1, 2)&amp;lt;/code&amp;gt; или &amp;lt;code&amp;gt;os.path.exists([])&amp;lt;/code&amp;gt;. Всё, что мы таким образом типизировать не можем считаем значением типа &amp;lt;code&amp;gt;object&amp;lt;/code&amp;gt;. Примеры:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# Type signatures for `os` module.&lt;br /&gt;
signature(os.path.exists, Function(str, bool))&lt;br /&gt;
&lt;br /&gt;
os.path.exists([])   # type: error&lt;br /&gt;
os.path.exists(&amp;quot;/&amp;quot;)  # type: bool&lt;br /&gt;
&lt;br /&gt;
os.listdir(&amp;quot;/&amp;quot;)      # type: object, since we don't know the type of `os.listdir`.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Можно сразу ориентироваться на Python3 и использовать [[http://www.python.org/dev/peps/pep-3107/ function annotations]] в качестве источника информации о типах:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
def f(x : int) -&amp;gt; float:&lt;br /&gt;
    return float(x) &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
P. S. Создатели dialyzer написали paper по мотивам своих изысканий: [[http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.66.699 Experience from Developing the Dialyzer: A Static Analysis Tool Detecting Defects in Erlang Applications]]&lt;br /&gt;
&lt;br /&gt;
=== stream-lib revisited ===&lt;br /&gt;
Для Java [[https://github.com/clearspring/stream-lib есть]] замечательная библиотека, реализующая summary statistics для потоков данных. Было бы здорово реализовать что-то похожее на Python.&lt;br /&gt;
&lt;br /&gt;
=== Клиент для Google Play ===&lt;br /&gt;
Есть только 2 способа пользоваться Google Play, с телефона, или из браузера, при этом если хочется получить apk файл на компьютер, то единственный способ это вытаскивать его с телефона.&lt;br /&gt;
Почему бы не написать кросс платформенный клиент с использованием Qt, который позволит качать файлы прямо на ПК(и можно добавить различные возможности). Притом что протокол довольно прост.&lt;/div&gt;</summary>
		<author><name>Igorjirkov</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=Devdays2h2012&amp;diff=1782</id>
		<title>Devdays2h2012</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=Devdays2h2012&amp;diff=1782"/>
				<updated>2012-11-11T14:14:59Z</updated>
		
		<summary type="html">&lt;p&gt;Igorjirkov: /* Python type checking */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Идеи проектов ==&lt;br /&gt;
&lt;br /&gt;
* Андроид клиент для biletolovilka.ru&lt;br /&gt;
* Сетевые шахматы на троих; бессмысленно и беспощадно.&lt;br /&gt;
* Фреймворк для организации CTF-соревнований&lt;br /&gt;
* Experimental project for http://www.chromeexperiments.com/&lt;br /&gt;
* Just another extension for Chrome&lt;br /&gt;
&lt;br /&gt;
=== Андроид клиент для biletolovilka.ru===&lt;br /&gt;
Очень тяжело найти билет в питер в ночь с пятницы на субботу.&lt;br /&gt;
Однако билеты периодически возвращаются клиентами и очень хочется заменить кнопку F5 на cron-task.&lt;br /&gt;
Пройдя по ссылки уже становиться понятен юзкейс приложения, и было бы здорово, сделать андроид(multiplatform)&lt;br /&gt;
клиент с удобным UI'ем.&lt;br /&gt;
&lt;br /&gt;
=== Мечта меломана ===&lt;br /&gt;
Клиентская и серверная части.&lt;br /&gt;
&lt;br /&gt;
Сервер:&lt;br /&gt;
- Мониторит аккаунты на youtube, vk&lt;br /&gt;
- При добавлении трека в аудиозаписи сама добавляет его в музыкальную&lt;br /&gt;
коллекцию со структурой по папочкам, скачивает обложку, приводит в&lt;br /&gt;
порядок все тэги автоматически. Использует, например, информацию о&lt;br /&gt;
длительности .&lt;br /&gt;
- При добавлении видео в избранное на youtube конвертирует его в mp3,&lt;br /&gt;
дальше всё аналогично.&lt;br /&gt;
- Синхронизируется со всеми устройствами. В домашней wifi сетке&lt;br /&gt;
автоматом синхронизируется со всеми android-девайсами по wifi. При&lt;br /&gt;
подключении MTP-девайса (плеер) автоматом синхронизируется с ним.&lt;br /&gt;
Можно в две стороны.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Клиенты: всякие мобильные платформы&lt;br /&gt;
Обеспечивают синхронизацию с базой на сервере при входе в зону&lt;br /&gt;
домашнего Wifi или вручную.&lt;br /&gt;
&lt;br /&gt;
=== Python type checking ===&lt;br /&gt;
Предлагаю реализовать cli tool для проверки типов в Python проектах. Вдохновиться можно [[http://www.erlang.org/doc/man/dialyzer.html аналогичным]] инструментом из мира Erlang. Основная идея: давайте типизируем __builtin__ и часть стандартной библиотеки, этого должно хватить, чтобы находить ошибки вида &amp;lt;code&amp;gt;map(1, 2)&amp;lt;/code&amp;gt; или &amp;lt;code&amp;gt;os.path.exists([])&amp;lt;/code&amp;gt;. Всё, что мы таким образом типизировать не можем считаем значением типа &amp;lt;code&amp;gt;object&amp;lt;/code&amp;gt;. Примеры:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# Type signatures for `os` module.&lt;br /&gt;
signature(os.path.exists, Function(str, bool))&lt;br /&gt;
&lt;br /&gt;
os.path.exists([])   # type: error&lt;br /&gt;
os.path.exists(&amp;quot;/&amp;quot;)  # type: bool&lt;br /&gt;
&lt;br /&gt;
os.listdir(&amp;quot;/&amp;quot;)      # type: object, since we don't know the type of `os.listdir`.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Можно сразу ориентироваться на Python3 и использовать [[http://www.python.org/dev/peps/pep-3107/ function annotations]] в качестве источника информации о типах:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
def f(x : int) -&amp;gt; float:&lt;br /&gt;
    return float(x) &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Paper: [[http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.66.699 Experience from Developing the Dialyzer: A Static Analysis Tool Detecting Defects in Erlang Applications]]&lt;br /&gt;
&lt;br /&gt;
=== stream-lib revisited ===&lt;br /&gt;
Для Java [[https://github.com/clearspring/stream-lib есть]] замечательная библиотека, реализующая summary statistics для потоков данных. Было бы здорово реализовать что-то похожее на Python.&lt;br /&gt;
&lt;br /&gt;
=== Клиент для Google Play ===&lt;br /&gt;
Есть только 2 способа пользоваться Google Play, с телефона, или из браузера, при этом если хочется получить apk файл на компьютер, то единственный способ это вытаскивать его с телефона.&lt;br /&gt;
Почему бы не написать кросс платформенный клиент с использованием Qt, который позволит качать файлы прямо на ПК(и можно добавить различные возможности). Притом что протокол довольно прост.&lt;/div&gt;</summary>
		<author><name>Igorjirkov</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=Devdays2h2012&amp;diff=1781</id>
		<title>Devdays2h2012</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=Devdays2h2012&amp;diff=1781"/>
				<updated>2012-11-11T14:13:42Z</updated>
		
		<summary type="html">&lt;p&gt;Igorjirkov: /* Python type checking */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Идеи проектов ==&lt;br /&gt;
&lt;br /&gt;
* Андроид клиент для biletolovilka.ru&lt;br /&gt;
* Сетевые шахматы на троих; бессмысленно и беспощадно.&lt;br /&gt;
* Фреймворк для организации CTF-соревнований&lt;br /&gt;
* Experimental project for http://www.chromeexperiments.com/&lt;br /&gt;
* Just another extension for Chrome&lt;br /&gt;
&lt;br /&gt;
=== Андроид клиент для biletolovilka.ru===&lt;br /&gt;
Очень тяжело найти билет в питер в ночь с пятницы на субботу.&lt;br /&gt;
Однако билеты периодически возвращаются клиентами и очень хочется заменить кнопку F5 на cron-task.&lt;br /&gt;
Пройдя по ссылки уже становиться понятен юзкейс приложения, и было бы здорово, сделать андроид(multiplatform)&lt;br /&gt;
клиент с удобным UI'ем.&lt;br /&gt;
&lt;br /&gt;
=== Мечта меломана ===&lt;br /&gt;
Клиентская и серверная части.&lt;br /&gt;
&lt;br /&gt;
Сервер:&lt;br /&gt;
- Мониторит аккаунты на youtube, vk&lt;br /&gt;
- При добавлении трека в аудиозаписи сама добавляет его в музыкальную&lt;br /&gt;
коллекцию со структурой по папочкам, скачивает обложку, приводит в&lt;br /&gt;
порядок все тэги автоматически. Использует, например, информацию о&lt;br /&gt;
длительности .&lt;br /&gt;
- При добавлении видео в избранное на youtube конвертирует его в mp3,&lt;br /&gt;
дальше всё аналогично.&lt;br /&gt;
- Синхронизируется со всеми устройствами. В домашней wifi сетке&lt;br /&gt;
автоматом синхронизируется со всеми android-девайсами по wifi. При&lt;br /&gt;
подключении MTP-девайса (плеер) автоматом синхронизируется с ним.&lt;br /&gt;
Можно в две стороны.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Клиенты: всякие мобильные платформы&lt;br /&gt;
Обеспечивают синхронизацию с базой на сервере при входе в зону&lt;br /&gt;
домашнего Wifi или вручную.&lt;br /&gt;
&lt;br /&gt;
=== Python type checking ===&lt;br /&gt;
Предлагаю реализовать cli tool для проверки типов в Python проектах. Вдохновиться можно [[http://www.erlang.org/doc/man/dialyzer.html аналогичным]] инструментом из мира Erlang. Основная идея: давайте типизируем __builtin__ и часть стандартной библиотеки, этого должно хватить, чтобы находить ошибки вида &amp;lt;code&amp;gt;map(1, 2)&amp;lt;/code&amp;gt; или &amp;lt;code&amp;gt;os.path.exists([])&amp;lt;/code&amp;gt;. Всё, что мы таким образом типизировать не можем считаем значением типа &amp;lt;code&amp;gt;object&amp;lt;/code&amp;gt;. Примеры:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# Type signatures for `os` module.&lt;br /&gt;
type(os.path.exists, Function(str, bool))&lt;br /&gt;
&lt;br /&gt;
os.path.exists([])   # type: error&lt;br /&gt;
os.path.exists(&amp;quot;/&amp;quot;)  # type: bool&lt;br /&gt;
&lt;br /&gt;
os.listdir(&amp;quot;/&amp;quot;)      # type: object, since we don't know the type of `os.listdir`.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Можно сразу ориентироваться на Python3 и использовать [[http://www.python.org/dev/peps/pep-3107/ function annotations]] в качестве источника информации о типах:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
def f(x : int) -&amp;gt; float:&lt;br /&gt;
    return float(x) &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Paper: [[http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.66.699 Experience from Developing the Dialyzer: A Static Analysis Tool Detecting Defects in Erlang Applications]]&lt;br /&gt;
&lt;br /&gt;
=== stream-lib revisited ===&lt;br /&gt;
Для Java [[https://github.com/clearspring/stream-lib есть]] замечательная библиотека, реализующая summary statistics для потоков данных. Было бы здорово реализовать что-то похожее на Python.&lt;br /&gt;
&lt;br /&gt;
=== Клиент для Google Play ===&lt;br /&gt;
Есть только 2 способа пользоваться Google Play, с телефона, или из браузера, при этом если хочется получить apk файл на компьютер, то единственный способ это вытаскивать его с телефона.&lt;br /&gt;
Почему бы не написать кросс платформенный клиент с использованием Qt, который позволит качать файлы прямо на ПК(и можно добавить различные возможности). Притом что протокол довольно прост.&lt;/div&gt;</summary>
		<author><name>Igorjirkov</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=Devdays2h2012&amp;diff=1780</id>
		<title>Devdays2h2012</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=Devdays2h2012&amp;diff=1780"/>
				<updated>2012-11-11T13:58:42Z</updated>
		
		<summary type="html">&lt;p&gt;Igorjirkov: /* Идеи проектов */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Идеи проектов ==&lt;br /&gt;
&lt;br /&gt;
* Андроид клиент для biletolovilka.ru&lt;br /&gt;
* Сетевые шахматы на троих; бессмысленно и беспощадно.&lt;br /&gt;
* Фреймворк для организации CTF-соревнований&lt;br /&gt;
* Experimental project for http://www.chromeexperiments.com/&lt;br /&gt;
* Just another extension for Chrome&lt;br /&gt;
&lt;br /&gt;
=== Андроид клиент для biletolovilka.ru===&lt;br /&gt;
Очень тяжело найти билет в питер в ночь с пятницы на субботу.&lt;br /&gt;
Однако билеты периодически возвращаются клиентами и очень хочется заменить кнопку F5 на cron-task.&lt;br /&gt;
Пройдя по ссылки уже становиться понятен юзкейс приложения, и было бы здорово, сделать андроид(multiplatform)&lt;br /&gt;
клиент с удобным UI'ем.&lt;br /&gt;
&lt;br /&gt;
=== Мечта меломана ===&lt;br /&gt;
Клиентская и серверная части.&lt;br /&gt;
&lt;br /&gt;
Сервер:&lt;br /&gt;
- Мониторит аккаунты на youtube, vk&lt;br /&gt;
- При добавлении трека в аудиозаписи сама добавляет его в музыкальную&lt;br /&gt;
коллекцию со структурой по папочкам, скачивает обложку, приводит в&lt;br /&gt;
порядок все тэги автоматически. Использует, например, информацию о&lt;br /&gt;
длительности .&lt;br /&gt;
- При добавлении видео в избранное на youtube конвертирует его в mp3,&lt;br /&gt;
дальше всё аналогично.&lt;br /&gt;
- Синхронизируется со всеми устройствами. В домашней wifi сетке&lt;br /&gt;
автоматом синхронизируется со всеми android-девайсами по wifi. При&lt;br /&gt;
подключении MTP-девайса (плеер) автоматом синхронизируется с ним.&lt;br /&gt;
Можно в две стороны.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Клиенты: всякие мобильные платформы&lt;br /&gt;
Обеспечивают синхронизацию с базой на сервере при входе в зону&lt;br /&gt;
домашнего Wifi или вручную.&lt;br /&gt;
&lt;br /&gt;
=== Python type checking ===&lt;br /&gt;
Предлагаю реализовать cli tool для проверки типов в Python проектах. Вдохновиться можно [[http://www.erlang.org/doc/man/dialyzer.html аналогичным]] инструментом из мира Erlang. Основная идея: давайте типизируем __builtin__ и часть стандартной библиотеки, этого должно хватить, чтобы находить ошибки вида &amp;lt;code&amp;gt;map(1, 2)&amp;lt;/code&amp;gt; или &amp;lt;code&amp;gt;os.path.exists([])&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== stream-lib revisited ===&lt;br /&gt;
Для Java [[https://github.com/clearspring/stream-lib есть]] замечательная библиотека, реализующая summary statistics для потоков данных. Было бы здорово реализовать что-то похожее на Python.&lt;br /&gt;
&lt;br /&gt;
=== Клиент для Google Play ===&lt;br /&gt;
Есть только 2 способа пользоваться Google Play, с телефона, или из браузера, при этом если хочется получить apk файл на компьютер, то единственный способ это вытаскивать его с телефона.&lt;br /&gt;
Почему бы не написать кросс платформенный клиент с использованием Qt, который позволит качать файлы прямо на ПК(и можно добавить различные возможности). Притом что протокол довольно прост.&lt;/div&gt;</summary>
		<author><name>Igorjirkov</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=Devdays2h2012&amp;diff=1775</id>
		<title>Devdays2h2012</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=Devdays2h2012&amp;diff=1775"/>
				<updated>2012-11-11T11:24:23Z</updated>
		
		<summary type="html">&lt;p&gt;Igorjirkov: /* Идеи проектов */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Идеи проектов ==&lt;br /&gt;
&lt;br /&gt;
* VST Plug-in&lt;br /&gt;
* Андроид клиент для biletolovilka.ru&lt;br /&gt;
* Сетевые шахматы на троих&lt;br /&gt;
* Фреймворк для организации CTF-соревнований&lt;br /&gt;
* Experimental project for http://www.chromeexperiments.com/&lt;br /&gt;
* Just another extension for Chrome&lt;br /&gt;
&lt;br /&gt;
=== Мечта меломана ===&lt;br /&gt;
Клиентская и серверная части.&lt;br /&gt;
&lt;br /&gt;
Сервер:&lt;br /&gt;
- Мониторит аккаунты на youtube, vk&lt;br /&gt;
- При добавлении трека в аудиозаписи сама добавляет его в музыкальную&lt;br /&gt;
коллекцию со структурой по папочкам, скачивает обложку, приводит в&lt;br /&gt;
порядок все тэги автоматически. Использует, например, информацию о&lt;br /&gt;
длительности .&lt;br /&gt;
- При добавлении видео в избранное на youtube конвертирует его в mp3,&lt;br /&gt;
дальше всё аналогично.&lt;br /&gt;
- Синхронизируется со всеми устройствами. В домашней wifi сетке&lt;br /&gt;
автоматом синхронизируется со всеми android-девайсами по wifi. При&lt;br /&gt;
подключении MTP-девайса (плеер) автоматом синхронизируется с ним.&lt;br /&gt;
Можно в две стороны.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Клиенты: всякие мобильные платформы&lt;br /&gt;
Обеспечивают синхронизацию с базой на сервере при входе в зону&lt;br /&gt;
домашнего Wifi или вручную.&lt;br /&gt;
&lt;br /&gt;
=== Python type checking ===&lt;br /&gt;
Предлагаю реализовать cli tool для проверки типов в Python проектах. Вдохновиться можно [[http://www.erlang.org/doc/man/dialyzer.html аналогичным]] инструментом из мира Erlang. Основная идея: давайте типизируем __builtin__ и часть стандартной библиотеки, этого должно хватить, чтобы находить ошибки вида &amp;lt;code&amp;gt;map(1, 2)&amp;lt;/code&amp;gt; или &amp;lt;code&amp;gt;os.path.exists([])&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== stream-lib revisited ===&lt;br /&gt;
Для Java [[https://github.com/clearspring/stream-lib есть]] замечательная библиотека, реализующая summary statistics для потоков данных. Было бы здорово реализовать что-то похожее на Python.&lt;/div&gt;</summary>
		<author><name>Igorjirkov</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=Devdays2h2012&amp;diff=1774</id>
		<title>Devdays2h2012</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=Devdays2h2012&amp;diff=1774"/>
				<updated>2012-11-11T11:23:35Z</updated>
		
		<summary type="html">&lt;p&gt;Igorjirkov: /* Идеи проектов */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Идеи проектов ==&lt;br /&gt;
&lt;br /&gt;
* VST Plug-in&lt;br /&gt;
* Андроид клиент для biletolovilka.ru&lt;br /&gt;
* Сетевые шахматы на троих&lt;br /&gt;
* Фреймворк для организации CTF-соревнований&lt;br /&gt;
* Experimental project for http://www.chromeexperiments.com/&lt;br /&gt;
* Just another extension for Chrome&lt;br /&gt;
&lt;br /&gt;
=== Мечта меломана ===&lt;br /&gt;
Клиентская и серверная части.&lt;br /&gt;
&lt;br /&gt;
Сервер:&lt;br /&gt;
- Мониторит аккаунты на youtube, vk&lt;br /&gt;
- При добавлении трека в аудиозаписи сама добавляет его в музыкальную&lt;br /&gt;
коллекцию со структурой по папочкам, скачивает обложку, приводит в&lt;br /&gt;
порядок все тэги автоматически. Использует, например, информацию о&lt;br /&gt;
длительности .&lt;br /&gt;
- При добавлении видео в избранное на youtube конвертирует его в mp3,&lt;br /&gt;
дальше всё аналогично.&lt;br /&gt;
- Синхронизируется со всеми устройствами. В домашней wifi сетке&lt;br /&gt;
автоматом синхронизируется со всеми android-девайсами по wifi. При&lt;br /&gt;
подключении MTP-девайса (плеер) автоматом синхронизируется с ним.&lt;br /&gt;
Можно в две стороны.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Клиенты: всякие мобильные платформы&lt;br /&gt;
Обеспечивают синхронизацию с базой на сервере при входе в зону&lt;br /&gt;
домашнего Wifi или вручную.&lt;br /&gt;
&lt;br /&gt;
=== Python type checking ===&lt;br /&gt;
Предлагаю реализовать cli tool для проверки типов в Python проектах. Вдохновиться можно [[аналогичным|http://www.erlang.org/doc/man/dialyzer.html]] инструментом из мира Erlang. Основная идея: давайте типизируем __builtin__ и часть стандартной библиотеки, этого должно хватить, чтобы находить ошибки вида &amp;lt;code&amp;gt;map(1, 2)&amp;lt;/code&amp;gt; или &amp;lt;code&amp;gt;os.path.exists([])&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== stream-lib revisited ===&lt;br /&gt;
Для Java [[есть|https://github.com/clearspring/stream-lib]] замечательная библиотека, реализующая summary statistics для потоков данных. Было бы здорово реализовать что-то похожее на Python.&lt;/div&gt;</summary>
		<author><name>Igorjirkov</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=Devdays2h2012&amp;diff=1773</id>
		<title>Devdays2h2012</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=Devdays2h2012&amp;diff=1773"/>
				<updated>2012-11-11T11:15:36Z</updated>
		
		<summary type="html">&lt;p&gt;Igorjirkov: /* Идеи проектов */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Идеи проектов ==&lt;br /&gt;
&lt;br /&gt;
* TBD&lt;br /&gt;
* VST Plug-in&lt;br /&gt;
* Андроид клиент для biletolovilka.ru&lt;br /&gt;
* Сетевые шахматы на троих&lt;br /&gt;
* Фреймворк для организации CTF-соревнований&lt;br /&gt;
* Experimental project for http://www.chromeexperiments.com/&lt;br /&gt;
* Just another extension for Chrome&lt;br /&gt;
* Мечта меломана:&lt;br /&gt;
&lt;br /&gt;
Клиентская и серверная части.&lt;br /&gt;
&lt;br /&gt;
Сервер:&lt;br /&gt;
- Мониторит аккаунты на youtube, vk&lt;br /&gt;
- При добавлении трека в аудиозаписи сама добавляет его в музыкальную&lt;br /&gt;
коллекцию со структурой по папочкам, скачивает обложку, приводит в&lt;br /&gt;
порядок все тэги автоматически. Использует, например, информацию о&lt;br /&gt;
длительности .&lt;br /&gt;
- При добавлении видео в избранное на youtube конвертирует его в mp3,&lt;br /&gt;
дальше всё аналогично.&lt;br /&gt;
- Синхронизируется со всеми устройствами. В домашней wifi сетке&lt;br /&gt;
автоматом синхронизируется со всеми android-девайсами по wifi. При&lt;br /&gt;
подключении MTP-девайса (плеер) автоматом синхронизируется с ним.&lt;br /&gt;
Можно в две стороны.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Клиенты: всякие мобильные платформы&lt;br /&gt;
Обеспечивают синхронизацию с базой на сервере при входе в зону&lt;br /&gt;
домашнего Wifi или вручную.&lt;/div&gt;</summary>
		<author><name>Igorjirkov</name></author>	</entry>

	</feed>