Comments 35
причем создал для того что бы отформатить свою книгу. Т.е. появилась проблема, взял, порешал, напрограммил, а побочно его решение стало промышленным стандартам. Так и не понял я пренебрежения автора. Насчет придыхания согласен — как говорили в 90-ые, здесь авторитетов нет, есть уважаемые люди. Но столь небрежное отношение к таким людям — на мой взгляд не долее чем демонстрация узости кругозора.
Уважение это — категория эмоциональная, возможно, моя статья затрагивает чувства верующих, отсюда эмоции и разговор об уважении, попытка защитить один из своих авторитетов, а следовательно, и свой внутренний мир. Я сам никакого неуважения к Кнуту не испытываю, человек — интересный, знаковый. Он писал свой ТеХ, на публику, сознательно, как ещё один томик своей Библии, каждая строчка — на публику. Мифы о том, что «ТеХ такой уродливый потому, что это самая древняя программа» или «ТеХ самый изучаемый опенсорс проект после линукса» или «Я его написал, потому-что моя книга плохо выглядела в печати», — всё это МИФЫ, придуманные самим Кнутом. И вы их ретранслируете. Человек не только придумал, как сделать себе имя, но и как превратить свою программу ТеХ в медийное, культурное, социальное явление, о чём я и пишу. Кнут для меня это иллюстрация к общей картинке.
Я особой любви к Кнуту не испытываю, но знаю его работы не по слухам, читал всякую непопулярную конкретику, типа ключевые научные работ на разные темы, и имя Кнута встречал там достаточно часто.

Так вот. Книги у него длинные, скучные и во многом бестолковые, и я бы их никому не рекомендовал.

Например, я интересовался парсерами, достаточно глубоко, вплоть до истории разных техник и приемов. Так вот. В теории компиляторов все основные техники, и даже саму классификацию парсеров по классам разбираемых грамматик, додумался использовать именно Кнут.

И в том проблема его книг, что автор — ученый, а не преподаватель, а не в том, что он болтун.

А вы, похоже, с этими алгоритмами не знакомы, и это кое-что говорит о ваших познаниях в области теории от программирования.
Сомневаюсь, что Кнут сказал хоть одно новое слово в парсерах, но даже если и сказал, то таких людей сотни, кто поучавствовал в развитии парсеров, тема бездонная и со стороны математиков, и программистов, и лингвистов. Но на педьестале стоит кнут со своей Библией. Это надо уметь. Аналог Эйнштейна, который в книге ядерной физики написал от силы пару строк, а считается величайшим гением всех времён и народов.
UFO landed and left these words here
Я не говорю об Эйнштейне, потому что я не физик; я говорю о Кнуте, потому что я программист, который интересуется парсерами.

Повторяю: Кнут заложил основы современной теории алгоритмов (нотация большого О, например, в приложении к алгоритмам — его идея), основы теории компиляторов (предложил классификацию парсеров и ключевые базовые алгоритмы). И это только то, что я могу вспомнить, не заглядывая в список его работ.

Меня удивляет, что вы говорите что-то о Кнуте, не зная, что именно он сделал, это помимо просто знаменитых книг и программ. Конечно, он был не один, но был одним из первых, и этих остальных первых вы тоже, думаю, не особо знаете.
Проблемка как раз в том, что это вы не знаете Кнута, для вас всё в его жизни как человека, что он сделал, чем он является — просто не существует. Для вас это просто имя сопровождающее какую-то страницу книги. Я же как философ пытаюсь вам открыть Кнута и других людей, как ЛЮДЕЙ.
Поливание грязью отдельных людей и отдельных групп — есть, пренебрежение к читателю и провокации — есть, капитанство — тоже есть. Ах да, еще про кубометры воды забыл.

Уже третья статья, наверное пора спросить автора: уважаемый, а где философия-то? Сколько еще статей ждать?
Интересно, если Кнут только копипастил и его умные люди не читают, почему в сорцах JDK ссылаются на него, а не на первоисточники?

