Войти в систему

Home
    - Создать дневник
    - Написать в дневник
       - Подробный режим

LJ.Rossia.org
    - Новости сайта
    - Общие настройки
    - Sitemap
    - Оплата
    - ljr-fif

Редактировать...
    - Настройки
    - Список друзей
    - Дневник
    - Картинки
    - Пароль
    - Вид дневника

Сообщества

Настроить S2

Помощь
    - Забыли пароль?
    - FAQ
    - Тех. поддержка



Пишет chistyakov ([info]chistyakov)
@ 2005-06-10 18:14:00


Previous Entry  Add to memories!  Tell a Friend!  Next Entry
Показалось важным про программирование. Выношу из комментов
Из переписки с dottedmag об объектном и прочем неестественном программировании в дискуссии "Компрачикосы от программирования".

Мой личный научно-технический интерес заключается в создании комплексов ДПЛА. Это сложные радиотехнические, авиационные, программные и ещё чёрт-те какие комплексы.
В части программирования меня интересует создание бортовых и наземных программ для таких комплексов. Требуется заставить ЭВМ делать то, что требуется комплексу для решения его целевой задачи. Причём пароль к успеху один-- "надёжность"! (подчеркну, что речь идёт НЕ о персональных компьютерах, которые в комплексах тоже есть, естественно, на рабочих местах операторов в качестве интерфейсных узлов с человеком).

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

ЭВМ --это прежде всего устройство. Мне вовсе не требуется программировать, не зная и не ведая, как это устройство работает. Это для "программистов". Я знаю ЭВМ и использую эти знания.
Я не имею в виду, что нужно программировать в машинных кодах. Отнюдь! Но язык программирования должен соответствовать тому, что и как делает ЭВМ в реальности. А она исполняет программу, команда за командой. Эта главная особенность ЭВМ как устройства наилучшим образом отражается обычными алгоритмическими процедурно-ориентированными языками. Даже языком "Си":)
Паскаль просто лучше для человека. Ведь важнейшая функция программы как текста, про которую почему-то редко вспоминают, -- это абсолютно достоверное документирование структуры самой программы, структуры данных и алгоритма того, что мы проектируем. И эта функция просто неоценима.

Господ "программистов" просят не беспокоиться.

{+}


(Читать комментарии) - (Добавить комментарий)

Вы кто?
[info]ex_chistyak@lj
2005-06-11 16:56 (ссылка)
Извините, но Вы молоды ещё, указания давать чем мне заниматься, а чем не заниматься.
Что Вы так взволновались? Пишите на "Си", на здоровье. Придёте ко мне, будете на Паскале писать. Никаких проблем. А мою деятельность ещё никто ни в чём не ограничивал. Я считаю, что молодёжь портят маловразумительным подходом к программированию. В итоге молодёжь работает хуже, чем могла бы, если бы её правильно научили.

Дорогой мой! Мои программы не работают под управленияем чьих бы то ни было операционных систем. Они работают непосредственно на ЭВМ.

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]edtech@lj
2005-06-11 17:19 (ссылка)
Re: Вы кто?
Я — студент, к которому видимо, применили маловразумительный подход к программированию. Сейчас занимаюсь вовсе другими вещьми, но по долгу специальности иногда приходится программировать.

По поводу указаний. Заниматься надо теми вещьми, в которых вы действительно разбираетесь. Даже несмотря на то, что сейчас те, кто составляют образовательные программы разбираются в подходах к программированию гораздо хуже Вас.

Давайте вообще обучать молодежь по Дональду Кнуту — ни единой строчки кода, только математика и алгоритмы. Вразумительность обучения программированию вовсе не зависит от языка, на котором их учат. Какая разница, на каком языке Вы реализуете динамическую структуру? или вашу инкапсуляцию? Я вовсе не против обучения на паскале, но я против вот такого навязывания.

По поводу последнего предложения.. уверен, Вы знаете, что ЭВМ исполняет проргамму в машинных кодах. Уверен, также Вам известно, что Паскаль - язык программирования высокого уровня. Так кто делал компилятор, который преобразует программу на паскале машинный код?

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]ex_chistyak@lj
2005-06-11 18:02 (ссылка)
>...Вразумительность обучения программированию вовсе не зависит от языка, на котором их учат

