Мы стремимся изменить то, как дети узнают о технологиях. Для нас изучение технологий равнозначно обучению кодированию, а мы любим программировать! Для всех жителей Южного Джерси, у которых была возможность посетить одно из наших сезонных занятий или принять участие в онлайн-курсе predigame.io, мы уделяем большое внимание обучению основам программирования. Когда мы говорим о программировании и, что более важно, когда говорим, что должны — ну, честно говоря, мы должны — учить детей программировать, что именно мы имеем в виду?

Кодирование — это общение. Так люди «разговаривают» с компьютерами. Почти так же, как мы разговариваем друг с другом, мы пишем код (также называемый программированием), используя язык, понятный компьютеру. За прошедшие годы были изобретены десятки языков программирования — каждый для своей цели и аудитории — и многие новые языки были получены из других языков. В отличие от разговорных языков, языки программирования часто немного модны. То, что было популярно сегодня, не обязательно будет популярным завтра. Хотя компьютер можно запрограммировать на любое количество языков, предпочтение одного языка перед другим часто сводится к эффективности (выполняется быстрее) и простоте (программирует быстрее) — да, программисты, как дети, тоже могут быть немного нетерпелив.

Мы часто спрашиваем наших студентов, считают ли они Predicate Academy школой. Большинство отвечают нет. Почему нет? Частые ответы: «это программирование», «мы делаем игры», «это весело», «домашней работы нет». Были бы те же самые чувства, если бы мы преподавали английский язык вместо Python? Ирония здесь в том, что обучение языку программирования по сути такое же, как обучение разговорному языку. Конечно, мы делаем хорошую работу по маскировке обучения за играми и другими забавными занятиями, но по сути, нет большой разницы между обучением языкам программирования и обучением разговорному языку. Языки программирования состоят из синтаксических и семантических правил, которые должны быть четко сформулированы, чтобы компьютерная программа работала так, как задумал кодер. Компьютер может обнаруживать синтаксические ошибки, и они обычно принимают форму опечатки, отсутствия двоеточия или добавления пробела. Что касается семантических ошибок, то их гораздо сложнее расколоть, и они требуют помощи человека. Давайте взглянем на небольшой фрагмент кода Python:

x = 5
i_am_a_millionaire = False
если x == 10:
i_am_a_millionaire = True

Код синтаксически правильный — я соблюдал все правила языка. Однако независимо от того, сколько раз мой компьютер запускал этот код, i_am_a_millionaire никогда не будет True. Компьютеры могут сказать мне, «что произошло» — какие строки кода запустились, а какие — нет, — но они не могут сказать мне, почему. Это большая работа по кодированию жизни. Мы не только выражаем наши идеи с помощью языка программирования, но и тестируем нашу работу, чтобы убедиться, что она работает именно так, как мы думали. Многие профессиональные программисты тратят более половины своего рабочего дня на отслеживание семантического значения кода — мы называем это «отладкой».

Так что, хотя ваши обеденные разговоры могут быть наполнены историями о свинксах, зомби и щелкающих ниндзя, за всем этим стоит несколько строк кода, которые синтаксически и семантически правильны и созданы кем-то, кто учится выражать свои идеи на новом языке. .