Pull to refresh

Comments 58

Я пробовал организовать в точности вашу схему. Просто никому это не нужно, вряд ли кто-то вообще зашел на сайт github.com, чего говорить про «всем учить git»…
Не очень понял относительно «пробовал». Если вы преподаватель, то ставите сдачу через github обязательным условием лабораторной, после чего я с большим интересом посмотрел бы на студента, который туда не зайдёт.
А если вы «ответственный студент Петя», то странно было бы ожидать, что все вдруг решат сделать так, как хочется вам.
UFO just landed and posted this here
Мы летнюю практику например у студентов на IT специальностях под svn пытались перевести )
Со временем и лабы думаю переведем.
У нас на одном из предметов задания выставляются в виде тикетов в trac, и есть svn куда закидываешь исходники, работу сделал, тикет закрыл код залил написал номер ривизии которую проверить. Удобно.
Да, кстати, для всякого рода халявы подобная система (если про нее знает преподаватель) губительна. Сразу будет видно, кто работал, а кто нет.
Для этого достаточно как можно раньше провести практическое занятие по использованию гитхаба — и просто не принимать курсовые или лабы с другом виде. Тоталитарный произвол — решает! :)
Я студент, а не препод. Препод принимает через что-то типа ejudge
а нафига в одном репозитории хранить кучу различных проектов связанных между собой только тем что их будут сдавать в один день?
Как правило лабы, например, объединены общей темой, то есть имеют что-то общее между собой.
и никто им не пользуется? нашел:
Факультет кібернетики
Статистика групи
Створено 24 березня 2009
Зареєстровано 3 користувачів
Вот группа на 40 человек, правда наверное это максимальное количество. Основное использование — как персональные svn репозитории.
Круто. В прошлом году закончил универ, а сегодня узнал о такой штуке.
Когда я учился в институте, интернет был далеко не в каждой лаборатории, да и то не для всех…
От знакомых студентов слышал, что они сейчас эффективно используют DropBox с расшариными для всех однокурсников папками. Просто, и доступно.
ну DropBox и git конечно вещи абсолютно разные и каждого есть свои плюсы и минусы.

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

С другой стороны в гите видно кто действительно что и в каком объеме сделал и кто где накосячил (и кому все исправлять)))
DropBox, кстати, замечательно сочетается с Git или Mercurial, если туда положить репозиторий.
На мой взгляд это зависит от специальности.
В эту зимнюю сессию готовились к одному из экзаменов с использованием DropBox. Выглядело это так: для экзамена с известными заранее вопросами создаётся общая папка. Внутри файл со списком вопросов. Далее при подготовке материала создаются файлы по вопросам билета (один вопрос-один файл). Под конец в головном файле-списке раскрашивали те вопросы, которые были плохо раскрыты. За время подготовки не было ни единой колизии правок (хотя по идее в дропбоксе такое может быть).
Под конец в папке лежала как минимум цифровая метода по курсу.
Идеально подошли бы гуглодоки
Гуглодоки не подходили так как сначала планировалось, что будет ещё куча всяких-разных сопроводительных файлов различного формата. Потом, эти файлы хочется взять в офлайн и перечитать по пути в универ/перед аудиторией. Насколько я знаю, гуглодоки надо вручную качать, чтобы была самая последняя версия на диске.
Для этого (в отличие от схемы из топика) обязательно нужен рут на машинах в вузе.
а у нас препод сразу из репозитория задачки проверял)
Так что это удобно)
Для студентов и преподавателей отлично подойдет среда групповой работы TeamWox. Можно вести и проекты и курсовые, общаться с преподавателями и сдавать работы прямо в электронном виде.

Причем эта система полностью бесплатна для образовательных учреждений любой страны.
Ну эта Ваша система более универсальная…
А в топике речь вроде про студентов IT специальностей, а им навыки использования систем контроля версий наверняка в последующей работе пригодятся еще.
Безусловно, без систем репозиториев для девелоперов никуда.

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

Можно прям сидя в аудитории сдавать свои работы со своего телефона :) Система имеет полную адаптацию к мобильным устройствам.
>Минусы: «Придется всем учить git/svn/hg и т.п.»
Вижу в этом только плюс, особенно для студентов программистов. В наше время это необходимость.
Да и учить-то там нечего. Признаюсь, знаю только hg, но частеньку учу им остальных. Что там учить-то? 5-6 команд: commit, push/pull/clone, status, diff, reverse, update + понятие ревизии и tip.
Так что «Учить hg» считаю очень натянутым понятие.
Эх, если бы я учился на программиста в универе и меня обучали бы git, я был бы против.
Но сейчас я бы предпочёл, чтобы мне вдолбили установку использовать распределённую систему как можно раньше. Тем более можно спросить у руководителя, что и как, а не собирать всю информацию в интернете.
О, а у нас(итмо) на С++ наподобие такого было в прошлом году, но немножко по-другому. Ща расскажу:

во-первых, мы хостились на ассембле, и каждый студент был добавлен в проект как участник — www.assembla.com/spaces/bx3v_wr_0r37hYeJe5d-aX/team.

и нам туда в свн клали домашнее задание(дз), мы создавали в свне папку со своим именем и туда клали дз.

После того, как мы доделывали свое дз, мы создавали тикет аля «check please». На ассембле дежурил бот, который при появлении подобного тикета скачивал наше решение, собирал, проверял на наборе тестов.
Если программа была бажная, в свн клался тест, и тикет возвращался к нам. Если программа была написана без багов, то тикет перенаправлялся нашему преподу на проверку на качество кода(за быдлокод нам отрывали руки).

Плюсы:
  • все знали свн
  • было нереально удобно делать дз(не надо было ловить препода и допытывать у него сдачу)
  • половина откровенной лажи, которую обычно сдают студенты — отсеивалось на автоматическом тестировании — улучшалось качество обучения

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

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

