Автор Тема: Как воспитать отвращение к программированию.  (Прочитано 30137 раз)

valexey

  • Administrator
  • Hero Member
  • *****
  • Сообщений: 1990
    • Просмотр профиля
Вот тут появился готовый рецептик который широко применяется при обучении в ВУЗах страны:
Цитата: Валерий Лаптев
Будучи программистом, восторгался множеством возможностей языков и сред. Ставши преподавателем, понял, что язык должен обеспечивать "правильные" способы программирования. А среда должна "бить по рукам" при малейшем отступлении от правил. Никакие увещевания и разговоры, как делать правильно, не помогают. "Что с человеком ни делай - он упорно ползет на кладбище"(с) Жванецкий.
Поэтому управление обучение должно быть институциональным, то есть принудительным. И только по мере обучения "вожжи" можно отпускать.

Но если товарищ-студент окажется стойким и программировать все равно будет, то подобный рецепт как минимум гарантирует отвращение к синтаксису языка которым подобным образом пытали (и инструментарию вообще). Кстати, похоже именно поэтому среди программистов столь сильно нелюбим нынче паскаль и любой синтаксис отдаленно его напоминающий.
"но сейчас, чтобы компенсировать растущую мощность компьютеров, программисты используют фреймворки"

Geniepro

  • Hero Member
  • *****
  • Сообщений: 1949
  • Знайте- истина в том, что повторено трижды подряд!
    • Просмотр профиля
Re: Как воспитать отвращение к программированию.
« Ответ #1 : Август 28, 2012, 04:57:05 pm »
Но если товарищ-студент окажется стойким и программировать все равно будет, то подобный рецепт как минимум гарантирует отвращение к синтаксису языка которым подобным образом пытали (и инструментарию вообще).
С чего вдруг отвращение и с чего вдруг пытали? о_О Не надо драматизировать-то...
Это не пытки, а тренировки, ну или дрессировка в особо запущенных случаях...

Кстати, похоже именно поэтому среди программистов столь сильно нелюбим нынче паскаль и любой синтаксис отдаленно его напоминающий.
Если бы мелкософт не переписал бы венду на юнипсовый Си -- щас бы все программеры обожали Паскаль и ненавидели Си...
to iterate is human, to recurse, divine

Салат «рекурсия»: помидоры, огурцы, салат…

valexey

  • Administrator
  • Hero Member
  • *****
  • Сообщений: 1990
    • Просмотр профиля
Re: Как воспитать отвращение к программированию.
« Ответ #2 : Август 28, 2012, 06:12:10 pm »
Но если товарищ-студент окажется стойким и программировать все равно будет, то подобный рецепт как минимум гарантирует отвращение к синтаксису языка которым подобным образом пытали (и инструментарию вообще).
С чего вдруг отвращение и с чего вдруг пытали? о_О Не надо драматизировать-то...
Это не пытки, а тренировки, ну или дрессировка в особо запущенных случаях...
Написано же - принуждение. Тебе нравится когда тебя принуждают? :-)

Кроме того, тут явно идет подмена цели - явно хотят чтобы человек писал программу правильно (в соответствии с неким шаблоном) а не научился программировать. Это все равно что если бы первоклашек учили писать не в тетрадках ручкой, а через трафарет.

Кстати, похоже именно поэтому среди программистов столь сильно нелюбим нынче паскаль и любой синтаксис отдаленно его напоминающий.
Если бы мелкософт не переписал бы венду на юнипсовый Си -- щас бы все программеры обожали Паскаль и ненавидели Си...
Оу, Win32 API любви не вызывает совершенно :-) И явно не добавляет любви к Си. Так что не в этом дело.

Кстати, MacOS изначально писана была (некоторые части) на паскале, все примеры API были на паскале (да и прикладуха тоже). Потом, почему-то, от паскаля там отказались (и прикладники в первую очередь).
"но сейчас, чтобы компенсировать растущую мощность компьютеров, программисты используют фреймворки"

DIzer

  • Гость
Re: Как воспитать отвращение к программированию.
« Ответ #3 : Август 28, 2012, 08:14:46 pm »

Но если товарищ-студент окажется стойким и программировать все равно будет, то подобный рецепт как минимум гарантирует отвращение к синтаксису языка которым подобным образом пытали (и инструментарию вообще). Кстати, похоже именно поэтому среди программистов столь сильно нелюбим нынче паскаль и любой синтаксис отдаленно его напоминающий.
Трудно сказать про что конкретно говорит В. Лаптев...  дело в том, что в вузах (в отличие от колледжей)  обучение бьется на несколько курсов (каждый имеет свои цели ) - и количество и расчасовка сильно зависит от специальности (и специализации) - требования лезут из этого, скажем у нас  в начале делается упор на алгоритмизацию ( язык выбирается максимально  простой, и идешка тоже максимально простая и удобная) и нет смысла "усердствовать" в изучении этого начального языка (один черт он во втором семестре сменится на СИ) - в его случае ситуация может быть другой.. ну есть еще нюансы,конечно.

