<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>https://www.wikicshse.ru/index.php?action=history&amp;feed=atom&amp;title=%D0%A0%D0%B5%D0%BA%D0%BE%D0%BC%D0%B5%D0%BD%D0%B4%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%B0%D1%8F_%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%B0_%28%D1%81%D0%B5%D0%BC%D0%B8%D0%BD%D0%B0%D1%80%29</id>
	<title>Рекомендательная система (семинар) - История изменений</title>
	<link rel="self" type="application/atom+xml" href="https://www.wikicshse.ru/index.php?action=history&amp;feed=atom&amp;title=%D0%A0%D0%B5%D0%BA%D0%BE%D0%BC%D0%B5%D0%BD%D0%B4%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%B0%D1%8F_%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%B0_%28%D1%81%D0%B5%D0%BC%D0%B8%D0%BD%D0%B0%D1%80%29"/>
	<link rel="alternate" type="text/html" href="https://www.wikicshse.ru/index.php?title=%D0%A0%D0%B5%D0%BA%D0%BE%D0%BC%D0%B5%D0%BD%D0%B4%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%B0%D1%8F_%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%B0_(%D1%81%D0%B5%D0%BC%D0%B8%D0%BD%D0%B0%D1%80)&amp;action=history"/>
	<updated>2026-06-06T19:21:18Z</updated>
	<subtitle>История изменений этой страницы в вики</subtitle>
	<generator>MediaWiki 1.45.3</generator>
	<entry>
		<id>https://www.wikicshse.ru/index.php?title=%D0%A0%D0%B5%D0%BA%D0%BE%D0%BC%D0%B5%D0%BD%D0%B4%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%B0%D1%8F_%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%B0_(%D1%81%D0%B5%D0%BC%D0%B8%D0%BD%D0%B0%D1%80)&amp;diff=2436&amp;oldid=prev</id>
		<title>imported&gt;Simagin.denis: Migrated current public revision from wiki.cs.hse.ru</title>
		<link rel="alternate" type="text/html" href="https://www.wikicshse.ru/index.php?title=%D0%A0%D0%B5%D0%BA%D0%BE%D0%BC%D0%B5%D0%BD%D0%B4%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%B0%D1%8F_%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%B0_(%D1%81%D0%B5%D0%BC%D0%B8%D0%BD%D0%B0%D1%80)&amp;diff=2436&amp;oldid=prev"/>
		<updated>2016-06-01T11:05:45Z</updated>

		<summary type="html">&lt;p&gt;Migrated current public revision from wiki.cs.hse.ru&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Семинар проекта [[Рекомендательная система (проект)]], последние семинары&lt;br /&gt;