Неправда Ваша. Язык всегда диалектически воздействует на представление о предмете. Это не только к программированию относится. Попробуйте рассказать один и тот же короткий сюжет на русском и на английском. Вы заметите, что сам язык уже вносит какую-то окраску. Кнут-то свой язык для изложения алгоритмов в своей книге всё-таки придумал. То есть нельзя без языка-то, да? "Улица корчится, безъязыкая..."(с)В.Маяковский. Чувствует, а сказать не может.

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

В Вас говорят некие религиозные чувства. Я замечал это у многих "сишников". Психику, что ли "Си" травмирует?:)

Ещё раз подчеркну, что Вы правы в том, что обучение программированию не должно превратится в изучение конкретного языка программирования.

>...Так кто делал компилятор, который преобразует программу на паскале машинный код?

Компилятор написал один немец из Иоганесбурга (ЮАР). Зовут его Райнер. Я его знаю. Писал он транслятор на Дельфи.

И в заключение:

>...Заниматься надо теми вещьми, в которых вы действительно разбираетесь

Было бы любопытно узнать, как Вы определили в чём я разбираюсь, а в чём нет? Это очень полезное искусство. Научите?

С Богом, студент!

{+]

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]edtech@lj
2005-06-12 08:47 (ссылка)
Если Вы утверждаете, что программирование не должно превратиться в изучение конкретного языка, то почему же тогда, одной из ключевых целей проекта Информатика-XXI является.."пропаганда и внедрение в системе образования Компонентного Паскаля/Оберона как практически идеальной единой платформы для систематического преподавания основ программирования в XXI веке."; "значение Оберона для программирования можно сравнивать со значением евклидовых "Начал" для классической математики" ?

Вот лично меня, как Си-программиста, это и задело (может, конечно, просто моя психика травмирована, но не мне об этом судить). Дело в том, что Вы совершенно не в курсе школьных программ информатики. Да у нас правда и стандартов образования как таковых нет. Так вот, всё, что сейчас рассказывают в школе элементарно программируется на Бейсике. И этот язык со своими недостатками и дурной славой всё равно всегда будет оставаться самым простым для понимания. Ему можно учить школьников начиная с третьего класса.

Так может лучше заняться разработкой стандарта ИТ-образования в школе? Но только с требованиями к знаниям алгоритмов и устройства компьютеров, без привязки к какому-либо языку. А конкретный язык пускай выбирают преподаватели — им наверно виднее, как лучше научить ребенка, ведь чтобы его научить надо быть не только хорошим математиком/программистом, но и хорошим учителем. Опять же в качестве варианта можно предложить наглядный Visual Basic.Net, который, к тому же, допускает не только чистое программирование, но и долю творчества.

Вообще по поводу конкретного языка мне сложно спорить, так как я не видел ни одной программы на Обероне (хотя на Паскале не только видел, но и когда-то сам писал). Но, повторюсь, я абсолютно против навязывания ЯП "сверху". Если Вы приведёте конкретные доводы за такое навязывание, возможно, я с Вами соглашусь.

Вот собственно поэтому я и сделал вывод о том, где Вы разбираетесь, а где — нет. Вместо того, чтобы решать реальные проблемы (повсеместное качественное обучение информатике) Вы всего лишь навязываете конкретный язык программирования.

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]_lis_@lj
2005-06-12 09:23 (ссылка)
Так может лучше заняться разработкой стандарта ИТ-образования в школе? Но только с требованиями к знаниям алгоритмов и устройства компьютеров, без привязки к какому-либо языку. А конкретный язык пускай выбирают преподаватели — им наверно виднее, как лучше научить ребенка, ведь чтобы его научить надо быть не только хорошим математиком/программистом, но и хорошим учителем.

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

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]edtech@lj
2005-06-12 09:35 (ссылка)
половина школьников практически не умеют пользоваться компьютером, а тут что-то про "вторую грамотность" втирают.

Надеюсь уважаемому конструктору будут хотя бы немного ясны проблемы, которые стоят перед современным IT-образованием в школах.

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]_lis_@lj
2005-06-12 09:47 (ссылка)
Основных проблем всего 2:
1. Компьютеры нужны.
2. Нужны те, кто в состоянии обучить хотя бы элементарному их использованию. (Кто поедет в какой-нибудь Усть-Кагалым учить деток грамоте компьютерной разуметь?)

[info]chistyakov@lj кажется, поднимал вопрос о вузовском ИТ-образовании программистов...

(Ответить) (Уровень выше) (Ветвь дискуссии)