DIzer

  • Гость
Re: Как воспитать отвращение к программированию.
« Ответ #4 : Август 28, 2012, 08:23:53 pm »
и потом, Алексей - сказать это еще не значит сделать , он ведь не один "пасет" студентов  - есть еще кафедра.. с ее интересами и т.д. вообщем , нюансов много..

DIzer

  • Гость
Re: Как воспитать отвращение к программированию.
« Ответ #5 : Август 28, 2012, 09:08:05 pm »
Помните Чернова, ну которого Сергей "фошистом" обозвал (с его экстремальными взглядами) - так лишили же его курса , свои же.. так и в случае В. Лаптева - если будет ссать против ветра
никакие ваковские справки не помогут...

valexey

  • Administrator
  • Hero Member
  • *****
  • Сообщений: 1990
    • Просмотр профиля
Re: Как воспитать отвращение к программированию.
« Ответ #6 : Август 28, 2012, 09:17:59 pm »
и потом, Алексей - сказать это еще не значит сделать , он ведь не один "пасет" студентов  - есть еще кафедра.. с ее интересами и т.д. вообщем , нюансов много..
Ну я и не спорю что шансы есть. Просто мне периодически приходится иметь дело с последствиями подобных подходов к обучению...

В общем такой подход, который не учитывает эмоциональную составляющую обучения (которая, пожалуй важнее остальных) серьезно увеличивает процент брака в производимом ВУЗом продукте.
"но сейчас, чтобы компенсировать растущую мощность компьютеров, программисты используют фреймворки"

valexey

  • Administrator
  • Hero Member
  • *****
  • Сообщений: 1990
    • Просмотр профиля
Re: Как воспитать отвращение к программированию.
« Ответ #7 : Август 28, 2012, 09:23:58 pm »
Помните Чернова, ну которого Сергей "фошистом" обозвал (с его экстремальными взглядами) - так лишили же его курса , свои же.. так и в случае В. Лаптева - если будет ссать против ветра
никакие ваковские справки не помогут...
Очень смутно. Припоминаю что там было что-то вроде Pascal vs C. Но кто за что ратовал и где там экстремизм - не помню.
"но сейчас, чтобы компенсировать растущую мощность компьютеров, программисты используют фреймворки"

DIzer

  • Гость
Re: Как воспитать отвращение к программированию.
« Ответ #8 : Август 28, 2012, 11:32:26 pm »
Помните Чернова, ну которого Сергей "фошистом" обозвал (с его экстремальными взглядами) - так лишили же его курса , свои же.. так и в случае В. Лаптева - если будет ссать против ветра
никакие ваковские справки не помогут...
Очень смутно. Припоминаю что там было что-то вроде Pascal vs C. Но кто за что ратовал и где там экстремизм - не помню.
http://avchernov.livejournal.com/312.html
да, тут обозначился второй фюрер - Макс Лапшин - недавно на горизонте, почему то считающий что студент изучающий Паскаль не может научиться  работать с указателями  ;)
http://avchernov.livejournal.com/1126.html
« Последнее редактирование: Август 28, 2012, 11:37:33 pm от DIzer »

valexey

  • Administrator
  • Hero Member
  • *****
  • Сообщений: 1990
    • Просмотр профиля
Re: Как воспитать отвращение к программированию.
« Ответ #9 : Август 29, 2012, 12:14:21 am »
Помните Чернова, ну которого Сергей "фошистом" обозвал (с его экстремальными взглядами) - так лишили же его курса , свои же.. так и в случае В. Лаптева - если будет ссать против ветра
никакие ваковские справки не помогут...
Очень смутно. Припоминаю что там было что-то вроде Pascal vs C. Но кто за что ратовал и где там экстремизм - не помню.
http://avchernov.livejournal.com/312.html
да, тут обозначился второй фюрер - Макс Лапшин - недавно на горизонте, почему то считающий что студент изучающий Паскаль не может научиться  работать с указателями  ;)
http://avchernov.livejournal.com/1126.html
Эмм.. А где там криминал? Ну, то есть бить батогами за соблюдение coding style смысла при обучении в общем то нет. Нужно просто устроить так, чтобы студенты сами пострадали от не соблюдения coding style'а (например устроить им крупповые занятия/обмен кодом). Пострадали не от преподавалетеля, замечу, а друг от друга. Разногласия, непонятки с кодом товарища ("что за хрень ты тут написал?!") - вот что нужно.

