
Дети, программирование и решение проблем
Следует ли моему ребенку научиться программировать, если он не собирается быть профессиональным программистом? Кейс для Code Ninjas.
Через 15 лет мой десятилетний сын Паркер, вероятно, сделает первые шаги в своей будущей карьере. Сегодня он говорит, что хочет быть таким же программистом, как я. Хотя это заставляет меня улыбаться как отца, я знаю, что вероятность того, что это действительно произойдет, довольно мала, поскольку большинство сыновей не берут на себя семейный бизнес и не делают ту же карьеру, что и их отцы. Итак, у меня остался вопрос.
Для него все еще хорошая идея научиться программировать, даже если я знаю, что мой сын вряд ли когда-нибудь станет профессиональным разработчиком программного обеспечения?
Для меня ответ - да, и он подкреплен несколькими разными моментами, которые я подробно объясню.
- Обучение программированию меняет ваш образ мышления и учит решать проблемы
- Почти все команды так или иначе потребуют кодирования
- Кодеры не против отказываться снова и снова. Формирует характер.
Обучение программированию меняет ваш образ мышления и обучает широко применимым методам решения проблем.
Программисты обычно не очень разбираются в темах приложений, которые они кодируют. Например, я много лет проработал в нефтегазовой отрасли, но я не инженер-нефтяник и не грубый помощник. Я не учился и не работал на буровой установке, но смог понять концепции того, что нужно этим компаниям, и воплотить это в техническое решение.
В конце концов, именно это и делает программист - решает проблемы с помощью технологий.
Чтобы заняться бизнесом, о котором вы очень мало знаете, вы должны научиться быстро учиться. Хороший разработчик должен быстро добраться до сути проблемы и понять, почему это проблема для него, а затем разработать способ решения этой проблемы с ограниченным пониманием предмета.
Итак, мы садимся с экспертами в предметной области (SME) и задаем вопросы. Мы действительно отлично умеем задавать вопросы. Вопросы, о которых не задумывались сами МСБ.
«Что произойдет, если вы оставите это поле пустым? Нуль?"
«Кто получает информацию после того, как пользователь отправит эту форму на сегодняшний день? Это идеально? "
"Почему мы не можем это автоматизировать?"
Многие проблемы возникают из-за того, что пользователи думают, что это должно быть именно так, как они это делают. Они не знают, что возможно, поэтому боятся выглядеть глупо или что-то сломать, изменив существующий процесс.
Родители не думают об этом, обучая своих детей. Большая часть того, что мы пытаемся заставить их делать, - это запоминать вещи. Узнайте об истории, математике, естествознании, грамматике и социальных науках. А теперь перескажите мне это в точности так, как вы читали.
Кодирование тренирует мозг быть очень любознательным. Это заставляет нас сделать шаг назад и посмотреть на вещи с другой точки зрения и задать важные вопросы: «Правильно ли мы делаем это? Есть ли способ лучше?"
Дети обладают безграничным воображением и часто удивляют вас своими творческими идеями по решению проблем. Попросите ребенка создать видеоигру, и вы получите все под солнцем. Это потому, что они не видят искусственных, усвоенных ограничений возможностей.
Сочетание безграничного воображения с эффективным исследованием дает детям новый набор навыков, применимых не только к программированию. Это навыки, которые потребуются завтрашней рабочей силе.
Почти все команды так или иначе требуют кодирования
Зайдите в любой офис в западном мире, и вы не увидите много столов без компьютеров. Фактически, люди, у которых нет компьютера, вероятно, не будут работать надолго.
Теперь спросите любого менеджера команды, есть ли у него список приложений, которые позволили бы их команде работать более гладко. Или мы можем изменить существующую систему, чтобы помочь их команде достичь своих ключевых показателей эффективности?
Ответ почти всегда положительный. Они могут быть не в состоянии сформулировать детали этого приложения, но они знают, что то, что они делают сейчас, не является самым оптимизированным и эффективным из возможных способов.
У команд завтрашнего дня почти наверняка будет связь с технической группой. Кто-то, кто понимает то, что команда пытается сделать, и знает, как передать это высокотехнологичной команде. Даже если ваши дети не являются посредником, разве не было бы замечательно, если бы они помогли связному составить план? Разве это не добавляет ценности их команде и их присутствию в ней?
Другой, более простой пример - это простая электронная таблица. Большинство из нас в бизнесе время от времени используют электронные таблицы, но действительно ли вы используете их в полной мере? Представьте, если бы вы знали о кодировании немного больше. Может ли эта таблица автоматически взаимодействовать с другой системой? Можете ли вы понять возможности, не изучив хотя бы основ программирования? Возможно нет.
Кодеры не против отказываться снова, и снова, и снова, и это укрепляет характер.
«Это нормально - праздновать успех, но важнее усвоить уроки неудач». - Билл Гейтс
Мы могли бы продолжать и продолжать говорить о проблемах, с которыми сталкиваются миллениалы, но в целом это сводится к нескольким проблемам: неудачные стратегии воспитания, обучение наименьшему общему знаменателю, корпоративное невежество и культура безупречного отношения к делу.
Будь то трофеи за участие, которые на самом деле заставляют «проигравших» чувствовать себя хуже, потому что они знают, что они их не заслуживают, или учебные заведения, дающие дни скорби и безопасные места, когда их политический кандидат не победил, наши дети узнали, что они «особенные» ». Что их чувства важнее, и мир должен формироваться вокруг них. И это разрушает целое поколение новаторов и новаторов.
Чтобы было ясно, я не говорю, что это их вина - это не так. В том, что они продолжают эту ложь, виноваты родители, принципы, правительства и общество. И бизнес виноват в том, что он в какой-то мере не приспособился к их потребностям.
(Когда его спросили, что он чувствовал по поводу того, что ему постоянно не удавалось создать работающую лампочку) «Я не потерпел неудачу. Я только что нашел 10 000 способов, которые не работают ». - Томас Эдисон
Люди должны чувствовать себя свободными, чтобы потерпеть неудачу. Им нужно потерпеть неудачу и начать заново. И опять. И опять. Вот как мы растем. Это укрепляет характер и заставляет проявлять упорство, когда дела идут плохо. Это придает решительность и дает нам общую цель в команде. Поражение приходит только тогда, когда мы сдаемся. Это то, чего не хватает большинству миллениалов, - терпеливое желание опираться на свои ошибки и учиться на них.
Детям нужно знать, что неудачи - это не плохо. Это не должно быть целью, но мы растем через неудачи.
Любой разработчик на Земле скажет вам, что создавать программное обеспечение - значит терпеть неудачи. Много раз в час. Независимо от того, происходят ли эти сбои из-за ошибок или некорректного дизайна, это происходит каждый божий день. И вам просто нужно пережить это и понять, что ваша ценность не пострадает от неудачи, потому что вы знаете, как это исправить!
Так что да, Паркер научится программировать.
Я не знаю, действительно ли Паркер вырастет, чтобы создавать свои собственные видеоигры, как он склонен делать прямо сейчас. Не знаю, будет ли он вообще что-нибудь делать в сфере технологий. Я знаю, что прямо в эту секунду ему нравятся игры и работа на компьютере, и что он может извлечь важные уроки из программирования, которые применимы ко всей его жизни. Таким образом, Паркер научится программировать, пока он учится быть лучшим человеком, членом команды и решателем проблем.
Дэвид Грэм - основатель Code Ninjas, франшизы стартапов, которая учит детей программированию. Живущий в Хьюстоне, Грэм - программист, предприниматель и отец двух мальчиков.