о вузовском образовании программистов.
[info]leonid_@lj
2005-06-14 11:14 (ссылка)
сейчас существует практика, когда в ВУЗе готовит программиста под олимпиадные задачи. Совершенно не понимая природы и требований промышленного программирования. Увы.

Промышленное программирование столь же отличается от олимпиадного, как конвейер Генри Форда от мастерской народных промыслов. В мастерской задачи интереснее, сложнее и разнообразнее. Но массовый автомобиль делают на конвейере.

(Ответить) (Уровень выше)


[info]ex_chistyak@lj
2005-06-12 10:14 (ссылка)
Концепция второй грамотности была сформулирована в 70х годах. Ещё до Вашего рождения, когда ЭВМ была диковинкой на уровне ядерного реактора. Беда в том, что в силу известных потрясений, стало не до второй грамотности.Однако, я считаю, что "вторая грамотность" должна быть.

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

Дело в том ещё, что ЭВМ -- это очень необычное устройство. Это не закостенвший набор функциональностей, а мощный интсртрумент во всех областях человеческой деятельности. И человек, умея программировать, сможет сделать этот инструмент более полезным для деятельности в своей области. А не только печатать служебные записки и составлять финансовые отчёты в "Экселе". Жрецам же от ИТ-индустрии это ни к чему. Статус их падает от этого.

{+}

(Ответить) (Уровень выше)

Хм.
[info]ex_chistyak@lj
2005-06-12 09:52 (ссылка)
То, что Вы перечислили, к информатике никакого отношения не имеет. Это на уроках труда надо проходить, для приобретения простейших трудовых навыков.
Детей совершенно необходимо познакомить с программированием. Они ощутят себя творцами.

(Ответить) (Уровень выше) (Ветвь дискуссии)

Хм-Хм...
[info]_lis_@lj
2005-06-12 10:17 (ссылка)
Детей совершенно необходимо познакомить с программированием. Они ощутят себя творцами.
Где? В "усть-кагалыме" каком-нибудь или на Чукотке? Дак компьютеров же нет! И людей, способных с этим самым программированием познакомить тоже нет! Как вообще можно учить программированию при отсутствии элементарных навыков пользования компьютерами и самих компьютеров? Если б мы в Швейцарии жили, то такое может быть было бы возможно, а так - "дистанции огромного размеру..."

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: Хм-Хм...
[info]ex_chistyak@lj
2005-06-12 10:29 (ссылка)
"Дорога в тысячу км начинается с первого шага"(с)известное Вам телеграфное агенство из Китая.

>...? Если б мы в Швейцарии жили...

Слава Богу, что мы живём в России. Я бы, например, с тоски там умер.

То, что Вы говорите, отсутствие компьютеров, кадров -- проблема устройства общества. Ресурсы-то есть. Но так же не будет всегда, правда? Максимум ещё несколько лет.

{+}

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: Хм-Хм...
[info]_lis_@lj
2005-06-12 12:35 (ссылка)
Но так же не будет всегда, правда? Максимум ещё несколько лет.

Да. "Жаль только жить в эту пору прекрасную уж не придется ни мне, ни тебе.." :)

(Ответить) (Уровень выше)

Хм.
[info]ex_chistyak@lj
2005-06-12 09:24 (ссылка)
Мы же договорились, что вообще-то язык, пригодный для писания реальных программ при преподовании информатики нужен? Чтобы было можно было гонять реальные программы, написанные детьми? Да или нет? Ответьте, пожалуйста, тогда обсудим дальнейшие Ваши тезисы. Хорошо?

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: Хм.
[info]edtech@lj
2005-06-12 09:30 (ссылка)
Язык, безусловно, нужен.

Но я против вот такого навязывания конкретного языка.

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: Хм.
[info]ex_chistyak@lj
2005-06-12 09:59 (ссылка)
Хорошо.
Давайте, теперь подумаем. Должен ли этот язык быть единым для всей школы. Чтобы и в сибирском селе и в Москве преподавали на одном языке? Моё мнение, что ответ только положительный. А Вы как думаете?

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: Хм.
[info]edtech@lj
2005-06-12 10:34 (ссылка)
Я думаю, это будет нестрашно, если в одной школе учат на Паскале, а в другой — на Си. А вот если в одной детей научат численному интегрированию, а в другой — не научат, то это будет уже неправильно, даже если во всех школах будут учить на Обероне.

