Свободное программное обеспечение в высшей школе:...

98
АНО «Институт логики, когнитологии и развития личности» ALT Linux НОУ «ИПС-Университет г. Переславля им. А. К. Айламазяна» Институт Программных Систем РАН Пятая конференция «Свободное программное обеспечение в высшей школе» Переславль, 30–31 января 2010 года Тезисы докладов Москва, Институт логики, 2010

Upload: doannhi

Post on 08-Dec-2016

218 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

АНО «Институт логики, когнитологии и развития личности»

ALT Linux

НОУ «ИПС-Университет г. Переславля им. А. К. Айламазяна»

Институт Программных Систем РАН

Пятая конференция

«Свободное программное обеспечениев высшей школе»

Переславль, 30–31 января 2010 года

Тезисы докладов

Москва,

Институт логики,

2010

Page 2: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

В книге собраны тезисы докладов, одобренных Программным ко-митетом пятой конференции «Свободное программное обеспечение ввысшей школе».

c© Коллектив авторов, 2010

Page 3: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

Программа

конференции

30 января

11:30 А. Е. Новодворский. Открытие. Информация оргкомитета

11:45 С.М.Абрамов. Приветственное слово

12:00–12:30 Н.Н.Непейвода

Принципиальные ограничения свободного софта . . . . . . . . . . 7

12:30–13:00 И. А. Хахаев

LMS Moodle и видеоконференции . . . . . . . . . . . . . . . . . . . . . . 10

13.00–13.20 Кофе-брейк

13:20–13:50 И. В. Парамонов, А.М. Васильев

Опыт организации кроссплатформенной образовательнойсреды для обучения студентов программированию . . . . 12

13:50–14:05 С. Э. Грегер

Пакет компонентов обеспечения информационнойподдержки образовательного процесса для учебногопортала на базе CMS Plone . . . . . . . . . . . . . . . . . . . . . . . . 15

14:05–14:20 С. Э. Грегер

Опыт преподавания СПО при подготовкепрофессиональных программистов . . . . . . . . . . . . . . . . . . 18

14:20–14:50 Е. А. Чичкарев

Разработка и использование расширений OpenOffice дляработы с системами компьютерной математики . . . . . . . 22

14.50–17.00 Обед и заселение

Page 4: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

4 Программа конференции

17:00–17:30 Е. Р. Алексеев, И.Шевченко

Выбор свободно распространяемого программногообеспечения для учебного процесса (на примерекафедры ВМиП ДонНТУ) . . . . . . . . . . . . . . . . . . . . . . . . . 25

17:30–18:00 В. Г. Слугин

Внедрение, использование и сопровождение СПОв учебном заведении на примере ФГОУ СПО «НРТК» 27

18:00–18:30 Ю.Азовцев

3D-моделирование и анимация в Blender для школ и ВУЗов 30

18:30–19:00 Д.А.Костюк

Изучение низкоуровневого программирования ивычислительной архитектуры на базе платформыGNU/Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

31 января

10:00–10:30 Г. В. Курячий, А. А. Панюкова

Опыт преподавания курса «Сопровожнение пакетовв Linux» на ВМиК МГУ . . . . . . . . . . . . . . . . . . . . . . . . . . 36

10:30–11:00 Д.А.Пынькин, И.И. Глецевич

Проектирование IT-инфраструктуры учебных заведенийна базе ОС Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

11:00–11:30 А.О.Маковецкий

Автоматизация систем информирования и оповещениястудентов ВУЗа на базе свободного программногообеспечения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

11:30–11:50 В. Кулямин, В. Рубанов, А. Хорошилов

О комитете по образованию и высшей школе РоссийскойАссоциации Свободного Программного Обеспечения . . . 46

11.50–12.10 Кофе-брейк

12:10–12:30 А. Г. Кушниренко, А. Г. Леонов, М.А. Ройтберг,

Я. Н. Зайдельман, А. В. Карпов, Е. В. Святушенко, Н.М. Субоч,

Д. В. Хачко, В. В. Яковлев

Система КуМир — новые возможности . . . . . . . . . . . . . . . . . . 50

Page 5: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

Программа конференции 5

12:30–12:50 А. Г. Кушниренко, А. Г. Леонов, М.А. Ройтберг,

В. В. Яковлев

ПиктоМир — программирование для дошкольников . . . . . . . 52

12:50–13:10 А. Г. Кушниренко, А. Г. Леонов, М.А. Ройтберг, В.И. Хачко,

Д. В. Хачко, В. В. Тарасова, В. В. Яковлев

Новые Миры в системе КуМир . . . . . . . . . . . . . . . . . . . . . . . . 56

13:10–13:30 Д.А.Кузнецов

Разработка программного обеспечения для работыучебного заведения на базе СПО . . . . . . . . . . . . . . . . . . . 59

13:30–14:30 Обед

14:30–14:50 И. Чубин

Виртуальные сети как часть живой документации . . . . . . . . 61

14:50–15:10 И. П. Русинов, И. А. Нечаев

Свободное программное обеспечение для научныхисследований по квантовой теории конденсированныхсред . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66

15:10–15:30 М.Ш.Исламов

Динамический Рефал — инструмент для обучениясентенциальному программированию . . . . . . . . . . . . . . . . 68

15:30–15:45 А.Н.Пустыгин, О.И. Суворов, И. С. Ермолаев, Д. С. Ботов,

А. С. Новиков, В. П.Поляков, Б. Тарелкин, Д. Егоров

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

15:45–16:00 А.Н.Пустыгин, О.И. Суворов, И. С. Ермолаев, Д. С. Ботов,

А. С. Новиков, В. П.Поляков, Б. Тарелкин, Д. Егоров

Опыт разработки инструментов исследованияпрограммного обеспечения с открытым исходным кодом 73

16:00–16:20 М.М.Дронов, Д.М.Ахметов

Интеграция взаимодействия проекта внедрения СПОв образовании и деятельности групп пользователейLinux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76

16:20–16:40 Кофе-брейк

Page 6: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

6 Программа конференции

16:40–17:00 Ю.П.Немчанинова, Е. Г. Пьяных

Проблема развития ИКТ-компентности педагогическихкадров в условиях перехода на свободное программноеобеспечение и организационно-педагогические условияее решения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

17:00–17:20 Е. С. Васильева

Самостоятельное изучение языка РЕФАЛ в высшейшколе: проблемы и их преодоление . . . . . . . . . . . . . . . . . 83

17:20–17:40 В. А. Бондаренко

Информационная система учебного заведения на базесвободного программного обеспечения на примереНижегородского радиотехнического колледжа . . . . . . . . 86

17:40–18:00 Н.Живчикова, Е. Иванов, А. Котомин, Е. Титова

Информационная поддержка трекинга учебных практик инаучных конференций . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89

18:00–18:20 Е.Л. Сыромятников

Курс «Сопровождение пакетов в Linux» — заметки на полях 92

Вне программы

П. Е. Еньков

Вычислительный кластер ЭВМ на основе операционнойсистемы ALTLinux с использованием свободногопрограммного обеспечения (СПО) . . . . . . . . . . . . . . . . . . 96

Page 7: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

7

Н. Н. НепейводаИжевск, Удмуртский государственный университет

Принципиальные ограничения свободного софта

В последнее время я работаю над заказной статьей, которая долж-на дать обзор достижений и уроков конструктивной математики ХХвека, рассматриваемой в широком смысле слова — как спектр всехнаправлений от интуиционизма до польского полуконструктивизма.Поскольку одна из целей данной работы — получит уроки для совре-менной информатики, в этом докладе приводятся некоторые выводы,к которым я пришел.

Для наших целей важны следующие характеристики конструкти-визма:

1. Высказывание рассматривается как задача, а не как упражне-ние на абстрактное доказательство «истинности». Поэтому насинтересует не истинность, а реализуемость.

2. Эта реализуемость рассматривается как идеальное умственноепостроение. Следовательно, полученное построение может бытьабстрактным высокоуровневым функционалом и вопрос о тре-буемых для его практического воплощения ресурсах ставитсяуже во вторую очередь.

3. В связи с этим полностью отвергается иллюзия всезнания, ко-торая выражается в традиционной математике законом исклю-ченного третьего. Это не означает введения новых истинност-ных значений. Скорее, сама концепция истинностных значенийперестает быть основой для определения логики. Разные теоре-мы формально имеют одно и то же истинностное значение, ноих реализации могут быть в корне различны.

4. В дополнение к этому в некоторых ветвях конструктивизма яв-но постулируется незнание и показывается, как использоватьнезнание в качестве основы для позитивных выводов. Напри-мер, беззаконные последовательности Брауэра являются кон-структивной моделью физических датчиков, и основная аксиомаБрауэра гласит, что мы в любой момент знаем об абстрактной

Page 8: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

8 30 января

беззаконной последовательности лишь тип данных результата иконечное число ее результатов. Конечно же, применив конструк-тивное преобразование к беззаконной последовательности, мож-но получить последовательность, о которой известно несколькобольше, например. что все ее члены — либо 0, либо 1. Но незна-ние остается существенно неустранимым.

5. Множества (или, что то же самое, предикаты) и типы данных —существенно различные сущности. Не всякий тип данных можетбыть описан как множество. Примером опять-таки служит типбеззаконных последовательностей.

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

Самый классичесский из них — польский полуконструктивизм, вкотором все объекты сделаны алгоритмическими, но вся логика оста-ется классической, из-за чего доказательства и построения проводят-ся отдельно. Для информатики этот конструктивизм практически ни-чего дать не может.

Советский конструктивизм А. А. Маркова и Н. А. Шанина — вто-рой по степени знания об объектах. Незнание рассматривается каквременное состояние. Предполагается аксиома религии прогресса, чтотворчески мыслящий человек может решить любую точно поставлен-ную задачу, но неизвестно, захочет ли он этим заниматься, дойдут лиу него руки и хватит ли у него ресурсов на ее решение. Поэтому незна-ние хоть и временное, но неизбежное состояние. Но постулировать мыможем лишь знание.

В соответствии с этим предполагается, что для каждого эффек-тивного функционала мы знаем вычисляющую его программу, и мо-жем эту программу использовать в наших дальнейших построениях.

Получившаяся система оказалась замкнутой и последовательной всвоих концепциях (как показал А. Г. Драгалин, в области арифметикисоветский конструктивизм в принципе действительно полон) и, соот-ветственно, концептуально единой. Но в советском конструктивизменаряду с практически интересными примерами (напрмер, некоррект-ными задачами и методами их превращения в корректные) возникаетряд монстров, в частности, вычислимая непрерывная всюду опреде-ленная на отрезке [0,1] функция действительных чисел, неограничен-

Page 9: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

9

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

Прагматичный американец Э. Бишоп (E. Bishop) предложил сле-дующее решение. Все наши преобразования — алгоритмы, но мы ни-когда в этом не признаемся, и, соответственно, не предполагаем зна-ния их программ. Это положило начало целому букету конструктив-ных концепций, основанных на данной идее. В общем они оказалисьи технически более легкими, и концептуально более красивыми, чемсоветский конструктивизм.

Но самой красивой и самой мощной из конструктивных концепцийтак и остался голландский интуиционизм, в котором нет даже речио том, что все эффективные преобразования — конечные алгоритмы,и в котором вовсю используется незнание как позитивный фактор.Техника преобразования некорректных задач, чисто технически бо-лее развитая в свое время в более практически ориентированном со-ветском конструктивизме, полностью переносится в интуиционизм, изаодно появляется целый ряд новых красивых возможностей.

Сделаем теперь выводы из всего этого для информатики.Первое, что здесь бросается в глаза — результаты теоретическо-

го анализа подрывают веру в универсальность концепции полностьюоткрытого софта. Закрытость может иногда быть полезной.

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

Далее, В. Ф. Чаусов, квалифицированный юрист в области па-тентного права и интеллектуальных прав, обратил мое внимание нато, что от требования открытости программного текста легко уйтилегальными средствами, а неадекватная документация вполне можетбыть предметом преследования по закону. Я переделал его пример,который был частным, в общий алгоритм ухода от требования откры-тости. В частности, известны программы-обфускаторы. Но даже еслине пользоваться примитивным обфускатором, выдающим формаль-но открытый код, есть возможность прикрыться самыми лучшими

Page 10: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

10 30 января

намерениями и сделать формально открытый код еще более закры-тым, чем пропущенный через обфускатор. Для этого достаточно про-пустить финальную версию программы, предоставляемую заказчику,через действительно мощный и интеллектуальный оптимизатор. Мыделаем как лучше, а получаемый код формально открыт, а фактиче-ски неперестраиваем.

Конечно же, в случае действительно коллективной работы над ко-дом программы в равной мере необходимы и открытая документация,и открытый код, но опять-таки я ставлю на первое место документа-цию и спецификации. Даже здесь открытый код не является догмой:можно сделать открытую надстройку над закрытыми модулями (чтои приходится делать, если эти модули, скажем, полуаппаратные).

Таким образом, судя по всему, открытый софт оказался в ситуа-ции, традиционной для сообщества прикладных математиков: постав-лена некорректная задача, и требуется ее переставить как коррект-ную.

И. А. ХахаевСанкт-Петербург, Санкт-Петербургский торгово-экономический институт

LMS Moodle и видеоконференции

Аннотация

Рассматриваются варианты организации видеоконференций приобучении с помощью LMS Moodle с использованием только свободногоПО. Обсуждаются результаты экспериментов с различными варианта-ми видеоконференций в локальной сети.

Система дистанционного обучения (Learning Management System,LMS) Moodle имеет богатые коммуникационные возможности дляобеспечения «живого» взаимодействия преподавателя с обучаемыми.Основными модулями являются форум и чат. Однако при наличиидостаточно широкополосных каналов связи, а также при необходимо-сти обращения преподавателя ко всей аудитории сразу целесообразноиспользовать технологию «вебинаров», т.е. видеоконференций.

Видеоконференция потенциально может быть реализована как сиспользованием модулей LMS Moodle, так и с помощью внешних по

Page 11: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

11

отношению к Moodle сервисов. Интерес представляют варианты с ко-личеством участников больше 2-х (т.н. «многоточечные» видеоконфе-ренции).

Среди многочисленных модулей Moodle имеется несколько средствдля организации видеоконференций — модули Covcell audio/videoconference, OpenMeetings и WebClass. Они используют сервер пото-кового видео Red5, написанный на Java.

Кроме того, имеются модули для интеграции с внешними служба-ми видеоконференций — модули Sclipo Live Web Class, DimDim moduleи Skype module, однако принадлежность этих служб к СПО (особеннов случае Skype) вызывает сомнения (а DimDim имеет ограничения поколичеству участников при бесплатном использовании).

И наконец, теоретически имеется модуль для интеграции Moodleс программной АТС (PBX) Asterisk. Однако этот модуль, судя по все-му, заброшен и не поддерживается (с помощью Google удалось найтитолько японскую версию на sourceforge.jp).

Для организации видеоконференций как таковых имеется отдель-ный свободный проект — OpenMCU (возможны сборки под названиемOpenH323 ).

Эксперименты проводились в локальной сети с использованиемсервера на Debian 5.0 и клиентов c ALT Linux branch 4.1, оснащённыхвеб-камерами, микрофонами и аудиосистемами (колонки, наушники,встроенные динамики). При этом внешние службы видеоконференций(Sclipo, DimDim, Skype) не использовались.

На сервере был развёрнут Moodle 1.9, сервер Red5, Asterisk иOpenMCU. Сразу проявились ошибки в скрипте запуска Red5, поэто-му в ходе экспериментов он запускался «вручную».

Модуль Covcell audio/video conference в настоящее время не под-держивается, в имеющейся версии не работает функция Whiteboard.

В целом эксперименты с использованием модулей Moodle, работа-ющих с Red5, показали, что для «многоточечных» видеоконференцийпри количестве камер от 3-х и более наблюдается существенное (от 1сек. и более) замедление в передаче изображений. Скорее всего, эф-фект связан с особенностями реализации сервера Red5.

Также проводились эксперименты с использованием Asterisk иOpenMCU с клиентами Ekiga параллельно с Moodle (хотя ничто немешает использовать эти сервисы сами по себе). Настройка сервисовдля описываемой задачи не представляет особой сложности, для этогодостаточно имеющейся в Сети скудной русскоязычной документации.

Page 12: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

12 30 января

Ekiga был выбран потому, что в ALT Linux это единственный«софтфон», поддерживающий передачу видео.

Ekiga с Asterisk позволяют прекрасно реализовать все возмож-ности VoIP и видеозвонков, но количество участников конференцииограничивается одной парой.

Таким образом, для решения поставленной задачи («многоточеч-ной» видеоконференции) в локальной сети остаётся только возмож-ность использования OpenMCU.

И. В. Парамонов, А. М. ВасильевЯрославль, Ярославский государственный университет им. П. Г. Демидова

Опыт организации кроссплатформеннойобразовательной среды для обучения студентов

программированию

АннотацияВ докладе описывается смешанная среда обучения, подразумеваю-

щая одновременное использование операционных систем GNU/Linux иMS Windows в рамках одних и тех же учебных курсов. Изложен опыторганизации такой среды, указаны проблемы, которые возникли приеё создании и эксплуатации, рассмотрены некоторые результаты.

В процессе модернизации учебных курсов на факультете инфор-матики и вычислительной техники Ярославского государственногоуниверситета было принято решение о применении свободного про-граммного обеспечения в образовательном процессе.

Помимо внедрения учебных курсов, посвящённых использованиюи администрированию ОС GNU/Linux, был предпринят экспериментпо «погружению» традиционных курсов по программированию в сме-шанную среду, в которой одновременно использовались различныеОС. В числе затронутых преобразованиями дисциплин оказались про-граммирование на языках C, C++, разработка приложений с графи-ческим интерфейсом (I–II курсы), использование языка программи-рования Java и технологий Java Enterprise Edition (IV курс).

Организация кросс-платформенной среды предполагает, что сту-денты могут переходить из класса в класс, компилировать и запускатьодни и те же проекты как под Windows, так и под Linux. Для обеспече-ния этого им предлагается использовать кросс-платформенные сред-ства разработки: компилятор GCC (под Windows — его порт MinGW)

Page 13: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

13

и фреймворк Qt. В качестве интегрированных сред разработки пред-лагаются Eclipse и NetBeans. Обе среды имеют свои преимущества инедостатки, как методического, так и технического характера. Нижеперечислены некоторые проблемы, с которыми мы столкнулись приих использовании.

• Основная методическая проблема Eclipse — сложность понятиярабочего пространства (workspace) для студентов. Среда устро-ена таким образом, что невозможно обойти необходимость им-порта и экспорта проектов в IDE при переносе их между рабо-чими станциями. Дополнительная трудность возникает в связис необходимостью ручного создания профилей компиляции и за-пуска. Всё это увеличивает издержки, отвлекая студентов млад-ших курсов от собственно освоения учебных дисциплин. Отме-тим, что для NetBeans подобных проблем не существует.

• При организации смешанной среды изначально предполагалосьиспользовать единое рабочее пространство IDE Eclipse. Это ра-бочее пространство должно было размещаться в личном катало-ге студента на файловом сервере и быть доступным ему из лю-бых компьютерных классов вне зависимости от установленнойОС. К сожалению, реализация данной концепции столкнулась ссерьёзными трудностями. Оказалось, что плагин CDT, предна-значенный для разработки приложений на С/С++, не инфор-мирует пользователя о неправильных настройках инструментовсборки проекта (toolchain), что приводит к появлению множе-ства непонятных для студентов ошибок при открытии и сборкепроекта, созданного под другой платформой. При смене плат-формы трудности возникают и при использовании Qt-плагина(одна из них связана с тем, что этот плагин хранит специфиче-ские для платформы пути к библиотекам и инструментам непо-средственно в workspace).

• Чтобы обойти указанные выше проблемы, было решено созда-вать временное рабочее пространство каждый раз при входе всистему. Проекты в этом случае хранятся на файловом сервере,а в начале и при окончании работы студентам приходится вы-полнять процедуры импорта и экспорта проекта во временноерабочее пространство. Для того, чтобы упростить выполнениеуказанных операций для студентов было написано соответству-ющее руководство. Однако, данное решение является существен-

Page 14: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

14 30 января

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

• Eclipse не содержит свободного редактора UI приемлемого ка-чества, а конфигурирование среды для работы с платформойJava EE и сторонними библиотеками (например, JUnit) крайненетривиально даже для студентов старших курсов.

• Основным недостатком IDE NetBeans являются высокие требо-вания к компьютерным ресурсам. Это затрудняет её полноцен-ное использование на частично устаревших компьютерах уни-верситета. В качестве компромисса на таких машинах было ре-шено использовать NetBeans только для разработки приложе-ний на языках С и С++.

