avva: (5 лет)
[personal profile] avva
Реддит порадовал рассказом об учителе программирования в школе, который до сих пор учит учеников QuickBasic'у; забавное преимущество состоит в том, что он может не волноваться, что ученики будут искать решения домашних заданий на сетевых форумах, потому что их там разве что высмеют.

(я люблю цитировать Дайкстру, который сказал как-то, что у любого, кто начал программировать с Бейсика, навсегда и неизлечимо искривлены мозги, и он никогда не сможет стать настоящим программистом; стоит ли добавлять, что я начинал с Бейсика?)

Date: 2008-10-05 01:12 pm (UTC)
From: [identity profile] zverok-kha.livejournal.com
В украинских школах TurboPascal 7 - по сию пору главный писк моды. При этом вполне регулярно выходят новые учебники, методические пособия, учителя увлеченно обмениваются опытом и в любом обсуждении безапеляционно заявляют "ничего лучше для обучения детей не существует, не спорьте с нашим 20-летним опытом!"

Date: 2008-10-05 01:37 pm (UTC)
From: [identity profile] vakhitov.livejournal.com
Точно не 5.5? Он удобен тем, что распространяется бесплатно. Ну и чем он так уж плох конкретно для школы - вообще не понятно.

Date: 2008-10-05 01:42 pm (UTC)
From: [identity profile] zverok-kha.livejournal.com
> Точно не 5.5? Он удобен тем, что распространяется бесплатно.

На это все забивают дружно.

> Ну и чем он так уж плох конкретно для школы - вообще не понятно.

Ничем, кроме
* среды
* языка
* библиотек

А так -- да, отличный язык.

Date: 2008-10-05 02:27 pm (UTC)
From: [identity profile] vakhitov.livejournal.com
Так вот мне и интересно, чем конкретно плохи по крайней мере язык и библиотеки - с точки зрения именно тех задач, которые решаются в школе.

Я еще могу понять претензии к среде - да и то со скрипом: школьные программы замечательно можно писать при помощи текстового редактора.

Date: 2008-10-05 06:04 pm (UTC)
From: [identity profile] zverok-kha.livejournal.com
(Среда - тем, что она "досовская", т.е. ее поведение не соответствует привычному поведению виндового окружения - и это как минимум.)

Библиотеки - тем, что нельзя сходу сделать нечто "понятно-современное", грубо говоря (мы все еще о TP7, а не о "паскале вообще, включая Delphi").

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

мнение непрограммиста

Date: 2008-10-05 08:45 pm (UTC)
From: [identity profile] vakhitov.livejournal.com
Мне не кажется, что все эти проблемы настолько актуальны в школе. Виндовое окружение вообще пофигу: пусть народ привыкает, что оно само собой не разумеется; для обучения программированию это не ахти как важно. Библиотеки тоже играют сугубо подчиненную роль; на первых порах вообще достаточно консольного вывода. А уж про парадигмы я и не говорю: азы бы втолковать. Привить соответствующий тип мышления хотя бы в устаревшей парадигме. Опять-таки, мы не программистов обучаем ремеслу, а школьников - азам программирования. Им бы вообще алгоритмов сначала на бумажке порисовать побольше, псевдокод на бумажке же "повыполнять". Разобраться, как арифметика с плавающей точкой работает.

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

Re: мнение непрограммиста

Date: 2008-10-05 09:10 pm (UTC)
From: [identity profile] zverok-kha.livejournal.com
Есть всякоразные подходы к обучению школьников программированию (в т.ч. нужно учитывать реальных школьников и что они могут - я, волею судеб, таки учитель информатики, хотя это и не основное мое занятие).

Я исхожу из того, что сходу должно быть понятно и интересно. Отсюда и мое определение проблем: в непривычной и устаревшей среде TP7 приходится игнорировать даже привычки к "выделить/скопировать/вставить текст" (проблемы среды); все результаты могут быть представлены только в виде консольного вывода или "графического режима" DOS. При подходе к обучению программированию "ab ovo" (серьезный курс, ставящий своими целями сполна изучить алгоритмы, структуры данных, концепции языков программирования etc.) - "мешающая" среда и убогие возможности представления результатов не мешают. При изучении программирования как "способа мышления о мире", "способа рассказывания историй" (как у [livejournal.com profile] ailev) - да, я требую среду, в которую можно легко вставить текст из чата/письма, где меню работает примерно также как в Word, Excel и обычном Блокноте; и да, я требую возможности "отобразить картинку", "издать звук", "отреагировать на действия пользователя" (и даже "скачать файл из Интернета") -- как базовых возможностей библиотек языка. См. Scratch, современные Logo, Hackety Hack и прочая, и прочая. Или хоть Python/Ruby - как языки без "большого количества излишних подробностей" и с большим количеством современных библиотек. Или на худой конец хоть уродцев Delphi/VB.Net - там есть возможность показать как "делается что-то реально работающее/интересное" а не "введите 10 чисел, отсортируйте по убыванию". (Или на самый-пресамый худой - VBA Офиса, позволяющий задать полезные навыки... но это совсем печально)

Re: мнение непрограммиста

Date: 2008-10-06 06:25 am (UTC)
From: [identity profile] vakhitov.livejournal.com
ОК, вас понял.

Re: мнение непрограммиста

