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

valexey

  • Administrator
  • Hero Member
  • *****
  • Сообщений: 1990
    • Просмотр профиля
Re: Как воспитать отвращение к программированию.
« Ответ #15 : Август 29, 2012, 11:01:13 am »
Цитировать
Использование стандартного Паскаля в обучении - очевидная глупость в том виде в котором описывается. Я не очень понимаю почему в МГУ не могут реализовать компилятор или хотя бы интерпретатор этого самого паскаля. Задача не сложная в общем то.
А причем  тут Паскаль - хер ню творить с СИ гораздо проще.  ;)
Стандартный паскаль тут при том, что у них банально нет инструментария для обучения. Нет компиляторов, нет среды разработки.

Еще раз - там стандартный паскаль. Не Борланд паскаль, не турбопаскаль, не фрипаскаль или Object Pascal, не один из современных его диалектов. Там стандартный паскаль реализаций которого у них нет. То есть используется самый мертвый из всех диалектов паскаля.

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

Цитировать
В принципе, вместа стандартного Паскаля Си является действительно в данном случае лучшей альтернативой.
  :D  :D Вы полагаете  - мы решаем  ;D
Угу. А потом нам разгребать это.

Цитировать

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

valexey

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

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

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

DIzer

  • Гость
Re: Как воспитать отвращение к программированию.
« Ответ #17 : Август 29, 2012, 11:13:38 am »
Стандартный паскаль тут при том, что у них банально нет инструментария для обучения. Нет компиляторов, нет среды разработки.

Еще раз - там стандартный паскаль. Не Борланд паскаль, не турбопаскаль, не фрипаскаль или Object Pascal, не один из современных его диалектов. Там стандартный паскаль реализаций которого у них нет. То есть используется самый мертвый из всех диалектов паскаля.
Алексей - к этим курсам  идет практика.... так что чем-то они пользуются

Цитировать
Специальность - ВМК либо КБ (компьютерная безопасность).
Проблема не в том, что преподают язык не используемый в индустрии (меня это как раз менее всего волнует) а в том что он в голове не задерживается и понятие динамической структуры данных (скажем список) оказывается никак не связанным с понятием "ссылка" или "указатель" и "динамическая память".
это вопрос насыщения курса.. в обычном его представлении РЕАЛЬНО (к которому относится и курс Чернова) они используются при обсуждении динамических структур,  разумеется с использованием СИ  мы имеем их в самом начале (просто не сможем работать  эффективно с подпрограммами  (делать реализацию суб алгоритмов) - но это создает и кучу проблем.

Цитировать
В принципе, вместа стандартного Паскаля Си является действительно в данном случае лучшей альтернативой.
Угу. А потом нам разгребать это.
Такова ваша доля :)

Цитировать

Не правда :-) Есть талант повара/кулинара, и есть талант дегустатора.
Кроме того, после того как человек попадает к нам, он еще год-два работает под менторством кого-либо из сотрудников. Учится (точнее переучивается) программировать.
  Только нефиг сетовать на то, что козел не дает молока , или "выдает" не то что нужно если дергать не зато место  :D
« Последнее редактирование: Август 29, 2012, 11:15:23 am от DIzer »

valexey

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

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

По результатам конкурса было решено организовать кружок по программированию. Туда ходили все у кого работа была хотя бы отмечена. В том числе и я. Перед первым занятием было организационное собрание, на котором один из старших товарищей (видимо преподаватель либо работник ВНИИЭФа) попросил поднять руку тех, кто пишет на C/С++. Я поднял руку (я самостоятельно изучил С++, по сути это мой первый язык, на нем я учился, кроме того сразу под Win32 API). По моему, я был единственным (остальные либо делфи, либо борланд паскаль либо бейсик). После чего он спросил у меня - зачем мне С++ и дал тот самый совет который получил ты - бросать это дело, что до хорошего С++ не доведет :-)

К счастью я не послушался.
"но сейчас, чтобы компенсировать растущую мощность компьютеров, программисты используют фреймворки"

Влад Жаринов

  • Full Member
  • ***
  • Сообщений: 189
    • Просмотр профиля
Re: Как воспитать отвращение к программированию.
« Ответ #19 : Август 29, 2012, 11:19:43 am »
Действительно... "Все говорят, что мы, математики, - сухари..." (С) 17 мгновений весны) :) - видимо, имелось в виду, что для "технарей" в этой предметке считается желательной некоторая дистанция ото многого... дабы быть менее уязвимым...
Здесь:
...
У меня в последнюю очередь притензии к инструменту. В первую очередь у меня притензии к подходу, ибо предлагается принуждать к обучению и конкретным стилям программирования. Действительно понять почему остерегаются goto, почему нужно рисовать отступы в программах и так далее, можно лишь пострадав от этого. И во время обучения нужно сделать все чтобы каждый ученик от этого пострадал (а не от наказания за то, что они используют не те приемы). На учебном примере. Иначе выйдя в реальный мир они все эти шишки будут набивать в боевых проектах.
...
- окончательно прояснилась позиция. С такой постановкой соглашусь. Но. Помнится, у Лаптева в проекте предусматривалась реализация переключаемого набора языков кода... среди которых и Си-диез. Так может, предполагается и "переключаемый режим обучения"... просто пока реализован только оригинальный язык и излагается соответствующая концепция применения?..