• Первоначально использование IDE NetBeans было ограниченоввиду отсутствия в ней поддержки фреймворка Qt. Данная про-блема решилась летом 2009 г. вместе с выпуском новой вер-сии NetBeans 6.7 с полноценной поддержкой данного фрейм-ворка. Проведённое тестирование обнаружило, что открытиеC/C++/Qt-проекта на другой платформе не приводит к суще-ственным проблемам.

Проведение занятий в смешанной среде показало, что студентыдостаточно легко воспринимают смену операционной системы. IDEEclipse на начальном этапе освоения вызывает проблемы (многие изкоторых, впрочем, вызваны невнимательным чтением руководства),однако, на последующих этапах среда перестаёт вызывать трудно-сти и успешно используется студентами несмотря на необходимостьвыполнения процедур импорта/экспорта и изменения toolchain’а присмене платформы.

Несмотря на это, мы едва ли можем рекомендовать Eclipse в ка-честве среды разработки для обучения студентов младших курсов, адля смешанной среды она представляется практически непригодной.IDE NetBeans великолепно проявляет себя в ходе занятий по Java-технологиям — студенты не испытывают ни малейших проблем при еёиспользовании на любой платформе, а также при переходе от однойплатформы к другой. В связи с этим есть надежда, что использова-ние NetBeans в качестве среды разработки на языках C/C++ (в томчисле с использованием библиотеки Qt) даст лучшие результаты, чемприменение Eclipse.

Page 15: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

15

С. Э. ГрегерНижний Тагил, Нижнетагильский технологический институт. Уральскийгосударственный технический университет им. первого Президента РоссииБ. Н. Ельцина

Пакет компонентов обеспечения информационнойподдержки образовательного процесса для учебного

портала на базе CMS Plone

АннотацияВключение компонентов e-learning в состав портала дает ряд пре-

имуществ по сравнению со специализированными (интегральными)LMS. Такое решение позволяет позиционировать систему электронно-го обучения как часть корпоративной системы и использовать все воз-можности портала для решения задач электронного обучения. Ploneявляется одной из самых известных Open Source систем построенияпорталов Для Plone созданы, разрабатываются или модифицируютсяразличные модули расширения, предназначенных для решения самыхразнообразных задач как общего, так и специализированного характе-ра, в том числе и в области образования. К сожалению существующиеобразовательные компоненты Plone построены с учетом организациипроцесса обучения специфичного для европейского и американскогообразования. В докладе представлено описание комплекта средств раз-работки (SDK) для поддержки электронного обучения в составе порта-ла на основе CMS Plone, поддерживающих российскую специфику ор-ганизации обучения. Представленные компоненты предназначены длясоздания электронных учебных курсов, формирование учебных групп,а также экспорта-импорта содержимого портала. Совместное исполь-зование представленных и стандартных компонентов Plone позволяетрешать различные проблемы в области электронного обучения.

Plone — система управления содержимым сайта (CMS), позво-ляющая строить на ее основе сайты самых различных типов — отпростых сайтов-визиток до корпоративных порталов. Plone являетсясвободным программным обеспечением и имеет лицензию GPL.

Расширение возможностей Zope и Plone производится через под-ключение дополнительных модулей — так называемых продуктов.В результате появляется появление возможности включать в составпортала нового типа данных (контент-тип).

К сожалению существующие образовательные компоненты Ploneпостроены с учетом организации процесса обучения специфичного

Page 16: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

16 30 января

для европейского и американского образования. Большинство этихкомпонентов не локализованы для использования в России и не пред-назначены для использования с актуальной в настоящее время вер-сией Plone 3.XX. Указанные обстоятельства явились причиной раз-работки комплекта программных компонентов для поддержки элек-тронного обучения — E-learning SDK.

Комплект состоит из трех пакетов, каждый из которых предна-значен для решения определённого круга задач. На рисунке (рис. 1)представлена общая UML-диаграмма классов SDK.

Рис. 1: Общая UML-диаграмма классов SDK

Пакет LearnPackage включает контент-типы, предназначенныедля создание структуры учебных курсов, хранения электронных учеб-ных объектов и организации различных стратегий обучения. Пакетвключает в себя:

Контент-тип Standard (Стандарт) — хранит набор метадан-ных, регламентируемых требованиями Государственного стандарта поопределенной специальности — продолжительность обучения, вход-ные и выходные компетенции, список дисциплин специальности. От-

Page 17: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

17

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

Контент-тип Discipline (Учебная дисциплина) предназначендля хранения информации об учебной дисциплине, ее характеристи-ках, определяемых государственным стандартом.

Контент-тип LearnCurse (Учебный курс) обеспечивает вариа-тивность учебных курсов, определяемую наличием различных целе-вых групп обучающихся, информационным содержанием курсов, ихпродолжительностью и временем проведения обучения по данномукурсу. Фиксирует набор входных и выходных компетентностей слу-шателей курса.

Контент-тип Tema (Учебная тема) предназначен для построе-ния иерархической структуры учебного курса, хранения информациио целях предъявленной темы, о наборах входных и выходных компе-тенций, продолжительности темы в составе курса. Является контей-нером для учебных объектов.

Контент-тип LearnObject (Учебный объект) — является храни-лищем для учебного контента или ссылкой на внешний ресурс. Такаявозможность позволяет выделить весь учебный контент в отдельныерепозитарии, предоставив его для совместного использования в раз-личных курсах.

Пакет StructurePackage включает контент-типы, обеспечиваю-щие построение организационной структуры ВУЗа, факультета, кур-са, учебных групп, а также структуру обеспечения внеучебной дея-тельности — секции, объединений и т.п. Позволяет проводить монито-ринг учебной деятельности и распределение учебной нагрузки меж-ду преподавателями. Контент-типы LearnGroup (Учебная группа)и Community (Объединение) предназначены для образования орга-низационной структуры. Контент-тип LearnGroup хранит ссылкина учебные курсы, определенные для учебной группы, формируетотчет о выполнении учебных заданий студентами, входящими в со-став группы. Контент-типы Teacher (Преподаватель) и Student(Студент) предназначены для хранения различных данных о персо-налиях, как общих данных, определяемых свойствами контент-типаPerson, так и специальных, определяемых дополнительно. Структурапортала определяется администратором портала через объект типаLearnManager (Учебный администратор).

Page 18: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

18 30 января

Пакет Import_Export обеспечивает возможность взаимодей-ствия с внешними, по отношению к порталу, системами. Контент-тип WebList, позволяет создавать различные справочники в со-ставе портала. Контент-тип CSVFile служит для включения всостав портала файлов в формате csv, предназначенных в частно-сти, для автоматического создания массивов объектов различныхконтент-типов. Контент-тип ScormTransport в настоящее времяне реализован, предполагается что в его функции будет входититьимпорт-экспорт учебных курсов в стандарте SCORM. Контент-типListManager предназначен для выполнения различных операцийимпорта-экспорта массивов экземпляров различных контент-тпов.

Представляется, что совместное использование представленныхкомпонентов и стандартных компонентов Plone позволяет решать раз-нообразные задачи в сфере электронного обучения. В настоящее вре-мя проводятся исследования по разработке методики такого приме-нения.

С. Э. ГрегерНижний Тагил, Нижнетагильский технологический институт. Уральскийгосударственный технический университет им. первого Президента РоссииБ. Н. Ельцина

Опыт преподавания СПО при подготовкепрофессиональных программистов

АннотацияВ докладе рассматриваются итоги продолжительного периода

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

Шесть лет на кафедре информационных технологий нашего ин-ститута было принято решение о разработке курса «Web-дизайн» длястудентов специальностей «Программное обеспечение вычислитель-ной техники и автоматизированных систем» и «Информационные си-стемы и технологии». Мною, как разработчиком этого курса, быливыделены следующие ключевые моменты, определившие цели курсаи его наполнение:

Page 19: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

19

1. Действующий на тот момент (да и в настоящее время) стандартподготовки по дисциплине «Web-дизайн» не соответствует реа-лиям ни с точки зрения научного содержания, ни с точки зре-ния практических навыков, приобретаемых студентами. Изуче-ние только основ HTML, как это предписывается стандартом,явно не отвечало требованиям, предъявляемым к нашим вы-пускникам — профессиональным программистам.

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

Стремление повысит конкурентоспособность выпускников на рынкетруда сразу отодвигало в строну такие платформы как Net и Java всилу ограниченности времени и невостребованностью таких знанийв сфере малого и среднего бизнеса, где в основном трудятся нашивыпускники. В итоге был сделан выбор в пользу изучения сервераприложений «Zope» и приложений с ним связанных.

Модульная система курсов

Первый год чтения курса показал, что студенты испытываютсложности в изучении и связано это как с отсутствием учебныхматериалов на русском языке, так и с недостаточной практикойиспользования объектно-ориентированного подхода при разработкепрограммного обеспечения. Оказалось, что концепции, используемыев Zope требуют пересмотра методики преподавания, отхода от пара-дигмы процедурного программирования и уделения большего внима-ния объектно-ориентированному программированию и проектирова-нию. За недостатком места не буду описывать всю историю становл-кеия а предъявлю лишь конечный результат.

Сейчас я читаю три отдельных курса, связанных в единое целоеконцептуально и технологически. Это:

1. Объектно-ориентированый язык программирования Python.Курс состоит из двух модулей. В первом модуле рассматрива-ются основы языка. При изучении модуля постоянно подчерки-вается объектно-ориентированный характер языка, приводятсяпримеры использования такого подхода. Второй модуль посвя-щен вопросам создания графического интерфейса пользователя

Page 20: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

20 30 января

на основе библиотеки wxPython, работе с базами данных, обра-ботке текста.

2. Разработка web-приложений в среде CMS Django. Дается пред-ставление о системах разработки web-приложений, ориентиро-ванных на использование реляционных баз данных. Формирует-ся представление о CMS, о их назначении, функционировании.

3. Разработка web-приложений с использованием сервера прило-жений Zope и CMS Plone. Рассматривается компонентный под-ход разработки приложений, использование объектной базы.Разрабатываются простые портальные решения на базе Plone.

4. Объектно-ориентированное проектирование информационныхсистем. Вопросы абстрактного проектирования на языке UMLрасссматриваются в контексте разработки информационных си-стем на основе Plone/

Хотя формально это независимые курсы, в реальности они сильносвязаны между собой. Так, например, при выполнение курсовых ра-бот по курсу проектирования ИС в большинстве случаев в качествесистемы реализации выбираются Zope и Plone. Такой подход позво-ляет формировать у студентов единый комплекс компетенций, не раз-делять знания и умения по отдельным дисциплинам. Это обстоятель-ство привело к изменениям техники проведения лекционных и прак-тических занятий. При проведении лекций часто используются при-меры из других курсов, выявляется концептуальная общность терми-нологически разных понятий, подчеркивается необходимость систем-ного подхода к решению поставленных задач.

Учебно-методическое обеспечение курсов

В течении почти шести лет преподавания был создан большойобъем учебно-методического обеспечения. Кроме комплектов лекцийв форме презентаций Power Point созданы:

• Учебный электронный курс «Язык программирования Python»;

• Учебный электронный курс «Использование сервера приложе-ний Zope».

Page 21: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

21

Опубликованы:

• Методическое указания «Web-сервер приложений Zope. Разра-ботка динамических сайтов. Методические указания к изучениюкурса „Web-дизайн“»;

• Методическое указание «Web-сервер приложений Zope. Установ-ка и интерфейс. Методические указания к изучению курса „Web-дизайн“»;

• Сервер приложений «Zope». Учебное пособие для вузов (грифУМО по политехническому образованию);

• Администрирование и интерфейс пользователя CMS Plone (мо-нография).

Техническое обеспечение обучения

Технологические трудности были обусловлены проблемами уста-новки программного обеспечения в среде Windows, используемого вученых классах института и с корпоративной политикой безопасно-сти, используемой нашим вычислительным центром. В результате, внастоящее время все учебные курсы, связанные с СПО, проводятся сиспользованием специально скомплектованной виртуальной машины.Поскольку, к сожалению, студенты не имеют практики использованияоперационных систем на базе Linux, виртуальная машина работает наоснове Windows XP. В системе установлены:

• Интерпретатор языка Python

• Пакет wxPython

• Пакет SqlAlchemy

• CMS Plone

• Редактор UML ArgoUML

• Генератор классов ArchgenXML

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

Page 22: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

22 30 января

Е. А. ЧичкаревМариуполь, Украина, Приазовский государственный технический университетhttp://www.pstu.edu

Разработка и использование расширений OpenOfficeдля работы с системами компьютерной математики

Аннотация

Представлен краткий обзор современных вариантов организацииграфических и web-интерфейсов для систем компьютерной матема-тики. Показаны возможности и ограничения взаимодействия Maximaи SciPy со средой OpenOffice. Представлены результаты разработкиучебной документации и лабораторного практикума с использованиемрасширений OpenOffice для взаимодействия с системами компьютер-ной математики.

В настоящее время в Linux-системах существует значительное числоматематических и вычислительных программ различного назначенияи уровня сложности. Большинство из них являются интерпретатора-ми того или иного входного языка. Отдельные пакеты включают соб-ственный графический интерфейс пользователя и средства отладкии разработки (Scilab) , но для большинства пакетов (Maxima, Axiom,Gap, Octave, R и т.п.) графический интерфейс и средства разработкисоздаются отдельно, причем в нескольких версиях.

При решении реальных задач научного или технического характе-ра с использованием компьютерного моделирования наиболее слож-ными и трудоемкими стадиями являются постановка задачи, выбори анализ вычислительного алгоритма, не требующие графическогоинтерфейса.

Однако при организации лабораторного или вычислительногопрактикума в учебных заведениях работа исключительно в терминалеили простом текстовом редакторе вызывает серьезные затруднения.Студенты делают вывод, что в данной сфере совершенно нет никакихресурсов: ни денег, ни современных специалистов, поэтому изучатьпредметы, связанные с компьютерным моделированием и вычисле-ниями, нет никакого смысла; никакая красивая теория их не убедитв обратном (причем они отчасти правы: вычислительная математи-ка и компьютерное моделирование используются обществом тольковместе с реализующими их программами).

Page 23: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

23

Учитывая наличие проприетарных программ с хорошо прорабо-танным графическим интерфейсом, наличием локализованной помо-щи, подсказок, примеров, организация учебного процесса на базе про-граммного обеспечения с открытым кодом встречает серьезные труд-ности.

Отчасти принципы разработки интерфейса и технологии работыс математическим ПО связана с технологией подготовки конечныхдокументов.

Для большинства указанных систем компьютерной математи-ки или специализированных пакетов существует Emacs-интерфейс(несколько вариантов для Maxima, octave-mode и т. п.). Учитываявозможность вывода графических иллюстраций в eps-файлы, вклю-ченная в большинство пакетов, естественная технология подготовкиокончательных документов с использованием Emacs — использова-ние Latex с экспортом содержимого буферов, содержащих результатырасчетов, в отдельные файлы, легко включаемые в проект конечногодокумента. Достоинством работы с использованием Emacs в качествеинтерфейса является возможность интерактивного режима работыс вычислительными пакетами, при котором сохраняется состояниерабочего пространства при передаче ему очередной команды.

Альтернативным вариантом является использование в качествеграфического интерфейса пользователя редактора Texmacs, позволя-ющего включать в конечный документ командные файлы, допуска-ющие повторное выполнение, и результаты расчетов. Однако специ-фичная локализация и сложность экспорта документов в какой-либодругой формат делает Texmacs «вещью в себе», которая реально мо-жет использоваться лишь для подготовки небольших документов вpdf-формате.

Вероятно, наиболее завершенной оболочкой системы компьютер-ной алгебры, позволяющей решать широкий круг задач, и готовой кширокому использованию, является пакет wxmaxima, позволяющийработать с документами, включающими комментарии, блоки кода,графики. Присутствует также возможность экспорта в формат texили html.

Существует также несколько превосходных оболочек для работыс R (rkward, Rcmdr), обеспечивающих экспорт результатов в txt илиhtml.

Кроме того, для работы с open-source вычислительными пакетамииспользуются и различные варианты клиент-серверных технологий

Page 24: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

24 30 января

(в первую очередь sage) с доступом пользователей к вычислительно-му ядру того или иного пакета через web-интерфейс. В этом случаена клиентской стороне необходим лишь интернет-броузер (обычно споддержкой JavaScript), а вся вычислительная работа выполняетсяна серверной стороне. При этом результаты работы сохраняются вhtml-файле.

Однако студенты для подготовки конечной документации исполь-зуется преимущественно OpenOffice, поэтому несомненный интереспредставляет непосредственный экспорт результатов расчетов в дан-ный пакет.

Учитывая возможность разработки расширений OpenOffice наpython, естественным решением для разработки плагина, позволяю-щего импортировать результаты расчетов в документам, является неOctave или SciLab, а пакет SciPy, обеспечивающий практически ту жефункциональность, но реализованный на python. Командные файлыScipy в виде текста копируются из документа OpenOffice, интрпрети-руются python, а возвращаемые текстовые результаты вставляются вдокумент.

Взаимодействие с maxima организовано по классической схеме (по-средством сокетов). Текстовые строки передаются maxima без допол-нительного редактирования, результаты расчётов размещаются в до-кументе без дополнительного редактирования.

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

Для работы с основными командами пакетов разработаны элемен-ты графического интерфейса.

Аналогичный подход может быть использован и для работы сOctave, Axiom и т. п.

Page 25: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

25

Е. Р. Алексеев, И. ШевченкоДонецк, Украина, Донецкий национальный технический университетwww.teacher.ucoz.net

Выбор свободно распространяемого программногообеспечения для учебного процесса (на примере

кафедры ВМиП ДонНТУ)

АннотацияПредставлен сравнительный анализ современных специализиро-

ванных образовательных дистрибутивов Linux.

При переходе на свободно распространяемое программное обеспече-ние в вузах СНГ одной из наиболее важных проблем является про-блема выбора ПО. При этом приходится решать две задачи:

1. Выбрать дистрибутив свободной операционной системы семей-ства Linux.

2. Подобрать свободное программное обеспечение для ОС Windows.

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

На кафедре «Вычислительная математика и программирование»Донецкого национального технического университета есть компью-терный класс свободного программного обеспечения. В этом клас-се проводят занятия с преподавателями и сотрудниками в рамкахкурса «Использование свободного программного обеспечения в учеб-ном процессе», а также занятия со студентами по теме «Свободноепрограммное обеспечение» в рамках курса «Введение в информати-ку». Стояла проблема выбора дистрибутива для установки на доволь-но слабые компьютеры (Celeron 600 Мгц, ОЗУ — 512 МБ, жёсткийдиск 10-40 Гб). Такая конфигурация компьютеров является типич-ной для образовательных учреждений Украины. Кроме указанныхвыше требований, рекомендуемый дистрибутив должен: быть рус-ско(украино)язычным, обеспечивать работу с необходимыми в учеб-ном процессе приложениями (современные версии OpenOffice, Gimp,web-браузеров, почтовых программ, gcc, fpc, geany, lazarus, maxima,

Page 26: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

26 30 января

scilab), а также должен хорошо работать на более современных ком-пьютерах (на стационарных компьютерах и ноутбуках студентов ипреподавателей). Рассматривались следующие дистрибутивы Linux:

