2013 09сен 22, первая программа ТаниВсю последнюю неделю занимался с Таней основами использования компьютера. Во первых, решил, что пора бы уже ребёнку начать изучать компьютерную грамотность, в особенности после прочтения статьи «Дети не умеют пользоваться компьютером». Во вторых, Таня попросила научить её писать программы. Чем даже немного ошарашила… не ожидал, что ей вдруг станет интересно написать свою программу.

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

Для начала надо упомянуть, что хороших детских учебников по компьютерной грамотности в книжных магазинах нашего города нет. Как нет и хороших толковых учебников в Интернете. К сожалению, на книжных полках полно самоучителей, обещающих научить программировать за пару недель, но не для детей, а для студентов! И в каждой книжке ученикам объясняют простые вещи сложным технических языком. При этом в качестве учебных задачек предлагаются упражнения по высшей математике (решить уравнения, разложить ряды Фурье, посчитать факториалы). Скука смертная, при этом непонятная.

Детских книжек про компьютеры тоже нет.

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

На данный момент ситуация такая:

  • дочка ходит в пятый класс в школу в которой информатику почему-то не преподают;
  • новые школьные ФГОСовские учебники информатики с 1 по 8 класс — это скука смертная, не практичная, уже устаревшая;
  • для учёбы ребёнку уже требуется уметь пользоваться и компьютером, и Интернетом.

Задачей было и научить пользоваться компьютером, и заинтересовать. В самом начале мы занялись подсчётом количества ЭВМ в квартире, с учётом микроволновки, стиральной машины, телефонов и т.д. Насчитали аж 16 шт. Далее, объяснил разницу между сложным устройством (смартфон) и простым (посудомойка) — во главу угла поставил наличие операционной системы. Начали работу с компьютером с установки операционной системы (сейчас эта процедура несложна и занимательна). С моей помощью Таня подготовила загрузочную USB-флешку и сама установила операционную систему. Объяснил, что с этой главной программы начинается работа любого компьютера, и что теперь в ней она и будет учиться пользоваться компьютером — в глазах загорелся неподдельный интерес.

В качестве операционной системы был выбран Linux Debian 7 (Wheezy) — бесплатная и надёжная операционная система, с которой проще и понятнее начинать обучение использования компьютера. Щёлкать мышкой в Windows ребёнок уже умеет, но компьютерную грамотность правильнее изучать в режиме терминала. Такой подход гарантирует понимание принципа построения и устройства компьютера даже на простейших упражнениях. На этом закончилось наше первое занятие.

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

На третьем занятии пришлось наверстать знания, пропущенные в угоду интереса. Нарисовал упрощённую структуру (архитектуру) компьютера, наглядно показал сложные компоненты ЭВМ — процессор, память, внешние запоминающие устройства. Остальные компоненты дочка мне уже показывала сама — устройства ввода (клавиатура, мышка, микрофон…), устройства вывода (монитор, принтер, наушники). Кстати, очень наглядным примером оказался компьютер в стеклянном корпусе. Рад, что процесс обучения идёт легко и непринуждённо. Кратко объяснил, что языки программирования бывают разные. Больше всего Тане понравилось придумывать и писать 0 и 1 машинного кода. Получалась ерунда, конечно, но образцово-показательная. Она сама увидела, что понимать все эти 0 и 1 человеку весьма непросто. С другой стороны, я и сам увидел, что ребёнку непросто понять пример на высокоуровневом языке программирования. Пришлось в объяснении пользоваться другими категориями — размером программы, так сложность низкоуровневого языка программирования стала понятнее.

Чтобы окончательно подогреть интерес, поручил Тане набрать первую в её жизни программу. Набирать ей пришлось заранее подготовленный текст. Задачей не было научить программировать (придумывать), надо было показать, как из файлов получается программа, которую можно откомпилировать и запустить. Понимание принципов работы с файлами к этому моменту уже было достигнуто, поэтому и сложный процесс подготовки работающей программы был пройден гладко.

В итоге получилась традиционно-первая «Hello, World!» программа, см. обложку статьи. Тане программировать понравилось, так что если так дальше пойдёт, то в семье появится ещё один программист 🙂