Date: 2008-10-06 09:24 am (UTC)
From: [identity profile] baca6u.livejournal.com
если надо "копи пэйст" - пользуйтесь ncedit.
Думаю, что школьнику лучше научится "сортировать 10 чисел по убыванию" на бейсике (в широком смысле - т.е. понять, что как работает), чем получить навыки вставляния кнопок в экранчики в каком нибудь VBA.
Еще раз: не надо пытаться подготовить в школе индийских кодеров.

Re: мнение непрограммиста

Date: 2008-10-06 09:46 am (UTC)
From: [identity profile] zverok-kha.livejournal.com
а я, Вы знаете, вообще не вижу смысла "готовить в школе" кодеров/программистов/разработчиков - ни индийских, ни голландских, ни нубийских. А в чем я вижу смысл - я написал (в том самом комментарии, на который Вы отвечаете); то, что Вы этого не стали читать (а вместо этого начали общаться с какими-то своими проекциями) - Ваша проблема, не моя.

Date: 2008-10-05 02:15 pm (UTC)
alon_68: (Default)
From: [personal profile] alon_68
Ааа, Трубо Паскакаль от Борланда! Какой ностальгунчик! Неужто жив еще курилка? :))

Date: 2008-10-05 03:21 pm (UTC)
From: [identity profile] lykac.livejournal.com
Потому что в школах его можно заменить на Си. Чтоб в институтах Delphi заменить на C#.

Date: 2008-10-05 03:35 pm (UTC)
From: [identity profile] pigmeich.livejournal.com
Может наоборот? В школах шарп, в ВУЗах -- С++?

А чистый С -- зачем?
(deleted comment)

Date: 2008-10-05 10:44 pm (UTC)
From: [identity profile] pigmeich.livejournal.com
Объяснять надо. Но не сразу. Сначала, для снижения сложности, дать шарп, где складывать строчки можно и есть удобный дизайнер форм.

Потом объяснить, что есть ассемблер, биты-байты, слова двойные, регистры, стек растущий вниз (ну пусть IBM PC) и куча растущая вверх. И все это воспринимать как C++ -- реальном языке на котором уже можно работать.

А C это идеальный дробовик для простреливания себе ног. Аргумент, что ноги все равно надо простреливать не принимается, потому что прострелить можно и шарпом.

Date: 2008-10-05 08:30 pm (UTC)
From: [identity profile] vakhitov.livejournal.com
А зачем Паскаль, который под обучение затачивался, менять на Си? Внимание, мы не программистов обучаем, мы школьников учим азам программирования :-) Это несколько разные задачи.

Date: 2008-10-05 08:59 pm (UTC)
From: [identity profile] lykac.livejournal.com
Если исходить с позиции, что в школу люди ходят, чтоб потом на заводе проявить надёжно закреплённый рефлекс: от звонка до звонка заниматься нудной работой, которую приказал делать начальник, то непринципиально, учить ли в школе Си или Паскаль.

Если же считать, что в школе готовят заделы, которые можно развить до специализированного университетского образования, то учить следует Си. Поскольку языки с Си подобным синтаксисом используются многими программистами.

Я уже слышал, что Паскаль якобы создавался для образования. В чём я сомневаюсь. По-моему Никлаус Вирт его сделал, поскольку считал, что программирование в стиле спагетти надо прекратить хорошим процедурным языком. Разработчик компилятора Turbo Pascal Андерс Хейлсберг, быть может, писал его первую версию с расчётом на использование в обучение. Но из Turbo Pascal выросла капитализация Борланд. Компания продавала компилятор с большим набором библиотек для серьёзных разработок.

Date: 2008-10-06 07:29 am (UTC)
From: [identity profile] zverok-kha.livejournal.com
> Потому что в школах его можно заменить на Си.

О боже.

Date: 2008-10-05 01:39 pm (UTC)
From: (Anonymous)
Ох, если б только школах. В институтах тоже - на первом курсе. А через год на Борланд С++ под дос переучивают. А борландовские среды разработки искривляют мозг похлеще бейсика.

Date: 2008-10-06 06:51 am (UTC)
From: [identity profile] baca6u.livejournal.com
Вообще-то при изучении программирования в школе не стоит задача подготовить кодера. Задача несколько иная, и для ее решения Паскаль и его наследники - оптимальный вариант, благодаря строгой логичности. С, тем более С++ - гораздо хуже, из-за того, что не так строг. Причем, чем больше библиотека, чем больше возможностей создавать модули из готовых шаблонов перетаскиванием мышкой - тем хуже для обучения.
Бейсик - тоже неплох, QБейсик - хуже, в нем кажется игнорируется нумерация строк. Школьник - семикласник - вполне может написать игрушку строк на 100.
Торвальдс с бейсика начинал, если мне память не изменяет.

Date: 2008-10-06 07:27 am (UTC)
From: [identity profile] zverok-kha.livejournal.com
Я свою т.з. на этот вопрос в этом комменте (http://avva.livejournal.com/1967238.html?thread=54644358#t54644358) изложил.

December 2025

S M T W T F S
  123 4 56
78 9 10 11 1213
1415 1617181920
21 22 23 24 2526 27
28293031   

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Dec. 29th, 2025 02:57 am
Powered by Dreamwidth Studios