Сегодня писал ответ Нине Шумилиной из Твери, на вопрос о Python, как первом языке программирования в школе.
Она цитировала Константина Полякова, заключение его
статьи в сентябрьском номере "Информатики":
По этим причинам автор склонен поддержать мнение И.А. Сукина: Python хорош для профессиональных программистов, но его использование в качестве
(
Read more... )
Comments 88
Reply
pygame
Reply
Роман Сузи -- само собой, но это всё же никак не единственный учебник для тех, кому надо от самых-самых основ.
Если и впрямь что-то есть -- думаю, указать и проанализировать было бы очень полезно и для статьи, и для обращения людей (учителей) в свою веру.
Reply
Правда, там тексты не годятся для учебника, то есть они не самодостаточны, а скорее являются конспектом к занятиям. Зато там есть мои видеолекции. И задачи для решения с тестирующей системой.
Reply
Мне, однако, кажется, что лучше учить после питона что-нибудь более близкое к железу, лучше - C. Так чтобы школьник и умел что-то делать, и понимал, как это работает. Чтобы ученик массивы повыделял на стеке, и поудалял двухмерные массивы из кучи, попередавал значения в swap, упоролся о сигнатуры, поучился передавать пары значений и error-коды как результат функции.
Без этого когда он встретит серьезные проблемы, он даже не поймет в чем дело. Хуже, никто не сможет ему объяснить, поскольку они говорить на одном языке не могут. Кучи какие-то, сборка мусора, error-коды, интерфейсы.
Reply
В школе это можно изучать, но только в профильной программе, и то если профиль соответствующий, а школа - сильная, или в виде спецкурса. Но, думаю, число школ, где можно такие курсы вести - единично.
Reply
Не уверен, имеет ли смысл учить этому именно школьников, но я абсолютно уверен, что сейчас по факту этому не учат нигде, даже в лучших ВУЗах, а тема более чем актуальна для людей, стремящихся стать профессионалами, или же просто программировать реальные приложения.
Постоянно сталкиваюсь с тем, что приходят на работу даже "опытные программисты" и не знают ни шаблонов проектирования, ни принципов дизайна классов, наступают вновь из раза в раз на одни и те же грабли. И от языка это знание не зависит вообще почти никак...
Reply
Что до того, как учить "писать программы". Мне кажется, что я умею учить писать программы - на простом, школьном уровне. Сейчас я зачастую стараюсь добиваться от школьников, чтобы к их коду нельзя было придраться - то есть я сам придираюсь к коду до тех пор, пока не получится хороший код. Конечно, это не проектирование классов, это маленькие учебные программы, но я слышал отзывы от преподавателей летней компьютерной школы, что школьники 179 школы отличаются тем, что они умеют писать ХОРОШО.
У меня в планах издать свой курс с методическим пособием. В методическом пособии объяснить, чего я хочу в этой задаче и каким должно быть её решение. Вот такая попытка объяснить, как учить детей программированию.
Эх, планы, планы...
Reply
Reply
Reply
Reply
Остальные ваши примеры неудачны.
Если написать max(a) - то это как раз предмет критики, будут говорить "так нельзя учить". Поэтому этот момент мы обсудим дальше.
Срезы - непонятное понятие, нужно объяснять, что это такое.
Словари - это, конечно, круто, но это бой совсем в разных весовых категориях. То, что в Python есть словари, а в Pascal - нет, это и так понятно, но это совсем о другом.
Reply
Reply
Reply
Leave a comment