Главная страница проекта ИНФОРМАТИКА-21

Наука Школе

Главная страничка занятий с 5-классниками   Предыдущее занятие   Следующее занятие

18 февраля 2008. Седьмое занятие

До занятия

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

Раз уж вспомнили про баскетбол. Учитель информатики Роман Валерьевич Наливкин из Воронежской области прислал ссылочку, где другой учитель информатики, Азат Анварович Хисаметдинов из Башкортостана свидетельствует, сам того еще не зная, в пользу нашей гипотезы о роли баскетбола в подготовке программистов такими словами:
"У нас также баскетбол! Все благодаря фанату баскетбола Повераеву Константину. Самое интересное что его же ребята приходят и ко мне на информатику ..."

Что ли о роли физкультуры в развитии ума никто не думает?! Зря. Давно уж можно было додуматься педагогическим ученым.

Спасибо -- в Минск к Valery Solovey, указавшему на неточность в прошлом репортаже насчет паскалевских комментариев. Исправлено.

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

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

Учиться, учиться и учиться!    <---- это не только томичам с орловцами ;-)

Для Римского принципа тоже заведена отдельная страничка.

Уже упомянутый Роман Валерьевич Наливкин сомневался на одной из веток форума PEDSOVET.ORG, мол, зачем нужны учителя информатики, если не они учат детей, а наоборот.

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

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

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

Как-то такого понимания в дискуссиях по преподаванию информатики не просматривается. А зря.

Занятие

Случившийся с утра до обеда снегопад осложнил движение по Калужскому шоссе, на котором стоит Троицк, и по которому в лицей и обратно добираются часть учителей и лицеистов. Поэтому занятие было немножко сокращено -- и в целом прошло сумбурно, т.к., например, Лизавету забрали раньше времени (но она все-таки успела подиспутировать с info21 насчет важности изучения латинского языка :-)). А кто-то еще болел дома.

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

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

   

А должны были Тима -- и особенно Вася, который оказался самый хитрый и от шишек успешно утёк:

                            

Все как в жизни.


Тем временем info21 на всех компах как можно быстрее снёс Тулбар (частично виновный в наблюдаемых Трапах) -- вместе с (от греха подальше) модулями Desktop, провоцировавшими черепашку на батарею Трапов у Жени.

Опять мы видим громадное удобство компонентного построения Блэкбокса из независимых модулей: стерли ненужное, и все -- никаких перекомпиляций и пере-build-ов. Попробуйте снести ненужную дрянь в каком-нибудь Ворде (а там ненужной дряни полно).

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


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

— три "технических" строки -- начало-конец модуля и строка импорта,
— копмиляция делается явно нажатием Ctrl+K,
— процедуры вызываются кликом по коммандеру (ставятся после текста модула или в комментариях внутри; Ctrl+Q),
— каждая команда черепашки содержит приставку "Ч." (NB "приставка" -- связь с русским языком. Мы все время говорим, что программирование одним концом упирается в математику, другим -- в языки.)

Вот как примерно теперь будет выглядеть программа:

MODULE ТимаДом;
    IMPORT Ч := LabTurtleRu, In := Info21sysIn, Log := StdLog;

    PROCEDURE Всё*;
        VAR
    BEGIN
        Ч.ОчиститьЛист;
        Ч.Идти(100);
        (* и так далее *)
    END Всё;

END ТимаДом.

ТимаДом.Всё  --клик по черной штучке ("коммандеру") вызывает процедуру Всё.

"LabTurtleRu.Открыть(600,400)" --клик по черному коммандеру открывает отдельное окошко, в котором появляется рисунок.

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

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

На следующем занятии переведем на эту схему всех.


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

Лиза и Марина аккуратно разбирались с Ольгой Александровной насчет положений черепашки в начале и конце процедуры Доска/Дощечка.

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

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

У Тимы переход к процедурам -- и особенно переход к одной процедуре Окно вместо трех разных -- породил на рисунке хаос -- окна разъехались -- и даже гараж почему-то уехал!

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

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


Женя на предложение перелопатить программу-Дом в набор простых процедур среагировала так, что это надо обсудить. Она ответила "скучно!"
И тут мы снова видим фундаментальнейший пункт для всей сферы ИТ (хе-хе: все ли его тут видят?)
Не только для сферы ИТ -- у литераторов, к примеру, он тоже есть (незабвенный Николай Семенович Лесков однажды выразился про чье-то сочинение: "Как ...но, так и заморожено").

Пункт в том, что пока Женя громоздила свой домик, она имела понятную цель, которая ее влекла (нарисовать домик), и набор средств для ее достижения (черепашку с командами). В итоге домик худо-бедно рисуется. Это была чисто комбинаторная часть задачи.
А вот следующий шаг (без которого программирование не закончено) -- т.е. доводка качества -- "скучно".
Сравнить: молодой человек, скомпоновавший черепаховый Lab (пусть икает, молодым полезно :-), слепить его слепил, а доводить до ума -- не довел. Причин, конечно, множество, а не просто "скучно", ну так ясное дело.

"Качество -- дело привычки". Вот еще одна задача для учителя информатики (Роман Валерьевич, надеемся, читает) -- потому что сами не только школьники-программисты, но и вполне уже взрослые молодые люди до этого доходят с трудом. info21 имел опыт борьбы не с одним старшекурсником, прямо-таки отказывавшимся принять душою необходимость вылизывать вроде бы уже работающую программу (кто-то по гордости: "как? моя программа плохая?", кто-то по искреннему ... недоумению) до тех пор, пока она не приобретет настолько ясный вид, что ее правильность будет оче-видной. Воспитывать надо с детства привычку к качеству. Как в Швейцарии.
И снова: во всем, что касается ИТ, такая привычка -- на первый наивный взгляд, чистое эстетство -- неожиданно превращается в универсальную технологическую необходимость.

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

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

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


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

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


В общем, Марина с Женей сегодня поработали неплохо, несмотря на краткость и сумбурность занятия, и за это им фотка:

А пацаны проваляли дурака, за это им фотки нет.

Главная страничка занятий с 5-классниками   Предыдущее занятие   Следующее занятие

Главная страница проекта ИНФОРМАТИКА-21

Наука Школе