Летняя школа юных программистов им. академика А.П. Ершова
Новости
Информация
Оргкомитет
ЛШЮП'08
ЛШЮП'07
ЛШЮП'06
ЛОГО
Форум
Мастерские
1. Настольные игры::шашки (В. В. Соловьёв)
2. Тестирующее моделепостроительное FLASH-приложение (Е. Дмитриева)
3. Эколес (М. В. Братусь)
4. Создание сетевых приложений в среде Delphi (П. Мельников)
5. Microsoft WPF и Silverlight (И. Дульцев)
6. Мастерская «Scratch» (С. Н. Коваль)
7. Cетевое программирование — сетевой чат (К. Лихтер, С. Жаринов)
8. Процедурная генерация текстур (А. В. Викторов)
9. Мастерская «Управляем городом» (В. А. Сакерин)
10. ... (А. В. Сакерин)
11. Драйвер файловой системы (А. И. Салмин)
12. ... (А. Г. Марчук)
13. OCR (В. И. Бауэр)
14. Построение фазовых портретов (Е. А. Насибулов)
15. Фрактальная графика (Н. А. Русакова, Ю. И. Молородов)
16. Управляемая модель робота в физическом окружении - знакомимся и совершенствуем (А. Пальянов)
17. ... (И. Кашкута)
18. Веб-программирование: форум (С. Щербина)

1. Настольные игры::шашки

Мастер: Владимир Валерьевич Соловьёв

Суть мастерской: Изучение С++ на начальном уровне, освоение дерева min-max'a, написание парных игр на основе алгоритма этого дерева. Начнем с написания шашек, а там как времени и возможностей хватит.

Требования к участникам: Знание С на уровне синтаксиса или Pascal на хорошем уровне.

Язык разработки: С++, точнее "С с классами".

Среда разработки: C++Builder.

2. Тестирующее моделепостроительное FLASH-приложение

Мастер: Екатерина Дмитриева

Земля - единственное известное на данный момент тело Вселенной, населённое живыми существами. Развитие условий, идеально пригодных для жизни на планете длится уже 4,54 млрд лет.
Человек - предполагаемая вершина эволюции живых существ. Считается, что природа формировала этот род 1,9 млрд лет.
Тестирующее моделепостроительное FLASH-приложение - проект, являющийся предполагаемым результатом работы участников мастерской Flash/ActionScript.

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

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

3. Эколес

Мастер: Михаил Витальевич Братусь

Цель — построить абстрактную экологическую модель леса.

Задачи:

  • Изучить язык Lua.
  • Визуализировать виртуальных обитателей леса (схематично, 2D).
  • Составить пищевые цепочки каждого вида (растения, насекомые, животные).
  • Реализовать жизненные циклы (рождение, смерть, размножение).
  • Моделирование изменения некоторых атрибутов части особей под воздействием локальных и естественных мутагенных процессов.
  • Возможность наследования потомством некоторых атрибутов предков.
  • Создать устойчивую замкнутую экологическую среду.

Требования к участникам: Опыт написания программ на любом языке программирования (Pascal, C, Logo и т.п.).

Средства разработки: OS Windows XP, свободное ПО Lua for Windows + IDE SciTE.

4. Создание сетевых приложений в среде Delphi

Мастер: Павел Мельников

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

Целью мастерской будет постичь особенности использования Windows API в Дельфи на примере создания приложения для перехвата сетевого траффика и вывода его пользователю в удобной форме.

Планируется изучить:

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

Результатом работы будет анализатор сетевого траффика (сниффер) сетевого уровня - весьма полезная вещь при разработке Интернет-приложений и администрировании сетей.

Приглашаются учащиеся старших классов, хорошо знающие Pascal или Delphi. Знание сетевых технологий приветствуется.

Средства: Turbo Delphi 2006 / RAD Studio 2007

5. Microsoft WPF и Silverlight

Мастер: Игорь Дульцев

WPF - новая графическая система (являющаяся частью платформы .NET), использующая язык разметки XAML для разработки "богатых" UI; Silverlight - подмножество WPF для реализации этих же интерфейсов внутри браузера.

Проект для мастерской - реализация "картинной" галереи (постинг картинок в альбомы, выборка по тэгам и пользователям, рейтинги, коментирование).

Реализация клиентской части будет проводиться в Windows, с использованием Visual Studio на языке C#; серверной части - на Linux, с использованием PHP/MySQL или Python/PostgreSQL.

В мастерскую требуются ребята, умеющие программировать на C, C++ или C#, желающие программировать на С# (3-4 человека), один-два человека, умеющих/желающих научиться программировать на PHP/Python, и один дизайнер.

6. Мастерская «Scratch»

Мастер: Светлана Николаевна Коваль

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

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

Для более подробной информации о среде SCRATCH обратитесь на сайт www.supercode.ru

7. Cетевое программирование — сетевой чат

Мастер: Константин Лихтер, Сергей Жаринов

Сайт мастерской

В рамках мастерской планируется изучить язык С и основы работы в Linux. Результатом работы будет являться комлексное приложение - сетевой-чат, состоящее из клиентской и серверной частей. В ходе работы участники мастерской узнают, что такое tcp/ip, сокеты, и как со всем этим "сетевым арсеналом" работать в языке С. В дополнение будет рассмотрена библиотека ncurses.

