OberonCore
https://forum.oberoncore.ru/

Эссе "Язык Си и начальное обучение программированию"
https://forum.oberoncore.ru/viewtopic.php?f=8&t=2308
Страница 1 из 2

Автор:  tvl [ Среда, 03 Февраль, 2010 23:11 ]
Заголовок сообщения:  Эссе "Язык Си и начальное обучение программированию"

«Недавно коллеги задали мне вопрос, как я отношусь к идее замены языка Паскаль на первом курсе языком Си. Когда я категорично ответил „ни в коем случае“, меня спросили „а почему?“ Предлагаемый текст — мой ответ на этот вопрос». — А. В. Столяров, к.ф.-м.н., преподаватель кафедры алгоритмических языков факультета ВМК МГУ.

Приведенная ссылка ведет на сайт автора, где выложен 16-страничный PDF-файл с эссе.
http://www.stolyarov.info/pvt/anti_c

Автор:  Info21 [ Четверг, 04 Февраль, 2010 10:13 ]
Заголовок сообщения:  Re: Эссе "Язык Си и начальное обучение программированию"

Спасибо.
То же самое, в сущности, когда-то излагал наш Сергей Юрьевич, только кратко.
Но кашу маслом не испортишь.

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

По-моему, есть еще гуманитарный пунктик: малая способность построить "theory of mind" -- т.е. смоделировать состояние ума, т.е. восприятие ситуации другим человеком -- начинающим.
Способности комбинаторного умотипа часто не коррелируют с общегуманитарными способностями, приводя к типичному технофашизму. Вообще у "разных физтехов" и у программеров в частности.

А еще, конечно, проявление той самой упорно воспроизводящейся мифологии в определенном слое юношей.
(Понятно, что есть мифология.
Но важно еще взглянуть на нее как на некую достаточно реальную, хотя и небелковую медузу, которая живет в умственном пространстве некоторой виртуальной стаи, при этом создавая эту стаю под себя, заражая подходящие особи, вступающие в контакт со стаей.
"Живи и бойся: никогда не знаешь, где тебя зазомбируют."

Всё-таки Докинз со своими вирусами-мемами ухватил зверски важную вещь.

Я повторяюсь, но и то, что написал Столяров, -- тысячное повторение.
Медуза тоже ведь продолжает жить.

Автор:  Info21 [ Четверг, 04 Февраль, 2010 10:41 ]
Заголовок сообщения:  Re: Эссе "Язык Си и начальное обучение программированию"

Но все-таки удивительно: все эти педагогические аргументы были извлечены Виртом из педагогической практики еще в 60-х гг. и, соответственно, встроены в Паскаль.

Сорок с лишним лет уже прошло.

А еще старик Ле Бон 100+ лет назад утверждал, что уровень интеллекта массы как целого определяется по нижней границе уровней интеллекта ее отдельных членов.

Ужос.

Автор:  Info21 [ Четверг, 04 Февраль, 2010 11:38 ]
Заголовок сообщения:  Re: Эссе "Язык Си и начальное обучение программированию"

Info21 писал(а):
Интересно (хотя и кажется очевидным), почему все-таки подобные предложения упорно педалируются.
В общем, технофашизм. http://avchernov.livejournal.com/312.html

Автор:  Димыч [ Четверг, 04 Февраль, 2010 12:09 ]
Заголовок сообщения:  Re: Эссе "Язык Си и начальное обучение программированию"

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

Автор:  Info21 [ Четверг, 04 Февраль, 2010 12:30 ]
Заголовок сообщения:  Re: Эссе "Язык Си и начальное обучение программированию"

А вот он там заявил в конце, в комментарии:

Цитата:
#46Опубликовано admin в Февраль 4, 2010 - 11:35.

Сходу обнаружил причину, дисквалифицирующую этот проект в качестве "единого и единственного". Оно garbage collected.

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

1) "единственного" -- с ходу деза. Такого нигде нет.

2) вместе с "... тоже сойдет" -- явное высокомерие профессионала.
Ему, раз поступил в 1992 г., где-то 35?
Это еще не тот возраст, когда горизонты достаточно широки.
В общем, до 40, а может, и до 50 я бы не давал людям права что-то решать в системе образования. И то при наличии некой широты опыта. Скажем, обучения программированию студентов гуманитарного колледжа или Университета Печати :)
Предлагать, обсуждать -- конечно.

Но решения такого рода -- слишком ответственные, имеют дальние ripple effects. А в 35 лет это плохо понимается.

3) Вроде мы в Обероне очень даже явно с указателями работаем.
А если про сбор мусора -- то как можно уметь то, что невозможно -- при полноценной модульности?