/* java/util/Random.java
 * An instance of this class is used to generate a stream of
 * pseudorandom numbers. The class uses a 48-bit seed, which is
 * modified using a linear congruential formula. (See Donald Knuth,
 * <i>The Art of Computer Programming, Volume 2</i>, Section 3.2.1.)
 */


/* java/util/IdentityHashMap.java
    private void closeDeletion(int d) {
        // Adapted from Knuth Section 6.4 Algorithm R
        Object[] tab = table;
        int len = tab.length;
        ...
    }


/** java/lang/ThreadLocal.java
 * Expunge a stale entry by rehashing any possibly colliding entries
 * lying between staleSlot and the next null slot.  This also expunges
 * any other stale entries encountered before the trailing null.  See
 * Knuth, Section 6.4
 */


/** java/math/MutableBigInteger.java
 * Calculates the quotient of this div b and places the quotient in the
 * provided MutableBigInteger objects and the remainder object is returned.
 *
 * Uses Algorithm D in Knuth section 4.3.1.
 * Many optimizations to that algorithm have been adapted from the Colin
 * Plumb C library.
 * It special cases one word divisors for speed. The content of b is not
 * changed.
 *
 */
MutableBigInteger divideKnuth(MutableBigInteger b, MutableBigInteger quotient, boolean needRemainder) { ... }
>> Женщины не умеют программировать, не могут сенситивно подключиться к абстрактной деятельности.
Ада Лавлейс смотрит на вас с укором.
«Ты безумна как и твой отец, Байрон», говорила мама Аде Лавлейс с раннего детства. Ада верила родной матери. В викторианскую эпоху назвать человека безумным было поставить на нём крест, общество было помешано(!) на рациональном. Говорят, поэтому, мать и водила дочь везде где были машины, где была логика. Её в юности очень впечатлил станок вышивавший узоры набитые на перфокартах. Когда она познакомилась с работой Бэббиджа, сначала по книжке Менабреа, которую она перевела на английский, а потом и лично, ей уже оставалось жить пару лет, она была смертельно больна. Её «заметки», несколько рисунков из которых и считаются «первой в мире программой», — это многие сотни страниц философских рассуждений, похожих на мою статью, и там есть одна табличка которую и считают первой программой. Всё это только усиливает тезис об эмоциональной вовлечённости в процесс, как необходимом элементе для программирования.
Нет, не усиливает. И, что важнее, никак не подтверждает тезис о том, что женщины не могут программировать.
UFO landed and left these words here
Глядя правде в глаза, по-настоящему программировать и среди мужчин могут только единицы.
UFO landed and left these words here
А давайте заодно взглянем вообще на историю? Много вы знаете известных женщин-математиков (здесь и далее — в сравнении с числом мужчин в той же профессии)? Философов? Возьмем другие области знания: архитекторов? Художников? Композиторов? Писателей?

В каких же областях тогда, как вы выражаетесь, «лежит скилл» у женщин? И как это сочетается с тем фактом, что в фотографии (которая по типу мышления чрезвычайно близка живописи) доля известных женщин существенно выше? Или с тем фактом, что я лично знаком с одной женщиной-физиком, двумя математиками (и все они существенно сильнее меня в этих областях), композитором, двумя писателями, а уж среди знакомых художников и поэтов женщин просто больше, чем мужчин.

Может, стоит все-таки задуматься о том, что общество весьма сильно влияет на развитие личности, и в обществе, которое не одобряет женские занятия «серьезными науками», не может вырасти значимого числа женщин-специалистов в этих науках, вне зависимости от их «врожденных способностей».

PS вы пользуетесь bluetooth или wifi? А про Хейди Ламарр вы слышали?
UFO landed and left these words here
Именно что «и статистика». То, что процент известных вам женщин в тех или иных областях деятельности крайне мал, никак не говорит о способностях женщины в этих областях деятельности.