Это я к тому, что Вы оттеняете реальные проблемы, и ставите вместо них приоритет на мнимые. И выдаёте это в качестве одной из ключевых целей.

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: Хм.
[info]ex_chistyak@lj
2005-06-12 10:58 (ссылка)
Какой Вы брюзга, однако:) Всё-то Вы сразу знаете и тут же оценки даёте. Вот, например, откуда Вы знаете, что проблема мнимая? Может быть, Вы её просто не понимаете ещё? Никогда не задумывались? Хотя я тоже брюзга изрядный:)

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

{+}

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: Хм.
[info]_lis_@lj
2005-06-12 12:46 (ссылка)
Да НИКОГДА все не станут творческими личностями! И даже "вторая грамотность" откроется в лучшем случае у 30%, и то лет через 50.

Я учился в школе, которая считалась лучшей в городе. Так вот у нас в классе из 20 человек только может человек 5 реально чем-то интересовались, изучали те же математику и программирование, книшшки умные читали, остальным, простите допизды до лампочки все эти науки!

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: Хм.
[info]ex_chistyak@lj
2005-06-12 13:26 (ссылка)
Нельзя равняться на худших. Стоит работать даже ради тех пять. А худшие пусть тянутся. А то сейчас есть мнение, что учиться вообще не надо.

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: Хм.
[info]_lis_@lj
2005-06-12 13:37 (ссылка)
Ну к "тем пяти" себя я тоже причисляю :).
Пожалуй, Вы правы. Но есть же и гуманитарии, их не меньше "технарей", они в своей деятельности могут быть не менее талантливы, с их мнениес тоже как-то надо считаться.

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: Хм.
[info]ex_chistyak@lj
2005-06-12 15:20 (ссылка)
>...есть же и гуманитарии

Увы, есть они:(
Этих учить насильно! А то: "Ах, я ничего не понимаю в математике, она такая бессмысленная...".
Лучше сослать, конечно...

(Ответить) (Уровень выше) (Ветвь дискуссии)

;)))
[info]_lis_@lj
2005-06-12 16:49 (ссылка)
Берегись
конструктор
гуманитарий
у власти!

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: ;)))
[info]ex_chistyak@lj
2005-06-12 17:12 (ссылка)
>...гуманитарий у власти!

ЭТОТ тоже гуманитарий!? Тогда многое становится ясным... Видимо, нам конец.

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: ;)))
[info]_lis_@lj
2005-06-12 17:19 (ссылка)
Ну вы вощеее.. Юрыст жеж. Даже я, щирый украинец, знаю. А вот наша Юля - так она экономфак ДГУ закончила и диплом защитила по математическим методам в экономике. Тоже, кэша, не ахти, но надежда есть. Так что давайте к нам, если что :)

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: ;)))
[info]ex_chistyak@lj
2005-06-12 17:50 (ссылка)
Не-а. Я к Батьке, если что... Или к Киму. Чен Ир который.

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: ;)))
[info]_lis_@lj
2005-06-13 04:48 (ссылка)
А мы их удвох скоро разом з янками скинем. И не будет у Вас тоталитарной утехи :)

(Ответить) (Уровень выше)

Re: ;)))
[info]_lis_@lj
2005-06-12 17:20 (ссылка)
Черт, под Маяковского "лесенкой" не получилось! %)

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: ;)))
[info]ex_chistyak@lj
2005-06-12 18:08 (ссылка)
Надо подлиннее фразу. Тогда получится:

Ломает власть

Россию на части

Берегись, конструктор,
-- гуманитарий у власти!



(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: ;)))
[info]_lis_@lj
2005-06-13 04:51 (ссылка)
Вы просто... Первый Стихотворец Республики :)

(Ответить) (Уровень выше)

Re: Хм.
[info]edtech@lj
2005-06-12 12:47 (ссылка)
Унифицированность — это, конечно, хорошо, но обратите внимание, что стандартизации поддаются знания, которые мы должны получить, а не методы, которыми мы достигаем этих знаний. Фактически у каждого учителя свой стиль преподавания, но все обязаны дать ученикам некоторый минимум знаний. Ярким примером, когда отсутствие такой унификации очень полезно, является СУНЦ им.Колмогорова при МГУ. Именно благодаря нестандартному подходу оттуда выходят очень талантливые люди.

