[Freeschool] [JT] _как_ стоит учить в школе

Michael Shigorin =?iso-8859-1?q?mike_=CE=C1_osdn=2Eorg=2Eua?=
Пт Окт 24 18:20:13 MSD 2008


On Fri, Oct 24, 2008 at 04:39:18PM +0400, Dmitriy M. Maslennikov wrote:
> Из текста, что вы привели:
> 
> Настоящий профессионал  --  может  показать руками, как  ЭТО
> делается.

Причём именно красиво.  Показать -- недостаточно.

> Непрофессионал будет много и красиво рассказывать.
> Но -- не покажет.

Чтоб красиво рассказать, надо уметь красиво сделать.
Иначе не получится.

> Так вот, я начал оформлять свои мысли в курс обучения
> программированию

*sigh*

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

Поскольку главное неспособны заметить даже на блюдечке
с голубой каёмочкой, похоже.

Но об этом -- в соседнем письме и не моими словами.

> а вы?

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

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

В 1999 был создан и утверждён мелкий обзорный курс по UNIX-like,
в котором к программированию имеет отношение разве что фрагмент
про "подножную автоматизацию" на шелле с fileutils/textutils
(который, между прочим, тогда тоже излагался в два подхода --
сперва пишем скрипт, который решает задачу за нас, затем отсекаем
лишнее и остаётся в полтора раза меньше плюс выразительней).
(года три тому неожиданно пара человек всплыла сказать спасибо :)

Опубликован здесь: http://fly.osdn.org.ua/~mike/docs/ Linux145.*

Может, и до программирования доберёмся.  Особенно если автор
этого курса всё-таки найдёт резервную копию:
http://web.archive.org/web/20040606132844/ruby.iatp.by/seminar/
http://web.archive.org/web/20040606193205/ruby.iatp.by/seminar/materials.html
или web archive отдаст остаток слайдов -- похоже, там по ~16K.

--- лирика ---

> Язык программирования -- это инструмент. Красивым или некрасивым
> должен быть не инструмент, а результат деятельности: программа или
> библиотека.

Hint 1: реализация языка программирования -- тоже программа.
Hint 2: _мои_ инструменты _должны_ быть красивыми.  Перефразируя,
я не настолько богат временем, чтобы использовать некрасивые.

> Вам python мешает делать красивые программы?

Нет, потому что он был признан плохо для этого подходящим.
Хотя читая куски кода peet@'овского connexion в jabber по ходу
его творческой мысли, не могу не отметить элегантность многих.

Кстати, с ним можете более предметно пообщаться насчёт "ремесла".

> А вот русским мастерам топор не мешал создавать прекрасные
> строения!

Сперва они создали добротный топор, который не норовит 
отстрелить ногу.

> Вы говорите: "Фи, этими пассатижами я ничего не сделаю красиво.
> У них царапина на ручке, как мне кажется. Она будет натирать
> мне руку. Дайте мне импортные с лакированной ручкой!" --
> кричите вы.

Как же трудно, когда человек упёрся носом в неважное...

Ручка -- дело такое, отполируется [привыкнешь].

Плохие пассатижи -- например, со ржавыми губками, они эту
ржавчину впечатают в то, что ими подгибаешь [кривой код].

> "Я профессионал, я авторитетно заявляю, что с такой царапиной и
> работать нелься, а если вы дадите их ребенку -- да это УЖАС!"

Ржавые плоскогубцы -- это ужас.  Дата, подпись.
См. тж. примечание.

> А тем временем куча "кодеров", как вы любите выражаться

Крайне не люблю так выражаться, но очень редко приходится
ими кого-либо характеризовать.  http://search.altlinux.org

> создает для вас прекрасные и не очень программы, которыми
> пользуемся все мы.

Я не видел ещё ни одной _созданной_ кодером программы, тем более
_прекрасной_.  _Написанных_ кодерами -- куда ни плюнь.

Вон в xorg добрались кодеры -- теперь у нас у всех глючит даже
то, что было уже давно вылизано и просто работало.  А вот иные
мужики с пониманием того, что вообще к чему -- из проекта ушли.

> Я не могу ругать python, хотя и признаю за ним некоторые
> недостатки (не те, которые вы называли).

Не, ну объективно недостатки-то у всего здесь есть.

> Не могу, просто потому, что я использую этот инструмент в своей
> деятельности. И он позволяет делать мне ее эффективно, я это
> ценю, как и ценю работу разработчиков python (и ruby, и, даже,
> php, хотя сам могу ругать этот язык, но у разработчиков былина
> то свои причины и я уважаю их труд). А вы только ругаете.

Труд -- уважаю.  Но не всякий использую.

Ругаюсь,
- когда кодеры называют себя программистами;
- когда детям в руки суют не то.

Вы умудрились наступить на две мозоли сразу.

> Надо полагать у вас получилось бы намного лучше, чем у Гвидо?

В отличие от Гвидо, я осилил лисп, прежде чем садиться за машину.
Поэтому изобретать велосипед бы и не стал.  Особенно ржавый.

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

Примечание
~~~~~~~~~~

Про царапины (точнее, заусеницы) как раз упоминаю применительно 
к офисным пакетам, сравнивая их с лопатами: OOo -- с задирами,
MSO -- с отполированной ручкой.  Только это в другом контексте,
что нечего лопатами вообще орудовать, когда экскаватор нужен.
Это из практики миграции пользователей (в т.ч. с MSO на OOo),
включая случаи, когда клиенту вообще показан OLAP или kx.com.

-- 
 ---- WBR, Michael Shigorin <mike на altlinux.ru>
  ------ Linux.Kiev http://www.linux.kiev.ua/


Подробная информация о списке рассылки Freeschool