valexey

  • Administrator
  • Hero Member
  • *****
  • Сообщений: 1990
    • Просмотр профиля
Re: Как воспитать отвращение к программированию.
« Ответ #20 : Август 29, 2012, 11:25:57 am »
Стандартный паскаль тут при том, что у них банально нет инструментария для обучения. Нет компиляторов, нет среды разработки.

Еще раз - там стандартный паскаль. Не Борланд паскаль, не турбопаскаль, не фрипаскаль или Object Pascal, не один из современных его диалектов. Там стандартный паскаль реализаций которого у них нет. То есть используется самый мертвый из всех диалектов паскаля.
Алексей - к этим курсам  идет практика.... так что чем-то они пользуются
Угу. Пользуются. Пользуются freepascal'eм как компилятром. При этом любой отход от стандартного паскаля там сурово наказывается. Ну, то есть ты понимаешь - написал ты программу (сделал задание), компилятор тебе говорит что все ОК, программа алгоритмически верна, задачу делает. Но у тебя её не принимают потому что ты случайно применил средство которое есть в любом из современных диалектов паскаля, но его нет в стандартном паскале.

Цитировать
Специальность - ВМК либо КБ (компьютерная безопасность).
Проблема не в том, что преподают язык не используемый в индустрии (меня это как раз менее всего волнует) а в том что он в голове не задерживается и понятие динамической структуры данных (скажем список) оказывается никак не связанным с понятием "ссылка" или "указатель" и "динамическая память".
это вопрос насыщения курса.. в обычном его представлении РЕАЛЬНО (к которому относится и курс Чернова) они используются при обсуждении динамических структур,  разумеется с использованием СИ  мы имеем их в самом начале (просто не сможем работать  эффективно с подпрограммами  (делать реализацию суб алгоритмов) - но это создает и кучу проблем.
Ну, я смотрю по выхлопу - на выхлопе после паскаля студенты не видят связи между динамическими структурами данных и указателями/динамической памятью. Это в любом случае плохо. И в любом случае это нужно исправлять. Возможно не сменой языка.

Цитировать

Не правда :-) Есть талант повара/кулинара, и есть талант дегустатора.
Кроме того, после того как человек попадает к нам, он еще год-два работает под менторством кого-либо из сотрудников. Учится (точнее переучивается) программировать.
  Только нефиг сетовать на то, что козел не дает молока , или "выдает" не то что нужно если дергать не зато место  :D
Ну я и не требую чтобы народ в универе разучивал индустриальные инструменты. Мне нужны люди хорошо знающие базу. А реально оттуда приходят люди базовых вещей не знающие, зато написавшие "диплом" по леплению сайта на asp.net'e (при этом естественно что такое http. tcp и так далее не знают).
"но сейчас, чтобы компенсировать растущую мощность компьютеров, программисты используют фреймворки"

Влад Жаринов

  • Full Member
  • ***
  • Сообщений: 189
    • Просмотр профиля
Re: Как воспитать отвращение к программированию.
« Ответ #21 : Август 29, 2012, 11:30:53 am »
Да... вот это, конечно, не дело... :(

Geniepro

  • Hero Member
  • *****
  • Сообщений: 1955
  • Знайте- истина в том, что повторено трижды подряд!
    • Просмотр профиля
Re: Как воспитать отвращение к программированию.
« Ответ #22 : Август 29, 2012, 12:00:44 pm »
Стандартный паскаль тут при том, что у них банально нет инструментария для обучения. Нет компиляторов, нет среды разработки.

Еще раз - там стандартный паскаль. Не Борланд паскаль, не турбопаскаль, не фрипаскаль или Object Pascal, не один из современных его диалектов. Там стандартный паскаль реализаций которого у них нет. То есть используется самый мертвый из всех диалектов паскаля.

Это ISO 7185 STANDARD PASCAL что ли? Так у него же есть трансляторы: http://www.standardpascal.com/compiler.html
В том числе на основе GCC: http://www.gnu-pascal.de/gpc/h-index.html
to iterate is human, to recurse, divine

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

valexey

  • Administrator
  • Hero Member
  • *****
  • Сообщений: 1990
    • Просмотр профиля
Re: Как воспитать отвращение к программированию.
« Ответ #23 : Август 29, 2012, 12:48:34 pm »
Стандартный паскаль тут при том, что у них банально нет инструментария для обучения. Нет компиляторов, нет среды разработки.

Еще раз - там стандартный паскаль. Не Борланд паскаль, не турбопаскаль, не фрипаскаль или Object Pascal, не один из современных его диалектов. Там стандартный паскаль реализаций которого у них нет. То есть используется самый мертвый из всех диалектов паскаля.

Это ISO 7185 STANDARD PASCAL что ли? Так у него же есть трансляторы: http://www.standardpascal.com/compiler.html
В том числе на основе GCC: http://www.gnu-pascal.de/gpc/h-index.html
Да, это оно. Вопрос - ты пробовал реально завести что-либо из перечисленного на винде?
"но сейчас, чтобы компенсировать растущую мощность компьютеров, программисты используют фреймворки"

Geniepro

  • Hero Member
  • *****
  • Сообщений: 1955
  • Знайте- истина в том, что повторено трижды подряд!
    • Просмотр профиля
Re: Как воспитать отвращение к программированию.
« Ответ #24 : Август 29, 2012, 02:11:17 pm »
Да, это оно. Вопрос - ты пробовал реально завести что-либо из перечисленного на винде?

Ну, мне это как бы не было нужно...

Скачал щас http://www.standardpascal.com/p5.html -- выглядит рабочим, но пока не запускал, дома попробую )))

Платный http://www.moorecad.com/ippas/ ($100 за пользователя) смотреть не стал.

gnu-pascal пока не смотрел, но в ВУЗе-то не должны быть проблемы с его сборкой  (к тому же там бинарники вроде есть), иначе что это за ВУЗ такой? Да, кстати, а что за ВУЗ-то?
to iterate is human, to recurse, divine

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

valexey

  • Administrator
  • Hero Member
  • *****
  • Сообщений: 1990
    • Просмотр профиля
Re: Как воспитать отвращение к программированию.
« Ответ #25 : Август 29, 2012, 02:37:23 pm »
gnu-pascal пока не смотрел, но в ВУЗе-то не должны быть проблемы с его сборкой  (к тому же там бинарники вроде есть), иначе что это за ВУЗ такой? Да, кстати, а что за ВУЗ-то?

МГУ :-)
Поэтому мне удивительно что у них собственной кошерной реализации нет.
"но сейчас, чтобы компенсировать растущую мощность компьютеров, программисты используют фреймворки"