Опять деза какая-то, распространяемая с как бы и апломбом, пусть и в комментарии.
Склоняюсь к выводу, что он не знает, что такое Оберон.

Автор:  Виктор О [ Четверг, 04 Февраль, 2010 14:43 ]
Заголовок сообщения:  Re: Эссе "Язык Си и начальное обучение программированию"

Цитата:
Опять деза какая-то, распространяемая с как бы и апломбом, пусть и в комментарии.
Склоняюсь к выводу, что он не знает, что такое Оберон.

А отсюда мораль:
Человек даже начавший с паскаля, но 15 не программирующий на нем,
пусть он даже верит в то, что си не для обучения -
не объект для рекламы оберона.

Только тот, кто ежедневно стонет под игом дельфи, способен понять, что простота - лучше воровства.

Автор:  kemiisto [ Четверг, 04 Февраль, 2010 15:17 ]
Заголовок сообщения:  Re: Эссе "Язык Си и начальное обучение программированию"

Позволю себе прокомментировать один из тамошних комментариев.

Цитата:
Когда я раньше планировал курс, то от Паскаля я тоже отказался, потому что это "мертвый язык". Я искал ему замену для "легкого старта", и в какой-то момент использовал для этого Питон... но в конечном счете победила логика, что результатом должно быть освоение C++, а поэтому тратить время на некоторый другой язык для первоначального обучения - бессмысленно. Лучше мы потратим время на преодоление барьера первоначального вхождения в C++. И я перестал использовать Питон.

В конечном счёте победило отсутствие логики. :lol: С и С++ как раз и есть мёртвые языки. Java, C#, Go, Python, Ruby, значительно ближе к Oberon, нежели к C/C++. Модульность (какая-никакая), сборка мусора, ... С/С++ - это уже, простите, олд-скульные языки.

Изучая Oberon я заметно больше начал понимать ту же Java и тот же Python. Но Oberon в разы выгоднее для обучения. И не только для обучения, но уж коли речь о нём...

А вообще, удивительная копилка бреда. Взять вот хотя бы это:
Цитата:
В-третьих, с самого начала необходимо формирование навыков тестирования своих программ, если угодно, юнит-тестирования.

Про тестирование уже тысячу раз всё сказано. Повторяться смысла не имеет. А вот юнит-тестирование для языка в котором и модулей-то нет - это нонсенс, конечно.

Цитата:
Поэтому я оставляю за собой право произвольно удалять комментарии, которые сочту неуместными.

Ишь какой! Тогда и держал бы свои мыслишки при себя. А то публикует на все Интернеты. Публичное выступление подразумевает ответственность за сказанное. А тут нагадил и в кусты. Плохо!

Автор:  Александр Ильин [ Четверг, 04 Февраль, 2010 16:06 ]
Заголовок сообщения:  Re: Эссе "Язык Си и начальное обучение программированию"

Да уж, автор жжОт:
Александр Чернов писал(а):
Программы бывают двух видов - правильные и неправильные. Промежуточных градаций не бывает... Автоматическая проверка обязательно должна сопровождаться просмотром исходного кода программы и отправкой программы на доработку в случае малейших замечаний.
Интересно, если промежуточных градаций не бывает, откуда берётся оценка "малейшие"? Означает ли это, что замечания могут иметь градацию от больших до маленьких и далее к малейшим? Или программа даже с единственным малейшим замечанием уже не является правильной?

Александр Чернов писал(а):
Кроме того, я не вижу ничего страшного в том, чтобы сказать «пока надо так писать, все поймете потом». Выскочек, которые, очевидно, самоутверждаясь, будут выступать с вопросами «а можно ли без #include» можно и нужно давить в зародыше. Ничего хорошего дискуссия с ними во время занятия не принесет.
Сразу видно, кто тут хочет самоутвердиться. Вопросов на лекции не допускать, ничего не объяснять. Пусть знают, кто тут главный: записать как я сказал и зазубрить. А то ещё начнут самостоятельно мыслить... и меня вынудят отвечать на неудобные вопросы.

Александр Чернов писал(а):
... внедрять железной рукой, пресекая в зародыше всякую самодеятельность студентов...
Читай: самостоятельное изучение и творческое экспериментирование.

Александр Чернов писал(а):
... нарушения стиля программирования должны караться...
... Очевидным было бы заметить, что понятие «стиля» программирования... весьма субъективно
Тут автор сам расставил точки над "й".

Автор:  Александр Ильин [ Четверг, 04 Февраль, 2010 16:09 ]
Заголовок сообщения:  Re: Эссе "Язык Си и начальное обучение программированию"

И действительно, чего это все слово "фашист" разучились писать? Это какой-то сленг?