Использование стандартного Паскаля в обучении - очевидная глупость в том виде в котором описывается. Я не очень понимаю почему в МГУ не могут реализовать компилятор или хотя бы интерпретатор этого самого паскаля. Задача не сложная в общем то.

Из опыта общения с текущими студентами и только что закончившими ВУЗ - они все во-первых так и не поняли нафига был паскаль на первом курсе, а во-вторых его банально не знают (знаний языка - нуль ( я проверял) ). То есть реально первый год обучения программирования оставляет примерно нуль знаний и умений в голове (заодно формирует мнение о обучении в ВУЗе как о чем-то устаревшем и не имеющем соприкосновений с действительностью).

В принципе, вместа стандартного Паскаля Си является действительно в данном случае лучшей альтернативой.

По указателям - на паскале действительно сложнее прочувствовать движок работающий под капотом. Особенно указатели (подавляющее большенство студентов после этого паскального курса уверяют что в паскале указателей нет вообще, то есть оно прошло где-то совсем по краю сознания).

В плане скажем численных методов, а не операционных систем и структур данных, Си безусловно плохой выбор - тут нужен фортран. Но можно и паскаль и С++ (впрочем, я не уверен что большенство студентов к тому времени смогут освоить техники С++ в достаточной мере для того, чтобы он стал им для ЧМ столь же удобен как фортран). Замечу, что тут Оберон кое в чем будет уступать даже паскалю.

Да, а Макса Лапшина я знаю лично, специалист-программист он весьма хороший. Не без максимализма во взглядах конечно, но это думаю пройдет.

Стандартный паскаль, IMHO, органично вписался бы в курс построения компиляторов. Заодно и реализацию паскаля бы наконец сделали. :-)

PS. Замечу, что я знания и умения студентов оцениваю не на экзамене, и потому более объективен. Ко мне они не готовятся (просто потому что не знают к чему готовиться).
« Последнее редактирование: Август 29, 2012, 12:21:14 am от valexey »
"но сейчас, чтобы компенсировать растущую мощность компьютеров, программисты используют фреймворки"

Влад Жаринов

  • Full Member
  • ***
  • Сообщений: 189
    • Просмотр профиля
Re: Как воспитать отвращение к программированию.
« Ответ #10 : Август 29, 2012, 07:13:52 am »
...
Эмм.. А где там криминал? Ну, то есть бить батогами за соблюдение coding style смысла при обучении в общем то нет. Нужно просто устроить так, чтобы студенты сами пострадали от не соблюдения coding style'а (например устроить им крупповые занятия/обмен кодом). Пострадали не от преподавалетеля, замечу, а друг от друга. Разногласия, непонятки с кодом товарища ("что за хрень ты тут написал?!") - вот что нужно.
...
PS. Замечу, что я знания и умения студентов оцениваю не на экзамене, и потому более объективен. Ко мне они не готовятся (просто потому что не знают к чему готовиться).
Т.е. Вы за "обучение в парах" (Илья говорил на коре о том же)?..
И всё-таки какую-то системность в коде на уровне работы человека соблюдать надо?..

DIzer

  • Гость
Re: Как воспитать отвращение к программированию.
« Ответ #11 : Август 29, 2012, 07:34:28 am »
Эмм.. А где там криминал? Ну, то есть бить батогами за соблюдение coding style смысла при обучении в общем то нет. Нужно просто устроить так, чтобы студенты сами пострадали от не соблюдения coding style'а (например устроить им крупповые занятия/обмен кодом). Пострадали не от преподавалетеля, замечу, а друг от друга. Разногласия, непонятки с кодом товарища ("что за хрень ты тут написал?!") - вот что нужно.
Не криминал, скорее глупые фантазии.
Цитировать
Использование стандартного Паскаля в обучении - очевидная глупость в том виде в котором описывается. Я не очень понимаю почему в МГУ не могут реализовать компилятор или хотя бы интерпретатор этого самого паскаля. Задача не сложная в общем то.
А причем  тут Паскаль - хер ню творить с СИ гораздо проще.  ;)
Цитировать
Из опыта общения с текущими студентами и только что закончившими ВУЗ - они все во-первых так и не поняли нафига был паскаль на первом курсе, а во-вторых его банально не знают (знаний языка - нуль ( я проверял) ). То есть реально первый год обучения программирования оставляет примерно нуль знаний и умений в голове (заодно формирует мнение о обучении в ВУЗе как о чем-то устаревшем и не имеющем соприкосновений с действительностью).
зависит от вуза, и специальности - но вообще то в классических вузах от начинающих не требуется умение решать "практические" задачи, для этого у них нет знаний и  проблемы у студентов другие...
Цитировать
В принципе, вместа стандартного Паскаля Си является действительно в данном случае лучшей альтернативой.
  :D  :D Вы полагаете  - мы решаем  ;D