[http://wiki.cs.hse.ru/Рекомендательная_система_(семинар)#.D0.A1.D0.B5.D0.BC.D0.B8.D0.BD.D0.B0.D1.80.D1.8B здесь]&lt;br /&gt;
&lt;br /&gt;
==Правила игры ==&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Ментор:&amp;#039;&amp;#039;&amp;#039; [[Участник:Simagin.denis|Симагин Денис]].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Место:&amp;#039;&amp;#039;&amp;#039; офис Яндекса ([https://maps.yandex.ru/213/moscow/?ll=37.590150%2C55.734065&amp;amp;z=18&amp;amp;l=stv%2Csta&amp;amp;panorama%5Bpoint%5D=37.589416%2C55.733747&amp;amp;panorama%5Bdirection%5D=40.412258%2C-11.910596&amp;amp;panorama%5Bspan%5D=130.000000%2C52.209677 место встречи])&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Время:&amp;#039;&amp;#039;&amp;#039; c 17:30, вторник.&lt;br /&gt;
&lt;br /&gt;
Общение с ментором вне занятий семинара приветствуется. Можно задавать вопросы, в том числе философские, или советоваться. Но перед тем, как написать письмо, попробуйте спросить это у [https://ya.ru Яндекса]. Также не обижайтесь, если в ответ вам пришла ссылка на документацию, поверьте, порой сложно объяснить лучше, чем написано там.&lt;br /&gt;
&lt;br /&gt;
===Ключевые точки===&lt;br /&gt;
Сверху нам спущены ключевые точки выполнения проекта. Для нас они скорее явлются формальными, тем не менее мы должны их соблюдать.&lt;br /&gt;
# &amp;#039;&amp;#039;&amp;#039;1-6 февраля&amp;#039;&amp;#039;&amp;#039; - первая неделя занятий со студентами.&lt;br /&gt;
# &amp;#039;&amp;#039;&amp;#039;22-28 февраля&amp;#039;&amp;#039;&amp;#039; - 1 точка, вы определились с ресурсом, и приближайтесь к выполнению заданий на 4.&lt;br /&gt;
# &amp;#039;&amp;#039;&amp;#039;28 марта - 3 апреля&amp;#039;&amp;#039;&amp;#039; - сессия у студентов.&lt;br /&gt;
# &amp;#039;&amp;#039;&amp;#039;25-30 апреля&amp;#039;&amp;#039;&amp;#039; - 2 точка, часть на 4 выполнена и прошла ревью. Вы создали список заданий для повышения оценки и к нему приступили.&lt;br /&gt;
# &amp;#039;&amp;#039;&amp;#039;30 мая - 3 июня&amp;#039;&amp;#039;&amp;#039; - окончание проектной работы, вы готовы, как пионеры. &lt;br /&gt;
# &amp;#039;&amp;#039;&amp;#039;начало июня&amp;#039;&amp;#039;&amp;#039; - конкурс проектов.&lt;br /&gt;
 &lt;br /&gt;
===Репозиторий===&lt;br /&gt;
Мы будем использовать [https://en.wikipedia.org/wiki/Git_(software) git] в качестве системы контроля версий.&lt;br /&gt;
Удаленный репозиторий будет находиться на [https://bitbucket.org bitbucket]. Заведите там себе учетную запись и создайте репозиторий учебного проекта. Он должен быть приватным, доступ должен быть только у вас, [https://bitbucket.org/dasimagin/profile/repositories ментора] и [https://bitbucket.org/cs-hse-projects/ кураторов]. &lt;br /&gt;
&lt;br /&gt;
===Разработка===&lt;br /&gt;
У вас должен быть план и описание проекта, которые выложены на wiki репозитория. Также вы должны вести дневник своей разработки. Указывать там трудности, с которыми столкнулись, причины принятия тех или иных решений, анализ результатов и экспериментов.&lt;br /&gt;
&lt;br /&gt;
Ваш процесс разработки должен выглядеть следующим образом. Вы создаете себе issue, даете исчерпывающее описание. Создаете новую ветку и ведете в ней разработку. Какие-то проверенные куски кода нужно фиксировать в виде commit-ов и делать периодические push в удаленный репозиторий. Когда issue выполнено, вы вливайтесь в master-ветку с помощью merge --squash и делаете commit, название которого соответствует выполненному issue.&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;
# Оцените сами себя по 10-балльной шкале.&lt;br /&gt;
# Как вы оцениваете работу ментора и общую организацию проекта? Укажите достоинства и недостатки.&lt;br /&gt;
&lt;br /&gt;
В итоге необходимо прислать pdf и подготовить рассказ на 5-7 минут.&lt;br /&gt;
&lt;br /&gt;
==Материалы==&lt;br /&gt;
&lt;br /&gt;
===Python===&lt;br /&gt;
====Общая информация====&lt;br /&gt;
# О языке [https://docs.python.org/3/tutorial/index.html Python],  и его стандартной [https://docs.python.org/3/library/index.html библиотеке].&lt;br /&gt;
# Что такое [https://en.wikipedia.org/wiki/Global_interpreter_lock GIL]?&lt;br /&gt;
&lt;br /&gt;
====Стандартная библиотека====&lt;br /&gt;
# Обработка ключей программы - [https://docs.python.org/3/library/argparse.html argparse lib].&lt;br /&gt;
#  Многопоточность в Python - [https://docs.python.org/3/library/threading.html threading].&lt;br /&gt;
# Работе с сетью - [https://docs.python.org/3/library/urllib.html URL handling modules].&lt;br /&gt;
# Регулярные выражения - [https://docs.python.org/3/library/re.html Regular expression operations].&lt;br /&gt;
# Парсер HTML - [https://docs.python.org/3/library/markup.html markup tool].&lt;br /&gt;
# Логирование - [https://docs.python.org/3/library/logging.html logging].&lt;br /&gt;
# Инструмент для отладки - [https://docs.python.org/3/library/pdb.html pdb].&lt;br /&gt;
&lt;br /&gt;
====Библиотеки====&lt;br /&gt;
# Математика - [http://docs.scipy.org/doc/numpy/reference/ numpy] и [http://docs.scipy.org/doc/scipy/reference/ scipy]&lt;br /&gt;
# Графики - [http://matplotlib.org plot]&lt;br /&gt;
# Машинное обучение - [http://scikit-learn.org/stable/index.html SciKit learn].&lt;br /&gt;
&lt;br /&gt;
====Инструменты====&lt;br /&gt;
# Менеджер пакетов - [http://pip.readthedocs.org/en/stable/ pip]&lt;br /&gt;
# Удобная среда для экспериментов - [http://ipython.org/notebook IPyhton].&lt;br /&gt;
# Удобный редактор - [http://www.sublimetext.com Sublime Text 3].&lt;br /&gt;
# Популярная IDE для ленивых - [http://www.jetbrains.com/pycharm/ PyCharm].&lt;br /&gt;
&lt;br /&gt;
===Примеры===&lt;br /&gt;
* Загрузка страницы семинара помощью библиотеки urllib [http://pastebin.com/qcqdQZLD [source]].&lt;br /&gt;
* Простейший парсер HTML5 (извлекает заголовок страницы семинар) [http://pastebin.com/fCshurqB [source]].&lt;br /&gt;
* Набор [https://github.com/dasimagin/Project2016/tree/master/tutorials туториалов] по машинному обучению.&lt;br /&gt;
&lt;br /&gt;
===Git===&lt;br /&gt;
* Кратко о контроле версий можно прочитать [http://git-scm.com/book/ru/v1/Введение-О-контроле-версий здесь].&lt;br /&gt;
* Git, за или против? Можно посмотреть [https://ru.wikipedia.org/wiki/Git#.D0.9F.D1.80.D0.B5.D0.B8.D0.BC.D1.83.D1.89.D0.B5.D1.81.D1.82.D0.B2.D0.B0_.D0.B8_.D0.BD.D0.B5.D0.B4.D0.BE.D1.81.D1.82.D0.B0.D1.82.D0.BA.D0.B8 здесь]&lt;br /&gt;
* [https://code.google.com/p/support/wiki/DVCSAnalysis Git Vs Mercurial] и [https://code.google.com/p/support/wiki/ChoosingAVersionControlSystem Git Vs SVN]&lt;br /&gt;
* [https://try.github.io Code School - Try Git] интерактивная почти игра, которая учит основным командам Git.&lt;br /&gt;
* [http://git-scm.com/doc Git - Documentation] официальная документация Git. &lt;br /&gt;
* [https://www.atlassian.com/git/tutorials/ Atlassian git tutorial] стань git гуру&lt;br /&gt;
&lt;br /&gt;
===Книги===&lt;br /&gt;
* [http://learning-python.com/books/about-lp5e.html Learning Python, 5th,  Mark Lutz]&lt;br /&gt;
* [http://git-scm.com/book/ru/v1 Pro Git, 1th, Scott Chacon and Ben Straub]&lt;br /&gt;
&lt;br /&gt;
===Статьи===&lt;br /&gt;
* [https://brett.is/writing/about/my-python-web-crawler/ My Python Web Crawler - Brett.Is] How to write a very simplistic Web Crawler in Python for fun.&lt;br /&gt;
&lt;br /&gt;
== Семинары ==&lt;br /&gt;
&lt;br /&gt;
===S05.31===&lt;br /&gt;
Защита проектов. Итоговые оценки.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Студент !! Оценка&lt;br /&gt;
|-&lt;br /&gt;
| Остяков Павел || 10&lt;br /&gt;
|-&lt;br /&gt;
| Иовлева Анастасия || 8&lt;br /&gt;
|-&lt;br /&gt;
| Артемьев Максимилиан || 8&lt;br /&gt;
|-&lt;br /&gt;
| Жилкина Ксения || 7&lt;br /&gt;
|-&lt;br /&gt;
| Глазкова Екатерина  || 7&lt;br /&gt;
|-&lt;br /&gt;
| Крутой Никита  || 7&lt;br /&gt;
|-&lt;br /&gt;
| Лазарев Владислав  || 6&lt;br /&gt;
|-&lt;br /&gt;
| Батурин Валера  || 6&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===S04.19===&lt;br /&gt;
Говорили о том, как делать первые шаги в обучение.&lt;br /&gt;
Стоит почитать [http://scikit-learn.org/stable/tutorial/text_analytics/working_with_text_data.html этот] мануал.&lt;br /&gt;
Там все достаточно подробно описано.На что нужно обратить внимание:&lt;br /&gt;
# Как из текста создать вектор признаков. Что такое  tf-idf.&lt;br /&gt;
# Посмотреть, как обучается модель. Это очень просто.&lt;br /&gt;
# Обратить внимание на тестирование полученного классификатора и настройку его внешних параметров.&lt;br /&gt;
&lt;br /&gt;
Начать свое обучение советую с [http://scikit-learn.org/stable/modules/generated/sklearn.linear_model.SGDClassifier.html#sklearn.linear_model.SGDClassifier SGDClassifier].&lt;br /&gt;
Если будут какие-то вопросы, то обращайтесь. И не отчаивайтесь, если качество классификатора низкое. Это нормально, так как у вас маленькая выборка для обучения.&lt;br /&gt;
Попробуйте разметить хотя бы 120 статей. Тогда можно разделить выборку на 3 части, к примеру, так: 80 - обучение, 20 -- настройка внешних параметров, 20 -- тестирование.&lt;br /&gt;
&lt;br /&gt;
===H04.16===&lt;br /&gt;
Принципиально новый материал не был рассмотрен. Зато мы увидели, как [https://vk.com/zhuzhilkina Ксюша] ела бургер :)&lt;br /&gt;
&lt;br /&gt;
===S04.12===&lt;br /&gt;
Пообщались в Starbacks с теми, кто пришел.&lt;br /&gt;
&lt;br /&gt;
# Как поднять демона.&lt;br /&gt;
# Что такое [https://en.wikipedia.org/wiki/Cron cron].&lt;br /&gt;
# Дал наводку на команду [https://en.wikipedia.org/wiki/Alias_(command) alias].&lt;br /&gt;
&lt;br /&gt;
===S04.06===&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;Занятие не состоялось!&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
===S03.16===&lt;br /&gt;
&lt;br /&gt;
# Говорили  о [https://en.wikipedia.org/wiki/Gradient_descent градиентном спуске].&lt;br /&gt;
# Делали первые шаги в ipython и в машинном обучении на основе этого [https://github.com/dasimagin/Project2016/blob/master/tutorials/1.Linear%20regresion.ipynb туториала].&lt;br /&gt;
&lt;br /&gt;
===S03.09===&lt;br /&gt;
====Задача линейной классификации====&lt;br /&gt;
# [https://en.wikipedia.org/wiki/Statistical_classification Задача классификации].&lt;br /&gt;
# [https://en.wikipedia.org/wiki/Linear_separability Линейная разделимость].&lt;br /&gt;
# [http://www.machinelearning.ru/wiki/index.php?title=Линейный_классификатор Линейный классификатор].&lt;br /&gt;
# [http://www.machinelearning.ru/wiki/index.php?title=Метод_наименьших_квадратов Метод наименьших квадратов].&lt;br /&gt;
# [http://www.machinelearning.ru/wiki/index.php?title=Логистическая_регрессия Логистическая регрессия].&lt;br /&gt;
&lt;br /&gt;
Затронули тему создания признаков, а конкретно [https://en.wikipedia.org/wiki/Tf–idf tf-idf].&lt;br /&gt;
&lt;br /&gt;
====Python====&lt;br /&gt;
# Как работает [https://docs.python.org/3/reference/import.html импорт].&lt;br /&gt;
# Немного о документации в Python, или [https://www.python.org/dev/peps/pep-0257/ PEP-257].&lt;br /&gt;
&lt;br /&gt;
====Задание====&lt;br /&gt;
# Подробно изучить [http://www.machinelearning.ru/wiki/index.php?title=Метод_градиентного_спуска метод градиентного спуска].&lt;br /&gt;
# Ознакомиться с [http://www.machinelearning.ru/wiki/index.php?title=SVM SVM].&lt;br /&gt;
&lt;br /&gt;
===H02.23===&lt;br /&gt;
# Провели своеобразный хакатон. Мне он показался не самым плодотворным...&lt;br /&gt;
# Поели пиццу с роллами и, надеюсь, еще больше сдружились.&lt;br /&gt;
&lt;br /&gt;
====Задание====&lt;br /&gt;
# В предстоящие выходные (27-28) проведем первый раунд ревью. Доведите до ума то, что успеете. После ревью вы получите представление о том, как должен выглядеть код.&lt;br /&gt;
&lt;br /&gt;
====Материалы====&lt;br /&gt;
# Пример [https://github.com/dasimagin/Project2016/tree/master/wiki-crawler crawler-а] для [https://simple.wikipedia.org simple wikipedia].&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
===S02.17===&lt;br /&gt;
# Обсудили, у кого какие проблемы возникли за прошедшую неделю.&lt;br /&gt;
# Договорились делать более подробные коммиты и таски.&lt;br /&gt;
# Провели небольшое введение в машинное обучение.&lt;br /&gt;
&lt;br /&gt;
====Задание====&lt;br /&gt;
# Писать crawler&lt;br /&gt;
# Подумать, как дообучать линейный классификатор, если в мешке слов появляются новые частые слова&lt;br /&gt;
# Изучить команду [https://en.wikipedia.org/wiki/Less_(Unix) less]&lt;br /&gt;
# Изучить - [https://docs.python.org/3.5/tutorial/interpreter.html это]&lt;br /&gt;
# Добиться понимания, что такое [https://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol http]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
===S02.10===&lt;br /&gt;
&lt;br /&gt;
====Как вести репозиторий====&lt;br /&gt;
# Обязательно должна быть своя вики (та, которая на битбакете). В ней нужно вести подробный дневник разработки, так, чтобы можно было открыть и сразу понять, что происходит, как шла работа, зачем все и как устроено.&lt;br /&gt;
# Проект разбивается на подзадачи. Для каждой из них нужен емкий issue, справка на вики и отдельная ветка. Перед тем, как сливать с основной веткой, написать ментору для ревью.&lt;br /&gt;
# Для слияния веток использовать merge только с ключом --squash.&lt;br /&gt;
Ревью будет протекать по почте, в виде комментариев к diff&amp;#039;у между текущей версией и последней проверенной.&lt;br /&gt;
&lt;br /&gt;
====Git====&lt;br /&gt;
Обсуждали, как в целом устроен git. Commited, stage, work, где что находится. Рассказали, как работает .gitignore в зависимости от расположения. Упомянули некоторые команды:&lt;br /&gt;
* git add -i добавляет в stage не целый файл, а отдельные строчки;&lt;br /&gt;
* git reset может удалять из stage;&lt;br /&gt;
* git add -u добавляет только те файлы, которые раньше уже когда-то добавлялись;&lt;br /&gt;
* git commit --amend позволяет поменять название последнего коммита;&lt;br /&gt;
* git log показывает историю коммитов;&lt;br /&gt;
* git status показывает статус (отслеживаемость) файлов;&lt;br /&gt;
* git &amp;lt;comand&amp;gt; --help всегда подробно расскажет, как устроена команда и какие у нее есть интересные ключи.&lt;br /&gt;
&lt;br /&gt;
====Сrawler====&lt;br /&gt;
Работа crawler&amp;#039;а проходит примерно следующим образом:&lt;br /&gt;
# Находит ссылки на все еще не скаченные статьи.&lt;br /&gt;
# Скачивает их и сохраняет в качестве html-текста в отдельную директорию.&lt;br /&gt;
# Чистит html от бесполезных тегов и прочего, оставляя только текст. Полученный результат сохраняется отдельно как txt-файл.&lt;br /&gt;
Если хочется использовать базы данных для хранения файлов, то выбирать те, с которыми можно работать напрямую через Python.&lt;br /&gt;
&lt;br /&gt;
Crawler должен быть реализован как консольная утилита (см. библиотеку argparse) и в нем должны присутствовать следующие команды со следующими ключами:&lt;br /&gt;
#update. Только находит ссылки.&lt;br /&gt;
#*--help. Инструкция к команде.&lt;br /&gt;
#*--from. С какого числа искать статьи.&lt;br /&gt;
#*--to. По какое число искать статьи.&lt;br /&gt;
#*--print. Выписывает найденные ссылки.&lt;br /&gt;
#download. Скачивает статьи.&lt;br /&gt;
#*--help. Инструкция к команде.&lt;br /&gt;
#*--all. Догружает все незагруженные статьи.&lt;br /&gt;
#*[urls]. Загружает только определенные статьи.&lt;br /&gt;
#*-t. Для потоков, если они есть.&lt;br /&gt;
#clean. Чистит html статьи от мусора, оставляя только текст. Ключи аналогично download, кроме -t.&lt;br /&gt;
Использовать библиотеки, отличные от тех, которые указаны на этой вики-странице (например, requests, bs4), нельзя.&lt;br /&gt;
&lt;br /&gt;
Примеры:&lt;br /&gt;
* Загрузка страницы семинара помощью библиотеки urllib [http://pastebin.com/qcqdQZLD [source]].&lt;br /&gt;
* Простейший парсер HTML5 (извлекает заголовок страницы семинар) [http://pastebin.com/fCshurqB [source]].&lt;br /&gt;
&lt;br /&gt;
====Задание====&lt;br /&gt;
# К следующему семинару в вас должны быть наработки по crawler-у.&lt;br /&gt;
# Изучите команды man, ls, cd, screen, echo, cat,  chmod.&lt;br /&gt;
# Почитайте про [https://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol http].&lt;br /&gt;
&lt;br /&gt;
====Материалы====&lt;br /&gt;
=====Про гит=====&lt;br /&gt;
# Кратко о контроле версий можно прочитать [http://git-scm.com/book/ru/v1/Введение-О-контроле-версий здесь].&lt;br /&gt;
# Git, за или против? Можно посмотреть [https://ru.wikipedia.org/wiki/Git#.D0.9F.D1.80.D0.B5.D0.B8.D0.BC.D1.83.D1.89.D0.B5.D1.81.D1.82.D0.B2.D0.B0_.D0.B8_.D0.BD.D0.B5.D0.B4.D0.BE.D1.81.D1.82.D0.B0.D1.82.D0.BA.D0.B8 здесь]&lt;br /&gt;
# [https://code.google.com/p/support/wiki/DVCSAnalysis Git Vs Mercurial] и [https://code.google.com/p/support/wiki/ChoosingAVersionControlSystem Git Vs SVN]&lt;br /&gt;
&lt;br /&gt;
=====Про Python=====&lt;br /&gt;
# Библиотека [https://docs.python.org/3/library/argparse.html argparse].&lt;br /&gt;
# Что такое [https://en.wikipedia.org/wiki/Global_interpreter_lock GIL]?&lt;br /&gt;
#  Многопоточность в Python - [https://docs.python.org/3/library/threading.html threading].&lt;br /&gt;
&lt;br /&gt;
=====Man=====&lt;br /&gt;
# Что такое [https://en.wikipedia.org/wiki/Man_page man]?&lt;br /&gt;
# Что такое [https://en.wikipedia.org/wiki/GNU_Screen screen]?&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
===S02.03===&lt;br /&gt;
# Обсудили организационные моменты.&lt;br /&gt;
# Выяснили, кто какие ресурсы собирается взять (выбор можно изменить в течение недели).&lt;br /&gt;
# Поговорили о git.&lt;br /&gt;
# Дружно попили чай ;)&lt;br /&gt;
&lt;br /&gt;
====Немного о crawler-e====&lt;br /&gt;
Необходимые операции:&lt;br /&gt;
# Скачать всю статью в HTML.&lt;br /&gt;
# Распарсить статью. Почистить от всякого мусора: картинок, ссылок, прочего, оставить только текст. Если есть опыт работы с базами, то можно использовать их, в противном случае лучше не тратить время на их изучение, достаточно хранить все в обычной директории. Распарсенные статьи хранятся отдельно, у них должны быть свои индексы и нужно уметь сопоставлять этот индекс с url статьи.&lt;br /&gt;
# Добыть ссылки на все статьи.&lt;br /&gt;
# Определить свежесть статьи.&lt;br /&gt;
# Получить ссылки нановые статьи.&lt;br /&gt;
&lt;br /&gt;
====Задание====&lt;br /&gt;
# Разобраться c гитом, подготовить вопросы.&lt;br /&gt;
# Создать репозиторий проекта в bitbucket.&lt;br /&gt;
# Оценить сложность написания crawler-а для своего ресурса, возможно, изменить его.&lt;br /&gt;
# Кто уже знает git, по желанию может уже начать писать crawler.&lt;br /&gt;
&lt;br /&gt;
====Материалы====&lt;br /&gt;
* [https://try.github.io Code School - Try Git] интерактивная игра, которая учит основным командам Git.&lt;br /&gt;
* [http://git-scm.com/doc Git - Documentation] официальная документация Git. &lt;br /&gt;
* [http://git-scm.com/book/ru/v1 Git - Book] перевод довольно обширной обучающей книги о Git от Скотта Шакона.&lt;br /&gt;
* [https://github.com/andreiled/mipt-cs-4sem/wiki/%D0%9F%D0%BE%D1%88%D0%B0%D0%B3%D0%BE%D0%B2%D0%B0%D1%8F-%D0%B8%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%86%D0%B8%D1%8F-%D0%BF%D0%BE-%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%B5-%D1%81-git-%D0%B8-github-%D0%B4%D0%BB%D1%8F-%D1%81%D1%82%D1%83%D0%B4%D0%B5%D0%BD%D1%82%D0%BE%D0%B2 Пошаговая инструкция по работе с git и github для студентов] маленькая обзорная статья, с чего начать.&lt;br /&gt;
* [https://brett.is/writing/about/my-python-web-crawler/ My Python Web Crawler - Brett.Is] How to write a very simplistic Web Crawler in Python for fun.&lt;/div&gt;</summary>
		<author><name>imported&gt;Simagin.denis</name></author>
	</entry>
</feed>