Зачем ребенку программирование
Стив Джобс считал: "Каждый человек должен учиться программировать, потому что это учит нас думать". Когда речь заходит о развитии логики и аналитических способностей, считается, что сделать это практически невозможно. Так уж сложилось, у кого-то “математический склад ума”, а кому-то просто не дано. Однако развить аналитическое мышление у ребенка возможно: на помощь приходят особые, “детские” языки программирования.
Я много раз слышал от родителей такую фразу “моя дочь хочет стать актрисой, зачем ей это?”, “мой сын будет юристом, для него это пустая трата времени!”
На самом деле, существует три веские причины познакомить ребенка с программированием, причем сделать это как можно раньше.
1. Экономия времени и сил
Основа программирования – это алгоритмы. Алгоритмом называют набор действий, который нужно выполнить для достижения результата. Любой процесс, будь то запуск ракеты, вождение автомобиля или приготовление борща, можно описать алгоритмом, а на основании него уже создать программу, которая будет его выполнять.
Как можно использовать это в повседневной жизни? Если вы работаете на компьютере, уверен, вам часто приходится выполнять однообразные, почти механические действия (форматирование текстов, сортировка файлов по папкам, рассылка электронной почты и т.д.). Существует множество решений, позволяющих сэкономить ваше время: начиная с макросов в Microsoft Office (типичный пример – форматирование текста), заканчивая специальными программами, которые вы без труда найдете по запросу “автоматизации в Windows”. Они не только выполнят часть работы за вас, но и сделают это в назначенное время, даже если вас не будет у компьютера. Между прочим, необязательно ограничиваться работой: например, используя программу Sikuli, вы можете создать себе “бота” и несложными командами научить его собирать и продавать урожай в “Веселой Ферме” или любой другой онлайн-игре. Оставляете компьютер на ночь, и к утру бот зарабатывает вам мешок денег. Уверен, вам понравится.
При чем же здесь программирование? При том, что даже поверхностные знания в этой области позволяют нам “мыслить алгоритмами”, искать процессы, которые можно автоматизировать, и находить варианты, как именно это можно сделать, а при необходимости писать простейшие программы для решения любых задач. Таким образом, чем бы ваш ребенок ни занимался, такие знания никогда не будут лишними.
Кстати, с простейшими алгоритмами мы знакомимся задолго до того, как начинаем работать за компьютером. Известное нам с детства “Красный свет – хода нет!” – типичный пример алгоритма. Они очень сильно облегчают нам жизнь, позволяя автоматизировать ежедневные процессы и освободить мозг для более важной работы. Без таких “встроенных алгоритмов” мы бы оказались на месте сороконожки из мультика, которая задумалась о том, как же она ходит не спотыкаясь, и тут же запуталась в своих ногах.
Представьте себе, что вы не умеете писать и читать. Да-да, прямо сейчас, в 2013м году. Вы никогда не собирались становиться писателем или поэтом, вот и не стали учить алфавит. Правда, написать жалобу в ДЕЗ или прочитать договор с банком вы тоже теперь не можете. А если нужно написать письмо, вы идете за помощью к знакомому, который умеет читать и писать. Звучит нелепо, правда? Возможно, через 20-30 лет именно так будут чувствовать себя люди, не владеющие азами программирования.
Судите сами: 20 лет назад о существовании такого предмета, как программирование, знали только избранные. 10 лет назад мало кто понимал, кто такие программисты и чем они, собственно говоря, занимаются. Сегодня программист – одна из самых популярных и востребованных специальностей. Если развитие будет идти в том же темпе, возможно, в ближайшие 20 лет языки программирования станут так же необходимы для успешной карьеры, как иностранные языки.
Кроме того, компьютерные технологии все глубже входят в повседневную жизнь, устройства, которые раньше можно было увидеть лишь в фантастических фильмах, появляются на прилавках самых обычных магазинов. Роботы-помощники, устройства “умный дом” и бортовые компьютеры в автомобилях – все это реальность уже сегодня, а чтобы пользоваться ими самостоятельно, понадобятся новые знания.
Возможно, читая статью, вы подумали: “Это все, конечно, очень хорошо, но заставлять ребенка программировать ради призрачных перспектив в будущем? Нет, спасибо.” Думаю, у многих из вас программирование ассоциируется с черным экраном, малопонятным набором букв и цифр и вечной ошибкой “Syntax Error”, с которыми вам приходилось воевать на уроках информатики.
Действительно, до недавнего времени порог вхождения в программирование был достаточно высок: в большинстве программ используется английский язык, сложный синтаксис, пугающие интерфейсы с большим количеством окон. Увлечь программированием было сложно даже старшеклассников, что уж говорить о малышах. Однако сегодня созданы удивительные языки программирования, которые способны заинтересовать даже первоклассника.
Языки, о которых будет рассказано ниже, не только познакомят ребенка с азами предмета, но и помогут ему развить логику, пространственное мышление, внимательность и фантазию. Кроме того, работая с ними, ребенок не только испытает настоящее удовольствие от процесса, но и получит уникальный результат, который можно показать родителям и друзьям, а ведь это так важно! Итак, приступим.
http://scratch.mit.edu/
Студенты Массачусетского Технического Института (MIT) написали один из лучших языков для детей Scratch (краткая видеопрезентация) Он переведен на русский язык, и в последней версии 2.0 его даже не нужно устанавливать на компьютер: заходите на сайт и начинаете творить. Регистрация понадобится, если захотите сохранить вашу программу и похвастаться друзьям.
Писать программы в Scratch не сложнее, чем собирать конструктор Lego – команды присоединяются друг к другу как кирпичики. Кроме того, вы можете взять любой понравившийся вам проект, посмотреть его код и изменить по своему вкусу, или сделать на его основе свою программу. Все это происходит в доброжелательной атмосфере, где вы всегда можете пообщаться с другими авторами программ, спросить совета на форуме и просто получить лестные комментарии к своим программам.
Предлагаю вам прямо сейчас зайти на сайт http://scratch.mit.edu/и нажать кнопку “Попробуйте” (для работы в Scratch вам понадобится любой современный браузер и установленный Adobe Flash Player). Нажмите на знак вопроса в правом верхнем углу, чтобы пройти пошаговое введение в программирование или посмотреть описание разделов.
Скретч – не только среда программирования, но и полноценная мультимедийная площадка. Она позволяет рисовать, работать со звуком и фотографиями и использовать все это в своих проектах. Здесь можно создавать интерактивные истории, игры и мультфильмы. Благодаря разнообразию проектов, Scratch будет интересен детям любого возраста. По моим наблюдениям, детям помладше нравится рисовать комиксы или мультики и создавать музыкальные синтезаторы, ученики 5-7 классов любят писать собственные или делать копии любимых игр, а те, кто постарше, экспериментируют с моделированием физических объектов и математическими моделями – графикамии фракталами.
http://mindstorms.lego.com/en-us/products/default.aspx
Lego Mindstorms – это набор, от которого будут в восторге и взрослые, и дети, ведь он позволит вам создать самого настоящего робота. Среди самых простых трюков – следование по заданной траектории, сортировка разноцветных шариков, прохождение лабиринта, патрулирование территории (робот нещадно расстреливает нарушителя теми же разноцветными шариками). Все эти программы подробно описаны в инструкции. Однако не стоит ограничивать себя инструкцией: как только вы разберетесь, что к чему, сможете придумывать для робота самые разнообразные задания. В умелых руках этот конструктор способен решать судоку, собирать кубик Рубика и играть с вами в крестики-нолики.
Сердце конструктора – программируемый блок, который подсоединяется к компьютеру. Программы для робота пишутся на упрощенном языке, в котором команды выглядят как значки, а значит, заниматься таким видом программирования сможет даже младший школьник. Что уж говорить, такой пример наглядно демонстрирует пользу изучения программирования!
При всех достоинствах прибора у Mindstorms есть существенный недостаток: стоимость конструктора достаточно высока, цены начинаются от 10 тысяч рублей. Хотя с другой стороны, сегодня на витринах магазинов можно встретить игрушки и дороже.
_http://kpolyakov.spb.ru/school/robots/robots.htm_ Конечно, создавать программы из цветных блоков в Scratch и давать команды роботу очень интересно, но если ваш ребенок планирует в будущем заниматься написанием программ, ему придется освоить хотя бы один полноценный язык программирования. Помочь в этом сможет система “Исполнители” от Константина Полякова, доктора технических наук, учителя высшей категории из Санкт-Петербурга. Учебная среда “Исполнители” позволяет школьникам познакомиться с такими основными понятиями в программировании, как "Процедуры", "Циклы", "Условные операторы", "Логические операции и переменные", "Рекурсия", "Массивы" и др. Эти знания позволят впоследствии безболезненно перейти к изучению серьезных языков программирования, таких как С, Delphi, Python. С помощью трех исполнителей – Робот, Чертежник и Черепаха, школьник сможет решить большую часть школьных задач по информатике, а также придумывать собственные программы, в том числе для решения заданий по математике и физике. Программа бесплатная, скачать ее можно по ссылке. На том же сайте вы найдете учебники, руководства, рекомендации и набор готовых заданий для среды исполнителей. Свой ответ на вопрос “Зачем учиться программированию?” дают создатели Микрософта, Фейсбука, Дропбокса и звезды шоу-бизнеса :)