Цитировать
По указателям - на паскале действительно сложнее прочувствовать движок работающий под капотом. Особенно указатели (подавляющее большенство студентов после этого паскального курса уверяют что в паскале указателей нет вообще, то есть оно прошло где-то совсем по краю сознания).
Это вопрос направленности курса - или вы считаете, что концепция указателей в СИ чем то отличается от Паскаклевской  ;)
Цитировать
В плане скажем численных методов, а не операционных систем и структур данных, Си безусловно плохой выбор - тут нужен фортран. Но можно и паскаль и С++ (впрочем, я не уверен что большенство студентов к тому времени смогут освоить техники С++ в достаточной мере для того, чтобы он стал им для ЧМ столь же удобен как фортран). Замечу, что тут Оберон кое в чем будет уступать даже паскалю.
Устал уже повторять это вопрос специальности , курса, расчасовки...
Цитировать
Да, а Макса Лапшина я знаю лично, специалист-программист он весьма хороший. Не без максимализма во взглядах конечно, но это думаю пройдет.
скорее мм. забавный
Цитировать
Стандартный паскаль, IMHO, органично вписался бы в курс построения компиляторов. Заодно и реализацию паскаля бы наконец сделали. :-)
Оберон проще (и книгуля есть)  :D
Цитировать

PS. Замечу, что я знания и умения студентов оцениваю не на экзамене, и потому более объективен. Ко мне они не готовятся (просто потому что не знают к чему готовиться).
:D  оценивать качество "продукта" хорошее умение, но талант истинный талант "кулинара" в умении готовить блюда , не правда ли?  :D

Илья Ермаков

  • Sr. Member
  • ****
  • Сообщений: 493
    • Просмотр профиля
Re: Как воспитать отвращение к программированию.
« Ответ #12 : Август 29, 2012, 08:40:00 am »
В общем такой подход, который не учитывает эмоциональную составляющую обучения (которая, пожалуй важнее остальных) серьезно увеличивает процент брака в производимом ВУЗом продукте.

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

Есть профили, на которых вообще привитие педантичности и "сухости" в плане работы вообще является необходимым (например, в нашей орловской академии ФСО/ФСБ, где готовят электронщиков и программистов "с погонами" - безопасников, связистов, криптографистов и проч.) - ну и что, как это влияет на "процент брака"?

Илья Ермаков

  • Sr. Member
  • ****
  • Сообщений: 493
    • Просмотр профиля
Re: Как воспитать отвращение к программированию.
« Ответ #13 : Август 29, 2012, 08:52:00 am »
Макса Лапшина помню вот по какому эпизоду:
когда я был в 11 классе (2003 г.), то участвовал в школе-семинаре "Intel-Авангард" на базе Московского химического лицея. Отличное, кстати, мероприятие, как и сам лицей. Лапшин тоже был там в организаторах, по информатике.
Он и ещё кое-кто из организаторов очень косо смотрели на то, что я "Дельфист" и убеждали: "бросайте, молодой человек, на Паскалях писать - это до хорошего не доведёт". Хотя с "Дельфой" я взял первое место и с проектом по информатике (система распознавания текста - OCR), и на "внутриконференцской" олимпиаде по программированию.

DIzer

  • Гость
Re: Как воспитать отвращение к программированию.
« Ответ #14 : Август 29, 2012, 10:49:44 am »
Ты упускаешь тот момент, что эмоциональная составляющая обучения может быть компенсирована совершенно на другом уровне, нежели изучаемые языки/методы/инструменты. Личностью преподавателя, атмосферой занятий, связью с реальной практикой, атмосферой на кафедре/факультете и т.п.
Илья... что за... преподаватели меняются, у большинства студентов на 1-2 курсах РЕАЛЬНО другие  проблемы... с кафедрой они начинают плотно иметь дело с конца второго курса... с закрепленным преподавателем с 3 курса практика реальная.. может быть только у магистрантов.. у бакалавров(4 курс)  - только квалификационная работа... конечно ее стараешься  привязать к реальности...но выходит по -разному. С Черновым все гораздо проще.. он говорил про 1 курс и дал ПРОГРАММУ (свое его видение)  - после которой у его коллег могли возникнуть серьезные вопросы к нему(в особенности учетом дешевого "плебисцита" который он развел среди студентов)... хотя возможно , у него всего лишь  сезонное обострение  сиспермотоксикоза...