Так зачем же нам ограничивать учителей в методах достижения результата? Тем более, когда речь идёт об информатике, где надо учитывать, что у всех разные возможности: где-то стоят 386-е компьютеры, где обучение можно производить на Паскале, а где-то — помощнее, где можно программировать на Дельфи. Есть еще учителя, которые всегда преподавали на Бейсике и разработали свои эффективные программы обучения.

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

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

Ну и по поводу наследия.. хотя первую свою программу я написал на Си, в нашей школе повсеместно использовался Бейсик (видимо оттуда у меня некоторая ностальгия по этому языку). Но у нас были хорошие учителя, что позволило мне добиваться высоких мест на школьных олимпиадах. Затем возникла острая необходимость перейти на Linux и я вернулся к Си. Будет надо работать на Паскале — буду работать на Паскале. Вот именно поэтому я против навязывания конкретного языка и, как следствие, одностороннего развития IT-образования.

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: Хм.
[info]_lis_@lj
2005-06-12 13:12 (ссылка)
Да не надо всех равнять по себе! Ты что не понимаешь, что для большинства школьников Союза фраза Ярким примером, когда отсутствие такой унификации очень полезно, является СУНЦ им.Колмогорова при МГУ. Именно благодаря нестандартному подходу оттуда выходят очень талантливые люди. сродни длинному, виртуозно сказанному матюку! Проще надо быть, спустиццо бы с небес пора... И старому, и молодому :)

(Ответить) (Уровень выше) (Ветвь дискуссии)

СУНЦ им.Колмогорова при МГУ
[info]ex_chistyak@lj
2005-06-12 15:11 (ссылка)
Что-то я не встречал инженеров и офицеров из СУНЦ им.Колмогорова при МГУ. А талантливых инженеров и офицеров встречал.

СУНЦ им.Колмогорова при МГУ -- это просто селекция.

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: СУНЦ им.Колмогорова при МГУ
[info]_lis_@lj
2005-06-13 05:52 (ссылка)
Да. Туда, кажется, раньше приглашали всех призеров республиканских и всесоюзных матеметических олимпиад?

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: СУНЦ им.Колмогорова при МГУ
[info]ex_chistyak@lj
2005-06-13 06:06 (ссылка)
Ума не приложу, кого туда приглашали. Но селекция наверняка была. Она и является причиной "талантливости", а не методы обучения. Кстати, худших инженеров, чем МГУшники с ВМК, никогда не видел. Долбоёбы занаученые. А меня их было.

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: СУНЦ им.Колмогорова при МГУ
[info]_lis_@lj
2005-06-13 06:08 (ссылка)
А в дипломе у них что написано? Разве есть слово "инженер"?
Я просто спрашиваю - я не знаю, не местный...

(Ответить) (Уровень выше)

Re: Хм.
[info]ex_chistyak@lj
2005-06-12 13:49 (ссылка)
Я не агитирую, строго говоря, за Оберон, чтобы Вы не нервничали больше по этому поводу. Просто я считаю Оберон хорошим языком для обсуждаемой нами цели. Могут быть и другие языки. Но их, увы, нет.

Язык диалектически связан с образом описываемого предмета. То есть, попросту говоря, влияет на образ предмета, складывающийся в сознании. Так что, единый язык по всей стране -- просто защита от случайных искажений результатов обучения. Вы же сами призывали не абсолютизировать язык. Надо будет человек освоит любой язык. Если есть здоровая основа, конечно.

Ясно одно. Что этот язык не должен быть элементом коммерчески признанной системы разработки программ типа Дельфи или С++. Это уже будет профессиональная подготовка. Слишком уж эти системы громоздки для первоначального обучения. Получится, что дети будут изучать не идеи, которые потрясли мир, а особенности щелчков мыши по значкам в меню. И расползаться по бесконечным залежам "возможностей". Сузить надо. Оставив только ядерную суть программирования.

Про Бэйсик я скажу, что по своему объёму и простоте он хорош для первоначального обучения и даже практического использования в дальнейшей жизни тех, кто не будет иметь особых притязаний на ниве программирования. Хорош, да.
Беда Юэйсика в том, что он ужасен как язык. Это же средоточие пороков, осуждённых программистским сообществом задолго до Вашего рождения. У меня иногда складывается ощущение, что дискуссии 70х совершенно неизвестны сегодняшним программистам и они вновь вляпались в ту же "асфальтовую топь"(с)Брукс.

