IT сегодня повсюду, куда ни глянь. Умный чайник; приложение для определения съедобных грибов прямо в лесу; домофон, управляемый непосредственно со смартфона – похоже, что не осталось такой сферы жизни, где бы не применялись программные продукты. Различные программы и приложения позволяют нам взаимодействовать с физическим оборудованием, телефонами, планшетами, ноутбуками и другими гаджетами – т.е. вполне материальными объектами, которые без этих программ были бы просто грудой железа. А программное обеспечение (его называют софт) буквально «оживляет» их и «учит» понимать, чего от них хочет человек, правильно выполнять поставленные задачи – делать сложные вычисления, кипятить воду, открывать дверь и т.д. Получается, что с «железом» можно говорить на каком-то особом языке? Вообще-то, да, и это – язык программирования. На первый взгляд, сложный и доступный лишь немногим. А такой процесс «оживления» материальных объектов выглядит подчас настоящей магией, чем-то таинственным и пугающе непонятным (недаром в 20 веке создано столько художественных произведений о разумных машинах, восстаниях роботов и захвате власти программным разумом – в целом они отражают человеческие опасения и предрассудки, связанные с IT-сферой и ИИ). Но на практике процесс «обучения» машины оказывается вполне доступным и очень захватывающим.
Если ты задумываешься о том, чтобы в будущем стать таким магом-программером, то попробовать себя в программировании можно уже в школе. Так, регулярно проходящие в старших классах Эпишколы погружения по информатике сделаны таким образом, чтобы ребята могли попробовать «научить» компьютер выполнять определенные действия, т.е. почти что пообщаться с машиной на её языке. А на каком? На русском или на английском? Какой язык понимает компьютер? С этого зачастую и начинаются погружения – с языка программирования. Юлия Александровна Голуб, педагог Эпишколы и ведущая погружений, выстраивает их как работу над мини-проектом, который осуществляется «здесь и сейчас». От теории – знакомства с каким-либо языком программирования (Python, Pascal и т.п.) – ребята приходят к конкретному результату. Например, создают мини-программу для несложных задач: подсчёта определенных гласных в отрывке текста, поиска всех прилагательных по заданным характеристикам или комбинации фраз по определенной логике. Получается, что, освоив некоторый фрагмент теории, ребята сразу же применяют её на практике.
И становится понятно, почему для этого нужны именно погружения, почему не годятся обычные уроки. Проделать путь от получения базовых знаний до собственного хоть и небольшого продукта за 45 минут стандартного урока попросту невозможно. А вот 3–4-х часов вполне достаточно, чтобы достичь какого-то внятного результата. И при этом, как отмечает преподаватель, во-первых, срабатывает wow-эффект («Ура, оно работает!»), а во-вторых, закрепляется тот теоретический материал, который был получен в начале. И дальше эти знания можно будет использовать на той же самой информатике, во время обычных уроков.
В конце погружения ребята оформляют итоги своей работы – описывают, что было сделано, при помощи каких инструментов, что в итоге получили. Таким образом формируется и ряд важных навыков, soft skills, которые потом пригодятся в других ситуациях.
Юлия Александровна утверждает, что программирование доступно абсолютно всем. И попутно развеивает ряд распространенных заблуждений и сомнений, связанных с информатикой. Например, такие:
«Я гуманитарий, мне плохо дается математика, я не разберусь в программном коде».
– На самом деле, как показывает опыт, гуманитарии намного более математичны, чем им кажется. Например, когда ребёнок-гуманитарий читает алгоритм, то зачастую он понимает суть описанной в нём задачи намного быстрее, чем ребёнок-математик, быстро решающий математические примеры. Вероятно, это заслуга образного, пространственного типа мышления. Это же касается и восприятия программной задачи в целом. А ещё очень важно, что эффект радости от самого себя и собственных достижений, от ощущения того, что «я смог!» у гуманитариев тоже выше. Особенно на фоне условного «матёрого математика 10 класса», который уверен, что уже всё знает, и найденное решение какой-либо IT-задачи не особенно взволнует его. Среди гуманитариев достаточно много детей, которые могут и ошибаться, но в целом, прочитав алгоритм, они отлично понимают, что согласно ему можно сделать и чего требует от них условие задачи.
«Зачем мне погружаться в программирование, если я не собираюсь в программисты? Ведь сейчас существует много готовых решений – даже сайт уже можно не писать вручную, а собрать из готовых блоков. Значит, во взрослой жизни мне написание программ скорее всего не пригодится».
– Во-первых, программирование развивает умение логически мыслить. Это главное. Во-вторых – умение разделить какую-то большую задачу на ряд более мелких фрагментов. И когда мы идём этой последовательностью маленьких шажков, то постепенно решается та большая задача, которую не одолеть за один раз. В-третьих, информатика – это умение формализовать саму постановку вопроса: например, когда пытаешься объяснить человеку, что именно ты от него хочешь, важно не растекаться мыслию по древу, а подобрать по возможности чёткие и адекватные слова для постановки задачи. Наконец, это умение составить алгоритм – как план и последовательность действий. По сути, программирование – это не только язык. Это действия – т.е. то, что составляет большую часть нашей жизни.
«А если я собираюсь стать, допустим, биологом... Зачем мне знание информатики, если я планирую работать с живыми организмами – ведь их же не запрограммировать?»
– В любой живой системе – от клетки до биоты – протекает множество сложных процессов. И умение посмотреть на эти процессы сквозь призму алгоритма, т.е. описать принцип их работы – это умение также даёт информатика. А ещё на ум приходит генетика: например, если мы решаем какую-либо генетическую задачу, то можем составить такую программу, которая будет рассчитывать вероятность получения тех или иных признаков. Это будет намного быстрее и точнее, нежели считать все эти сложные вероятности вручную.
Таким образом получается, что информатика отлично работает в сочетании с разными другими областями знаний – медициной, биологией, химией и т.д. Она становится незаменимым другом и помощником, и более того – формирует ряд важных soft skills, которые применимы практически везде.
В результате такого знакомства программы перестают восприниматься набором непонятных символов. А компьютер становится больше чем игрушкой и даже больше чем просто инструментом для работы. Когда отдельные знания и навыки соединяются вместе, ребёнок ощущает готовность разобраться в задаче – и у него хорошо это получается – все это начинает помогать в ему в дальнейшей жизни.