Разработка будущего: как определить у ребенка задатки программиста
Лучший способ проверить их навыки — дать им попробовать свои силы. Но что, если они захотят сдаться после первых же трудностей? Чтобы развеять все сомнения, вы можете обратить внимание на три признака развития у вашего ребенка
Об эксперте: Оксана Селендеева — 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].
В целом, если ребенок проявляет силу воли и готов ждать большого вознаграждения, у него есть хорошие шансы преуспеть в развитии. Волевой компонент является самым важным в любом начинании. Когда человек мотивирован — все необходимые навыки легко воспитываются на пути к цели.