{+}
.

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]edtech@lj
2005-06-12 14:19 (ссылка)
"Конкретная цель проекта Информатика-21 — пропаганда и внедрение в системе образования Компонентного Паскаля/Оберона как практически идеальной единой платформы для систематического преподавания основ программирования в XXI веке" — это разве не агитация?

"К счастью, в обучении грамотному программированию есть на что ориентироваться — есть свой аналог евклидовых "Начал". Это система Оберон..."

Дальше цитировать, думаю, не надо. Я вот на странице проекта "ИНФОРМАТИКА-21" никаких конструктивных предложений, кроме внедрения Оберона не увидел.

Если вы говорите, что не агитируете за Оберон, какие еще цели преследует этот проект? (думаю, повторяться о том, что внедрением этого языка качество программистов повысить нельзя, не надо).

Да, и раз уж вы просто предлагаете.. каково тогда будет тем людям, которые программировали на Обероне, а затем, выйдя из стен школы будут вынуждены программировать на Си с его недостатками? И смогут ли? Этакое перемещение из инкубатора в реальный мир.

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]ex_chistyak@lj
2005-06-12 15:27 (ссылка)
Жаль некогда Вам ответить. Спишемся позже.
Советую узнать у старших товарищей про движение "Программирование без гоу ту". Много узнаете.

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]dottedmag@lj
2005-06-14 01:27 (ссылка)
Покажите мне хотя бы одно goto в моих разработках? При том, что структурным программированием я не пользуюсь обычно.

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]ex_chistyak@lj
2005-06-14 02:15 (ссылка)
Не видел я Ваих разработок, поэтому показать ничего не могу. А что Вы понимаете под "структурным программированием"? И как это Вы им не пользуетесь?

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]dottedmag@lj
2005-06-14 04:16 (ссылка)
Структурное программирование - это стиль программирования, в котором главными строительными элементами являются структурные (неинкапсулированные) типы данных, блочные структуры кода. Другими отличительными особенностями являются функции, не являющиеся типами, а также открытость данных.

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

(Ответить) (Уровень выше) (Ветвь дискуссии)

Я не силён
[info]ex_chistyak@lj
2005-06-14 05:20 (ссылка)
В структурном программировании я не силён на таком уровне, чтобы сходу дать ему короткое неоспоримое определение, но попытаюсь изложить своими словами то, что я вынес из дискуссий 70х.

Признаки структурного программирования:
1) разбиение задачи на уровни;
2) разбиение каждого уровня задачи на отдельные модули. Принцип: "одна функция (в человеческом смысле) -- один модуль";
3) передача управления -- только сверху вниз с обязательным возвратом управления вызвавшему модулю;
4)ограничение на размер модуля исходного текста 50..100 строк, в идеале, чтобы текст модуля помещался целиком на одной странице (экране). Если не влазит, значит надо дробить дальше. Использование отступов и других средств наглядного форматирования текста программы. Обязательные СОДЕРЖАТЕЛЬНЫЕ комментарии ко всему модулю и в местах, могущих вызвать затруднения в понимании посторонним человеком;
5) инкапсуляция данных внутри модулей, право использования глобальных переменных даётся только главному модулю верхнего уровня; обмен данными между модулями только сверху вниз и обратно, с верхних уровней на нижние через параметры, передаваемые: вниз -- по значению, вверх -- по ссылке;
4) минимизация применяемых выразительных средств языка программирования (пресловутое "без гоу ту"): только простая последовательность операторов, условный переход if then [else], циклы for и while. Этого достаточно. Для упрощения чтения программы человеком допустимо (даже желательно) использование вычисляемого оператора перехода типа case of. В случаях "аварийных исходов" модулей, чтобы не загромождать текст условными операторами, допустим безусловный переход goto, но только на конец модуля;
5)контроль модулями входных и выходных данных на "абсурдность" (без фанатизма, конечно.

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

Обратите внимание, что про типы данных тут ничего нет. Какие надо, такие и используйте. Открытостью данных и не пахнет. Что касается типов функций, то это мелкая необязательная вещь. Инкапсуляция налицо.
Что касается программирования по событиям, то в технике реального времени так делали всегда (прерывания). Это недавно вдруг комнатные "программисты" открыли и крик подняли о своей необычной гениальности. А то прерываний боялись как огня:).

{+}

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: Я не силён
[info]dottedmag@lj
2005-06-14 05:34 (ссылка)
Ну вот и все - это уже не структурное, а модульное программирование.

