[room] программирование и математика

Michael Shigorin =?iso-8859-1?q?mike_=CE=C1_osdn=2Eorg=2Eua?=
Сб Ноя 26 15:50:28 MSK 2005


On Thu, Nov 17, 2005 at 12:36:09AM +0300, Денис Смирнов wrote:
> MS> Это же не значит, что программистом может быть исключительно
> MS> читавший книги по CS?  От каких-то велосипедов и шишек помогает, 
> MS> но математика -- не единственное выражение способности обобщать.
> Знаешь, несколько лет назад я выпендривался на тему "лесом вашу
> математику, мне и уровня 3-го класса выше крыши при программировании".
> А теперь вот волосы на себе рву, потому как кнута читать просто
> времени нет. И понимаю что либо пора сваливать полностью в
> менеджмент, либо посылать всех и всё нахрен и устраивать себе
> полную переподготовку, именно начиная с кнута.

А это нормально, как мне кажется.  Я Кнута тоже почитал сильно
чуточку (уже в университете, спасибо научному), проникся, но уже
тогда понял, наверное, что грамотных инженеров (программистов, 
в частности) вокруг хватает, вот только это ещё не всё.

> Программист обязан знать алгоритмику. Ему полезно знать
> вычислительную математику. И он обязан знать логику работы
> процессора на уровне хотя бы таненбаумовской книжки + выводы.

Как хорошо, что я не программист (по твоим меркам) :).
Таненбаума читать не хочу вообще, как и других подобных
упёртых скандалистов.  Хоть о семидесяти семи пядях.

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

Ещё помогает уметь абстрагироваться от необходимости решения
_всей_ задачи и перегрузить часть на более адекватных ей других 
или вообще найти уже существующее решение.

Вот, с утра научный звонил, кой-чего по бакалаврской спрашивал.
Опять (второй раз за месяц?) засунул нос в исходники пятилетней
давности, которые уже не компилируются gcc-3.4 с -Wall -pedantic
(ба... а ведь действительно, специально всё вычищал :) из-за
одного комментария в стиле C++ и падают при вызове программы без
параметров, потому что usage() и вызывается неправильно, и вообще
пустышка даже без exit(1).  Ну поправил за несколько минут. :)

Так ведь там малая часть задачи решена, только уникальная.
Всё остальное -- спасибо авторскому коллективу libgmp.

PS: я это к чему.  У самого /некоторые/ склонности к математике,
местами наследственные, есть.  И дипломы всякие по этой части --
тоже.  Ровно потому и считаю, что некоторое право говорить, что
глубокая заточка дискреткой et al _программисту_ -- действительно
необязательна.  Помогает, порой сильно, но программистов-теоретиков
ещё не встречал, в отличие от математиков, физиков да химиков.

(те, кто пишут книжки -- или при этом практики, или, наверное,
"кто не умеет -- учит"?..)

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



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