Автор:  Сергей Губанов [ Четверг, 04 Февраль, 2010 17:41 ]
Заголовок сообщения:  Re: Эссе "Язык Си и начальное обучение программированию"

> Это какой-то сленг?

За технофашиста серьёзно обидеться можно, а с технофошиста какой спрос...

Автор:  Info21 [ Четверг, 04 Февраль, 2010 19:00 ]
Заголовок сообщения:  Re: Эссе "Язык Си и начальное обучение программированию"

Александр Ильин писал(а):
И действительно, чего это все слово "фашист" разучились писать? Это какой-то сленг?

Проверил. Оказывается, уже надо через а. В декабре еще было через о.
Ну, ладно. Раз все авторитеты говорят технофАшист, будем говорить технофАшист.

Автор:  Рыжий [ Четверг, 04 Февраль, 2010 23:08 ]
Заголовок сообщения:  Re: Эссе "Язык Си и начальное обучение программированию"

Цитата:
"Живи и бойся: никогда не знаешь, где тебя зазомбируют."

Чего это, надо так: "Живи и не бойся..."
Цитата:
или Университета Печати
-
Гм...

Автор:  Илья Ермаков [ Четверг, 04 Февраль, 2010 23:52 ]
Заголовок сообщения:  Re: Эссе "Язык Си и начальное обучение программированию"

Кстати, сложилось у меня подозрение, что зашоренность в плане архитектуры у многих (например, безграмотно построенные иерархии ООП, наследование реализации и проч.; там, где нужно просто грамотно декомпонировать и связать) являются следствием неуверенной работы с указателями, со сложными динамическими структурами. Даже их фобия, что ли. Ведь практически все гибкие архитектуры используют сильную ссылочную косвенность. Куда проще просто вписать "(BaseClass)"...

Автор:  Рыжий [ Пятница, 05 Февраль, 2010 01:46 ]
Заголовок сообщения:  Re: Эссе "Язык Си и начальное обучение программированию"

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

Автор:  Илья Ермаков [ Пятница, 05 Февраль, 2010 01:51 ]
Заголовок сообщения:  Re: Эссе "Язык Си и начальное обучение программированию"

При чём тут контейнеры. Речь о вообще композиции из мелких объектов. С кучей посредников, абстрагирующих взаимодействия. А значит, улучшающих эволюционируемость (можно при программировании отложить ответственные решения до момента, когда будет ясно). Когда сложная задача ещё целиком не видна, а работающий промежуточный виток нужен уже завтра, другого выхода вообще нет. Декомпозиция и косвенность постоянно выручают.

Автор:  Рыжий [ Пятница, 05 Февраль, 2010 03:06 ]
Заголовок сообщения:  Re: Эссе "Язык Си и начальное обучение программированию"

Понятно...просто Вы написали динамические структуры и указатели...Ну так и расплодите кучу малых объектов со свойствами ссылками друг на друга. Впрочем, я не силен в этих идеях.

Автор:  Рыжий [ Пятница, 05 Февраль, 2010 04:05 ]
Заголовок сообщения:  Re: Эссе "Язык Си и начальное обучение программированию"

Цитата:
Всё-таки Докинз со своими вирусами-мемами ухватил зверски важную вещь.

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

Автор:  Geniepro [ Пятница, 05 Февраль, 2010 07:36 ]
Заголовок сообщения:  Re: Эссе "Язык Си и начальное обучение программированию"

kemiisto писал(а):
Ишь какой! Тогда и держал бы свои мыслишки при себя. А то публикует на все Интернеты. Публичное выступление подразумевает ответственность за сказанное. А тут нагадил и в кусты. Плохо!

И кто Вас заставляет читать всё подряд в интернетах?
Я как-то давным-давно читал на каком-то сайте статью аффтара агрегата для беспроводной передачи электроэнергии, где он хвастался тем, что добился КПД 1000%. Не сразу добился, сначала 300%, но потом постарался и довёл до тысячи. Да уж, куда там Тесле до этого умельца...
ЗЫ. Уж не Петрик ли это был? :roll:

Автор:  Илья Ермаков [ Пятница, 05 Февраль, 2010 10:11 ]
Заголовок сообщения:  Re: Эссе "Язык Си и начальное обучение программированию"

Рыжий писал(а):
Понятно...просто Вы написали динамические структуры и указатели...Ну так и расплодите кучу малых объектов со свойствами ссылками друг на друга. Впрочем, я не силен в этих идеях.


Речь не обо мне и не о "наплодить", а о том, что для этого нужно иметь натренированный ум на такие сетки связей и косвенности. Тот же отдел навыков, что и с указателями.

Страница 1 из 2 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/