Мой 7-летний учился, как программировать? (его идея не моя, и он делает вещи во внешнем мире.Таким образом, я не слишком волнуюсь с этой точки зрения. Он уже зашел так далеко, чтобы выпустить книгу программирования игр из моего кабинета, чтобы читать в постели. ) На днях мы сели и написали очень простое угадывание номера (вы выбираете 8, и это правильно, что-то еще не так).
Все прошло хорошо, но было несколько вопросов, которые он основывал на синтаксисе языка. (Я случайно выбрал Java, поскольку в то время был открыт IDE.) Я преподаю послесредние вступительные курсы программирования, так что это было немного для меня открытием (большинство учеников из средней школы не хотят задавать вопросы), поскольку Мне действительно нужно было выяснить, как объяснить синтаксис 7-летнему человеку?
Очевидно, что любой язык C-типа будет иметь те же проблемы, что и большинство "языков". Я посмотрел на писк, но решил не использовать его еще. Я посмотрел на среду Алисы, но мне это тоже не понравилось.
С физической точки зрения он удобен клавиатурой/мышью и может с легкостью скомпоновать комплекты Lego (поэтому для него работают следующие направления с забавным результатом). У меня есть доступ к Lego NXT, но он все еще немного молод для этого (требуется слишком много времени, чтобы увидеть результаты работы, даже с предоставленной графической средой).
В идеале я бы хотел, чтобы опыт помог ему создать уверенность в математике и логике (если у 7-летнего есть логика: -).
Я помню, как черепаха была графикой/логотипом в детстве. Я склоняюсь к этому, но задаюсь вопросом, есть ли другие идеи или кто-нибудь может рекомендовать хорошую среду логотипа?
Изменить 1:
Логотип работает хорошо. Мне нужно научить его концепции углов (90 градусов, 180 градусов). К сожалению, на самом деле они не занимаются делением в школе, но поэтому углы могут быть забавными...
Сначала вычеркните квадрат:
FORWARD 50
RIGHT 90
FORWARD 50
RIGHT 90
FORWARD 50
RIGHT 90
FORWARD 50
RIGHT 90
В какой-то момент я перейду в циклы:
REPEAT 4
[
FORWARD 50
RIGHT 90
]
А затем переменные:
make "length 50
REPEAT 4
[
FORWARD :length
RIGHT 90
]
Это очень хорошо работает. Практически никакой синтаксис, простой для 7-летнего, чтобы запомнить словарь и немедленную обратную связь.
Изменить 2:
Ну, это был успех, потому что он смог написать простую программу (пока еще не петли), пока я был вне комнаты. Это на самом деле работает очень хорошо - мы вышли и получили графическую бумагу и транспортир, мы угадали 90 градусов, и он сделал кучу квадратов, превратил квадрат в прямоугольник и увидел, где он поступил не так, как отладить его. Я бы рекомендовал этот подход для всех, у кого есть 7-летний возраст, который заинтересован в программировании. Я думаю, что я порекомендую его и моим ученикам после окончания средней школы (!)