Опять-таки, доказать правильность ваших модулей можно только на 'пальцах', поскольку никакой формальной модели вычислений за ними не стоит. И не осознание того, что для этого нужна типизация - это глобальный промах.

ps: я тоже умею писать программы в модульном, предельно простом стиле. Но предпочитаю другие подходы, как дающие не менее надежные результаты при меньших затратах ресурса, в том числе и на независимый аудит кода.

(Ответить) (Уровень выше)

Re: Хм.
[info]dottedmag@lj
2005-06-14 01:24 (ссылка)
Вы игнорируете такой аспект, как доказательство правильности программ. В типичных структурных императивных языках доказывать правильность программ можно только "на пальцах". Именно поэтому в критичных местах имеет смысл использовать высокоуровневые языки, имеющие математическое основание, чтобы можно было уменьшить стоимость разработки отдельным доказательством правильности компилятора и программы на этом языке.

(Ответить) (Уровень выше)

Re: Хм.
[info]_lis_@lj
2005-06-12 12:39 (ссылка)
Эдик бля! Харрош! Нет, вы посотрите, шо он написал! :)

А вот если в одной детей научат численному интегрированию, а в другой — не научат, то это будет уже неправильно, даже если во всех школах будут учить на Обероне.

Если в школах, не приведи Бог, начнут учить численному интегрированию, то начнутся массовые самоубийства школьников при и так невеселой статистике :)

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: Хм.
[info]edtech@lj
2005-06-12 12:54 (ссылка)
Меня научили, значит и других научат. Если будет стандарт, обязывающий этому учить. А если не будет, то толку от внедрения Оберона будет ноль: всё ограничится сортировкой массивов, только на другом языке.

(Ответить) (Уровень выше) (Ветвь дискуссии)

Здесь живут инопланетяне.
[info]_lis_@lj
2005-06-12 13:07 (ссылка)
Меня научили, значит и других научат.

Дааа... Я, пожалуй, больше не буду комментировать ни тебя, ни Чистякова. Такое ощущение, что вы с другой планеты прилетели. Причем только что и еще не вошли в курс дела.
Опять же - да это все 70 процентам школьников и нах не надо. Потому что не дотянут они до этого. "Умом" не вышли. Да и вообще, скажи мне - на кой ляд в средней школе нужна высшая математика? Этому все равно потом в техническом (матем и др.) вузе будут переучивать сначала - ну не могут в школе изложить даже начала анализа в полном объеме, а если человек пошел в гуманитарный вуз, то ему это вообще никогда не потребуется. В школе человека надо научить элементарно мыслить, пользоваться элементами современной жизни, показать разные грани человеческой деятельности и дать ему возможность выбрать наиболее подходящую.

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: Здесь живут инопланетяне.
[info]ex_chistyak@lj
2005-06-12 14:51 (ссылка)
Пожалуй, в Ваших словах что-то есть... Насчёт высшей математики даже готов согласиться. Жаль, конечно, не давать понятий производной и интеграла, уж очень они в жизни полезны. Но можно всё испортить, не дав толком понятие предела. А толком могут и не дать. Хотя могут и дать... КОлеблюсь.
Но программированию надо, не то чтобы учить, но дать основы и реальный опыт. Тут Оберон как раз хорош. Даже Бэйсик, чёрт с ним.
Не знаю, в общем.

{+}

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: Здесь живут инопланетяне.
[info]_lis_@lj
2005-06-13 06:01 (ссылка)
Дело в том, что теорию пределов нам на первом курсе излагали... ыыы... половину семестра. Это было около 40 часов только лекционного материала, плюс почти столько же - практические занятия. Так что в школе вряд ли это дадут в таком объеме.

(Ответить) (Уровень выше)

Re: Хм.
[info]ex_chistyak@lj
2005-06-12 13:52 (ссылка)
Правильно! Численные методы надо в школе давать. Немного, но давать. Пусть учатся, вместо пивохлестания.

(Ответить) (Уровень выше) (Ветвь дискуссии)

По-моему,
[info]_lis_@lj
2005-06-13 06:05 (ссылка)
гораздо полезнее было бы разбирать задачи повышенной сложности по элементарной математике, встречающиеся в билетах вступительных экзаменов в вузы. Меньше проблем с поступлением будет, да и по репетиторству удар неслабый. А численным методам обучат "на месте".

(Ответить) (Уровень выше)