DIzer

  • Гость
Re: Как воспитать отвращение к программированию.
« Ответ #26 : Август 29, 2012, 05:29:28 pm »
Ну, то есть ты понимаешь - написал ты программу (сделал задание), компилятор тебе говорит что все ОК, программа алгоритмически верна, задачу делает. Но у тебя её не принимают потому что ты случайно применил средство которое есть в любом из современных диалектов паскаля, но его нет в стандартном паскале.
Не верю я в это, а вот в то что Чернов и Лапшин не совсем адекватны - очень даже - и это на основе их же сообщений....

Цитировать
Ну, я смотрю по выхлопу - на выхлопе после паскаля студенты не видят связи между динамическими структурами данных и указателями/динамической памятью. Это в любом случае плохо. И в любом случае это нужно исправлять. Возможно не сменой языка.
так смотрите.. а недостатки... они есть  да , они есть...и мы с ними боремся... я  говорю о том , что бы вы осознали что КОЗЕЛ молока вам не даст, за какое вы бы место его не дергали

Цитировать

Ну я и не требую чтобы народ в универе разучивал индустриальные инструменты. Мне нужны люди хорошо знающие базу. А реально оттуда приходят люди базовых вещей не знающие, зато написавшие "диплом" по леплению сайта на asp.net'e (при этом естественно что такое http. tcp и так далее не знают).
так  берите  выпускников Орловского училища....не.... мозги компостировать.

Geniepro

  • Hero Member
  • *****
  • Сообщений: 1955
  • Знайте- истина в том, что повторено трижды подряд!
    • Просмотр профиля
Re: Как воспитать отвращение к программированию.
« Ответ #27 : Август 29, 2012, 06:22:26 pm »
Да, это оно. Вопрос - ты пробовал реально завести что-либо из перечисленного на винде?

Попробовал GPC -- простенькая IDE, редактора форм нет, так что до дельфей как до луны.
Примеры не скомпилировались, виндовозный хелловорлд тоже -- всё время не находит своих же модулей, которые вроде бы вполне там присутствуют. Вообще похоже на досовский турбо паскаль.
Консольные программы вроде компилируются, если не используют этих самых стандартных его модулей.
Но наверное это как-то можно настроить, было бы желание...

P5 -- какая-то непонятная хрень, зачем-то ему нужен grep, и ваще чо с ним делать непонятно )))
to iterate is human, to recurse, divine

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

DIzer

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


Попробовал GPC -- простенькая IDE, редактора форм нет, так что до дельфей как до луны.
Делфи не очень практично.. PABCик ниче... если бы только работал стабильно,и у его создателей не было бы комплексов...

Илья Ермаков

  • Sr. Member
  • ****
  • Сообщений: 493
    • Просмотр профиля
Re: Как воспитать отвращение к программированию.
« Ответ #29 : Август 29, 2012, 07:29:25 pm »
Действительно понять почему остерегаются goto, почему нужно рисовать отступы в программах и так далее, можно лишь пострадав от этого. И во время обучения нужно сделать все чтобы каждый ученик от этого пострадал (а не от наказания за то, что они используют не те приемы). На учебном примере. Иначе выйдя в реальный мир они все эти шишки будут набивать в боевых проектах.

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