Интереса ради — назовите, пожалуйста, хотя бы один преимущественно умственный род деятельности, где вам известно больше успешных женщин, чем мужчин.
К примеру есть много знакомых женщин, которые учились точным наукам, средня способность к программированию у которых ниже (по моим субъективным оценкам), чем у таких же мужчин. Возможно этот «скилл» уже лежит в выработанной генетической программе и связан с постоянным гендерным «вытеснением» женщин из подобных областей деятельности. Но, раз уж статистику делим на ноль, то вот вам честное слово: старался отбросить все предрассудки и оценить здраво и, полчается, что повторюсь — женщины (исходя из моего субъективного анализа) не на столько способны к программированию (даже среди тех, кто стремится к точным наукам), как мужчины.
Я соглашусь с тем, что это ваше субъективное наблюдение на вашей же выборке. Распространять его на всех женщин я бы не стал.
UFO landed and left these words here
Сколько нарциссизма, огоспидя.
Ну и как отметили выше — поливание людей грязью.
UFO landed and left these words here
Как и раньше, согласен что в словах автора есть зерна истины, но ему самому еще учиться и учиться вещам, которые называются
манеры, вежливость, умение себя вести, говорить по делу, вести дискуссию, держаться в обществе, держаться вместе, и много других прекрасных названий
Философия ведь так похожа на попытку объективно описать субъективные ощущения.
Кажется, в данной конкретной философии программирования нет ни философии, ни программирования :(

Ну, а теперь всерьез. В статье я (со своей весьма скромной колокольни) углядел несколько вполне очевидных фактов (сразу даю с моими комментариями, ок?):

* Некоторые IT-шники — откровенные гики и не от мира сего, а некоторые нет. Автор почему-то говорит об этом так, как будто это что-то плохое. Комментировать тут привязку «Россия — Запад» не хочется (противно, простите).

* Никто не читал «Искусство Программирования». Мне… э… гм… ну я очень надеюсь, что большая часть авторов хабра таки читала. Ведь правда, ребята? :)

* Примат Учителя над Книгой. Это весьма спорный и недоказанный тезис. Мне кажется, что это неверно, и что лучше учиться по книгам гениев, чем у посредственных учителей.

* Программисты — новый социальный слой (класс по Марксу). Это неверно. В чем принципиальная (классовая!) разница между программированием и инженерией?

*Наука, это переписка сумасшедших учёных.* Гениальная подмена понятий! Да, наука, как и любая сфера деятельности, РОЖДАЕТСЯ как «клуб по интересам», но не далее. Например, физика XX века к «клубу по интересам» не имеет никакого отношения (хорошо это или плохо — отдельный вопрос).

А еще в тексте есть трудноуловимая зависть к «пацанам типа Дурова, которые пришли к успеху». Ну, что тут можно сказать… зависть — плохое чувство, но если уж кому и завидовать — так Кнуту и компании (за то что у них такие клевые мозги), а не Дурову (за то, что у него так дофига бабла).
UFO landed and left these words here
* Программисты — новый социальный слой (класс по Марксу). Это неверно. В чем принципиальная (классовая!) разница между программированием и инженерией?


В чем принципиальная (классовая) разница между программистом и токарем? Никакой.
Спасибо! Никого не слушайте — продолжайте писать. Если тут забанят — пишите на dou.ua — там такого вообще, к сожалению, нет. (Правда оно в РФ заблокировано).
Мне кажется, что Кнут — это что-то вроде «хрестоматии по чтению» или скорее даже учебник арифметики Магницкого. Никто же не будет полемизировать с Магницким и утверждать, что он пиарился у Петра Первого?

Что касается спора computer science против математики, то надо просто вспомнить, что даже в новое время математики занимались в основном поисками алгоритмов, например поисками решений уравнений степени n или там квадратурой круга. Даже сейчас какие-нибудь исследования по теории функций непонятно куда относить — то ли это математика, то ли логика, то ли программирование.

Но похоже, наиболее фундаментальные открытия в программировании были совершены в 60-е. Тут тебе и P/V операции Дейкстры и Хоара (привет обедающим философам) или тот же Черч с лямбдами.
Спасибо, прочитал все три статьи на одном дыхании. Есть о чем подумать. Буду ждать продолжения.
Only those users with full accounts are able to leave comments. Log in, please.