• GOS (http://www.thinkgos.com/gos/) на основе Ubuntu Linux8.04;

• Ubuntu 9.10 (www.ubuntu.ru);

• Ubuntu 9.10, версия UA Linux (http://ualinux.com);

• Runtu Office (http://runtu.org/runtu-office/runtu-office.html);

• Linux Mint 5 XFCE, Linux Mint 5 FluxBox (www.linuxmint.com);

• EduMandriva 2010 (www.edumandriva.ru);

• Debian 5.03 (www.debian.org);

• дистрибутив на базе Debian SkoleLinux (http://www.slx.no/en/downloads);

• Альт Линукс 5.0 Школьный Лёгкий(http://altlinux.org/Альт_Линукс_Школьный).

С учетом особенностей использования старых ПК для учебного про-цесса на кафедре были рекомендованы дистрибутивы Debian 5.03 илиАльт Линукс 5.0 Школьный Лёгкий. На более мощных компьютерах(процессор от 1 Ггц, ОЗУ > 512 Мб) в ДонНТУ рекомендовано ис-пользовать Debian, Ubuntu или Mint.

Набор свободного программного обеспечения для каждого подраз-деления университета свой. Для решения проблемы выбора свободно-го программного обеспечения был разработан сайт «Свободное про-граммное обеспечение в университете», на котором представлены опи-сания многих свободных программ, а также ссылки на страницы за-грузки программ. Кроме того, собран набор portable-версий свободнораспространяемых приложений для вуза на базе оболочки RocketDoc.

Среди проблем, которые предстоит решать при дальнейшем внед-рении свободного ПО в университетах, следует выделить следующие:

1. Недостаточное количество учебно-методической литературы.Может быть, ALT Linux следует от издания литературы, по-священной дистрибутивам ALT Linux, перейти к изданию лите-ратуры, посвященной свободному программному обеспечению иосновать специализированное издательство. Наличие докумен-тации в Интернете не решает проблему учебно-методическойлитературы.

Page 27: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

27

2. Отсутствие кафедр, специализирующихся на свободном ПО, вуниверситетах СНГ. Пора всерьёз задуматься об организациикафедры свободного программного обеспечения в одном из уни-верситетов СНГ.

3. Инертность мышления преподавателей IT-дисциплин.

В. Г. СлугинФГОУ СПО «Нижегородский Радиотехнический Колледж»

Проект: cunewebform, elkartoteka, sadkohttp://fireforge.net/projects/cunewebform/,http://fireforge.net/projects/elkartoteka/,http://fireforge.net/projects/sadko/

Внедрение, использование и сопровождение СПОв учебном заведении на примере ФГОУ СПО

«НРТК»

Аннотация

Сейчас широко обсуждается вопрос перехода учебных заведений насвободное программное обеспечения. Говорят о технических возмож-ностях, аналогах программ используемых в учебном процессе, совме-стимости с уже имеющимся оборудованием. Но, как показывает опытНижегородского Радиотехнического Колледжа, это важные но не ос-новные вопросы, возникающие при переводе учебного заведения насвободное ПО.

Гораздо более важным оказался вопрос взаимодействия с государ-ственными структурами и министерствами, управляющими учебнымизаведениями, такими как РАНО, Министерство Образования и органа-ми, действующие по их указанию. Зачастую они слабо представляютчто такое свободное программное обеспечение и лишь в редких слу-чаях заботятся о совместимости присылаемых ими материалов и про-граммного обеспечения со свободными операционными системами исвободными офисными пакетами.

Мы рассмотрим способы решения всех этих вопросов на примереперехода Нижегородского Радиотехнического Колледжа на использо-вание свободного программного обеспечения как в учебном процессе,так и в работе подразделений и администрации.

Page 28: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

28 30 января

Причины перехода

Зачастую это высокая стоимость коммерческого ПО. Но даже приналичии некоторого бюджета на покупку программного обеспечениявы сталкиваетесь с рядом других проблем, а именно:

• Запутанность ценовой политики компаний-производителей и ихдистрибъютеров;

• Сложности с использованием копий ПО студентами на домаш-них ПК;

• Сложности с лицензированием дипломных и курсовых проектовстудентов, созданных с использованием коммерческого ПО.

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

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

Преимущества, полученные от перевода НРТК на

свободное программное обеспечение

В ходе перевода компьютерных классов, используемых в учебномпроцессе, и компьютеров сотрудников колледжа практически полно-стью удалось избавиться от угрозы вирусной атаки как на локальныекомпьютеры так и компьютерную сеть колледжа.

В учебном процессе используются различные операционные си-стемы. За счет использования свободного программного обеспеченияна серверах колледжа удалось создать интегрированную систему цен-трализованной аутентификации и хранения данных пользователей насервере. При этом, система работает абсолютно прозрачно, вне зави-симости от загруженной на клиентском компьютере операционной си-стемы. Студенты имею возможность использовать любой компьютерв колледже, загружаясь в любую нужную в данный момент операци-онную систему и входя под своим логином и паролем, получать доступк своим файлам в их домашней директории, хранимой на сервере.

Page 29: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

29

Широкое использование свободного программного обеспечения вучебном процессе дает возможность обеспечить студентов необходи-мым программным обеспечением на легальных основаниях. РаздаваяLiveCD с необходимым набором ПО для выполнения домашних зада-ний нет необходимости контролировать дальнейшее распространениядисков.

Использование открытого формата ODF для работы с докумен-тами различного типа дает более широкие возможности по форми-рованию необходимых документов из On-Line систем, используемыхв колледже. А так же, дает возможность автоматической обработкиприсылаемых студентами работ.

Характерные вопросы при переходе на свободное

программное обеспечение

На первоначальном этапе был проведен анализ используемого про-граммного обеспечения и подобраны аналоги из свободных программдля обеспечения учебного процесса. Были заменены наиболее дорогиепродукты такие как P-Cad, ElectronicWorkbanch, SpiderProject, Visio,MS VisualStudio, Dreamwaver, MS Sharepoint.

При внедрении была проведена большая работа по подключениюа настройке различного периферийного оборудования. Различные ти-пы сканеров и принтеров. Часть из них оказалась не совместима. По-лученный опыт был использован при замене старого оборудования.При покупке нового оборудования обязательно производится предва-рительная проверка на совместимость со свободными платформамии программным обеспечением. Это дало возможность более легкоймиграции оборудования по классам и подразделениям и уменьши-ло время настройки систем при плановом обновлении программногообеспечения.

Сложности, возникающие в процессе перехода и

использования СПО в учебном заведении

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

Page 30: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

30 30 января

дит достаточно легко в виду близости функционала и внешнего видасвободных программ с используемыми ранее аналогами.

Более сложно обстоит ситуация при работе с органами управленияучебными заведениями. ФАО ведет переписку с учебными заведения-ми исключительно в форматах doc и xls, а в последнее время приходятдокументы и в форматах docx.

Многие on-line системы сбора данных об учебных заведениях ори-ентированы на работу лишь с web-браузером Internet Explorer и невыполняющие свои функции корректно в других.

Программное обеспечение присылаемое из РАНО по сбору данныхдля проведения ЕГЭ ориентировано исключительно на проприетар-ную платформу. Не смотря на то, что ранние версии этих программработали в среде Wine, новые версии перестали корректно выполнятьсвои функции в этой среде. К тому же для правильного формирова-ния отчетов требуется MS Office определенной версии.

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

Ю. АзовцевНижний Новгород, Нижегородский РадиоТехнический Колледж

Проект: перевод книги «Blender Basics 3-е издание»http://b3d.mezon.ru/index.php/Blender_Basics_3-rd_edition

3D-моделирование и анимация в Blender для школ иВУЗов

АннотацияОсновным сдерживающим фактором в широком использовании

Blender в курсе «Компьютерная Графика» в школах и ВУЗах явля-лась отсутствие методического материала на русском языке. В конце2009 года был завершен перевод книги Джеймса Кронистера «BlenderBasics 3-е издание», которая является готовым методическим матери-алов рассчитанным на 40 часовой курс с планом по 2 академическихчаса на каждую тему (главу), включая практическое занятие. Книгараспространяется абсолютно свободно для использования в учебномпроцессе.

Page 31: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

31

Развитие пространственного мышления является одной из наиболееважных вещей в учебном процессе школы и ВУЗа. Это незаменимыйнавык как для студентов технических специальностей, так и для бу-дущих архитекторов и художников. Раньше этим целям служили та-кие предметы как «инженерная графика» и «черчение». С появлени-ем компьютерной техники в курсах многих специальностей появилсяпредмет «компьютерная графика». Но на нем преподавали различныеCAD системы продолжая строить плоские проекции объектов.

Но ни для кого не секрет что большинство школьников спят ивидят себя авторами очередного «Шрек 3» или «крутой трехмернойигрушки». Почему бы не использовать этот уже существующий инте-рес для преподнесения нужного материала?

Blender относится к классу программ трехмерной визуализации ианимации. Программа позволяет создавать сразу трехмерные объек-ты, задавать им цвет. Создавать для каждого объекта свой материали накладывать текстуру для придания вида стекла, камня или дере-ва (либо любого другого материала). Для анимирования персонажейBlender предлагает систему костей (арматура). В некоторых случа-ях удобно использовать физический движок, встроенный в Blender,для создания падающих объектов, дождя либо потока реки. Для ар-хитекторов особенно удобным окажется возможность использованиясистем рендеринга с реальным просчетом падения и преломления лу-чей. Blender поддерживает порядка 8 рендеров, включая свободныеYaf(a)Ray, бесплатный LuxRender и, хоть и коммерческий, но всемир-но признанный V-Ray. Так же. В Blender вы сможете сделать полныйцикл создания анимации. Начав с создания модели, текстурировав ианимировав ее вы сможете наложить титры, эффекты и переходы науже готовый видеофайл во встроенном в Blender видеоредакторе.

Blender, являясь свободным программным продуктом, позволяетпроводить учебный процесс без ограничения доступа учащихся к сре-де моделирования ни дома ни в учебном заведении. Вы сможете обес-печить всех студентов необходимым количеством копий программы,при этом, давая им полную свободу в выборе операционной системыдля работы с ней. Blender прекрасно работает в Linux, MacOSX иWindows. При этом интерфейс и функциональность программы абсо-лютно одинаковы во всех операционных системах.

Но при всех прелестях Blender до начала этого года у него былодин значительный сдерживающий фактор перед широким использо-ванием в учебном процессе школы и ВУЗа — это крайне малое количе-

Page 32: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

32 30 января

ство документации и методического материала на русском языке. Длярешения этой проблемы русскоязычным сообществом Blender был на-чат проект по переводу книги «Blender Basics» на русский язык. Этакнига была написана Джеймсом Кронистером (James Cronister) какметодическое сопровождение к курсу трехмерного моделирования ианимации, который он ведет в Central Dauphill High School. Книгапредставляет собой готовую методическую разработку по курсу 3Dмоделирования. Каждая глава рассчитана на один либо два акаде-мических часа. Содержит теоретическую и практическую часть. Приэтом, объем теоретической части подобран очень сбалансировано, поз-воляет выполнить практику и не перегружает излишними подроб-ностями. Перевод книги распространяется свободно и доступен какв web-варианте на сайте b3d.mezon.ru, так и в PDF версии, подго-товленной для печати на бумагу (http://b3d.mezon.ru/index.php/Blender_Basics_3-rd_edition). Лицензия позволяет изготавливатьлюбое количество копий, как на бумаге так и электронных для ис-пользования в учебных целях.

Возможности Blender, свободные условия распространения про-граммы и наличие методического материала в виде книги «BlenderBasics 3-е издание» делают эту среду 3D-моделирования простонезаменимым инструментом преподавания компьютерной графикишкольникам и студентам.

Д. А. КостюкБрест, Брестский государственный технический университет

Изучение низкоуровневого программирования ивычислительной архитектуры на базе платформы

GNU/Linux

АннотацияРассмотрены преимущества обучения студентов низкоуровневому

системному программированию и архитектуре ЭВМ в ОС GNU/Linux.Проанализированы сложности, связанные с отличиями платформы,выбор программного обеспечения, доступных информационных источ-ников. Оценены результаты включения в учебный процесс.

Изучение языка машинных команд важно для студентов специаль-ностей информатики и радиоэлектроники с двух позиций. Во-первых,

Page 33: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

33

Рис. 1: Динамика использования ассемблера: число активных проек-тов и их доля от общего количества (по данным http://ohloh.net)

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

Можно выделить две объективные проблемы в изучении ассем-блера. Во-первых, рост числа актуальных программных технологийи языков не позволяет уделять ему значительный процент учебной

Page 34: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

34 30 января

нагрузки. Во-вторых, крайне архаична базовая платформа DOS, мас-сово используемая для его изучения уложить из-за невозможностикурс низкоуровневого программирования под Windows в отведенноечисло часов.

Программирование на ассемблере нельзя назвать характернымдля Linux, но как платформа для его изучения эта ОС — идеальное ре-шение. Она проста в освоении для системных программистов, предо-ставляет доступ к исходным кодам, демонстрирует неуклонный роств ряде сегментов рынка.

С точки зрения ассемблера Linux характеризуется строго унифи-цированным интерфейсом системных вызовов, одинаковым для всехфункций ядра (в отличие от «зоопарка» функций DOS). Упрощаетосвоение материала и то, что язык С знаком студентам к моменту изу-чения ассемблера (что закреплено белорусскими образовательнымистандартами для технических вузов). Студенты обнаруживают мно-гочисленные аналогии системных вызовов с функциями С и консоль-ными командами.

В углубленном курсе различия аппаратных архитектур вносятнекоторые сложности. Прикладной процесс не имеет полного досту-па к аппаратным ресурсам, что не позволяет писать простые учеб-ные программы в стиле DOS, взаимодействующие с устройствамина уровне портов ввода/вывода. Для освоения привилегированныхинструкций студенту необходимо научиться создавать модули яд-ра — в первую очередь драйвера (учитывая востребованность подоб-ной квалификации, это скорее плюс). В целом написание драйверовдля Linux — несложная задача, а среди доступных руководств можновстретить даже ориентированные на использование чистого ассембле-ра [1].

Linux позволяет работать с устройствами на нескольких уровняхабстракции, которые могут быть основой для сокращенных курсовархитектуры ЭВМ — например, доступ к пространству портов вво-да/вывода через /dev/port.

При апробации начального практикума нами использован терми-нальный Linux-сервер. Однако при низкоуровневом программирова-нии устройств этот вариант неприемлем, т.к. студенты нуждаются вправах root и в возможности регулярно обрушивать систему. Реше-ние на базе виртуализации показало некоторые отличия от поведенияпрограмм на реальных устройствах (из-за особенностей QEMU и егопроизводных). Разумной альтернативой рабочим станциям с общедо-

Page 35: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

35

ступным root-акаунтом представляется использование специализиро-ванного LiveCD-подобного дистрибутива.

Следует также отметить сложности, связанные с фрагментарно-стью и разрозненностью технической документации. Преподаватель-ский состав нуждается в более подробных источниках, чем предла-гаемые студентам методические материалы; кроме того, не все сво-бодно владеют английским языком. Можно отметить качественныепереводные руководства по ряду утилит GNU (make [2] и особен-но gdb [3]), транслятору nasm [4], более привычному преподаватель-скому составу, чем GNU assembler, русскоязычное руководство [5],отвечающее тематике учебного курса, но не вполне применимое из-за выбора синтаксиса ATT. Из полезных информационных порталовможно назвать http://opennet.ru/docs и сайт программы «СКИФ»http://skif.bas-net.by/bsuir.

Однако, рассмотренные сложности не являются блокирующими,а апробация разработанных курсов показывает высокую усвояемостьматериала студентами и легкую адаптацию преподавательского со-става.

Литература

[1] Hyde R. Linux Device Drivers in Assembly Language. http://homepage.mac.com/randyhyde/webster.cs.ucr.edu/LinuxAsm/index.html

[2] Stallman R.M., McGrath R. GNU Make. Апрель 2000 г. http://linuxlib.ru/prog/make_379_manual.html

[3] Столмен Р., Пеш Р., Шебс С. и др. Отладка с помощью GDB. Март2000 г. http://mitya.pp.ru/gdb/gdb_toc.html

[4] Расширенный ассемблер: NASM. http://www.opennet.ru/docs/RUS/

nasm/ 06.02.2002.

[5] Ассемблер в Linux для программистов C: викиучебник.http://ru.wikibooks.org/wiki/Ассемблер_в_Linux_для_програм-мистов_C

Page 36: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

36 31 января

Г. В. Курячий, А. А. ПанюковаМосква, ВМиК МГУ, ALT Linuxhttp://uneex.ru/LecturesCMC

Опыт преподавания курса «Сопровожнение пакетовв Linux» на ВМиК МГУ

Волею судеб один из авторов доклада прочитал спецкурс по те-ме «Сопровожнение пакетов в Linux», а другой — принимал экза-мен на факультете ВМиК МГУ. Несколько неожиданной оказаласьпрофессионально-техническая готовность аудитории, и, как след-ствие, серьёзный потенциал для сообщества в лице студентов мос-ковского Университета.

Положение дел

Вот уже десятый год на факультете Вычислительной Математи-ки и Кибернетики МГУ читается кафедральный спецкурс на UNIX-тематику. Каждый семестр курс новый (было всего два тематическихповтора и один двухсеместровый курс). Последние несколько лет кур-сы базируются на ALT Linux / Sisyphus.

Помимо направленности на UNIX/Linux, курс имеет три специфи-ческие особенности, связанные с приёмом экзамена:

1. Экзамен проходит в виде беседы по всему материалу курса(обычно часа три). В беседе участвует один экзаменатор и три-пять экзаменуемых.

2. При ответе на вопрос приветствуется аргументированное вы-сказывание личных мнений, а также применение мыслительно-го аппарата. Применение любых информационных носителей,включая текст лекций, учебников, Google и мнение товарища,допускается (стоит иметь в виду, что при этом оценивается лич-ный вклад экзаменуемого в собственный ответ, а в последнемслучае — вклад товарища).

3. В число экзаменаторов часто попадают студенты-старшекурс-ники из *NIX-сообщества, квалификация которых делает идеюпринимать экзамен у них бессмысленной. Чем бездумно ставитьим «автомат», лучше даать возможность получить дополнитель-ный опыт и упорядочить понимание темы.

Page 37: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

37

Кроме того, сам спецкурс совершенно факультативен: его можнопрослушать, а потом не сдавать экзамена, или явиться, не сдать, иуйти, не испортив матрикула.

Умысел и деяние

В осеннем семестре 2009 года была — после аналитического об-суждения с аудиторией1 выбрана на первый взгляд довольно специ-фичная тема Package Maintaining.

Причины такого выбора:

1. Желание автора;2. Отсутствие (кажется, полное!) подобных курсов в академиче-

ской среде;3. Практическая ценность темы;4. Широкий и довольно выразительный спектр затрагиваемых об-

ластей ИТ.

Ожидаемые проблемы:

• Высокий уровень требований к профессиональным качествамслушателя;

• Узкий круг заинтересованных;• «Религиозные» войны.

Для придания курсу разносторонности была прочитана отдельнаялекция про GNU Debian.

План курса (действительный):

• Дистрибутив ОС на основе свободного ПО: принципы формиро-вания;

• Пакет как составная часть дистрибутива: требования и особен-ности; понятие сборки пакета;

• Сборка пакета из исходных текстов; upstream; спецификация;• Сопровождающий (maintainer) пакета;• Изолированная среда сборки (введение);• Лекция Александра Герасёва о пакетах в GNU Debian;• Работа с upstream, Составление спецификаций;• Составление спецификаций — II, Исправление upstream (заплат-

ки), Помещение в хранилище, Обратная связь с upstream и со-общения об ошибках;

1http://uneex.ru/LecturesCMC/PackageMaintaining2009/Conspects/00

Page 38: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

38 31 января

• Git, Gear и git.alt;• Git (лекция А. Герасёва);• Практика сборки пакета (Live show).

Интервью с очевидцем

О том, как проходил экзамен, мы решили спросить –(прохожего)–Александру Панюкову, дважды участвовавшую в нём в качестве эк-заменатора.

Первый экзамен

Как вы оцениваете аудиторию?На первый экзамен пришли студенты, у которых процесс «линук-

сизации мозга» уже начался: даже если опыт использования был неочень богатым на самом деле, мышление уже можно было назватьLinux-ориентированным: просматривался соответствующий ход мыс-ли, построение причинно-следственных связей, было заметно пони-мание идеологии. Есть ли какие-то замечания по уровню професси-ональной подготовки экзаменуемых?:: Все студенты в той или инойстепени знакомы хотя бы с одной VCS и BS из своего опыта, т.е. эта те-ма не была для них новой в курсе. Однако, именно с git и/или Bugzilla,на примере которых рассказывалась тема, имели дело далеко не все.

Если курс «инженерного плана», всегда есть опасность ска-титься в перечисление инструментов и их возможностей. Какпо-вашему, были ли в этом курсе основания для самостоятельногоосвоения предметной области?

На основании имеющегося материала, студенты довольно неплоходелают выводы о некоторых моментах, которые напрямую в лекцияхне рассматривались (и при этом являются довольно специфическими,но могут быть додуманы с использованием здравого смысла).

Сейчас много говорят о растущей популярности Ubuntu. Отра-зилось ли это на знаниях пришедшиих на экзамен?

В основном собравшиеся студенты пользовались RPM-based дис-трибутивами, как следствие — имели о них более полное представле-ние. Несмотря на одну лекцию про Debian, представления о предметебыли существенно более размытые, чем про ALT-специфические иRPM-специфические части. Был один арчевод — у него было пред-ставление об арче, но он скорее нерепрезентативен, так как один, у

Page 39: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

39

остальных же представление было такое: rpm — довольно неплохо,deb — сильно в общих чертах, остальное — тёмный лес.

Было опасение, что информацию и инструментарий, специфич-ные для дистрибутивов ALT Linux, будет трудно донести до ауди-тории. Подтвердились ли они?

ALT-специфику (git.alt, gear) знают довольно размыто, однако,имея на руках описание и первого, и второго, удачно додумывают.Очевидно (в том числе некоторым студентам), что при попытке са-мостоятельного использования всё станет понятнее, встанет на своиместа и т.п.

Общий вывод (одним предложением)

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

Что вы можете сказать о второй итерации экзамена? Извест-но, что его сдавал человек, за которым была возможность понаблю-дать «до и после»?

Свои наблюдения я изложила в форме письменного отчёта.

Особенности второго экзамена

На втором экзамене присутствовало всего два экзаменуемых.

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

2. Наличие подопытных кроликов в виде знакомых студентов: естьвозможность более подробно изучить мотивацию и последствиякурса или экзамена.

Образ студента:

• до подготовки к экзамену с Linux-системами был знаком доста-точно поверхностно — когда-то видел, пробовал, но активно непользовался;

• мотивация сдачи экзамена и чтения лекций — широкий круго-зор, который он наблюдал у людей «в теме», которые находилисьвокруг него;

• подготовка к экзамену — только по конспектам лекций и реко-мендованным ссылкам — курс не был прослушан«вживую»;

• руками описанные в курсе действия не делались.

Page 40: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

40 31 января

После прочтения лекций студентом перед экзаменом была устро-ена небольшая консультация. Выводы из консультации — прочтениелекций породило страшную кашу в голове, которая, тем не менее,довольно быстро была разложена по полочкам в ходе консультации.После консультации появилось мышление, похожее на мышление сту-дентов на первом экзамене. Перед подготовкой к экзамену его не бы-ло, перед консультацией — были намёки, которые погрязали в общейпородившейся каше. Во время консультации студент сам отвечал назадаваемые наводящие вопросы, понимая что к чему, изредка получаякомментарии. Синдром «линуксизации мозга» так и не появился.

Результат: несмотря на не идеально сданный экзамен, желаниечто-то делать и пробовать, разбираться дальше у студента не пропало(как минимум на словах).

Развязка

Не все лекции получились равно плотными: задача избегать из-лишней конкретики (в плане перечисления названий программныхинструментов и их свойств) и вместе с тем описывать реальный про-цесс создания и сопровождения пакета, очевидно, противоречива посути.

Последнее мероприятие (показательная сборка пакета) заняло —вместе со всеми заминками и повторами — 45 минут и оставило ощу-щение жульничества. В самом деле: перед глазами слушателей было«с нуля» настроено сборочное окружение, изрядно модифицированпакет из Fedora Core, учтена ALT-специфика, исправлено несколько(почти) спонтанных ошибок, собран и отправлен на сборку в храни-лище пакет (http://sisyphus.ru/ru/srpm/Sisyphus/nibbles). И при этомничего недоступного пониманию не произошло!

Кроме того, несколькими экзаменаторами отмечался высокий уро-вень изначальной подготовки студентов (конечно, не всех, а тех, кторешился сдавать этот экзамен). Это отвечает одной важной побоч-ной задачи всего проекта чтения UNIX-курсов вообще: вовлечение всообщество квалифицированных людей с потенциалом.

Наконец, очевидно, что для успешного объяснения (и освоения)роли сопровождающего достаточно затронуть азы довольно разнооб-разных видов профессиональной деятельности — от программирова-ния до team building. Дальнейшее освоение всего спектра может и непонадобиться, и уж точно вполне произвольно.

Page 41: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

41

На этих основаниях можно сделать два вывода:

Оптимистический Сопровождение пакетов в Linux — благодарнаядля тема для университетов: она не требует от студентов ничегоэкстраординарного, даёт им в руки начала интересной профес-сии и может сослужить хорошую службу как сообществу, таки самому университету. Необходимым условием является доста-точно широкий кругозор (или желание его достичь).

Провокационный Сопровождение пакетов в Linux — занятие лю-бительское. Подобно радиолюбительству, любительскому спор-ту или любительскому искусству, оно не требует высокого уров-ня знаний и занятости, однако предоставляет все возможностиэтот уровень повысить. Мало того, уже на этапе обучения оче-видны тенденции, которые могут сделать такого любителя спе-циалистом более высокого класса, чем профессионал, знаниякоторого ограничены сферой его непосредственной деятельно-сти.

Д. А. Пынькин, И. И. ГлецевичМинск, Белорусский государственный университет информатики ирадиоэлектроникиhttp://sisyphus.ru

Проектирование IT-инфраструктуры учебныхзаведений на базе ОС Linux

АннотацияВ докладе описывается способ организации многоместных систем

на базе ОС Linux в режиме без сохранения состояния в учережденияхс публичным доступом к компьютерным системам.

Введение

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

Page 42: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

42 31 января

В докладе показано, как с использованием технологий с откры-тым исходным кодом и виртуализации обеспечить «независимость»пользовательских сеансов.

Задача проектирования

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

При этом многие действия пользователю «удобно» производитьс повышенными привилегиями, но слабо ограничиваемый доступ ксистемным ресурсам одного пользователя может негативно отразить-ся на стабильности и безопасности последующей работы всех другихпользователей данного компьютера.

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

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

Таким образом, вырисовывается следующая техническая зада-ча: предоставить пользователю возможность максимально полногоуправления компьютерной системой, при этом обеспечить полное вос-становление этой системы после завершения сеанса.

Организация бездисковых виртуальных рабочих станций

Основой используемых решений являются бездисковая загрузкаоперационной системы Linux [1], многоместный режим работы гра-фической подсистемы Linux [2] и возможность некоторых реализацийвиртуальных машин работать в так называемом stateless-режиме ––все вносимые пользователем во время работы изменения не записы-ваются на жесткий диск, а накапливаются во временных файлах илив оперативной памяти компьютера. Соответственно, достаточно пере-загрузить виртуальную машину для полного восстановления системыв исходное работоспособное состояние.

Page 43: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

43

Для эффективного использования оборудования было использова-но свойство видеокарт — возможность подключения нескольких мо-ниторов, что, при правильной настройке графической подсистемы,позволило организавать несколько независимых рабочих мест на базеодного системного блока [2].

Фактически было реализовано объединение классической инфра-структуры VDI (Virtual Desktop Infrastructure) и методов терминаль-ного доступа к системе. В качестве сервера виртуальных рабочих сто-лов используется тот же компьютер, что и для организации доступак пользовательским виртуальным машинам! Причем, такой подходпригоден для организации как бездисковых, так и «полноценных»многоместных виртуальных рабочих столов.

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

• DHCP;• TFTP;• SMB или NFS (файловый сервер).

От администратора требуется лишь настроить загрузку системыи указать где лежат файлы, необходимые для работы Linux и вир-туальных машин. Так, для среднестатистического класса, в которомиспользуются одинаково настроенные системы, необходимы следую-щие файлы:

• ядро Linux;• файл начальной инициализации (initrd);• файл-образ файловой системы Linux;• файл-образ жесткого диска виртуальной машины.

Чтобы предоставить пользователям возможность использовать раз-личные операционные системы, администратору достаточно подгото-вить соответствующий виртуальный образ жесткого диска, но приэтом необходимо учитывать тот факт, что нагрузка на дисковую под-систему сервера пропорциональна количеству одновременно исполь-зуемых типов виртуальных машин.

Результат

Описанные принципы создания IT-инфраструктуры позволяюторганизовать рабочие места без сохранения состояния, которые позво-

Page 44: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

44 31 января

ляют пользователю полностью контролировать свою работу, не влияяна работу других пользователей.

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

Таким образом, вся предлагаемая IT-инфраструктура строится наоснове Linux (серверы, сетевые экраны, гипервизоры на рабочих стан-циях). Пользователям доступны виртуальные машины с уже установ-ленными и настроенными пользовательскими операционными систе-мами.

Литература

[1] Д.А. Пынькин, И.И. Глецевич, А.В. Отвагин Использование бездис-ковых рабочих станций в образовательном процессе БГУИР // Мате-риалы 4 международной конференции «Информационные системы итехнологии» IST’2008. — Минск, 2008. — С. 310-315.

[2] Wikipedia Multiseat Configuration http://en.wikibooks.org/wiki/

Multiterminal_with_Xephyr

А. О. МаковецкийМосква, компания «Asterisk-VoIP»http://asterisk-voip.ru/

Автоматизация систем информирования иоповещения студентов ВУЗа на базе свободного

программного обеспечения

Любое среднее специальное или высшее учебное заведение сталки-вается с проблемой оперативного информирования. Обычно решаютэту задачу «вручную» или полу автоматизированным способом, до-ставшимся по наследству от советского прошлого.

Технический прогресс позволяет полностью автоматизироватьпроцесс информирования студентов, абитуриентов, преподавателей,используя решения на базе свободного программного обеспечения.

Основой решения для автоматизации может и должна стать связ-ка СУБД MySQL и ip-pbx Asterisk, программных продуктов работаю-щих под управлением операционных систем семейства Unix. Именно

Page 45: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

45

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

Стоит отметить, что многие ВУЗы в последнее время стали ак-тивно работать над собственными Web-порталами. Для таких ВУЗовможно использовать одну разделяемую Базу Данных (БД) с персо-нальной информацией о студентах (например, результаты контроль-ных) как для публикации на портале, так и для голосового информи-рования.

К сожалению, для большинства ВУЗов невозможно предложитьсколько-нибудь интересное, развитое решение, которое было интегри-ровано с внутренней системой управления студентами/сотрудникамив виду отсутствия оных систем. Очень часты случаи, когда необхо-димая информация хранится либо на бумажных носителях, либо, влучшем случае, в excel-таблицах или doc-документах.

Поэтому в решении предполагается использование простой фор-мы для загрузки excel-документа и использование samba-ресурса, савтоматическим его опросом.

Теперь, имея в своем распоряжении массив информации, получен-ный либо из БД, либо путем разбора загруженных документов, мыможем легко информировать студента. Вся информация может бытьразделена на два основных типа — общая и персонализированная. Об-щая информация может быть любой, и представляться она должна ввиде заранее записанного голосового сообщения. При этом, учитываявозраст и опыт работы с ПК работников, запись сообщения можетбыть реализована при помощи исходящего, либо входящего звонкана телефонный аппарат сотрудника. Если говорить о персональнойинформации студентов — то, учитывая специфику образовательныхзаведений, это, в основном, либо некие цифры (оценки), либо даты.Проговаривание, что числовых данных, что даты и времени, легкореализуется на основе «склеивания» отдельно записанных чисел иназвания месяцев.

В описанном виде решение для автоматизированного информи-рования является простым для реализации, но требует высокой сте-пени участия сотрудников в его использовании. При этом возможнонесколько усложнив структуру решения, снизить степень вовлечениясотрудников в его эксплуатацию. Для этого возможно использоватьсвободные TTS-движки, такие как ru_tts и festival. Это позволит ис-

Page 46: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

46 31 января

ключить процесс наговорки сообщений и достаточно предоставлятьинформацию в текстовом виде.

Использование автоматизированной системы информированиедолжно исключить большинство ошибок донесения информации дополучателя за счет исключения посредников и упрощения самой про-цедуры. К тому же это хороший шаг в развитии инфраструктур ВУ-За, которые зачастую являются наследием советского союза.

В. Кулямин, В. Рубанов, А. ХорошиловМосква, Институт системного программирования РАН

Проект: Комитет по образованию и высшей школе РАСПОhttp://www.raspo.ru

О комитете по образованию и высшей школеРоссийской Ассоциации Свободного Программного

Обеспечения

АннотацияВ докладе представлены цели и задачи недавно созданного коми-

тета по образованию и высшей школе Российской Ассоциации Свобод-ного Программного Обеспечения (РАСПО), а также потенциальные на-правления его деятельности. Среди этих направлений наболее подроб-но рассматриваются возможные мероприятия по повышению качествапреподавание ИТ-дисциплин за счёт использования преимуществ СПО.В то же время, выступление нацелено не только на открытое обсужде-ние существующих предложений, но и на поиск новых идей и привле-чение наиболее активных участников конференции к работе комитета.

О Российской Ассоциации Свободного Программного Обеспечения(РАСПО) было объявлено в начале 2009 года, когда представители17 компаний подписали Меморандум о намерении создать эту орга-низацию. 18 мая 2009 года прошло ее официальное учредительноесобрание. Компании объединились в Ассоциацию вокруг миссии, за-ключающейся в содействии разработке, внедрению и популяризациисвободного программного обеспечения в государственном, обществен-ном и коммерческом секторах российской экономики, в развитии оте-чественной индустрии программного обеспечения, основанного на от-крытом коде и свободной лицензии, и её вхождении в мировой рынокразработки ПО.

Page 47: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

47

В рамках Ассоциации было сформировано несколько профильныхкомитетов, в том числе и Комитет по образованию и высшей школе.Основными целями этого комитета являются:

• Содействие повышению компьютерной и правовой грамотностинаселения.

• Содействие повышению качества образования ИТ-специалистов.

• Расширение использования СПО в образовательных учрежде-ниях.

• Привлечение молодёжи в сообщества СПО проектов.

Основными задачами комитета являются:

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

• Поддержка разработки и внедрения учебных курсов по СПО.

• Помощь государству при формировании политики внедрения,использования и разработки СПО в учебных заведениях раз-личного уровня.

• Предотвращение недобросовестной конкуренции при госзакуп-ках программного обеспечения для целей образования.

• Пропаганда и содействие внедрению СПО в образовательныхучреждениях.

• Содействие разработке СПО для образовательных учреждений.

Применительно к высшей школе в комитете предполагается развер-нуть работы по следующим направлениям:

• Расширение использования СПО в учебном процессе (примени-тельно как к базовому и офисному ПО, так и к ПО, специфич-ному для предметной области).

• Повышение качества преподавания ИТ-дисциплин за счёт ис-пользования преимуществ СПО.

• Популяризация преподавания и исследования экосистемы СПО.

– Преподавание принципов разработки СПО, особенностейлицензирования и т.д.

– СПО-сообщества, СПО-разработка и само СПО как объектизучения социологических, экономических и других наук.

• Привлечение студентов к участию в СПО проектах.

Page 48: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

48 31 января

• Расширение использования СПО в хозяйственной деятельностиВУЗов.

Наиболее близким для ИСП РАН является направление по обучениюстудентов по ИТ-специальностям, поэтому именно на проработке это-го направления был сосредоточен первоначальный фокус наших уси-лий. Черновой вариант предложений по этой тематике был подготов-лен в ИСП РАН и будет представлен на конференции.

В этом документе обозначены следующие преимущества исполь-зования СПО и проектов по его разработке, позволяющие повыситькачество преподавания ИТ-дисциплин в университетах:

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

• Студенты и преподаватели получают доступ к последним раз-работкам в соответствующей области и могут без ограниченийизучать инновационные технологии и архитектурные решения.

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

• Студенты обретают дополнительную мотивацию для обучения,а преподаватели — для его проведения за счет востребованностиполучаемых знаний и выполняемой работы на мировом уровне,ощущения причастности к переднему краю ИТ-технологий, атакже большей свободы в выборе направления и путей реализа-ции (самообразования и сопутствующих исследований).

• Студенты и преподаватели могут достаточно свободно напря-мую общаться с профессионалами высокого уровня в соответ-ствующей области, принимающими участие в открытых проек-тах по разработке ПО. Это позволяет актуализировать содержа-ние обучения и вырабатывать необходимые для полноценногоразвития ИТ-специалистов социальные и когнитивные навыки.

Таким образом, использование СПО и открытых проектов позволяетсущественно повысить качество ИТ-образования за счет следующихфакторов.

Page 49: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

49

• Приведения его содержания в соответствие с требова-ниями дальнейшего экономического и социального раз-вития.

• Значительного увеличения исследовательской составля-ющей в работе преподавателей, без которой полноценноесовременное ИТ-образование невозможно.

• Актуализации проводимых исследований с помощью по-стоянного соотнесения их с важнейшими текущими проблемамиИТ, выделяемыми мировым исследовательским сообществом,активно участвующим в разработке СПО и открытых проектах.

• Cоциальной адаптации студентов в среду единомышленни-ков и профессионалов, не ограниченную рамками учебной груп-пы и ВУЗа.

Для реализации этих возможностей предлагается инициировать сле-дующие работы (безусловно с публично доступными результатами):

• Доработка существующих и разработка новых образователь-ных материалов различных типов (общетеоретических и спе-циализированных курсов, образовательных модулей, практику-мов, лабораторных работ и наборов упражнений, учебников ипрактических пособий, методических материалов, материаловдля тренингов, дополнительного образования, дистанционногои заочного обучения), использующих доступные материалы от-крытых проектов и СПО.

• Доработка существующих и разработка новых специализиро-ванных курсов по архитектурным решениям и технологиям, ис-пользованным в рамках достаточно зрелого и широкого исполь-зуемого СПО высокой сложности (операционные системы, ком-пиляторы, системы управления базами данных, телекоммуника-ционные системы, ПО промежуточного уровня и пр.).

• Стимулирование выполнения дипломных работ, результаты ко-торых интегрируются в существующие проекты по разработ-ке СПО или оформляются как полноценные независимые СПОпроекты. Например, одним из видов стимулирования можетбыть организация публичных конкурсов таких дипломных про-ектов.

Мы осветили лишь первоначальные идеи для организации деятель-ности комитета. Однако, спектр потенциальных активностей гораздо

Page 50: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

50 31 января

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

А. Г. Кушниренко, А. Г. Леонов, М. А. Ройтберг,

Я. Н. Зайдельман, А. В. Карпов, Е. В. Святушенко,

Н. М. Субоч, Д. В. Хачко, В. В. ЯковлевМосква, Пущино, Переславль, НИИСИ РАН, ИМПБ РАН, Университетг. Переславля

Проект: КуМир http://www.niisi.ru/kumir, http://lpm.org.ru/kumir

Система КуМир — новые возможности

АннотацияКуМир (Комплект Учебных Миров) — система, ориентированная на

преподавание информатики в средней школе и вводных курсов про-граммирования в высшей школе. Система была разработана в 80-х —90-х годах ХХ века коллективом студентов, аспирантов и сотрудниковмехмата МГУ и Академии наук СССР, работала на всех мыслимых инемыслимых компьютерах, установленных в школах СССР, и получи-ла широкое распространение. С течением времени интерфейс КуМи-ра (под операционнной системой МС ДОС) устарел. Современная но-вая реализация системы КуМир является свободно распространяемымпрограммным продуктом и функционирует под управлением операци-онных систем Linux, Mac OS, Windows.

Система Кумир разработана и распространяется свободно на усло-виях лицензии GNU 2.0. Данная лицензия разрешает бессрочно ис-пользовать КуМир на любом количестве компьютеров в любых целяхбез оформления каких либо дополнительных документов.

В системе КуМир используется школьный алгоритмический языкс русской лексикой и встроенными исполнителями Робот и Чертеж-ник, что соответствует учебнику [1]. Система КуМир отличается отпроизводственных систем программирования на порядок более высо-ким уровнем дружественности при отладке небольших учебных про-грамм. Возможности системы КуМир были представлены в докла-де [2].

Page 51: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

51

В версии конца 2009 г. в КуМире появились три новых возможно-сти.

Наиболее важной является разработка и реализация стандарта,обеспечивающего удобное подключение новых исполнителей. В соот-ветствии с этим стандартом реализованы исполнители, соответствую-щие учебникам [3, 4]. Таким образом, система КуМир стала открытойдля поддержки вновь разрабатываемых учебников. Важным методи-чески элементом стандарта является возможность непосредственного,«пультового» управления любым подключенным исполнителем. Приэтом команды, отданные с пульта, запоминаются и могут быть пре-образованы в программу на языке КуМир. Подробнее о разработкеновых исполнителей и работе с ними см. [5].

Другой возможностью является система поддержки гипертексто-вых учебников, которая позволяет вставлять в стандартный гипер-текст кнопки, позволяющие читателю выполнять различные действияпо управлению КуМиром (загрузка программы, ее выполнение и пр.).В настоящее время в этой среде реализованы отдельные главы изучебника [1] и краткое руководство по использованию системы Ку-Мир.

Наконец, разнообразные справочные материалу по языку, системеКуМир и исполнителям разделены на две части. Наиболее важная ин-формация (синтаксис управляющих конструкций, перечень использу-емых типов и операций, системы команд встроенных исполнителей идр.) генерируется по программному коду, и тем самым всегда соответ-ствует используемой версии системы. Долговременная информация,наоборот, отделена от системы, и может редактироваться и просмат-риваться любыми стандартными средствами (на сегодня используетсяформат pdf).

В 2009 г. система КуМир использовалась как во внешкольном пре-подавании (Зимняя Пущинская школа, Калужская летняя школа),так и в стандартном курсе информатики в ряде средних школ, а такжев ВУЗах (механико-математический факультет МГУ, Университет г.Переславля). Этот опыт показал, что надежность системы КуМир до-статочна высока и система может использоваться в регулярном учеб-ном процессе. Авторы благодарят Д. Кириенко и В.Тарасову за ис-пользование системы КуМир при преподавании курса информатикив средней школе и многочисленные полезные советы и замечания.

Page 52: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

52 31 января

Литература

[1] Информатика : 7-9 кл.: Учеб. для общеобразоват. учр. / А.Г. Кушни-ренко, Г.В. Лебедев, Я.Н. Зайдельман. — 4-е изд., стер. — М.: Дрофа,2003. — 335 c.

[2] КуМир вернулся: обучение основам программирования спомощью си-стемы КуМир / А. Г. Кушниренко, А. Г. Леонов, А. В. Карпов, М. А.Ройтберг, Н. М. Субоч, Д. В. Хачко, В. В. Яковлев. — «Свободное про-граммное обеспечение в высшей школе», сборник тезисов, М.: AltLinux,2009, с. 15

[3] Информатика : алгоритмика : Учеб. для 6 кл. общеобразоват. учр. /А.К. Звонкин, С.К. Ландо, А.Л. Семенов. — М.: Просвещение, 2006. —237 c.

[4] Информатика: алгоритмика : Учеб. для 7 кл. общеобразоват. учр. / С.К.Ландо, А.Л. Семенов, М.Н. Вялый. — М.: Просвещение, 2008. — 207 c.

[5] Новые Миры в системе КуМир / Кушниренко А.Г., Леонов А.Г., Ройт-берг М.А., Хачко Д.В., Тарасова В.В., Яковлев В.В. — «Свободное про-граммное обеспечение в высшей школе», настоящее издание

А. Г. Кушниренко, А. Г. Леонов, М. А. Ройтберг, В. В. Яковлев

Проект: ПиктоМир http://lpm.org.ru/kumir/

ПиктоМир — программирование для дошкольников

Аннотация

Программирование — одна из грамотностей, которой должен будетобучиться любой землянин, родившийся в 21 веке. По мнению авто-ров, это обучение можно и полезно начинать в дошкольном возрасте,до устойчивого овладения навыками чтения и письма. ПиктоМир —техническое средство, полезное при обучении началам программиро-вания дошкольников, не умеющих или не любящих читать и писать.Методика обучения программированию с использованием этого сред-ства находится пока в процессе разработки.

ПиктоМир — среда для подготовки и выполнения программ, которыеуправляют некоторым Исполнителем, имеющим определенную систе-му команд и действующим в определенной обстановке. Программы

Page 53: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

53

составляются из пиктограмм, подобно тому, как составляются сло-ва и короткие фразы в «кассе букв и слогов» при обучении чтениюи письму. Каждая пиктограмма отображает либо команду исполни-теля, либо управляющую конструкцию, либо вызов подпрограммы.Первые опыты показывают, что работа в ПиктоМире доступна де-тям 4-6 лет и вызывает у них интерес. Чтобы удержать вниманиеи интерес обучаемого в начальном курсе программирования, жела-тельно построить обучение так, чтобы составление и отладка первыхпрограмм заняли бы возможно меньшее время. В курсе программиро-вания на механико-математическом факультете МГУ, который одиниз авторов данного доклада начал читать в 1979 году, эта задача ре-шалась так: первые программы составлялись студентами из заранееподготовленных перфокарт. На перфокартах были подготовлены ко-манды исполнителя Путник, команды вызова и завершения подпро-грамм (с заранее выбранными фиксированными именами), цифры от0 до 9 и «открывающие» и «закрывающие» скобки управляющих кон-струкций «цикл N раз», «если то» и «цикл пока». Такая методикапозволяла обучаемому, впервые столкнувшемуся с программировани-ем, отладить первую элементарную программу в начале 45 минут-ного занятия и вполне содержательную программу с управляющимиконструкциями к концу занятия. Единственным недостатком «сбо-рочной» методики оказались достаточно часто допускаемые обучае-мыми «синтаксические» ошибки, состоящие в «разбалансировке» от-крывающих и закрывающих скобок управляющих конструкций. Пик-тоМир построен по аналогичному принципу – программа собирает-ся из готовых пиктограмм, однако ПиктоМир спроектирован так,что синтаксические ошибки в нем принципиально невозможны. Толч-ком к разработке ПиктоМира послужил успех шестилетней внучкиодного из авторов в освоении замечательной Flash-игре LightBot

(http://armorgames.com/play/2205/light-bot). В данной игре ре-бенок должен составлять небольшие линейные последовательностипиктограмм, которые предписывают Роботу обойти поле и зажечьсвет в отмеченных клетках. Система ПиктоМир является развити-ем игры LightBot: кроме подпрограмм в ПиктоМире можно исполь-зовать повторители, условия и циклы. ПиктоМир — система, позво-ляющая освоить некоторый замкнутый набор фундаментальных по-нятий. Вместе с тем, ПиктоМир это система ограниченного назна-чения, предполагается, что ребенок будет работать в ПиктоМире неболее нескольких часов. Курс обучения началам программирования

Page 54: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

54 31 января

в системе ПиктоМир будет состоять из нескольких модулей-игр, вкаждом из которых нужно будет выполнить последовательность за-даний возрастающей сложности. Разные модули могут использоватьразные «Роботы-исполнители», однако управляющие конструкции вовсех модулях задаются одинаково. В начальной версии системы ре-ализован только один исполнитель. ПиктоМир разрабатывался, как«младший брат КуМира», в ПиктоМире имеются средства превраще-ния разработанной Пикто-программы в КуМир-программу. Началь-ная версия Пиктомира может загружена в составе ежевечерней сбор-ки КуМира с сайта http://lpm.org.ru/kumir.

Краткое описание системы

Интерфейс ПиктоМира состоит из трёх основных компонент:

1. Область наблюдения за исполнителем;

2. Область составления программы;

3. Полка с командами.

Составление программ

«Написание» программ сводится в выбору соответствующих ко-манд-пиктограмм на полке и переносу их в область составления про-граммы, которая представляет собой упорядоченную последователь-ность пиктограмм.

В программе выделяются отдельные блоки, которые можно трак-товать как тела функций, циклов или условий. Мы сознательно от-казались от идеи «вложенных конструкций», считая их слишком гро-моздкими и сложными для детей дошкольного возраста. Пиктограм-мы на полке разделены на три категории: условия (в форме ромба),повторения (круглой формы) и простые команды. Рядом с блокамипрограмм находятся две специальные клетки: одна ромбовидной фор-мы, в которую можно ставить условие, при котором будет выполнять-ся блок, а другая — круглой формы, в которую можно вставить однуиз пиктограмм повторения. Вызов блока вызывается одной из соот-ветствующих пиктограмм K1. . .Kn. Таким образом, всего лишь поме-щая в нужные клетки соответствующие пиктограммы, можно состав-лять программы любой сложности, не объясняя детям про вложен-ность конструкций.

Page 55: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

55

При разработке системы ПиктоМир мы также учитывали эргоно-мические особенности интерфейса, предназначенного для дошкольни-ков. Перетаскивать пиктограммы в стиле Drag’n’Drop дошкольникамнеудобно и может даже оказаться вредным, так как требует долговре-менного статического усилия мышц кисти. Поэтому мы реализовалиперетаскивание в стиле старых компьютерных игр: первый клик —выбор объекта, второй клик – выбор конечной точки его перемеще-ния.

Исполнитель

В начальной версии ПиктоМира реализован только один исполни-тель. Мы нарисовали робота, похожего на R2D2 из фильма «Звёздныевоины», а саму обстановку Робота сделали псевдотрёхмерной (изомет-рической). Этот Робот умеет двигаться вперед, поворачивать направои налево и закрашивать клетку, на которой он находится.

Текущее состояние разработки

На данный момент ПиктоМир проходит апробацию на некоторыхдетях-добровольцах (и их родителях!). По результатам этой апроба-ции будут составлены модули-игры, о которых говорилось выше. Впроцессе аппробации предусмотрено создание различных миров, со-здаваемых и подключаемых по стандарту, разработанному для систе-мы КуМир.

Среднесрочная задумка

Первые эксперименты с ПиктоМиром показали очевидную вещь:любой деятельностью дети охотнее занимаются в компании, а не водиночку. На настоящий момент единственная опробованная совмест-ная деятельность, это обучение одного (неопытного младшего) ребен-ка другим (старшим и более опытным). К лету 2010 мы планируемвключить в ПиктоМир средства организации соревнований двух илиболее детей.

Page 56: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

56 31 января

А. Г. Кушниренко, А. Г. Леонов, М. А. Ройтберг, В. И. Хачко,

Д. В. Хачко, В. В. Тарасова, В. В. ЯковлевМосква, Пущино, Переславль, НИИСИ РАН, ИМПБ РАН, СШ №1г.Переславля

Проект: КуМир http://www.niisi.ru/kumir, http://lpm.org.ru/kumir

Новые Миры в системе КуМир

АннотацияКуМир (Комплект Учебных Миров) — система, ориентированная

на преподавание информатики в средней и высшей школе (вводныйкурс). «Мир» — это открытое множество «обстановок» определенно-го вида и исполнитель, который действует в этих обстановках. Опи-саны средства создания новых миров в системе КуМир и три мира,поддерживающих преподавание информатики по учебникам «Инфор-матика:алгоритмика» для 6-го и 7-го классов средней школы.

Общие сведения

«Мир» — это открытое множество «обстановок» определенного ви-да и исполнитель, который действует в этих обстановках. Два мира(Робот и Чертежник) встроены в систему КуМир [1, 2]. В КуМире былпредусмотрен механизм создания новых исполнителей. Однако прак-тика использования КуМира в учебном процессе потребовала созда-ния нового механизма, который делает работу с внешними исполни-телями практически неотличимой от работы с встроенными исполни-телями Роботом и Чертежником. Это связано с необходимостью дли-тельного использования некоторых внешних исполнителей в учебномпроцессе.

Как правило, подобно Роботу, мир допускает непосредственноеуправление исполнителем с помощью пульта. С помощью стандарт-ных средств поддерживается возможность преобразования последо-вательности команд пульта в неветвящуюся программу и передачаэтой программы в систему КуМир.

Разработка такого нового мира ведется независимо от системы Ку-Мир. Исполнитель должен быть написан на C++ с использованиембиблиотеки Qt[3] и собран в виде динамически подгружаемой библио-теки. Исполнители подгружаются в момент старта системы КуМир.Взаимодействие Кумира и Миров организовано через класс QPlugin.

Page 57: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

57

Мир может использоваться (без изменения исходного кода) и авто-номно от системы КуМир. Для этого в комплекте поставки есть спе-циальная программа, она подгружает библиотеку мира. Управлениемиром при автономном использовании осуществляется при помощипульта управления. При этом сохраняется полная функциональностьмира (кроме, естественно, работы под программным управлением изсистемы КуМир и передачи последовательности выполненных командв КуМир).

Примеры Миров

В поставку КуМир 1.7 входят три новых Мира, предназначен-ных для поддержки учебников [4, 5]: Черепаха, Водолей и Кузне-чик. Миры прошли апробацию в учебном процессе в школе №1 г.Переславль-Залесский. Каждый мир имеет пульт управления. Поми-мо этих трех Миров существует демонстрационная версия управленияроботом LEGO NXT.

Черепаха — реализация знаменитого исполнителя, предложен-ного С.Пейпертом . Мир Черепахи — квадратный песчаный остров,окруженный водой. Черепаха передвигается по нему (прямо и делаяповороты). При этом хвост черепахи может оставлять на песке след.Наша реализация детально следует исходному описанию. В частно-сти, черепаха рисует именно хвостом (а не серединой живота, как эточасто делают).

Кузнечик — исполнитель, описанный в учебнике [4]. Мир Кузне-чика — числовая прямая, на которой отмечены целочисленные точки.Пользователь может менять масштаб и протягивать прямую черезокно наблюдения с помощью стандартных средств. Кузнечик может«прыгать» по числовой оси вперед и назад (длины этих прыжков мо-гут быть различны). В отличие от Черепахи, Кузнечику может бытьвыдано определенное задание. В нем указываются длины прыжков,точки, куда нужно попасть (они отмечаются флажками) и, возможно,описание фрагмента оси, который доступен Кузнечику. Пользовательможет создать новое задание, сохранить его, загрузить и отредакти-ровать.

Водолей — это мир известных задач-игр про переливание. В этихзадачах даны три стакана, объем каждого стакана — целое число (ес-ли объем равен нулю, стакан не показывается). У игрока есть следу-ющие возможности:

Page 58: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

58 31 января

1. долить нужный стакан доверху («из крана»);2. вылить всю воду из указанного стакана (при этом стакан стано-

вится пустым);3. перелить воду из одного стакана в другой (если удается перелить

всю воду, то первый стакан становится пустым; в противномслучае второй стакан становится полным, а остаток остается впервом стакане).

Цель игры — получить в каком-либо из стаканов указанное количе-ство воды (начальное количество воды в каждом стакане также зада-но). Как и в случае Кузнечика, пользователь может работать с раз-личными заданиями (в задании Водолея описываются объемы стака-нов, начальное количество воды в них и требуемое количество воды).

LEGO NXT — Реализация управления роботом Lego NXT из си-стемы Кумир. Подключение к роботу осуществляется через интер-фейсы Bluetooth или USB.

Доступны следующие команды:

1. повернуться на требуемый угол;2. сместиться вперед;3. сместиться назад;4. проверить показания датчика касания.

Литература

[1] Информатика : 7-9 кл.: Учеб. для общеобразоват. учр. / А.Г. Кушни-ренко, Г.В. Лебедев, Я.Н. Зайдельман. — 4-е изд., стер. — М.: Дрофа,2003. — 335 c.

[2] КуМир вернулся: обучение основам программирования спомощью си-стемы КуМир / А. Г. Кушниренко, А. Г. Леонов, А. В. Карпов,М. А. Ройтберг, Н. М. Субоч, Д. В. Хачко, В. В. Яковлев. — «Свобод-ное программное обеспечение в высшей школе», сборник тезисов, М.:AltLinux, 2009, с. 15

[3] Qt 4: Программирование GUI на С++ / Бланшет К., Саммерфилд М.– изд. Кудиц-Пресс, 2007. — 641 с.

[4] Информатика : алгоритмика : Учеб. для 6 кл. общеобразоват. учр. /А. К. Звонкин, С. К. Ландо, А. Л. Семенов. — М.: Просвещение, 2006. —237 c.

[5] Информатика: алгоритмика : Учеб. для 7 кл. общеобразоват. учр. /С. К. Ландо, А. Л. Семенов, М. Н. Вялый. — М.: Просвещение, 2008. —207 c.

Page 59: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

59

Д. А. КузнецовНижний Новгород, Нижегородский Радиотехнический Колледжhttp://fireforge.net/projects/cunewebform,http://fireforge.net/projects/elkartoteka

Разработка программного обеспечения для работыучебного заведения на базе СПО

АннотацияМногие задачи в учебном заведении решаются с помощью авто-

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

В чем преимущества использования Свободного ПрограммногоОбеспечения при разработке приложений для внутреннегоиспользования?

• Благодаря отсутствию ограничений на количество устанавли-ваемых копий и доступности программного обеспечения всегдаактуальной новой версии разрабатываемые системы при необ-ходимости легко масштабировать, переносить на обновленныесервера, дорабатывать, исправляя возникающие ошибки и внед-ряя новый требуемый функционал.

• В легальном свободном доступе находятся как средства разра-ботки, так и средства, на которых в конечном счете функциони-рует программный продукт.

• Нет никаких препятствий в одновременном функционирова-нии программного продукта на коммерческий платформах, ес-ли свойства кросплатформенности или кросбраузерности зало-жены в техническом задании на проектирования того или ино-го продукта, который, как правило, является курсовой иди ди-пломной работой студентов.

Page 60: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

60 31 января

Особенности лицензирования программ по лицензии GNU/GPLпри использовании кода под другими свободными лицензиями

При создании свободного программного обеспечения, лицензируе-мого под GNU/GPL очень часто используются готовые библиотеки,которые имеют свободную лицензию, отличную от GNU/GPL, напри-мер MIIT-лицензию, или BSD-образную лицензию, или LGPL лицен-зию, некоторые пункты которых противоречат принципам GNU/GPLили наоборот. Как поступить в таких случаях, когда все-таки хо-чется залицензировать программу под GNU/GPL? Анализируя опытиспользования программистами ФГОУ СПО «НРТК» программныхкомпонентов под различными лицензиями и правомерность этого ис-пользования можно сделать вывод, что совмещать подобные лицензииможно совершенно свободно, соблюдая лишь некоторые правила...

Опыт разработки приложений для внутренней работыНижегородского Радиотехнического Колледжа

Еще до начала дискуссий о свободном программном обеспечениипреподавателями информационных технологий и специалистами кол-леджа была сделана ставка на обучение студентов сознанию распре-деленных информационных систем на базе клиент-серверных web-технологий. Это дало и дает по сей день очень много преимуществ:

• централизованное управление данными посредством использо-вания сервера приложений с возможностью резервного копиро-вания данных;

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

• единое информационное пространство для всех подразделенийколледжа.

Все эти преимущества очевидны, т. к. такие приложения являются поумолчанию кросплатформенными.

После внедрения свободного программного обеспечения в про-фильные предметы и после изучения средств разработки графи-ческих «тяжелых» приложений у преподавателей и студентов сталстремительно расти интерес к кросплатформенной разработке гра-фических приложений с применением библиотек QT и RAD/IDE

Page 61: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

61

QTCreator. Это новый этап для совершенствования знаний в обла-сти применения новейших технологий, которые в большинстве своембазируются на свободном программном обеспечении, потенциал кото-рого становится очень быстро виден студенту, если он учится в Ни-жегородском радиотехническом колледже.

И. ЧубинКиев, Учебный центр Сетевые Технологии

Виртуальные сети как часть живой документации

Аннотация

В работе рассматривается новый способ подготовки документации,который может помочь облегчить процедуру её написания и сделать еёиспользование более эффективным. Особое внимание уделяется вирту-альным компьютерным системам и сетям, как важному вспомогатель-ному элементу, использующемуся как при подготовке документации,так и при её использовании.

Введение

В мире UNIX/Linux-систем и систем с открытым исходным ко-дом получили широкое распространение руководства, представляю-щие собой пошаговое описание процедуры решения какой-либо зада-чи, то есть рассказывающие о том, как ”сделать что-то”, что и отра-жено в названии документов такого класса — HOWTO.

В общем виде документ HOWTO содержит:

1. Описание системы, в которой выполняется работа;2. Описание её исходного состояния;3. Описание её конечного состояния;4. Описание процедуры перехода из начального состояния в конеч-

ное.

Как правило, все перечисленные выше пункты представлены какпростое словесное описание, иногда сопровождающимся прилагаемы-ми конфигурационными файлами и текстом программ и скриптов.

Обычная документация является линеаризованным представлени-ем некоторой процедуры настройки. И ключевые пункты настройки,

Page 62: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

62 31 января

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

Описание исходной системы тоже не всегда идеально. Как пра-вило, для UNIX/Linux-систем и сетей оно выглядит как словесноеописание того, какие операционные системы используются, и какоепрограммное обеспечение установлено.

Описание системы, рассматриваемой в документации, в идеальномслучае должно включать в себя:

• Множество узлов и взаимосвязь между ними;• Программное обеспечение узлов, версии операционных систем и

дополнительного программного обеспечения;• Процедуру начальной настройки операционной системы и до-

полнительного программного обеспечения.

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

Для того, чтобы исключить влияние неучтённых факторов, прове-дение экспериментов при написании документации часто выполняетсяв свежеустановленных системах внутри виртуальных машин.

Система или сеть, описываемая в руководстве, формируется, а за-тем внутри неё производятся действия, которые должны быть описа-ны в документации. После того как документация сделана, сеть илиуничтожается, или оставляется для продолжения работы над следу-ющими версиями документа. В последнем случае, сохраняются, какправило, образы виртуальных машин, участвовавших в написании до-кументации.

У читателя, работающего с HOWTO, есть две альтернативы:

1. Он может просто читать текст;

Page 63: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

63

2. Он может создать описываемую в документации модель с помо-щью виртуальных машин, и выполнять действия, описанные вдокументации в этой модели.

Живая документация

Как видно из описанного выше, при написании документациизначительная часть работы при составлении документации являетсявспомогательной, а большая часть информации доступной при напи-сании остаётся недоступной читателю, даже если она ему нужна.

Для получения интересующих его, но отсутствующих в документедеталей, читателю остаётся только один вариант: развернуть системусамостоятельно, и проделать всю процедуру по настройке самому.

Документ можно сделать намного более информативным, если до-полнить его всей промежуточной информацией, доступной в ходе на-стройки, а также формальным описанием модели сети, в которой онавыполняется.

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

1. Получение дополнительных деталей описываемых процедур;

2. Запуск и исследование описываемой модели системы;

3. Перенос настроек из модели в настоящую систему.

Для этого необходимо несколько изменить процедуру подготовкидокументации и использовать при её написании дополнительные ин-струменты.

Процедура создания документации:

1. Описание модели системы, подлежащей настройке. Созданиеформального описания, достаточного для развёртывания вир-туальной системы, описываемой в документации.

2. Создание модели системы, подлежащей настройке. То есть соб-ственно создание виртуальных машин и организация связеймежду ними.

3. Настройка и запись.

Собственно выполнение всех действий, которым посвящён доку-мент. Все действия и результаты их выполнения автоматическификсируются и впоследствии являются доступными читателю.

Page 64: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

64 31 января

Текстовый документ HOWTO составляется на основе этих за-писей. Причём, существует формальная связь между текстовымдокументом, и выполненными операциями по настройке. Напри-мер, в документе встречается некая команда. Мы можем посмот-реть, когда она выполнялась; какие действия предшествовалией; каковы были результаты её выполнения.

4. Редактирование процедуры настройки; добавление описания.

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

5. Публикация документации.

Быстрое построение виртуальных сетей

Одним из важнейших элементов системы, описываемой выше, яв-ляется легковесная процедура развертывания виртуальной сети, тоесть разработать способы и средства для построения виртуальной се-ти по описывающему ее конфигурационному файлу.

Исследуемые сети могут быть не только чисто виртуальными, но исмешанными: наряду с виртуальными узлами в них могут работать иобычные компьютеры и сетевые устройства. Виртуальная часть сетиможет работать поверх хоста, множества распределенных хостов илив облаке виртуализации, таком как EC2.

Для построения виртуальных сетей может использоваться суще-ствующее уже в настоящий момент программное обеспечение, напри-мер:

• Xen или KVM как системы виртуализации;

• QEMU/PEMU/Dynamips как эмуляторы сетевых устройств;

• openvpn или vde как средство для объединения распределенныхсистем виртуализации;

• элементы ядра Linux (модули 8021q, bridge и ряд других), кото-рые обеспечивают объединение виртуальных устройств междусобой требуемым способом.

Программное обеспечение, позволяющее управлять всей виртуаль-ной сетью в целом (создавать узлы, изменять топологию сети, вноситьизменения в показатели качества работы сетевых соединений, такиекак задержка, пропускная способность, вероятность потери трафика),

Page 65: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

65

и отдельными ее виртуальными подсистемами, разработано специаль-но для решения описанной задачи.

Оно же может применяться для автоматизации процесса началь-ной настройки систем, то есть в ходе применения процедур настройки,о которых шла речь выше. Как правило, эти процессы содержат мно-го рутинных операций, которые всегда хочется переложить на ком-пьютер – например, такие как настройка IP-адресов, маршрутизации,начальных учетных записей, паролей для доступа к ним, различныхинтерфейсов для сетевого доступа и множество других.

Основные задачи:

• быстрое разворачивание и начальная настройка произвольныхвиртуальных и смешанных сетей;

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

• фиксация результатов экспериментов.

Ключевые возможности системы:

• унификация управления;• визуализация сети;• интегрированные инструменты для исследования работы сети;• поддержка множества операционных систем и виртуальных се-

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

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

Дополнительная информация

• http://xgu.ru/wiki/LiLaLo – запись операций в консоли UNIX-системы

• http://xgu.ru/wiki/Xentaur – программное обеспечение для ор-ганизации виртуальных сетей

Page 66: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

66 31 января

И. П. Русинов, И. А. НечаевКострома, КГУ им. Н. А. Некрасова

Проект: KSU Cluster

Свободное программное обеспечение для научныхисследований по квантовой теории

конденсированных сред

Современные исследования в области квантовой теории конден-сированных сред не могут обходиться без привлечения большого ко-личества вычислительных ресурсов, а применение последовательныхалгоритмов для решения задач, стоящих перед теоретиками, ста-новится бесперспективным. Поэтому актуальной является разработ-ка программных комплексов для высокопроизводительных вычисли-тельных систем, позволяющих использовать преимущества, обуслов-ленные параллельностью процесса вычисления. Сегодня силами раз-личных групп теоретиков и программистов из разных стран Евро-пы и Америки развивается целый спектр программных комплексов,разрабатываемых как свободное программное обеспечение (ПО) ипозволяющих на высоком уровне проводить научные исследованияв рамках таких направлений, как, например, нанофотоника, органи-ческая электроника, спинтроника. Лидерами среди такого рода про-граммных продуктов, на наш взгляд, являются следующие проекты:Abinit [1], SIESTA [2], Quantum-Espresso [3] и OpenMX [4].

Каждый из указанных проектов по-своему реализует подход тео-рии функционала электронной плотности к квантовомеханическомуописанию периодических твердых тел и наноразмерных материалов.Наряду со свойствами основного состояния, они позволяют изучатьразличные свойства отклика системы (Abinit, Quantum-Espresso), ис-следовать возбужденные состояния (Abinit), транспорт электронов(OpenMX, SIESTA), а также проводить расчеты по структурной ре-лаксации и молекулярной динамике. Также эти продукты являютсяполем не только для научных расчетов, но и средством для обученияспециалистов.

В отличие от привычного пользователям программного обеспече-ния, подобное специфическое ПО приходится поддерживать админи-страторам кластера самостоятельно, так как невозможно установить

Page 67: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

67

ранее скомпилированный мэнтейнером RPM пакет, даже в случае су-ществования их в репозитории. Для функционирования ПО необходи-мо заниматься его сборкой на том же самом кластере, где программ-ные пакеты будут загружены в память для выполнения. Причинойэтого является крайне широкий простор для скомпилированных рас-четных библиотек на каждом отдельном кластере.

Указанное выше ПО было установлено и в настоящее время ис-пользуется на вычислительном кластере КГУ им. Н. А. Некрасова.Кластер имеет 5 узлов по 8 ядер в каждом. Таким образом, мак-симальное число параллельных процессов для задачи равняется 40.Пиковая производительность всего кластера составляет 480 ГФлопс.На кластере используется дистрибутив Suse Linux Enterprise Server10.0 sp1 (SLES 10). Этот дистрибутив установлен на каждом из узловкластера. В качестве стандартных математических библиотек уста-новлена Intel Math Kernel Library [5], в которую включен их исходныйкод.

Для визуализации полученных результатов нами широко исполь-зуется такое свободное ПО, как XCrySDen [6] и GnuPot [7]. Перваяпрограмма (XCrySDen) позволяет визуализировать кристаллическиеи молекулярные структуры, отображать изоповерхности и контуры,которые могут быть наложены на эти структуры. Вторая программа(GnuPot) позволяет строить любые виды двумерных и трехмерныхграфиков. Возможна визуализация как при помощи eps файлов, так итерминала. Особенно интересен язык сценариев для создания различ-ного вида графиков. Поддерживают различного рода аппроксимациидля точечных графиков.

В заключении отметим также, что совместно с сотрудникамиDonostia International Physics Center (San Sebastian, SPAIN) нами ве-дется разработка собственного ПО для высокопроизводительных си-стем, позволяющего проводить исследования квазичастичных свойствв двух- и трехмерных электронных системах как в рамках моделижеле, так и в рамках более реалистичных моделей, учитывающихособенности зонной структуры рассматриваемых систем. В качествепоследних при описании поверхностных эффектов выступает методповторяющихся пленок, характеризуемых одномерным псевдопотен-циалом, а при изучении динамики квазичастиц в объемных периоди-ческих структурах за основу берется первопринципный метод линеа-ризованных muffin-tin орбиталей [8].

Page 68: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

68 31 января

Литература

[1] www.abinit.org

[2] www.icmab.es/siesta/

[3] www.quantum-espresso.org/

[4] www.openmx-square.org

[5] software.intel.com/en-us/intel-mkl/

[6] www.xcrysden.org/XCrySDen.html

[7] www.gnuplot.info

[8] www.fkf.mpg.de/andersen/docs/manual.html

М. Ш. ИсламовИжевск, Удмуртский Государственный Университет

http://refal51.googlecode.com

Динамический Рефал — инструмент для обучениясентенциальному программированию

Аннотация

Сентенциальное программирование в последние годы занимает всёбольшую популярность на рынке информационных технологий. MDX,Linq, JQuery — одни из самых наглядных примеров, подтверждающихэто. Динамический Рефал — предлагаемый автором открытый ин-струмент для обучения сентенциальному программированию в высшейшколе. Динамический Рефал — это расширение языка Рефал средства-ми, позволяющими более выразительно и эффективно писать програм-мы и обучаться данному стилю.

Сентенциальный стиль программирования [1] является подвидом де-кларативного стиля. Другими словами, программы, написанные насентенциальном языке, представляют собой описания фактов пред-метной области и постановку задачи, а ее решение исполнитель(ЭВМ) находит самостоятельно.

Актуальность данного направления в последние годы только рас-тет. Всего несколько лет назад появился MDX — язык запросов дляпростого и эффективного доступа к многомерным структурам дан-ных (используется в технологиях OLAP), AJAX-библиотека JQuery —для гибкой работы с web-интерфейсом (и не только), Linq– в .NET длябыстрой работы с коллекциями, базами данных, xml-документами и

Page 69: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

69

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

С ростом популярности данной парадигмы на практике, растетнеобходимость ее более углубленного изучения в высшей школе. Ужесейчас в некоторых высших заведениях студенты знакомятся с сен-тенциальным стилем, изучая регулярные выражения и SQL, но бо-лее традиционным способом знакомства с этой парадигмой являетсяизучение языков написания полноценных программ, а не отдельныхзапросов.

Такие языки существуют с начала времён программирования дляЭВМ (Prolog, Alain Colmerauer, 1972 г.; Рефал, Валентин Турчин,1966 г. [2]), однако внимание мирового сообщества до последнего вре-мени было приковано преимущественно к императивному стилю иООП, в результате чего эти языки значительно отстали от представи-телей других парадигм. Так, например, изучение Рефала позволяетстудентам быстрее осваивать регулярные выражения (RegExp), од-нако в задачах обработки строк текста гибкость и выразительностьрегулярных выражений значительно превосходит шаблоны Рефала.Возможно, пришло время уделить больше внимания этой проблеме.

В результате проделанной работы, автором был спроектирован иописан диалект Рефала (Динамический Рефал [3]) для обучения сен-тенциальному стилю программирования, среди прочего включившийв себя новые типы данных и переменных, а так же некоторые кон-струкции регулярных выражений для представления образцов. Экс-периментальная реализация данного диалекта в виде интерпретаторадоступна по адресу http://refal51.googlecode.com и распространя-ется по лицензии LGPL.

В ходе работы были определены следующие задачи:

• расширить возможности управления сопоставлением в Рефалес помощью декларативных, а не императивных конструкций;

• предоставить пользователю механизм абстракции данных с по-мощью пользовательских типов переменных;

• все расширения должны быть концептуально непротиворечивыБазисному Рефалу;

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

Page 70: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

70 31 января

и выразительности Динамический Рефал не уступает многим сентен-циальным инструментам, включая Рефал-5, а значит может приме-няться на практике.

Литература

[1] Непейвода Н. Н., Скопин И. Н. Основания программирования. М.;Ижевск, 2003.

[2] Турчин В. Ф. РЕФАЛ-5. Руководство по программированию и справоч-ник. http://www.refal.net/rf5_frm.htm

[3] Исламов М. Ш. Некоторое расширение языка Рефал. 2009. http://ulm.udsu.ru/~soft/wiki/lib/exe/fetch.php?media=ubs2009_direfal.pdf

А. Н. Пустыгин, О. И. Суворов, И. С. Ермолаев, Д. С. Ботов,

А. С. Новиков, В. П. Поляков, Б. Тарелкин, Д. ЕгоровЧелябинск, Челябинский государственный университет

Проект утилиты для представления знаний,полученных по открытому исходному тексту

программ

АннотацияДля упрощения знакомства программиста с кодом программы из-

вестны инструменты, визуализирующие связи и отношения в програм-ме. Целью разрабатываемого проекта является создание такого уни-версального инструмента.

Программное обеспечения с открытым исходным текстом можетиспользоваться в методических целях как источник знаний о постро-ении алгоритмов и записи их на современных языках программиро-вания, посколько в исходном тексте содержится вся информация озакодированном алгоритме. [1]. Между тем применение специализи-рованных программных инструментов обещает получение серьезныхпреимуществ обладателю открытого програм-много кода, так как поз-воляет сократить требуемые время и усилия для получения знаний обалгоритмах ПО.

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

Page 71: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

71

утилита DoxyGen [2], однако её функциональные возможности огра-ничиваются построением диаграм-мы классов изучаемого проекта.Применение структурных моделей известно для целей разработкипрограммного обеспечения [3], предложено применить этот способ дляанализа исходного кода.

Иерархию интерпретаций исходного текста можно в первом при-ближении представить следующим образом:

• структура файлов исходного текста,• уровень синтаксиса — идентификаторы и служебные слова,• структура данных исходного текста — иерархия классов,• структура данных исходного текста — дерево объектов,• операционная структура исходного текста — граф передачи

управления,• операционная структура исходного текста — граф потока дан-

ных.

Данная иерархия позволяет анализировать проект в разных «плоско-стях» или «срезах», однако для достижения такой цели следует вы-работать способ представления структуры программного кода, поз-воляющий генерировать любое из перечисленных представлений поодному и тому же представлению исходного текста. В качестве внут-реннего формата представления исходного текста применяем деревообъектов, описанное по xml -шаблону.

Для программной обработки XML в языке Java существуетнесколько моделей:

1. Текстовая модель, в которой обработка документа производитсякак текстового файла с использованием регулярных выраженийи разделения на токены (tokens).

2. DOM (Document Object Model) — Объектная модель. Представ-ление документа в виде дерева, узлы которого соответствуюткомпонентам XML-документа: элементам, атрибутам, текстово-му содержимому, инструкциям обработки, объявлениям про-странств имен и пр.

В проекте используется модель DOM, как наиболее близкая к мо-дели внутреннего формата данных. DOM API, описанная W3C DOMWorking Group, представляет собой набор интерфейсов для построе-ния объектного представления в форме дерева анализируемого XMLдокумента.

Page 72: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

72 31 января

DOM API предоставляет функции для работы с деревом на про-стейшем уровне, чего недостаточно для работы XML-процессора. По-этому был введен внутренний формат данных — TreeNode. После тогокак DOM-представление получено, его нужно преобразовать во внут-ренний формат. Преобразование производится путем обхода дереваDOM-элементов в глубину и построения соответствующего ему дере-ва из элементов TreeNode.

Полученное в результате обработки дерево структуры проектапредназначено для визуализации в интерфейсных модулях, для этогонеобходимо сериализовать структуру в форматах XML-документа иDot-файла.

dot — формат данных одноименной утилиты из состава GraphViz,оптимально подходящий для текстового описания графов, отобража-ющих различные аспекты структуры проекта. Кроме того, использо-вание этого формата позволяет применять уже существующую ути-литу, распространяемую в рамках GNU GPL, для построения изоб-ражений и их разметки, избавляя от необходимости реализовыватьуказанный функционал в модуле визуализации.

Созданный функционал построения структуры исходного текстапозволяет представлять знания об алгоритме проекта с помощьюпредставленного выше набора «срезов» по единому внутреннему на-бору данных древовидной структуры.

Литература

[1] Спинеллис, Диомидис Анализ программного кода на примере проектовOpen Source. : Пер. с англ. — М. : Издательский дом «Вильямс», 2004. —528 с. : ил.

[2] Инструментальные средства для изучения программного обеспечения соткрытым исходным кодом / А.Н. Пустыгин, Д.С. Ботов, М.Ю. Ежови др; под ред А.Н. Пустыгина — Челябинск: Изд-во ЮУрГУ, 2008 — 117с.

[3] А.М. Вендров, Jet Info Online, 4/2004 Методические основы технологийразработки программного обеспечения. Визуальное моделирование Ци-тируется поhttp://www.redbrick.ru/develop/softwaredevelop_metodics/

Page 73: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

73

А. Н. Пустыгин, О. И. Суворов, И. С. Ермолаев, Д. С. Ботов,

А. С. Новиков, В. П. Поляков, Б. Тарелкин, Д. ЕгоровЧелябинск, Челябинский государственный университет

Опыт разработки инструментов исследованияпрограммного обеспечения с открытым исходным

кодом

Аннотация

Отладка Java-приложений с помощью отладчиков, входящих в со-став пакетов разработки или интегрированных сред, требует исполь-зования исходных текстов проекта. Если продукт выпускается под ли-цензией Open Source, то исходные тексты доступны. Если исходныетексты программного продукта не доступны, то требуются дополни-тельные сервисы и инструменты.

В данном докладе описана разработка прототипа отладчика дляприложений на Java без исходных текстов, которое содержит мини-мальный, но в тоже время достаточный функционал, позволяющийуправлять ходом выполнения Java- программы на уровне инструкцийвиртуальной машины Java.

Полученное приложение (Byte Code Wizard) будет взаимодейство-вать с виртуальной машиной Java посредством реализованных в про-тотипе отладчика JDM (Java Debug Manager) интерфейсов, библиоте-кой ASM для выполнения операций над байт-кодом. ВзаимодействиеJDM с виртуальной машиной Java осуществляется через агенты, ра-бота с которыми ведется через сокет по протоколу JDWP.

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

Ее можно разделить на 5 важных составляющих:

• Виртуальная машина (JVM);

• Встроенный в виртуальную машину интерфейс управления(JVM TI);

• JDWP-agent (агент отладки) — программа, использующая JVMTI для управления работой виртуальной машины;

Page 74: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

74 31 января

• Java-agent — агент, используемый для получения байт-кода клас-сов. Этот агент может и не использоваться в отладке програм-мы, но без него нет возможности работы с байт-кодом, так чтодля работы Byte Code Wizard он обязателен;

• Приложение, запускаемое на виртуальной машине.

Оба агента реализуют в себе протокол JDWP для взаимодействия свнешним отладчиком (JDM).

Управляющее процессом отладки приложение Java DebugManager — отлаживающая часть

Отлаживающая часть состоит из следующих частей:

• Ядро JDM, в котором реализован протокол отладки JDWP, си-стема взаимодействия отладчика с агентами отладки, все внут-ренние объекты JDM;

• Основной поток выполнения пользовательского интерфейса, ко-торый управляет ядром JDM, указывая когда отправлять за-просы и, собственно, какие это будут запросы (установка точкиостанова, получение байт-кода, и другие);

• Два дополнительных потока приема и обработки ответов отагентов отладки. Создаются основным потоком. Они также ис-пользуют ядро JDM для получения формируемых в объектыответов, а также для запуска обработчиков этих ответов;

• Модуль для работы с байт-кодом (Byte Code Wizard). Он по-лучает управление, когда пользователю необходимо произве-сти какие-либо действия с байт-кодом. Вызывается из основ-ного потока выполнения вводом соответствующей команды(«processbc»);

• Библиотека ASM используется модулем для работы с байт-кодом. При помощи неё вносятся изменения в байт-код классовотлаживаемого приложения.

В случае недоступности Java-агента второй дополнительный поток несоздается, но тогда не доступны функции модификации байт-кода.

Процесс обмена сообщениями между этими двумя частями произ-водится с помощью Socket -соединения на основе разработанного ком-панией Sun протокола отладки — Java Debug Wire Protocol (JDWP).

Page 75: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

75

Заключение

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

Данная система позволяет широко использовать доступные функ-ции интерфейса JVM TI, а пользователь этого продукта получает до-статочно мощный инструмент для изучения поведения Java программи механизмов виртуальной машины, однако существует существенноограничение.

Литература

[1] Java ByteCode Debugger (JBCD), 2003, http://jbcd.sourceforge.net/.

[2] Bytecode Visualizer, Dr. Garbage Ltd., 2008, http://www.drgarbage.com/bytecode-visualizer-3-5.html

[3] ASM, ObjectWeb, 2009, http://download.forge.objectweb.org/asm/

asm-guide.pdf

[4] Eclipse IDE for Java Developers — Help, Eclipse corporation, 2009,http://help.eclipse.org/galileo/index.jsp?topic=/org.eclipse.

jdt.doc.user/reference/views/debug/ref-debug_view.htm

[5] IntelliJ IDEA, JetBrains, 2009, http://www.jetbrains.com/idea/

features/compiler.html#link8

[6] Java Development Kit (JDK) documentation, Sun corporation, 2009, http://java.sun.com/javase/6/docs/

[7] BCEL, Apache Software Foundation, 2006, http://jakarta.apache.org/bcel/.

[8] Abe White, SERP, 2007, http://serp.sourceforge.net/

[9] Java Development Kit (JDK) documentation, Sun corporation, 2009, http://java.sun.com/javase/6/docs/

[10] Java Debug Wire Protocol, Sun Microsystems, Inc., 2004,http://java.sun.com/j2se/1.5.0/docs/guide/jpda/jdwp-spec.html.

Page 76: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

76 31 января

М. М. Дронов, Д. М. АхметовУльяновск, Ульяновский государственный университет

Проект: Ульяновская группа пользователей Linux http://ul-lug.ru/

Интеграция взаимодействия проекта внедрения СПОв образовании и деятельности групп пользователей

Linux

АннотацияДоклад посвящен решению актуальной проблемы при внедрении

СПО в учебном процессе как в средней, так и высшей школе, связаннойс обучением школьников и студентов. В качестве примера выступаетУльяновская группа пользователей Linux

Группы пользователей Linux

Группа пользователей Linux, LUG (от англ. Linux User Group) —некоммерческое, неформальное объединение пользователей операци-онной системы GNU/Linux. Основными целями группы пользовате-лей чаще всего являются взаимная поддержка и обмен программнымобеспечением. Обычно группы создаются по территориальному при-знаку, например, Московская группа пользователей Linux, и др. Соб-ственно говоря, группа пользователей Linux — некоммерческое сооб-щество людей, тем или иным способом использующих GNU/Linux всвоей деятельности. Организаторами проводятся различные меропри-ятия и встречи пользователей.

Чаще всего группы пользователей создаются на базе универси-тетов, многие мероприятия проводятся на базе университетов. Этонеудивительно, так как *nix (в частности, GNU/Linux) является «уни-верситетской» системой. Ядро системы было создано Линусом То-рвальдсом будучи студентом.

• Сайт. Основное общение пользователей происходит именно насайте — здесь можно получить on-line консультацию у специа-листов, задать любой интересующий вопрос, найти ресурсы дляпоиска информации и многое другое. Другими словами, сайт —основной инструмент в деятельности любой группы пользова-телей. С появлением Web 2.0 очень стали популярны сайты-блогосферы (к примеру, сайты на движке LiveStreet), где каж-

Page 77: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

77

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

• Linux Install Fest. Стоит упомянуть об уникальности этого ме-роприятия. Linux Install Fest (фестиваль установки Linux) —событие, на котором люди собираются вместе для установкиоперационной системы либо программного обеспечения на сво-ем компьютере. Обычно в качестве устанавливаемой операцион-ной системы выступает Linux и набор свободного программногообеспечения. В целом, это информационное событие направлен-ное на формирование сообщества. Новички приходят со свои-ми компьютерами и копиями операционных систем, которые быони хотели установить, а более опытные пользователи помогаютим решая возникшие сложности. Иногда на мероприятии всемжелающим раздаются флаеры и диски с дистрибутивами Linux.Некоторые организаторы просят принести с собой сетевые удли-нители и свитчи. На этом мероприятии можно не только посмот-реть «что такое Linux», но и ощутить это, поработав на компью-тере с Linux. На фестиваль приглашаются пользователи всехуровней, от самых новичков до экспертов. Фестивали разнятсяот неформальной встречи для установки до больших праздни-ков с едой и напитками. Тон мероприятия, место проведения инабор событий во время фестиваля зависят от организаторов испонсоров.

• Линуксовки. Рядовые встречи пользователей, обычно для того,чтобы пообщаться и отдохнуть в приятном кругу. Проводятсядовольно часто, где каждый может осознать, что он — частичкабольшого сообщества пользователей Linux.

Ульяновская группа пользователей Linux

Проект «Ульяновская группа пользователей Linux» функциони-рует с июня 2009 года. Именно тогда был собран основной составкоманды организаторов. В июле был создан сайт, http://ul-lug.ru/

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

В конце июля проект был представлен на всероссийском молодеж-ном инновационном форуме «Селигер 2009», по итогам которого былпризнан одним из десяти лучших по итогам всей образовательной

Page 78: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

78 31 января

смены. Было подписано пятистороннее соглашение с правительствомУльяновской области по совместным действиям в развитии проектана 2010 год.

19 декабря на базе Ульяновского государственного университетабыл проведён первый Linux Install Fest. На мероприятии присутство-вало порядка 40 человек, учитывая примерные прогнозы в 20-25. Ин-терес к СПО был налицо — участники увлеченно смотрели презента-ции и участвовали в дискуссиях.

На 2010 год также запланировано проведение встреч, семинаров,фестивалей установки. Также в марте будет организована подготовкаволонтеров для проведения цикла ознакомительных семинаров «Чтотакое Linux».

Перспективы

Из вышесказанного ясно, что группы пользователей Linux — про-екты информационные. Они создают идеальное поле для обучения иобмена опытом как в работе Linux, так и в системном администриро-вании и программировании на платформе *nix в целом.

Что могут обеспечить группы пользователей Linux:

• Информационное взаимодействие. Как указывалось выше, ос-новным инструментом станет портал группы. У каждой группысвоя посещаемость портала, зависящая от активности органи-заторов. Посещаемость портала специалистами в данной обла-сти поможет более быстрому обучению пользователей, ведь несекрет, что основным инструментом в обучении Linux являет-ся Интернет (т. к. и сам Linux разрабатывается тысячами про-граммистов со всего света, контактирующими друг с другом вовсемирной сети Интернет).

• Коммуникативное взаимодействие.Различные фестивали, се-минары и прочие мероприятия, связанные с СПО собираютбольшое количество аудитории. Основная польза от таких меро-приятий — непосредственное живое общение как опытных поль-зователей, так и начинающих в режиме реального времени.

Активное взаимодействие ведущих Российских компаний, связанныхс внедрением СПО в образовании (Alt Linux, АйТи), общественныхорганизаций (ЦеСТ www.centercest.ru, Российская группа пользова-телей Linux www.lug.ru) несет большие плюсы внедрению, так это бу-

Page 79: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

79

дет не просто портал проекта внедрения, а портал, который соберётразличных специалистов, чья деятельность так или иначе связана сСПО. Активное общение, обмен опытом — несомнненно большая вы-года. Поддержка местных правительств только улучшит этот процесс.

Ю. П. Немчанинова, Е. Г. ПьяныхТомск, Томский Государственный педагогический университетhttp://www.tspu.edu.ru

Проблема развития ИКТ-компентностипедагогических кадров в условиях переходана свободное программное обеспечение и

организационно-педагогические условия ее решения

АннотацияВ докладе рассмотрен опыт обучения работе в среде Linux, накоп-

ленный в ТГПУ в рамках работы по реализации областного и феде-рального проектов по внедрению СПО в образование, а так же опытобучения сотрудников ВУЗа в рамках внутривузовской системы повы-шения квалификации.

К настоящему времени в Томском государственном педагогиче-ском университете накоплен достаточно большой опыт по внедрениюСПО. Работы по переводу учебного и административного процессовна свободное программное обеспечение ведутся в ТГПУ с 2006 года.На первоначальном этапе проблемы перехода на СПО можно раз-делить на две группы: проблемы технические (выбор или созданиедистрибутива, удовлетворяющего потребностям образовательного иадминистративного процессов) и проблемы методические (обучениетехнического персонала и педагогических кадров). Вторая проблемаоказалась наиболее острой.

В рамках решения методических проблем в ТГПУ были разра-ботаны и апробированы программы повышения квалификации дляпрофессорско-преподавательского состава вуза и административныхкадров вуза. Обучение этих двух категорий ведется в рамках внутри-вузовской системы повышения квалификации. Первоначально быларазработана программа «Использование программного обеспеченияна платформе ОС Linux в профессиональной деятельности», включа-ющая в себя следующие модули: информационно-коммуникационные

Page 80: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

80 31 января

технологии в деятельности преподавателя вуза, программное обес-печение в образовании, использование текстового редактора в про-фессиональной деятельности (Open Office Org.Writer), использованиеэлектронных таблиц в профессиональной деятельности (Open OfficeOrg.Calс), компьютерные презентации в системе высшего профессио-нального образования (на примере Open Office Org.Impress), обработ-ка графической информации на компьютере, интернет-технологии вобразовании, современные технические средства обучения. Програм-ма рассчитана на 72 часа очного обучения. В дальнейшем была раз-работана программа «Использование информационных технологий вобразовании», ориентированная на слушателей, уже имеющих базо-вые навыки по работе с СПО. Целью данной программы являетсядальнейшее формирование ИКТ-компетентности преподавателей ВУ-За. Программа включает в себя следующие модули: Проблемы ин-форматизации образования в ВУЗе, Роль учебно-методического ком-плекса (УМК) в учебном процессе ВУЗа, Подготовка графическихобъектов для учебных материалов УМК, Создание учебных матери-алов для УМК с помощью редактора мультимедийных презентаций,Web-сайт как платформа для учебно-методического комплекса. Про-грамма рассчитана на 72 часа очного обучения. В качестве учебно-го обеспечения к процессу повышения квалификации было разрабо-тано пособие «Практическая работа на компьютере в среде Linux»,включающее в себя наиболее важные темы, необходимые слушате-лям на этапе перехода на СПО. Пособие включает базовые сведенияпо работе с операционной системой Linux, основы работы с пакетомOpenOffice.org, описание работы в сети Интернет и принципов рабо-ты некоторых наиболее употребляемых пользователями программ. Запериод с 2007 по 2009 год в ТГПУ было обучено в общей сложностиболее 140 сотрудников из числа профессорско-преподавательского со-става и учебно-вспомогательного персонала.

Опыт, накопленный в ходе реализации внутривузовского повы-шения квалификации был успешно применен для обучения работ-ников средних общеобразовательных учреждений на этапе перехо-да на свободное программное обеспечение. ТГПУ участвовал в про-ектах по внедрению СПО в образование — областном (http://spo.tomsk.ru/site/) и федеральном (http://linux.armd.ru/) проектахпо внедрению СПО в образование. В обоих проектах ТГПУ отве-чал за методическую поддержку процесса внедрения. В рамках об-ластного проекта по внедрению СПО разработаны программы повы-

Page 81: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

81

шения квалификации работников образования, ориентированные наразные категории слушателей: учителей–предметников, учителей ин-форматики, системных администраторов, административные кадрышколы. Программы повышения квалификации различных категорийпользователей разрабатывались с учётом их профессиональных по-требностей. Содержание программ ориентировано на развитие зна-ний, умений, навыков использования СПО в деятельности учителяи, в конечном итоге, направлено на формирование информационно-коммуникационной компетентности. При разработке программ былиучтены требования Закона РФ «Об образовании», Государственныхобразовательные стандартов, ведомственных нормативов, регламен-тирующих дополнительное профессиональное образование и повы-шение квалификации работников образования. Учитывая специфи-ку взрослой аудитории, форма изложения материала предполагаетпредоставление возможности слушателям в ходе обучения делать ло-гические выводы, адаптировать содержание к собственной практике иапробировать полученные умения в условиях тренингов и при выпол-нении специальных упражнений. Обучение ведется на основе сравне-ния, так как многие слушатели уже имеют опыт работы с коммерче-ским программным обеспечением. В качестве итоговой работы слуша-тели предоставляют тезисы или презентации к выступлениям или до-кладам по проблематике включения информационных технологий всовременный урок, иллюстрированные таблицами, схемами, диаграм-мами, выполненные средствами офисных технологий или дидакти-ческие и раздаточные материалы, разработки уроков (внеклассныхзанятий) с использованием средств ИКТ. Для реализации программпредлагается использовать все многообразие форм и методов учебнойработы: лекции, семинары, практические, в том числе, индивидуаль-ные занятия, ознакомление с опытом коллег, обсуждение и анализситуаций, работу в малых группах, консультации, элементы дистан-ционного обучения. Содержание программ построено по модульно-му принципу. Модули характеристика ОС Linux, решение типичныхпользовательских задач в ОС Linux, работа с текстовыми документа-ми в редакторе Open Office Org.Writer, работа с электронными таб-лицами Open Office Org.Calс, создание мультимедийных презентацийв редакторе Open Office Org.Impress, Работа с графическим редакто-ром Open Office Org.Draw, работа с векторным графическим редак-тором Inkscape, работа с растровым графическим редактором Gimp,компьютерные сети, Интернет включены в программы для учителей

Page 82: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

82 31 января

информатики и для учителей предметников (с разным количествомчасов). Помимо этого, программа для учителей предметников вклю-чает модули применение ИКТ в преподавании школьных предметов иработа с образовательными программами. Программа для учителейинформатики включает модули установка и настройка OC Linux ипрограммирование. Принимая во внимание большую занятость слу-шателей, необходимость обеспечивать учебный процесс в школах обу-чение проводится преимущественно в вечернее время и в каникулы.

В рамках областного проекта в общей сложности было обученоболее 400 слушателей, из которых 40 непосредственно обучались очнов ТГПУ. Для обучения остальных слушателей использована сетеваямодель обучения с тьюторской поддержкой.

Учебные программы для учителей направлены не только на изу-чение СПО (офисные технологии, программирование), но и на мето-дику применения СПО в деятельности учителя. Программа повыше-ния квалификации для административных кадров образовательныхучреждений в большей степени ориентирована на изучение офисныхтехнологий и подготовку различной документации с использованиемСПО. Базовой целью всех программ повышения квалификации явля-ется общее знакомство с возможностями СПО. Следует отметить, чтопрограммы повышения квалификации ориентированы не только наразные профессиональные категории пользователей, но и позволяютучитывать различный уровень владения информационными техноло-гиями.

В качестве учебного обеспечения разработано более 20 пособий поработе с СПО, среди них пособия по пакету Open Office, по основамработы с OS Linux, по программному обеспечению для вёрстки и под-готовки публикаций, по объектно-ориентированному программирова-нию, по работе с образовательными программами и др. 18 пособийпо свободному программному обеспечению были разработаны в рам-ках федерального проекта по внедрению СПО в образование и разме-щены на сайте проекта (http://linux.armd.ru/ru/documentation/metod/). В рамках апробации пособий было обучено 48 сотрудниковобщеобразовательных учреждений, среди которых учителя информа-тики, учителя предметники, системные администраторы и админи-стративные кадры ОУ.

Важно не только повышать квалификацию уже работающих учи-телей, но и готовить будущих педагогов, готовых работать со сво-бодным программным обеспечением. С 2007 года учебный процесс

Page 83: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

83

в ТГПУ практически полностью переведен на базу свободного про-граммного обеспечения. Очень помогает в подготовке молодых спе-циалистов программа Intel «Teach to the Future». Программа Intel«Teach to the Future» направлена на расширение применения передо-вых технологий в учебном процессе. Она призвана помочь учителямсредней школы глубже освоить новейшие информационные техноло-гии, расширить их использование в повседневной работе с учащимисяи при подготовке учебных материалов. Обучение предусматривает ра-боту с интернет–ресурсами, создание web–страниц и освоение офис-ных приложений. По программе проходят обучения студенты стар-ших курсов педагогического университета. Будущие преподавателиучатся использовать базовые информационные технологии в их повсе-дневном труде.С переходом образовательного процесса на свободноепрограммное обеспечение возникла необходимость искать пути реали-зации данной программы. В результате была разработана программа,сочетающая в себе методические принципы интеловского курса и ис-пользование СПО.

В перспективе планируется организация дистанционного обученияпо направлению «Применение СПО в профессиональной деятельно-сти». В ТГПУ разработан ряд курсов для самостоятельного изучения,рассчитанных на разные категории обучающихся.

Е. С. ВасильеваИжевск, УдГУ

Самостоятельное изучение языка РЕФАЛ в высшейшколе: проблемы и их преодоление

Аннотация

Язык РЕФАЛ — это одна из самых удачных разработок отечествен-ной науки в области информационных технологий. Однако для само-стоятельного изучения языка РЕФАЛ есть серьёзные препятствия, и,пожалуй, основной проблемой является отсутствие в открытом досту-пе простой для понимания школьником или студентом литературы иучебных программ. В данной работе предлагается решение этой про-блемы, составленное с точки зрения студента, который столкнулся совсеми трудностями самостоятельного изучения РЕФАЛа.

Page 84: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

84 31 января

Удивляет то, как мало в настоящее время литературы по языкуРЕФАЛ. Язык создан российским ученым ещё в 1966 году, а воз-можностей для его самостоятельного изучения до сих пор мало.

Ведь изучение РЕФАЛА параллельно или сразу после изучениятого же Паскаля весьма повлияло бы на развитие мышления студен-тов и школьников. Как правило, изучая лишь примеры императивныхязыков, учащиеся принимают подобную парадигму как единствен-ную. В дальнейшем, сталкиваясь в процессе обучения или работы снестандартными задачами, они впадают в ступор. Изначальное изуче-ние хотя бы одной дополнительной парадигмы позволит использоватьдля решения различных задач наиболее подходящие приёмы и мето-ды программирования. Однако даже при самостоятельном изученииРЕФАЛа возникает ряд проблем.

Проблемы

Последовательное возникновение проблем:

• Если современному студенту надо что-либо узнать, он первыйделом забивает это в поисковик. Google, Яндекс, Nigma, ко-му что нравится. По запросу «Учебник по рефалу» только од-на подходящая ссылка http://www.botik.ru/pub/local/scp/

refal5/, но учебник на английском языке и является авторскимпереводом руководства В.Ф. Турчина http://refal.net/rf5_

frm.htm

В итоге, единственная информация — описания языка, состав-ленные самим создателем В.Ф. Турчиным и его последователя-ми. Но они созданы скорее не для тех, кто хочет изучить язык,а для людей уже им пользующихся.

• В процессе штудирования имеющихся описаний языка РЕФАЛ,неизбежно возникают вопросы, особенно по принципу работыРЕФАЛ-машины и рекурсивности вызовов функций. А без по-нимания подобных ключевых моментов писать программы наРЕФАЛе сложновато.

• Даже если уяснить основные принципы выполнения РЕФАЛ-программ, то заставить мышление выдать алгоритм решениякакой-либо задачи, подходящий для реализации на РЕФАЛесложно. Особенно тем, кто начинал изучение языков програм-

Page 85: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

85

мирования с Паскаля. А примеров в описаниях, перекликаю-щихся с императивными языками, практически нет.

Решение

Для решения вышеуказанных проблем предлагается:

• Составление подробного описания языка программированияРЕФАЛ-5. По сути составление учебника с разделами «Для на-чинающих» и «Для продолжающих», который будет интересенкак тем кто только узнал о существовании языка рекурсивныхфункций, так и тем кто уже более-менее активно его использует.

• Использование в описании примеров, перекликающихся с им-перативными языками, в частности с Паскалем. Это сложнаязадача, но для упрощения понимания языка её надо решить.

• Важным этапом в изучении языка является выполнение зада-ний. Однако, как правило задания составляются и помещают-ся в учебники. Однако ответов к ним нет. Какой смысл даватьв учебнике для самообучения задания без возможности само-проверки? Поэтому в описании будут теоретические задания сответами, а практические (программы) — хотя бы с тестами ирезультатами их выполнения.

Автором доклада была проделана работа в данном направлении. Еерезультатом стало следующее:

• Составлена статья — описание языка РЕФАЛ-5.

В разделе «Для начинающих». Составлено описание использо-вания интерпретатора для РЕФАЛа-5. В том числе инструк-ция по установке, запуску первой программы (Hello World!) испособам её редактирования. Подробное описание базиса язы-ка: структура программы на РЕФАЛЕ, осуществление вызововфункций, типы переменных. К каждому разделу прилагаютсяпростые, но ёмкие примеры с пояснениями. Для успешного при-менения описанного материала использованы теоретические ипрактические задания. Составлено подробное описание принци-пов работы РЕФАЛ-машины. Приведены подробные пошаговыепримеры работы РЕФАЛ-машины.

Раздел «Для продолжающих» содержит описание расширенийязыка РЕФАЛ и основных приёмов программирования.

Page 86: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

86 31 января

• Создана программа обучения.

В программе обучения находится ряд задач по РЕФАЛу-5, со-ставленный по возрастанию сложности. Существует возмож-ность проверки правильности решения.

Основные разделы программы обучения: использование инстру-мента (интерпретатора), основы языка, расширения языка, при-ёмы программирования.

В дальнейшем планируется развитие описания языка и программыобучения по мере их практического применения. Так же в будущем,на основе уже существующих статьи и программы , будет составле-на программа обучения для других диалектов РЕФАЛа, в частностиДинамического Рефала.

Литература

[1] Турчин В.Ф., РЕФАЛ-5. Руководство по программированию и справоч-ник., http://www.refal.net/rf5_frm.htm

В. А. БондаренкоНижний Новгород, Нижегородский радиотехнический колледж

nntc.nnov.ru, blog.nntc.nnov.ru, cunewebform.nntc.nnov.ru

Информационная система учебного заведения набазе свободного программного обеспечения напримере Нижегородского радиотехнического

колледжа

Аннотация

Информатизация учебных заведений начиналась с обеспечения ра-ботоспособности учебных классов для проведения практических заня-тий. Но за последние 5-7 лет задачи информационной системы учеб-ного заведения значительно расширились. Компьютеры появились нетолько в учебных классах, но и у администрации колледжа, в препо-давательских комнатах, библиотеках. Так же не стоит забывать и оперсональных компьютерах студентов, которые они приносят с собой

Page 87: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

87

из дома. Задачей современной информационной системы стало объ-единить все это в общую структуру и обеспечить сервисы для взаимо-действия преподавателей, студентов и сотрудников колледжа. Исполь-зование коммерческого программного обеспечения для решения дан-ной задачи ведет к значительным финансовым затратам и не всегдапозволяет добиться необходимой интеграции. В Нижегородском Ра-диотехническом Колледже была построена система удовлетворяющаявсем самым современным требованиям учебного процесса и требова-ниям работы подразделений на базе Свободного Программного Обес-печения. Предлагаем вам рассмотреть технологии и методы исполь-зовавшиеся для создания интегрированной информационной системыФГОУ СПО «НРТК».

Задачи информационной системы

1. Организация занятий в учебных классах.

На этапе внедрения наша задача потребовала собрать данные поиспользуемому программному обеспечению в учебном процессе. Вдальнейшем, был произведен анализ и подбор аналогов программ сре-ди Свободного Программного Обеспечения. В ходе использования ин-формационной системы разрабатывались новые программы по пред-метам «Компьютерные сети и технологии», «Интернет технологии»,«Разработка программного обеспечения», практические занятия и ме-тодические материалы к которым включили в себя свободные инстру-менты, программы, протоколы и технологии.

2. Централизованное хранение учетных записей и данных пользо-вателей.

Задача первостепенной важности для учебных заведений с числомстудентов больше 200 человек. В Нижегородском РадиотехническомКолледже 7 компьютерных классов использующихся в «поточном»режиме. Практические занятия по предмету в разные дни могу про-ходить в разных классах. Это требует возможности доступа студен-та к своей домашней директории с любого компьютера в колледже влюбое время учебного процесса из любой используемой операционнойсистемы. Для этого на центральном сервере колледжа была разверну-та система централизованной аутентификации с хранением домашнихкаталогов пользователей на сервере.

3. Централизованное управление доступом в интернет для адми-нистрации, студентов и преподавателей.

Page 88: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

88 31 января

Задача обеспечения доступа к интернет для сотрудников и студен-тов колледжа делиться на 2 части: распределение пропускной спо-собности интернет канала и контроль доступа к интернет-ресурсам(ограничение доступа к сайтам с нежелательным содержанием). Приэтом, система контроля доступа так же должна интегрироваться вобщую структуру информационной системы.

4. Обеспечение работы внутреннего информационного портала(для размещения информации, методического материала и практи-ческих заданий).

Активно продвигаемые коммерческие решения зачастую перегру-жены ненужным функционалом и требуют значительных ресурсов отсервера. В нашем случае задача обеспечения интерактивным инстру-ментом преподавателей для размещения методических материалов изаданий для практических занятий была решена с помощью системыMediaWiki.

5. Обеспечение функционирования внутренних сервисов.

• Электронная библиотека;

• Online система распознавания текстов;

• Электронный журнал куратора групп;

• Система тестирования студентов;

• Система заполнения бланков дипломов;

• Электронный журнал неисправностей компьютерной техники.

6. Сервис централизованного сбора и обработки электронной почты.колледж использует единый адрес электронной поты. Но для рабо-

ты требуется одновременный доступ к электронной корреспонденциинескольких сотрудников из различных подразделений. Данная задачапрекрасно решается с помощью свободной почтовой системы Zimbra.

7. Интернет-представительство колледжа (сайт и блог-портал).web-сайт уже не новость. Каждое учебное заведение считает обя-

зательным иметь представительство в интернете с информацией иданными о специальностях и условиях приема. Для работы сай-та nntc.nnov.ru мы выбрали свободную систему управления контен-том Jumla. Для более динамичного представления жизни колледжабыло принято решение об открытии блог-раздела, где появляютсявсе самые последние новости о событиях, мероприятиях и дости-жениях колледжа. В качестве системы управления контентом сайтblog.nntc.nnov.ru использует свободную систему WordPress.

Page 89: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

89

Н. Живчикова, Е. Иванов, А. Котомин, Е. ТитоваПереславль-Залесский, НОУ ИПС – «УГП имени А.К. Айламазяна»

Проект: Информационная система для университета http://edu.botik.ru

Информационная поддержка трекинга учебныхпрактик и научных конференций

Введение

Длительное существование научно–образовательного комплекса,созданного на базе Института программных систем Российской ака-демии наук в Переславле-Залесском, невозможно без подготовки вы-сококвалифицированных кадров.

Мы настойчиво ищем высокоэффективные технологии качествен-ного образования[2].

Известные технологии информационного обеспечения совместнойдеятельности не дают достаточной основы для перспективных обра-зовательных методик.

Нужна информационная система, способная так объединить уси-лия студентов разного уровня и аспирантов в реальной практиче-ской деятельности, чтобы освоение нового материала, взаимодействиес передачей опыта от старших младшим, самооценка, взаимооценкаи сдача–прием заданий и продуктов происходили с опорой на мно-жество подсистем разносторонней оценки вклада каждого в общийпроцесс и абсолютно прозрачно для присматривающих специалистоввысочайшей квалификации.

Целью создания информационной системы «Ботик»[1] являетсяинформационная поддержка не только традиционных форм обуче-ния, но и групповой проектной деятельности, студенческих научныхконференций и других (в том числе экспериментальных, пока неиз-вестных) видов образовательной деятельности.

Подсистема трекинга учебных и производственных практик

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

Page 90: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

90 31 января

Подсистема позволяет

студенту:

– заносить отчеты и оценивать свою деятельность,

– получить дневник прохождения практики в формате pdf;

научному руководителю:

– следить за выполнением студентом плана практики,

– оценить работу студента по окончании практики;

учебной части:

– утвердить или отклонить научного руковдителя и местопрохождения практики, заданные студентом,

– просмотреть текущее состояние практики в виде диаграмм.

Подсистема поддержки конференций

Проведение студенческих конференций стимулирует творческуюисследовательскую активность, развитие технических и психологи-ческих навыков деловых коммуникаций в интеллектуальной сфере,обмен идеями, опытом и результатами практической работы. Будучисоставной частью учебного процесса, научно-практические конферен-ции УГП заметно отличаются от большинства научных и научно-практических конференций ярко выраженной образовательной на-правленностью.

Подсистема автоматизирует следующие этапы проведения конфе-ренции [3]:

• прием заявок на участие в виде тезисов, оформленных в системеLaTeX;

• добровольное участие преподавателей и студентов в рецензиро-вании;

• обязательное участие авторов статей в рецензировании не менее4 чужих работ;

• учет научных интересов рецензентов при рандомизированномраспределении докладов на рецензирование;

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

Page 91: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

91

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

• отбор лучших работ в сборник тезисов и программу конферен-ции на основании линейного порядка;

• работа с авторами по устранению замечаний рецензентов передизданием сборника;

• выступление авторов, не попавших в программу, в качестве оп-понентов;

• подведение итогов конференции на объективной основе учетамнений всех слушателей, пожелавших принять участие в ран-жировании докладов и оппонентов;

• количественная оценка каждого участника.

Заключение

Информационная система реализуется отрыто на свободном про-граммном обеспечении. В настоящий момент студентами 1-3 курсовведется разработка подсистемы учебной части.

Литература

[1] Коряка Ф.А. Автоматизированная система управления вузом — UPIS.XI научно-практическая конференция «Университета г. Переслав-ля». Переславль-Залесский, апрель 2007, изд.-во «Университет горо-да Переславля», Т. 1, с. 59—63. http://wiki.botik.ru/up/pub/IS4UGP/StudConf/1-2/03-koryaka-p-59.pdf

[2] Амелькин С.А., Знаменский С.В. Информационная поддержка орга-низации сложной совместной деятельности. // Труды международнойконференции «Программные системы: теория и приложения», ИПСРАН имени А. К. Айламазяна, г. Переславль-Залесский, май 2009.Переславль-Залесский: Изд-во «Университет города Переславля», Т.1,2009. — c. 123—132

[3] Живчикова, Н.С., Знаменский, С.В., Титова, Е.В. Информационнаяподдержка научных конференций. // Тезисы докладов Международнойнаучно-образовательной конференции «Наука в вузах: математика, фи-зика, информатика. Проблема высшего и среднего профессиональногообразования». — М.: РУДН, 2009. — с. 883–885

Page 92: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

92 31 января

Е. Л. СыромятниковМосква, ALT Linux

Проект: семинар UNИX http://uneex.ru/

Курс «Сопровождение пакетов в Linux» — заметкина полях

Об одном курсе из многих

Проблемный семинар UNИX [1], основанный и возглавляемый Ге-оргием Курячим, являет собой уникальную в рамках факультетаВМК среду, где слушатели курса могут выразить своё желание про-слушать (и, иногда, рассказать) то, что интересно им, а не тольколектору.

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

Сама задача по прочтению подобного курса, несмотря на его необ-ходимость и актуальность, достаточно нетривиальна, так как курсимеет явно практическую направленность. Это вылилось в такой экс-периментальный для данного семинара способ передачи знаний, какrealtime-демонстрация сборки пакета, проведённая практически безподготовки.

По окончании курса и прошествии ряда итераций экзамена, по-казавших усвоенные слушателями знания, можно сделать следующиевыводы:

– Лекционные курсы по темам с практической направленностьювполне успешно могут использовать демонстрации при отсут-ствии возможности проводить семинарские занятия, более того,возможно, их следует признать обязательными (создалось впе-чатление, что по ряду моментов именно демонстрация позво-лила развеять часть иллюзий относительно такой недостаточнодокументированной области знаний, как сопровождение паке-тов)

Page 93: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

93

– Относительно высокая средняя подготовленность (по сравнениюс некоторыми предыдущими семестрами) людей, сдававших эк-замен, при практически аналогичном их количестве, наводит намысли, что проведение исключительно лекционного курса былосделано не напрасно и что данная тема действительно актуаль-на.

О наследии

Задача сохранения и передачи «тайного знания» (здесь: знания, неявляющегося общеизвестным и легкодоступным) всегда являлась од-ной из основных. Данная задача становится тем более сложной и темболее актуальной, чем более этого знания появляется и чем меньшуюего долю способен отдельный индивид усвоить. Одним из способовсохранения знаний является их запись в том или ином виде.

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

Данный случай вполне конкретен — сохранить информацию, изло-женную на лекциях, учитывая тот факт, что читаются они единожды.

Как показывает практика автора, после конспектирования лекциив реальном времени результат оного конспектирования как таковойоставляет желать лучшего и требует значительной переработки. Поприблизительным оценкам, на один час лекции уходит от 6 до 12человеко-часов для получения полноценных конспектов, снабжённыхссылками, примечаниями и связями с другими частями лекционно-го курса, в результате чего от исходного конспекта мало что оста-ётся (пример подобной работы над конспектами, которая проводи-лась в рамках проекта «Документирование ПСПО» [2], [3] — http://

uneex.ru/PspoClasses/080720/03PackageUtils?action=diff&rev2=

19&rev1=1). Как следствие, данный вид материалов, несмотря набольшую его полезность (при наличии достаточно информативногои актуального исходного материала), очень трудоёмок в своём из-готовлении, и для го получения требуется значительная мотивация(например, финансовая, как это было в упомянутом проекте доку-ментирования), которая возможна далеко не всегда.

Типичным решением после осознания данного факта и наличиижелания тайное знание таки сохранять является запечатление как

Page 94: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

94 31 января

можно большего объёма информации (не только текстовую, но и ауди-альную и визуальную составляющую) для возможности дальнейшеговосприятия хотя бы в таком виде, что являет собой некий компромисс— с одной стороны, объём требуемых работ снижается, с другой, вре-мя на восприятие и поиск требуется больше, что приводит к несколь-ко меньшей ценность подобного формата материалов по сравнениютекстовым конспектом.

В рамках курса по сопровождению пакетов была сделана попыткаделать помимо аудиозаписи (которая производилась уже второй годи не пользовалась большим спросом, особенно по сравнению с кон-спектами лекций) запись видео.

Несмотря на достаточно длительную историю, предшествовавшуюначалу видеозаписи лекций (в том числе, видеозаписи смежных собы-тий — собраний этого же проблемного семинара), не всё шло гладко,ряд первоначальных замыслов (в частности, касающихся потоковойтрансляции) не был осуществлён.

Хотя две из четырёх записанных видео на данный момент ещёнаходятся в состоянии пост-обработки, уже сейчас можно сделать рядвыводов (довольно банальных, но тем не менее):

– Не любая видеозапись лекции пригодна для её просмотра. Пол-ноценный монтаж, делающий видеозапись пригодной к исполь-зованию в качестве учебного материала, занимает время, срав-нимое с подготовкой полноценных конспектов на основании за-писанного во время лекции (тем не менее, время это примернов 2—3 раза меньше)

– В виду отсутствия индексируемого материала (текста) видео-записи лекции для их успешного многократного просмотра (а,как следствие, востребованности и придания осмысленности те-лодвижениям, осуществляемым для их создания) необходимыфакторы, делающие просмотр ценным для смотрящих. К сиимфакторам, по мимо объективных (например, качества исходногоматериала, монтажа, информативность материала) могут отно-ситься такие слабо зависящие от собственно видеозаписи вещи,как артистизм лектора, например.

– Лектор должен учитывать то, что его снимают, и накладыва-емые этим фактом технические ограничения (например, уголобзора и размер кадра, не позволяющий захватывать всю доскуцеликом и/или разобрать недостаточно крупные надписи).

Page 95: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

95

– Разворачивание видеозаписывающей аппаратуры занимает вре-мя большее (примерно 10—15 минут), чем средняя задержка на-чала чтения лекции относительно начала пары.

– Как показала практика смежных мероприятий (собраний) семи-нара, не смотря на то, что во время «живых» лекций использо-вание слайдов не всегда актуально и/или оправдано, они весьмаспособствуют восприятию информации при просмотре видеоза-писи. Вероятно, для последующих курсов они будут готовитьсяспециально.

Весной 2010 года планируется продолжить практику видеозаписилекций с учётом полученного опыта, дополнив её поточным вещаниемлекций, что, возможно, привлечёт дополнительную аудиторию к пла-нируемому курсу «Программирование в Linux» LinuxProgramming.

Данный текст (вместе со всеми ссылками) доступен на сайтесеминара UNИX по адресу http://uneex.ru/eSyr/Pereslavl2010/Thesis

Литература

[1] Проблемный семинар UNИX, http://uneex.ru/.

[2] Курячий Г. В. Проблемы и методы командной разработки сво-бодных, учебных материалов, «Четвёртая конференция «Свобод-ное программное обеспечение в высшей школе» (Переславль). Те-зисы докладов.», 2009, стр. 60—63, http://www.altlinux.ru/media/

book-thesis-Pereslavl-2009-4.pdf.

[3] Курячий Г. В., Сыромятников Е. Л. Командная разработка свобод-ных учебных материалов по проекту «Документирование пакета сво-бодного программного обеспечения», «Свободное программное беспе-чение в образовании. Сборник трудов Всероссийской конференции (г.Челябинск)», под редакцией А. В. Панюкова, Издательство ЮУр-ГУ, 2009, стр. 14—18, http://freeschool.altlinux.ru/wp-content/

uploads/2009/03/chelyabinsk_25-26_march_2009.pdf.

[4] Страница курса «Программирование в Linux» на сайте семинараUNИX, http://uneex.ru/LecturesCMC/Programming2010.

Page 96: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

96 Вне программы

П. Е. ЕньковУльяновск, Ульяновский Государственный Университет

[email protected]

Вычислительный кластер ЭВМ на основеоперационной системы ALTLinux с использованием

свободного программного обеспечения (СПО)

Аннотация

В докладе рассматривается построение кластера в ОСALTLinux.Тема увеличения скорости вычислений весьма актуальнадля всех тех, чья деятельность связана с большим объемом вычис-лительных работ. Так, например, рассчеты гравитирующих газовыхдисков. Даже сейчас у российских университетов чаще всего нетсредств для закупки мощных компьютеров типа nCube, Cray илиподобных. Однако с развитием программного обеспечения и появле-нием свободно распространяемой операционной системы Linux сталовозможным создать вычислительный комплекс с эффективным быст-родействием, сравнимым с быстродействием суперкомпьютеров, но состоимостью в десятки раз меньшей.

В наше время круг задач, требующих для своего решения примене-ния мощных вычислительных ресурсов, постоянно расширяется. Этосвязано с тем, что произошли фундаментальные изменения в самойорганизации научных исследований. Вследствие широкого внедрениявычислительной техники, значительно усилилось направление чис-ленного моделирования и численного эксперимента. Численное моде-лирование, заполняя промежуток между физическими эксперимента-ми и аналитическими подходами, позволило изучать явления, кото-рые являются либо слишком сложными для исследования аналитиче-скими методами, либо слишком дорогостоящими или опасными дляэкспериментального изучения. При этом численный эксперимент поз-волил значительно удешевить процесс научного и технологическогопоиска. Стало возможным моделировать в реальном времени процес-сы интенсивных физико-химических и ядерных реакций, глобальныеатмосферные процессы, процессы экономического и промышленногоразвития регионов и т.д. Очевидно, что решение таких масштабныхзадач требует значительных вычислительных ресурсов.

Page 97: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

97

Мощности современных процессоров вполне достаточно для реше-ния элементарных шагов большинства задач, а объединение несколь-ких десятков таких процессоров позволяет быстро и эффективно ре-шать многие поставленные задачи, не прибегая к помощи мэйнфрей-мов и супер компьютеров.

Сейчас в наших научных организациях и университетах, как пра-вило, имеются энтузиасты бесплатного распространяемого ПО и спе-циалисты по ОС Linux. В то же время парк более-менее современ-ных персональных компьютеров в этих организациях так же имеется.Закономерно появилась идея создания параллельных вычислитель-ных систем из общедоступных компьютеров на базе процессоров Intelи недорогих Ethernet-сетей, устанавив на эти компьютеры Linux и,объединив с помощью одной из бесплатно распространяемых комму-никационных библиотек (PVM или MPI) эти компьютеры в кластер.Оказалось, что на многих классах задач и при достаточном числе уз-лов такие системы дают производительность, сравнимую с той, чтоможно получить, используя дорогие суперкомпьютеры.

В самом деле, кластеры Beowulf обеспечивают университеты сограниченными ресурсами хорошей платформой для изучения парал-лельного программирования и недорогой производительной вычисли-тельной системой для ученых. Затраты на установку в университетахминмиальны: многие студенты заинтересованы в таких проектах и ис-пользуют Linux на собственных компьютерах, установка кластера инаписание параллельных программ является частью процесса обуче-ния.

Beowulf — это мультикомпьютерная архитектура, которая можетиспользоваться для параллельных вычислений. Это система, обычносостоящая из одного серверного узла и одного или более клиентскихузлов, соединенных при помощи Ethernet или некоторой другой се-ти. Это система, построенная из готовых промышленных компонент,например ПЭВМ, на которых может работать ОС Linux, стандарт-ных адаптеров Ethernet и коммутаторов. Она не содержит специфиче-ских аппаратных компонентов и легко воспроизводима. Beowulf так-же использует программные продукты, такие как ОС Linux, средыпрограммирования Parallel Virtual Machine (PVM) и Message PassingInterface (MPI). Серверный узел управляет всем кластером и являет-ся файл-сервером для клиентских узлов. Он также является консо-лью кластера и шлюзом во внешнюю сеть. Большие системы Beowulfмогут иметь более одного серверного узла, а также возможно специ-

Page 98: Свободное программное обеспечение в высшей школе: Тезисы докладов Пятой конференции (Переславль,

98 Вне программы

ализированные узлы, например, консоли или станции мониторинга.В большинстве случаев клиентские узлы в Beowulf пассивны. Ониконфигурируются и управляются серверными узлами и выполняюттолько то, что предписано серверным узлом. В бездисковой конфи-гурации клиентов, клиентские узлы даже не имеют IP-адресов илиимен, пока их не назначит сервер. Одно из основных отличий Beowulfот кластера рабочих станций состоит также в том, что Beowulf ра-ботает как одна машина. В большинстве случаев клиентские узлыне имеют клавиатур и мониторов, и могут быть доступны только че-рез удаленное подключение. Узлы Beowulf могут рассматриваться какэлементы процессор+память, которые вставляются в кластер так жекак процессор или модуль памяти вставляются в материнскую плату.