Pull to refresh

Comments 35

Ничего, что Кнут TeX создал? За одно это его можно уважать.
причем создал для того что бы отформатить свою книгу. Т.е. появилась проблема, взял, порешал, напрограммил, а побочно его решение стало промышленным стандартам. Так и не понял я пренебрежения автора. Насчет придыхания согласен — как говорили в 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.