Кнут -- отстой и позор нации.
[info]tkatchev@lj
2005-06-12 03:28 (ссылка)
Если уж так хочется низкопоклонничать перед американцами, лучше уж выберите что-нибудь вменяемое: http://mitpress.mit.edu/sicp/full-text/book/book.html

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: Кнут -- отстой и позор нации.
[info]edtech@lj
2005-06-12 08:49 (ссылка)
меня не интересуют выражения типа "Кнут -- отстой и позор нации"
Кнут — признанный талантливый математик, у Вас есть аргументы, чтобы утверждать, что он "отстой" ?

(Ответить) (Уровень выше) (Ветвь дискуссии)

Да.
[info]tkatchev@lj
2005-06-12 12:03 (ссылка)
Программировать он не умеет, "талантливость" его математики вилами на воде писана, а все то же -- лезет молодежи мозги засорять.

Считаю его книги откровенно вредными.

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: Да.
[info]ex_chistyak@lj
2005-06-12 12:48 (ссылка)
Так, всё же! Вы на мой вопрос не ответили пока. Про образование, напомню.

А книги ещё сжигают иногда, знаете технологию?

:)

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: Да.
[info]tkatchev@lj
2005-06-12 12:53 (ссылка)
Образование -- МГУ, помимо прочих вузов.

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: Да.
[info]ex_chistyak@lj
2005-06-12 13:50 (ссылка)
МГУ многое объясняет. ВМК?

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: Да.
[info]tkatchev@lj
2005-06-12 15:11 (ссылка)
Конечно.

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: Да.
[info]ex_chistyak@lj
2005-06-12 15:24 (ссылка)
Ну, вот, так бы сразу и сказали. У меня работало человек 7 с ВМК в 1984..1985 годах одного выпуска. Потом разбежались все.

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: Да.
[info]dottedmag@lj
2005-06-14 01:24 (ссылка)
А из-за чего разбежались, если не секрет? Не от того ли, что им стало скучно?

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: Да.
[info]ex_chistyak@lj
2005-06-14 02:12 (ссылка)
Они искали какой-то другой работы, более умственной, что ли. Наверное, им скучно было. Потом у них всегда были неумеренные притязания по оплате своего труда.
Сейчас из той команды одна женщина всего осталась на ДПЛАстроении. А мужики, я их встречал, работают в банках и в страховых компаниях. Там, наверное, интереснее, чем на полигонах:).

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: Да.
[info]dottedmag@lj
2005-06-14 05:37 (ссылка)
>Они искали какой-то другой работы, более умственной, что ли. Наверное, им скучно было. Потом у них всегда были неумеренные притязания по оплате своего труда.

Естественно - они привыкли работать умственно и получать за это неплохие деньги. За искусственное ограничение приложения своего ума денег обычно просят больше, поскольку пропадает одна из основных привлекательных черт работы - элемент творчества.

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: Да.
[info]ex_chistyak@lj
2005-06-14 06:00 (ссылка)
Честно говоря, я не знаю более творческого дела, чем создание летающей техники. Кстати, один из тех парней мне как-то брякнул: "Что, мне 14 лет, что ли самолётиками увлекаться?". Это когда я ему предложил поехать на полигон на лётные испытания. Ну, ну... Сейчас он в каком-то банке сисадмином. Очень умственно.
А звёзд-то с неба не хватали, я скажу. Гонор элитный был. Знаете, как у молодых бывает?

(Ответить) (Уровень выше)

Это не система образования...
[info]_lis_@lj
2005-06-12 09:09 (ссылка)
А кто и где к тебе применил "маловразумительный подход к программированию"?!
Потому что, учась с тобой в одной группе, я подобного подхода со стороны преподавателей явно не замечал. Может быть, это ты сам? :)

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: Это не система образования...
[info]edtech@lj
2005-06-12 09:32 (ссылка)
я это не утверждал, а лишь предположил

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: Это не система образования...
[info]_lis_@lj
2005-06-12 09:58 (ссылка)
Вот лично меня, как Си-программиста, это и задело (может, конечно, просто моя психика травмирована, но не мне об этом судить).

[info]chistyakov@lj изначально заделотакое отношение к языку, на котором он программирует под свои задачи. А дальше - это уже ответная его реакция, правда, очень затяжная :). В общем-то, "сишники" осуществляют свои наезды на языки Вирта гораздо чаще, чем "паскудники" на Кернигана и Ритчи. Вместе со Страуструпом :).

(Ответить) (Уровень выше)


(Читать комментарии) -