Мастерская расcчитана на 4-5 участников.

Будем использовать: Debian Linux, vim, gcc, gdb, ncurses, make.

Требования к участникам мастерской: >= 8 класс, знание любого алгоритмического языка, опыт владения Linux приветствуется, но не обязателен.

8. Процедурная генерация текстур

Мастер: Андрей Валерьевич Викторов

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

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

Разработка будет вестись на языке С++ в среде Microsoft Visual Studio.

9. Мастерская «Управляем городом»

Мастер: Виктор Алексеевич Сакерин

Трудно работать в городской администрации. Например, отвечать за работу школ... Голова пухнет! Столько параметров, от которых зависят результаты вашей работы! Вот, скажем, прогулял Вовочка урок химии. Химичка с горя уволилась. У заведующего городским управлением образования головная боль: где взять посреди учебного года свободного химика? И так на каждом шагу: проблемы, проблемы... Как за всем уследить? И тут появляется наша мастерская. И делает программу, которая учитывает всё-всё-всё. Ну, все, конечно, не сделать. Работы у городских властей много. Водопровод, скорая помощь, метро, борьба с комарами и несовершеннолетними правонарушителями... Начнём, пожалуй, с ... автотранспорта. Смоделируем движение автомобилей по городу. Сделаем программу, управляющую работой светофоров так, чтобы не накапливались пробки. Останется время, возьмёмся за скорую помощь или, к примеру, милицию.

Возраст участников не моложе 7 класса.

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

10.

Мастер: Алексей Викторович Сакерин

(описание ожидается)
Используемый продукт: Borland Delphi

11. Драйвер файловой системы

Мастер: Алексей Игоревич Салмин

В ходе работы мастерской планируется ознакомиться с общими принципами построения файловых систем, изучить технологию FUSE (http://en.wikipedia.org/wiki/Filesystem_in_Userspace) и на ее основе реализовать драйвер некоторой файловой системы. Основная задача проекта: реализация драйвера FAT32 в режиме read-only. Дополнительная задача: поддержка записи.

Средства разработки: vim, gcc, gdb, svn, make.

Требования к участникам: знание языка Си, приветствуется опыт работы с ОС Linux.

12.

Мастер: Александр Гурьевич Марчук

(описание ожидается)

13. OCR

Мастер: Владислав Иванович Бауэр
Подмастерье: Александр Жиров

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

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

Требования к участникам: Приглашаются учащиеся старших классов, знающие язык С. Приветствуется знание языка С++.

ОС: Windows
Средства разработки: Microsoft Visual Studio 2005 (С++) & MFC

14. Построение фазовых портретов

Мастер: Егор Андреевич Насибулов

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

Цели мастерской:

  • Освоить C++ Builder
  • Понять тематику мастерской
  • Написать проект
  • Понять, что все сделанное просто и понятно

Требования к участникам мастерской:

  • Знание языка C/C++ на начальном уровне (желательно)
  • Желание работать в мастерской
  • Знание того, что называется дифференциальным уравнением, не обязательно

Среда разработки C++ Builder.

15. Фрактальная графика

Мастер: Нина Александровна Русакова, Юрий Иванович Молородов

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

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

Среда разработки - Delphi.
Для работы необходимо знание языка Pascal.

16. Управляемая модель робота в физическом окружении - знакомимся и совершенствуем

Мастер: Андрей Пальянов

Суть мастерской:
На основе готового самодельного физического симулятора создана динамическая управляемая модель робота "Johnny 5", возможно, знакомая вам по фильму "Короткое замыкание". Визуализация осуществляется посредством OpenGL. Реализовано базовое управление движениями с клавиатуры и управление 3D-сценой с помощью мыши. После знакомства с системой и принципами ее работы возможен, в зависимости от уровня и интересов, ряд вариантов работы:

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

Несмотря на кажущуюся сложность, большинство материала будет на интуитивно-понятном уровне.
Желательно знакомство с языком С++
В ходе работы удастся познакомиться с библиотеками STL, OpenGL, основами трехмерной графики.
Дополнительно, при наличии интереса, возможен экскурс в такие области, как основы искусственного интеллекта, нейронные сети (включая биологические), моделирование живых систем, биоинформатика.

Язык разработки: С++ (Microsoft Visual Studio) + STL + OpenGL.

17.

Мастер: Игорь Кашкута

(описание ожидается)
Язык программирования — C.

18. Веб-программирование: форум

Мастер: Святослав Щербина

В рамках мастерской участники изучат принципы работы веб-приложений, основы языка разметки HTML, языка программирования python и фреймворка webpy (http://webpy.org), а также познакомятся с шаблом разработки MTV (Model-Template-View)
Результатом работы мастерской будет создание веб-форума.
Разработка будет вестись под Linux (Debian или Ubuntu).

Средства разработки: Python+webpy, PostgreSQL(или MySQL), Apache.

Требования к участникам: >=8 класс, знание любого алгоритмического языка программирования

Copyright © 2009
Летняя школа юных программистов
Электронная почта: