
Разработка будущего: как определить у ребенка задатки программиста
Лучший способ проверить их навыки – дать им попробовать свои силы. Но что, если они захотят сдаться после первых же трудностей? Чтобы развеять все сомнения, вы можете обратить внимание на три признака развития у вашего ребенка
Об эксперте: Оксана Селендеева – IT-предприниматель и вдохновитель детской школы программирования CODDY. Соорганизатор детской благотворительной организации Donate-Codding. Основатель общественных групп “Продай свою голову”.
Абстрактно-логическое мышление
Программирование основано на логике, это ее реализация. Иногда даже преувеличенно говорят, что разработка – это все о логике [1]. Поэтому умение абстрагироваться и мыслить логически – самый важный навык программиста.
Абстрактное логическое мышление означает оперирование сущностями, а не конкретными объектами: способность обобщать, выявлять взаимосвязи между объектами, находить закономерности, строить гипотезы. Человек, который мыслит логически, делает правильные выводы из предположений.
Вот пример из книги Канемана “Думай медленно….. Решайте быстро”:
“Стоимость бейсбольного мяча и биты составляет 1 доллар и 10 центов. Бита стоит на 1 доллар дороже, чем мяч. Сколько стоит мяч?” Если вы ответили 10 центов, то сделали неправильный вывод, потому что получается, что бита всего на 90 центов дороже мяча, а общая стоимость товаров не совпадает. Логичный и правильный ответ – 5 центов.
Подходит ли тебе программирование? Легко проверить
Чтобы делать правильные выводы, нужно уметь использовать типы логических рассуждений, следовать законам логики и избегать логических заблуждений. Возможно, вы не знаете, как это называется. Интуитивное, меняющее жизнь логическое мышление часто называют здравым смыслом.
Как проверить логическое мышление у ребенка
Логическое мышление можно легко проверить с помощью тестов на сообразительность. Они также могут помочь определить вдумчивость, мета-мышление, последовательность, внимательность и другие качества, ценные для разработчика.
Вот некоторые из них
- Конструкция самолетов должна быть улучшена, чтобы их реже сбивали на войне. Известно, что самолеты, вернувшиеся с заданий, имеют больше всего пробоин в фюзеляже, чуть меньше в крыльях, а область двигателя всегда находится почти в идеальном состоянии. Бюджета хватает только на укрепление одной части. Что в самолете нуждается в укреплении?
Ответ. Это хрестоматийная проблема ошибки выживания. Необходимо усилить защиту двигателя, потому что самолеты с пробитым двигателем не возвращаются.
- У Тани есть две монеты по 15 копеек. Один из них – не пятак. Какие монеты есть у Тани?
Ответ. Тривиальный фоновый комментарий и ответ очевиден – 5 копеек и 10 копеек. В конце концов, если одна монета не является пятицентовиком, то нет никакого противоречия в том, что другая является пятицентовиком.
- В двух мешочках всего по 4 копейки, а в первом в два раза больше, чем во втором. Как это возможно?
Ответ. Опять же, акцент делается на формальных условиях. Нигде не написано, что один кошелек не может лежать в другом.
10 минут, чтобы узнать о профессии программист
Эти задачи подойдут для детей, которые уже учатся как минимум в средней школе. Еще один тест на пригодность, состоящий из десяти вопросов, будет проверять логическое и причинно-следственное мышление, аналитические и обобщающие способности, гибкость ума и устойчивость внимания. Тест составлен на английском языке [2].
Маленьким детям нужны более простые и интересные задания. Например, на сайте LogicLike есть много красочных заданий, которые особенно хорошо удерживают внимание детей дошкольного возраста [3].
6 способов выучиться на программиста
Алгоритмическое мышление
Алгоритм – это последовательность шагов для решения проблемы. Программы – это инструкции для компьютера, алгоритмы, написанные на языке программирования. Без них невозможно развитие.
Алгоритмическое мышление – это способность определять последовательность шагов для достижения цели. Задача разбивается на части и становится понятной. Простой пример – рецепты.
Алгоритмы помогают автоматизировать рутинные задачи. Например, все мы изучали алгоритм умножения в школе. С алгоритмом нам не нужно каждый раз выяснять, как умножать числа с нуля.
Исследования показывают, что умение мыслить алгоритмами помогает преуспеть в программировании [4]. В ходе исследования одна половина студентов смогла мысленно представить модель программы и реализовать ее шаг за шагом, а другая – нет. В первой группе экзамен сдали 84% студентов, во второй – 48%.
Как проверить алгоритмическое мышление у ребенка
Попросите его рассказать вам, как что-то сделать, например, почистить зубы или нарисовать человека. Если ребенок без проблем объясняет вам последовательность действий, это прекрасно.
Дети постарше могут строить алгоритмы в интуитивно понятной среде визуального программирования Scratch, где алгоритмы собираются из графических блоков [5]. В то же время, если ребенок может справиться с научными задачами, у него развито алгоритмическое мышление.
Твердость характера или стойкость
Твердость характера (grit) – это настойчивость в достижении долгосрочных целей. Это помогает выиграть марафон, а не спринт. Его антитезами являются слабость характера, импульсивность и трусость.
Как проверить стойкость у ребенка
Существует простой тест из десяти вопросов для определения уровня твердости характера [6]. Она была разработана Анжелой Ли Дакворт, профессором психологии Пенсильванского университета и автором книги “Стойкость характера. Как развить основную черту успешных людей.
Определить зачатки твердости характера у маленьких детей с помощью эквивалента популярного “зефирного теста”. Это серия тестов на отсроченное удовлетворение. Детям предлагается выбрать между одним небольшим вознаграждением сейчас и удвоенным вознаграждением, если они будут терпеливо ждать в течение 15 минут. Если дети выбирают второе, экспериментатор выходит из комнаты. Ребенок остается один на один с выбором.
В таком испытании важно выбрать в качестве награды что-то действительно желанное. Исследователи показали, что оригинальный “зефирный тест” является неточным – дети из богатых семей чаще откладывали сиюминутное удовольствие, потому что не видели ценности в зефире [7].
В целом, если ребенок проявляет силу воли и готов ждать большого вознаграждения, у него есть хорошие шансы преуспеть в развитии. Волевой компонент является самым важным в любом начинании. Когда человек мотивирован – все необходимые навыки легко воспитываются на пути к цели.