Кроме того, студенты могут общаться друг с другом. Причем так, что преподаватель не увидит их общения. Для этого нужно ставить флажок приватного общения на групповые обсуждения, причем тут-а-тет общение всегда по умолчанию приватное.
В качестве бонуса — можно поставить TeamWox Sync под Андроид и видеть все эвенты в push режиме. Это удобно как студентам, так и преподавателям.

А под остальными мобильниками (iPhone, Android, Windows Mobile 6, Windows Phone 7, Blackberry и Symbian) можно иметь прямой доступ ко всей системе.
UFO just landed and posted this here
UFO just landed and posted this here
Спасибо! Одно только ограничение. Не всегда есть интернет у студентов, так что вариант поставить в университетской сети желательнее.
Потому что Github. Почему Bitbucket проигрывает Github? Потому что на Bitbucket'e большинство народу прячут код в приватные репозитории. Таким образом он превращается просто в хостинг. GitHub же — социальная сеть. Я не считаю, что Mercurial чем-то хуже или лучше, чем Git, просто мне нравится подход Github'a, поэтому на его примере я и рассмотрел эту идею.
То что там кто-то чего-то куда-то прячет — не значит, что остальные должны делать так же.
На мой взгляд, напротив, github — абсолютно открытая, но свалка никому не нужной кроме авторам мелкой ерунды.
Почему не гуглокод? Обсуждали с народом, там вроде нет приватных сорцов.
В плане гуглокод == меркуриал имеется ввиду.
Удобство и приятность интерфейса играет не последнюю роль :)
Автор молодец, несмотря на то, что идея стара. Я вот лично использую Git (не только репозитории на github) и для иных целей, очень удобно в плане синхронизации, версионирования и «отсутствии возможности запутаться».
Ну примерно так и живем. Раньше в вики хранили все сорцы и глядели чужие, сейчас проекты побольше стали (лаба обычно 1-2 файла, а курсовик много больше) и удобнее гуглокодом с меркуриалом пользоваться.
Бауманка/ИУ.
А какая специальность, курс, если не секрет? :) Я тоже на ИУ (6 кафедра, 6-й курс), у нас таким не пахнет, увы.
Я преподаю уже 9 лет, помимо работы разработчиком, так что вот вам мнение препода :)

Положительные стороны:
— Централизованное хранилище заданий и результатов. Во многих ВУЗах этого до сих пор нет, а тут — всё под рукой. И не будет типичных проблем накануне сессии из серии «у меня вчера вылетел жесткий диск, что смог, то восстановил, поставьте-хотя-бы-тройку!!!» :)
— Обучение системам контроля версий и багтрекингу. Очень правильно. Сам я давно занимаюсь SCM (см. бложик), так что меня это радует вдвойне.
— Практика командного взаимодействия. Сначала — между преподом и студентом, потом обязательно начинается работа внутри группы. К тому же многие учебные программы имеют курсовые или лабораторные, прямо предназначенные для коллективной работы.

Отрицательные стороны (как без них)
— Необходимость наличия интернета. Да, для многих ВУЗов это до сих пор проблема. Кроме того, есть компьютерные классы, где выход в интернет запрещён или невозможен по техническим причинам.
— Привязка с конкретному инструменту. git и те тулзы, которые доступны на гитхабе — на них свет клином не сошелся. Есть ещё и централизованные VCS, они всё ещё имеют немалое право на существование, особенно коммерческие решения. В общем, получится очень однобоко, а это не есть правильно с точки зрения учебного процесса.
— Работа на стороннем сервисе. Вы не контролируете данные, находящиеся на сервисе. Но поскольку данные эти — не несут коммерческой инфы и их утрата не окажет большого влияния на учебу в целом (есть локальные копии), то минус это небольшой.
— Нет гарантии, что гитхаб не изменит свою политику и не ограничит подобные варианты использования.

В целом — хорошее решение, на мой взгляд. Спасибо за заметку, запомнил у себя :)
Можно развернуть свой gitorious на сервере института (плюс открыть его наружу, если нужно) и избежать всех перечисленных проблем. Однобокости в обучении не будет, потому что распределенные VCS покрывают все возможности централизованных, но никак не наоборот. А привязка к конкретному продукту в практических работах неизбежна. Тут уж вы, как преподаватель, должны увидеть перспективы каждой VCS и выбрать наиболее перспективную для обучения.
> распределенные VCS покрывают все возможности централизованных

Это неверно, увы. У них разные принципы работы и часть функционала просто не пересекается, так что о полной заменяемости централизованных средств децентрализованными утверждать нельзя по определению. Я могу долго ещё вести holy war, смысл не изменится: на DVCS свет клином не сошелся.

Хотя, конечно, DVCS — это сильный тренд последних 2-3 лет, бесспорно. И конечно им стоит уделять время на практических занятиях, здесь полностью согласен.
Прочитал топик и позавидовал — когда я учился в универе, нам приходилось коннектиться друг с другом при помощи модемов через telnet. Если скорость была больше 18Кбс и не обрывалась — это было счастье.
На github, если я не ошибаюсь, нельзя создавать бесплатно приватные репозитории. Тем, кому это нужно могу порекомендовать Assembla
Эх. А у нас не было никаких совместных проектов по программированию, все только индивидуальное.
мде, моим одногруппникам было даже лень заполнить форму для анкеты выпускника, созданную мной на гугл-доксах. все, как дибилы заполняли доковский файл и присылали старосте на мыло. и это айтишники!
при чем, даже моя сестра, которая учится на лингвистическом, со своими девченками пользовалась гугл-документами.
Sign up to leave a comment.

Articles