Successfully reported this slideshow.
Your SlideShare is downloading. ×

S05dedinskij 4site

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad

Check these out next

1 of 30 Ad

More Related Content

Similar to S05dedinskij 4site (20)

Advertisement

S05dedinskij 4site

  1. 1. АНАЛИТИЧЕСКИЙ ПОДХОД К ДОВУЗОВСКОМУ ПРЕПОДАВАНИЮ ПРОГРАММИРОВАНИЯ Илья Дединский кафедра информатики МФТИ лицей «Вторая школа», Москва http://ded32.ru Цель Разработка практико-ориентированной методики довузовского преподавания программирования, достаточной для успешного дальнейшего развития и саморазвития ученика в условиях современного ВУЗа и современного состояния индустрии разработки ПО. Основные задачи - Способы определения и преодоления образовательных разрывов «школа – ВУЗ – профессия» - Выделение базовых принципов проектного обучения программированию, построение его последовательности и разработка основных курсов для школьного периода 1Аналитический подход к довузовскому преподаванию программирования
  2. 2. ПРОГРАММИРОВАНИЕ – ТРИ В ОДНОМ Точность Точность Абстрактность Абстрактность определений определений методов методов Наглядность и Наглядность и Математика инструментальность инструментальность Математика Целостность систем Целостность систем Эффективность Эффективность понятий понятий работы работы Соответствие срокам Соответствие срокам Логика Стилистика Логика Стилистика ПРОЕКТНОЕ Выразительность Выразительность ПРОГРАММИРОВАНИЕ Актуальность и Актуальность и реализм реализм Литература Литература Технология Технология Преемственность Преемственность 2 Сопровождение Сопровождение Аналитический подход к довузовскому преподаванию программирования
  3. 3. ЧЕРТЫ ИНДУСТРИИ – МЕЙНСТРИМ Что сейчас? – промышленная модель – Промышленный стиль разработки (ориентация на продукт) – Согласование с заказчиком – Документирование – Ограничения по срокам Что было раньше? – кустарная модель – Большой объем – Научный стиль разработки (ориентация на – Коллективность метод) – Много стандартов, инструментов – Сотрудничество с заказчиком – Чужой и устаревший код – Пользование компьютером предполагало – Удаленная разработка навыки программирования – Большой объем литературы – Меньший объем проектов – Локальная разработка – Без культуры программирования работать – Преимущественно индивидуальная невозможно! разработка – Учиться самому все труднее и труднее – Небольшое количество стандартов – Небольшой объем литературы – В результате без опыта промышленной разработки даже самая светлая голова – – Культура программирования только убытки для компании. (с) развивалась – Легко было учиться самому 3Аналитический подход к довузовскому преподаванию программирования
  4. 4. РАЗВИТИЕ ИНСТРУМЕНТАРИЯ Развитие инструментария и техники разработки – способ скомпенсировать человеческие недостатки перед лицом усложняющихся задач Что это за недостатки? – Забывчивость – Невнимательность – Утомляемость – Медленное усвоение информации – Медленная реакция – Неалгоритмичность – Склонность запутываться – … От этих недостатков никуда не деться На этапе обучения излишняя борьба с ними может превратить человека в смесь кодогенератора с отладчиком (другими словами, в «человека- бетономешалку») «Принцип разумной лени» – Грамотно использовать средства, а не неграмотно – себя 4Аналитический подход к довузовскому преподаванию программирования
  5. 5. ВУЗОВСКОЕ ОБРАЗОВАНИЕ – МЕЙНСТРИМ Что сейчас? (МФТИ, ВМК МГУ – отчасти счастливые исключения) – Как раздел математики, либо офисные технологии – Отрыв обучения от индустрии – Не усваиваемые порядок и темп изложения – Практика: фрагментарность, ориентация «на методичку». И – мало практики! – Нет командных технологий – Нет рефлексии – не «ставится голова» – Трудно приобрести нужные навыки – Это скорее отбор уже успешных, а не обучение одаренных. Оно больше соответствует прошлому периоду развития индустрии, чем нынешнему. Счастливые исключения, ставшие мейнстримом: – Олимпиадные технологии – В какой-то степени – курсовые и дипломные работы, спецкурсы (МФТИ: Intel и др.) Как быть студенту? – Заниматься олимпиадами (но до определенной стадии) – Самому идти на кафедру, брать тему и выбиваться в люди – Оставить надежду на ВУЗ, учиться самому, идти работать и выбиваться в люди – Вообще, никакая система обучения не гарантирует порождения Специалиста. Она может этому только способствовать. – Кроме того, надо искать соответствующие ВУЗы. Но сколько их? 5Аналитический подход к довузовскому преподаванию программирования
  6. 6. ШКОЛЬНОЕ ОБРАЗОВАНИЕ – МЕЙНСТРИМ То же, что и в вузе, плюс: – Великая ориентация на пользование ПК, иногда – на олимпиады – Очень разный и часто низкий уровень подготовки учителей – Разнородное, неустойчивое и утилитарное мнение родителей, администрации школ (программист – это вид сантехника) – Такая же мотивация учеников (скачать весь Интернет… взломать сервер Microsoft…) – Слабое сопряжение со смежными предметами (у всех свои заботы…) – Низкий уровень проектных работ (проекты по истории программирования, скачанные рефераты…) – Отношение администрации (программирование – не экзамен, не основной предмет) Счастливые исключения, ставшие мейнстримом: – Олимпиадные технологии – Дополнительное образование (но здесь многие пед. технологии теряют устойчивость). – Самостоятельное изучение, но это все труднее и труднее, несмотря на книги и Интернет Как быть школьнику? – Заниматься олимпиадами и надеяться, что в вузе и на работе будет то же самое. – Самому искать научника, брать тему и выбиваться в люди. Но это труднее, чем студенту. – Оставить надежду на школу, учиться самому и выбиваться в люди. Так многие и делают. – Искать соответствующие школы. Но сколько их? 6Аналитический подход к довузовскому преподаванию программирования
  7. 7. ОБРАЗОВАТЕЛЬНЫЕ РАЗРЫВЫ Способы преодоления – Самостоятельный метод КНИГ КНИГ ИНТЕРНЕТ ИНТЕРНЕТ – Олимпиадный метод ИИ – Непрерывное профильное образование Повышение КПД образования РАБОТА – Использование ВУЗа как ресурса О П Ы Т Для этого нужны: – Активная учебная позиция – Мотивация – Конструктивное мышление совокупность шишек, – Результаты и наработки набитых граблями Следствие: – Это необходимо приобрести до ВУЗа! КУРСЫ КУРСЫ ШКОЛА ШКОЛА ВУЗ ВУЗ Печальный вывод: – Без грамотно поставленной работы в школе первокурснику будет очень трудно. От лучших сокурсников он зачастую отстал навсегда. Конструктивный вывод: – Нужна методика, закладывающая фундамент и облегчающая «пользование ВУЗом как ресурсом» – Эта методика должна и «ставить голову» и давать конкретную отдачу в виде материалов, которые можно показать будущим преподавателям и научным руководителям. 7Аналитический подход к довузовскому преподаванию программирования
  8. 8. МОДЕЛИ ОПЫТА Школьный Школьный Одновременное наращивание Окружной Окружной всего комплекса навыков Городской Городской Область Региональный Региональный професс. работы Всероссийский Всероссийский Переход «к реальной действительности» Международный FAIL Идеализированная модель Реальная модель Локальную абстрактную задачу Ориентация на Целостный продукт Небольшой Объем задачи Большой Узкий и постоянный Контекст задачи Широкий и меняющийся Импульсная фрагментарная Характер работы Непрерывная итерационная Только со своим Работа с кодом Со своим и чужим Индивидуальная Разработка Командная Мало Стандарты и литература Много Требуется методика, максимизирующая наборсопровождение . Обязательны Нет Документация и именно опыта Все остальное придет и так. 8Аналитический подход к довузовскому преподаванию программирования
  9. 9. ОБУЧЕНИЕ ЧЕРЕЗ РЕФАКТОРИНГ Что такое «знать»? Когнитивно-технологическая единица (КТЕ) – Зачем это надо? – Что это такое? Как хотеть учиться – Где это можно и где нельзя использовать? Автор: Илья Дединский – Как это применять? Опубликовано в журнале "Компьютерра" №24 от 23 июня 2005 года – На чем основано и с чем связано? – Чем придется пожертвовать? По моему мнению, главная задача вуза, и не только в сфере ИТ, - научить студента действовать грамотно и самостоятельно… – Что будет, если этого не делать? – Какие в этом «подводные камни» «ТЕХНОЛОГИЯ ГРАБЛЕЙ (racket)»: (чего опасаться и «накладные расходы») МОДЕЛИРОВАНИЕ СИТУАЦИИ Реализация Реализация Реализация Реализация Рефлексия. Рефлексия. Поиск Поиск «новыми» «новыми» Рефлексия и Рефлексия и Поиск новой Поиск новой «старыми» «старыми» Анализ Анализ «идеального» «идеального» средствами средствами обкатка новой обкатка новой технологии технологии средствами средствами ситуации ситуации решения решения (рефакторинг) (рефакторинг) технологии технологии Технология подается максимально Ужасное Прекрасное «вовремя», на выверенном примере. …с иронией и юмором 9Аналитический подход к довузовскому преподаванию программирования
  10. 10. ПРИМЕР РЕФАКТОРИНГА (Второе занятие начального курса: Функции) – Это первый рефакторинг: выделение функций – Чему учит: Структурирование, Культура именования – Сразу – довольно большие программы (200-300, а то и до 1000 строк) #include<TXLib.h> #include<TXLib.h> #include <TXLib.h> #include <TXLib.h> int main() #include <TXLib.h> int main() {txCreateWindow(630,390); {txCreateWindow(630,390); void HouseDraw(); void HouseDraw(); txSetColor(TX_WHITE); int main () void TreeDraw(); txSetColor(TX_WHITE); { void TreeDraw(); txLine(90 ,80,180 ,80); txLine(90 ,80,180 ,80); txLine(180,80,180,130); txCreateWindow (630, 390); int main () txLine(180,80,180,130); txSetColor (TX_WHITE); int main () txLine(180,130,70,130); txLine(180,130,70,130); { { txLine(70,130,70,80); txLine(70,130,70,80); txCreateWindow (630, 390); txCreateWindow (630, 390); txLine(70,130 ,120,180); txLine ( 90, 80, 80, 180, 180, 80); 80); txLine(70,130 ,120,180); txLine (180, 80, 180, 130); txLine(70,180,120 ,130 ); txLine(70,180,120 ,130 ); 80, HouseDraw(); HouseDraw(); txLine(130 ,130,180,180); txLine (180, 130, 70, 130); TreeDraw(); txLine(130 ,130,180,180); txLine ( 70, 130, 70, 80); TreeDraw(); txLine(180,130 ,130,180); txLine(180,130 ,130,180); 70, 80); DogDraw(); DogDraw(); txSetColor(TX_RED);//vrode txLine ( 70, 130, 120, 180); txSetColor(TX_RED);//vrode txLine ( 70, 180, 120, 130); domik? domik? return 0; return 0; txLine (460,230 ,480,200); txLine (130, 130, 180, 180); } txLine (460,230 ,480,200); txLine (180, 130, 130, 180); } txLine(580 ,200,610,200); txLine(580 ,200,610,200); txLine(610 ,200,610,250); txLine(610 ,200,610,250); void HouseDraw() void HouseDraw() txLine (610, 200,590,220); txSetColor (TX_GREEN); void HouseDraw() { txLine txLine (460, 230, 480, 200); { txLine(590,220,460,230); txLine(590,220,460,230); { txLine ( 90, 80, 180, txLine ( 90, 80, 180, txLine(460, 230,460,280); txLine (580, 200, 610, 200); txLine ( 90, 80, 180, 80); 80); txLine(460, 230,460,280); txLine (610, 200, 610, 250); 80); txLine (490,230, 490,280); txLine 490,280); txLine (180, 80, 180, 130); txLine (180, 80, 180, 130); txSetColor(TX_BROWN); txLine (610, 200, 590, 220); txLine (180, 130, 70, 130); txSetColor(TX_BROWN); txLine (590, 220, 460, 230); txLine (180, 130, 70, 130); txLine(270 txLine(270 ,380,270,280); ,380,270,280); txLine ( 70, 130, 70, 80); txLine ( 70, 130, 70, 70, 130, 70, txLine (270,280,340,280); txLine (460, 230, 460, 280); 80); txLine (270,280,340,280); txLine (490, 230, 490, 280); 80); txLine ( 70, 130, 120, 180); txLine(340 ,280,340,380); txLine(340 ,280,340,380); txLine ( 70, 180, 120, 130); txLine ( 70, 130, 120, 180); txLine ( 70, 130, 120, 180); txCircle(380, 330,2); txCircle(380, 330,2); txLine ( 70, 180, 120, 130); txLine ( 70,130, 180, 180); return 0;} return 0;} txSetColor (TX_BROWN); txLine (130, 180, 120, 130); txLine (130, 130, 180, 180); txLine (270, 380, 270, 280); txLine (130, 130, 180, 180); txLine (180, 130, 130, 180); txLine (180, 130, 130, 180); txLine (180, 130, 130, 180); txLine (270, 280, 340, 280); «This code txLine (340, 280, 340, 380); txCircle (380, 330, 2); } } } smells» return 0; void Tree::Draw() void Tree::Draw() { { M. Fowler } txSetColor (TX_GREEN); txSetColor (TX_GREEN); txLine (460, 230, 480, 200); txLine (460, 230, 480, 200); 10 Аналитический подход к довузовскому преподаванию программирования
  11. 11. ПРИМЕР РЕФАКТОРИНГА (Третье занятие начального курса: Функции с параметрами) – Функция как черный ящик – Первый опыт конструктивного обобщения – Первый опыт (зародыш) построения API и контрактного программирования #include <TXLib.h> #include <TXLib.h> void HouseDraw(); void HouseDraw (int x, int y, void TreeDraw(); int sizeX, int sizeY, int sizeWin, int chimney, int main () COLORREF color); { … txCreateWindow (630, 390); К-во параметров функции int main () HouseDraw(); { TreeDraw(); Гибкость Простота Удобство txCreateWindow (630, 390); DogDraw(); HouseDraw (100, 150, 100, 40, 20, …); return 0; TreeDraw (…); } y DogDraw (…); x void HouseDraw() return 0; { } txLine ( 90, 80, 180, 80); sizeWin txLine (180, 80, 180, 130); sizeX void HouseDraw (int x, int y, txLine (180, 130, 70, 130); int sizeX, int sizeY, txLine ( 70, 130, 70, 80); int sizeWin, int chimney, txLine ( 70, 130, 120, 180); sizeY COLORREF color) txLine ( 70, 180, 120, 130); { txLine (130, 130, 180, 180); txSetColor (color); txLine (180, 130, 130, 180); txLine (x – sizeX/2, y + sizeY, } x + sizeX/2, y + sizeY); … void TreeDraw() } { chimney txSetColor (TX_GREEN); void TreeDraw (int x, int y, int size, txLine (460, 230, 480, 200); int branchesSize, … int branchesUp, color …) 11 Аналитический подход к довузовскому преподаванию программирования
  12. 12. ПРИМЕР РЕФПКТОРИНГА (Пятое занятие начального курса: модули) – Выделение модуля (модулей) для разработки мультфильма – Библиотеки (на уровне include-файлов с кодом. Это не совсем профессионально, но в раздельной компиляции 7(8)-классники путаются). – Деление функции на «сценарные» (вспомогательные для основной программы), «библиотечные» (API модуля) и «вспомогательные для библиотеки» (в терминах раздельной компиляции на С они соответствуют статическим функциям). – Документация по библиотеке с героями мультика (doxygen). – Выпуск mini-SDK (code + doc + example). Versioning. – Перекрестный обмен кодом, задание – написать нано-мультик на чужом SDK за 1-2 урока. – Домашнее задание – (перекрестная) небольшая рецензия на использованный SDK (code/doc peer review) и рефакторинг своей библиотеки с учетом этой рецензии. Отдельная песня – худо-бедно надо научить писать рецензии. – Надо сдать много чего: наномультик, библиотеку, рецензию, переработанную библиотеку. – На эту работу удобно потом часто ссылаться, в ней много знаковых моментов. Построение и использование SDK Построение и использование SDK Peer review Peer review Документирование Документирование Versioning Versioning Техники промышленного программирования Техники промышленного программирования Кто ясно мыслит – ясно излагает. Обратное часто тоже верно. 12 Аналитический подход к довузовскому преподаванию программирования
  13. 13. ВОСПИТАНИЕ ТЕХНОЛОГИЧЕСКОЙ КУЛЬТУРЫ Выработка системы Выработка системы ценностей ценностей и критериев качества и критериев качества Lr V Ясность Ясность N Выразительность Выразительность L Надежность Надежность Сопровождаемость Сопровождаемость Модульность Модульность Архитектурная логичность Архитектурная логичность ! Масштабируемость Масштабируемость Поддержка стандартов Поддержка стандартов Переносимость Переносимость Навыки командной Навыки командной работы работы Культура как контекст Культура как контекст 13 Аналитический подход к довузовскому преподаванию программирования
  14. 14. ПОСЛЕДОВАТЕЛЬНОСТЬ ИЗУЧЕНИЯ Техники Техники промышленного промышленного Данная методика Традиционная методика Данная методика Традиционная методика программирования программирования Библиотечные вызовы Библиотечные вызовы Теоретические алгоритмы Теоретические алгоритмы Рефакторинг Рефакторинг Функции Функции Библиотечные вызовы Библиотечные вызовы Модульность Модульность Параметры Переменные Параметры Переменные Переменные Переменные Условия Условия Интерфейсы Интерфейсы Циклы Циклы Алгоритмы Алгоритмы Документирование Документирование Условия Условия Циклы Циклы Библиотеки Библиотеки Массивы Массивы Построение и использование SDK Построение и использование SDK Указатели Указатели Строки Строки Peer review Peer review Структуры Структуры Указатели Указатели Versioning Модули Модули Функции Функции Versioning Массивы Массивы Параметры Параметры Внутреннее самотестирование Внутреннее самотестирование Отладочные техники Отладочные техники Строки Строки Структуры Структуры Внешнее тестирование Внешнее тестирование Алгоритмы (Библиотеки) Алгоритмы (Библиотеки) Перекрестное тестирование Перекрестное тестирование 14 Аналитический подход к довузовскому преподаванию программирования
  15. 15. ПОРОЖДЕНИЕ ПРОЕКТНЫХ ЭЛЕМЕНТОВ Пример: курс «Структуры данных и алгоритмы» Третий год обучения (9 или 10 класс) Трансляция Трансляция е Промыш- вани е ани и оптимизация,, и оптимизация лиро в ных лиро ь ных ленный Моде ител ь Моде ител Функциональное Функциональное символьные символьные сл л преобразования уровень вычи с стем вычи и стем программирование программирование Сжатие Сжатие преобразования си с и передача и передача данных данных nanoGCC nanoGCC Уровень nanoLISP nanoLISP учебной nanoCPU nanoCPU Архиватор Архиватор модели Хаффмана Хаффмана Набор задач Стеки … Списки … Деревья Деревья Олимпиадный путь Идеализированный (не реализуемый) путь Проектный путь (Опущены: очереди, хеш-таблицы, графы, автоматы) 15 Аналитический подход к довузовскому преподаванию программирования
  16. 16. МИКРО-ПРОЕКТИРОВАНИЕ ТРАДИЦИОННАЯ МЕТОДИКА ПРОЕКТНАЯ МЕТОДИКА «Липкие» «Липкие» концы концы Теория Теория ЗАДАЧИ ЗАДАЧИ T T 1 1 T T 1 1 2 2 3 3 4 4 4 4 2 2 3 3 5 5 5 5 Р Р O O Инкрементальный Инкрементальный Моноцентрический Рефлексия Рефлексия Моноцентрический характер задач характер задач частично-сопряженный частично-сопряженный Обобщение Обобщение характер задач характер задач Монтажная единица – микропоследовательность («липкий фрагмент») 16 Аналитический подход к довузовскому преподаванию программирования
  17. 17. МИКРО-ПРОЕКТИРОВАНИЕ T T T T Базовый Р/Т Р/Т 1 1 2 2 Р/Т Р/Т 3 P P 3 Средний 4 4 уровень 5 5 Р Р P P P P Творческий P P Монтаж фрагментов Структура темы Т – теория, Р – рефлексия 17 Аналитический подход к довузовскому преподаванию программирования
  18. 18. ФРОНТАЛЬНАЯ ПРОЕКТНАЯ СИСТЕМА 1 1 2 2 3 3 4 4 Фронтальны Фронтальны й уровень й уровень Школьный Школьный спецкурс спецкурс Студенчески Студенчески й курсовик й курсовик Студенчески Студенчески йй диплом диплом Научная Научная Пример монтажа последовательности работа работа (3) Графики (3) Графики (1) Мультфильм (4) Молекулы (4) Молекулы (1) Мультфильм указатели, структуры, указатели, структуры, указатели, классы, стиль, операторы, функции указатели на функции, указатели на функции, указатели, классы, стиль, операторы, функции классы, гр.интерфейс наследование, гр.интерфейс наследование, гр.интерфейс классы, гр.интерфейс (2) Аркадные игры (2) Аркадные игры (5) Оконная система (5) Оконная система указатели, структуры, указатели, структуры, классы, наследование, классы, наследование, указатели на функции, указатели на функции, проектирование, проектирование, классы, наследование классы, наследование гр.интерфейс гр.интерфейс 18 Аналитический подход к довузовскому преподаванию программирования
  19. 19. СТРУКТУРА КУРСА – «Тупой художник» 7 класс 7 класс – «Графики» Основные понятия программирования Основные понятия программирования – «Возня с данными» Базовая алгоритмика – Анализ сортировок Базовая алгоритмика – Строковая библиотека 8 класс – «ПРОЕКТ-МОЛЕКУЛА» 8 класс Основы ООП, основы ООД, компонентное – Оконная система Основы ООП, основы ООД, компонентное программирование, архитектурные навыки – Компонентное программирование, программирование, архитектурные навыки плагины – Стек и стековая машина, наноассемблер машина, 9 класс 9 класс – Очереди, списки, хеш-таблицы Алгоритмы и структуры данных, конструирование Алгоритмы и структуры данных, конструирование – Деревья компиляторов. Язык ассемблера. компиляторов. Язык ассемблера. – Экспертные системы – Архиватор (алг. Хаффмана) – Деревья выражений, nanoGCC выражений, 10 класс 10 класс – Символьное дифференцирование Программирование на платформах Win32 и .NET Программирование на платформах Win32 и .NET – Оптимизация выражений и программ 3D-графика, OpenGL и DirectX 3D-графика, OpenGL и DirectX – Лексический анализ, графы и автоматы – Нейронные сети 11 класс – Оконная система – оболочка для Win32 11 класс Проектная работа. Специальные – Обработка данных, введение в численные Проектная работа. Специальные пользовательские навыки. Борьба с ЕГЭ :( методы, визуализация данных пользовательские навыки. Борьба с ЕГЭ :( 19 Аналитический подход к довузовскому преподаванию программирования
  20. 20. 2 ЧЕТВЕРТЬ – «ПОСТРОИТЕЛЬ ГРАФИКОВ» Модуль пересчета координат + тонкая оболочка над графической библиотекой. – Интерфейс («Кнопочки») – запланированная «головная боль». Набираем базу для MVC- архитектуры, классов и менеджеров интерфейса. Проект запросто углубляется до довольно серьезных вещей. 20 Аналитический подход к довузовскому преподаванию программирования
  21. 21. 3-4 СЕМЕСТР – С++, МОДЕЛИРОВАНИЕ И ИНТЕРФЕЙСЫ 3 семестр – моделирование физики (идеальный газ, столкновения шаров, освещение) и химии (химическая кинетика). 4 семестр – классический проект GUI library – ООП «in large» – ООД, затем ООП – Start from UML, но не делая из него Holy Cow. – Последовательное применение того, что учили в предыдущем семестре, но теперь не этюд, а проект. – Невытесняющая многозадачность – Многопоточность Графический редактор nanoPhotoshop – Плагины – Компонентное программирование (COM-like) – Единый стандарт API по группе, кто первый выпустил SDK – его и стандарт. – Головная боль с поддержкой собственных старых версий. Еще +1 к рефлексии. 21 Аналитический подход к довузовскому преподаванию программирования
  22. 22. ВИЗУАЛЬНЫЙ ПОДХОД Максимизация мотивации, ясность результата Разработана библиотека под Windows для облегчения работы – Тонкая и прозрачная среда – реально разобраться – Минимализм. Специально убрано все, что «вкусно», но можно сделать самому – Без пафоса («песочница», «тупой художник», ироничная псевдореклама) – Подталкивает «выйти за стенки песочницы» – Хороший методический инструмент – тот, что попался в нужное время, но который не привязывает к себе, а побуждает идти дальше 22 Аналитический подход к довузовскому преподаванию программирования
  23. 23. КОГДА НАЧИНАТЬ? СИСТЕМА НАБОРА Наиболее критичный этап – старт обучения – Сильно мотивационно обусловлен! – Не только и не столько учить, сколько воспитывать Смена Требуемые качества школы – Воображение, творчество – Трудолюбие – Обязательность – Самооценка 4кл 5кл 6кл 7кл 8кл 9кл 10кл 11кл 1к 2к 3к 4к 5к – Результативность Активность Доверие к учителю Аналитичность мышления Вероятность успеха – Коммуникабельность Система набора: микропроект (мультик) – Лучше в 8 класс (сейчас в 7-й) 70% 20% 1 2 3 4 Конс Зачет – Цель – попробовать процесс – В любом случае – получение базовых Д/З Д/З Д/З Д/З знаний по программированию 30% Статистика набора 70% 10% 35% 65% – 70% желали продолжать занятия – из них 70% не смогли посетить Отказались сразу Не смогли Не смогли Отказались Не сдали Приняты занятия (из-за расписания экзаменов) 23 Аналитический подход к довузовскому преподаванию программирования
  24. 24. ОБРАЗОВАТЕЛЬНЫЕ ТРАЕКТОРИИ Временная динамика Учебный процесс Учебный процесс Проектная активность «Разработчик» Цельность Цельность Непрерывность Непрерывность Учебная база Учебная база «Аналитик, пользователь» Техническая база Техническая база 7 8 9 10 11 Где-то будет пауза… обычно на 2 году Ученик Ученик Результативность Результативность Коммуникабельность Коммуникабельность Успех Успех Имитационная Имитационная Формальная Формальная Олимпиадная Олимпиадная Проектная Проектная активность Профессиональная Профессиональная активность активность активность активность активность активность активность активность работы работы Лодырь Ботан Спортсмен Экспериментатор, Экспериментатор, Профессионал Лодырь Ботан инженер инженер Профессионал Непродуктивная активность Продуктивная активность 24 Аналитический подход к довузовскому преподаванию программирования
  25. 25. ИТОГИ Математика Математика Технология Технология Физика Физика Программирование Программирование География География Филология Филология Литература Литература Биология Биология Химия Химия На слайде приведены фрагменты презентаций учащихся. См. ded32.ru 25 Аналитический подход к довузовскому преподаванию программирования
  26. 26. КОНФЕРЕНЦИЯ ПРОЕКТНЫХ РАБОТ Конференция начиналась Конференция начиналась в 2003 г. с секций в 2003 г. с секций программирования программирования и физики. Сейчас ее нет. и физики. Сейчас ее нет. ded32.ru 26 Аналитический подход к довузовскому преподаванию программирования
  27. 27. РЕЗУЛЬТАТЫ ОДНОГО ПРЕПОДАВАТЕЛЯ Участие в региональных и международных конкурсах (не считая призовых мест на олимпиадах Всероссийского уровня) • Балтийский научно-инженерный конкурс (СПб) – за 4 года 19 участников, 13 наград, 7-11 класс • Intel ISEF (Международный этап, США) – за 4 года 4 участника, 3 награды, 11 класс • Intel ISEF (Всероссийский этап) – за 3 года 7 участниов, 7 наград, 7-11 класс Сотрудничество с ВУЗами и НИИ РАН • МФТИ • «Старт в науку» (Физтех Мск) – за 2 года 5 участников, 5 наград, 8-11 класс • СПбГУ ИТМО • ВМК МГУ Динамика успеваемости по классам • Физфак МГУ 4.5 4.7 • Институт механики МГУ 4.2 • Институт Системного 4 программирования РАН 3.5 В ходе обучения не использовались меры «нерезультативных – выгоним». Показатель ухода составлял в среднем 0.5 чел., прихода 0.3 чел. за год. 7 8 9 10 11 Успеваемость Загруженность 27 Аналитический подход к довузовскому преподаванию программирования
  28. 28. РЕЗУЛЬТАТЫ ОДНОГО ПРЕПОДАВАТЕЛЯ Количество проектов на «Ярмарке Идей» (проектный конкурс ЮЗАО г.Москвы) а ≤ 100% 15 а << 100% 11 а = 0% 5 5 4 2 2 2 0 0 0 0 2004 2005 2006 2007 2008 2009 ИКТ Не ИКТ Отн.нагрузка 28 Аналитический подход к довузовскому преподаванию программирования
  29. 29. ЗАКЛЮЧЕНИЕ В целом, методика показала свою эффективность и «нетравматичность». Необходимые для нее условия: – Методика работает в полную силу только при сильной математике и физике. – Крайне желателен еще и английский язык. – Методика работает в полную силу только при непрерывном поддержании мотивации от всех участников образовательного процесса. – Она не может быть «слабым звеном», тогда она превратится в профанацию. Это опасно. – «Гениальности» для успехов у ребенка не требуется. Но с ней будет легче получать результаты. – Что требуется – работоспособность и коммуникабельность. К сожалению, эти качества трудно воспитываются в среднем и старшем школьном возрасте. – Для успеха требуется свободное владение курсом физики и математики в объеме физматшколы. Что дает методика – Минимально – отсутствие проблем с информатикой/программированием в физико- математическом ВУЗе. – Стандартно – умение программировать «для себя», с 1-2 курса ВУЗа успешно осваивать профильные занятия на 1-3 года вперед, часто опережая сокурсников. – Программа по информатике МФТИ, ВМК и мехмата МГУ по программированию во многом покрыта стандартным курсом 7-10 классов. – Максимально – посильной научной и наукоемкой производственной работой школьник может грамотно заняться начиная с 7-8 класса, с 10 класса быть приглашенным в учебно-научный или научно-производственный коллектив. – Это «социальный лифт», позволяющий ребенку быстро подняться профессионально. 29 Аналитический подход к довузовскому преподаванию программирования
  30. 30. Спасибо за внимание Остальная информация на http://ded32.ru Благодарности акад. В.П. Иванников, ИСП РАН член-корр. РАН А.Л. Семенов, МИОО проф. Н.И.Яковлева, ДО ЮЗАО г. Москвы проф. А.А. Шананин, проф. И.Б.Петров, А.В. Гасников, Е.Г. Молчанов, МФТИ чл.-корр. РАО проф. В.Н. Васильев, проф. В.Г. Парфенов, проф. А.А. Шалыто и сотр., СПбГУ ИТМО А.С. Татаринов, nVidia Corporation

Editor's Notes

  • Обучение методом отвергания (при неудачах профессиональной работы после ВУЗа) Школьное образование зачастую не влияет на профессиональный успех
  • Это не образовательные оковы.

×