0,0
рейтинг
12 января 2015 в 08:26

Разработка → Философия программирования 3 — Чичиков и программиат

Где вы нашли философию у Дональда Кнута? Академическое сообщество, это — 20 сумасшедших учёных, 2000 чичиковых, 20000 бюрократов и миллион детишек. Кнут это — Чичиков. На западе, даже сумасшедший учёный — умеет быть медийным, у нас это — «ранимые люди, с ними надо очень бережно, в лучшем смысле слова». Не могут связать двух слов, обижаются на вопросы. Поэтому в нашей науке видны только чичиковы, они раздают и получают награды, становятся директорами, основывают лаборатории, распиливают гранты, пристраивают своих. С прессой общаются, правда, тоже с трудом, — совок. А на западе это — развитой класс, они умеют работать с прессой, позиционироваться, колонизировать, занимать ниши, основывать религии. Найти человека который прочитал «Искусство Программирования» или «Конкретная Математика» практически невозможно, — те, кто считают Кнута за авторитет слишком глупы чтобы прочитать их, а те, что поумнее — читают книжки получше. Видимо, поэтому Кнут платил по 2.56 за каждую найденную опечатку, в надежде, что хотя-бы прочитают. Все его, с позволения сказать, книги — это копипаста алгоритмов из стэнфордских журналов, разбавленная топорным юмором, человек просто вовремя занял тему. А «детишки» от науки читают то, что им дают взрослые дяди — бюрократы и чичиковы. Вот и выходит, у бюрократов нет мозгов, у чичиковых есть мозги, но нет совести, сумасшедшие учёные — ранимые люди, обижаются.



Придыхание при произнесении имён, мемориальные доски, мой учитель был замечательный человек, статусные книжки и портреты в кабинете, пирожные для дочки профессора, цитатодрочерство в научных журналах — это всё академическое прохиндейство. Здесь и прописалась библия Кнута. Он подписывается китайскими иероглифами и рассказывает о том, что учился программировать по книгам советского Ершова, и делает это всё при каждом удобном случае, методично и аккуратно. Прокачка авторитета среди аборигенов. Человек прохаван. Вы видели сектантов проповедников из калифорнии по дальним каналам телевизора? Кнут их родственник, в буквальном смысле. Числовой анализ Библии, лекции «Господь и Айти». А что, креативненько, Библия — Искусство программирования — ассоциативный ряд, это Калифорния, детка.

Я не говорю, что это хорошо, или плохо — быть таким, как Кнут, просто вижу — ШАРИТ. Надо читать его книжки или не надо, личное дело каждого, — я уважаю свободный выбор, и просто констатирую: у всех есть, никто не читает. Иногда посидят помечтают в красивой позе, как барышня с томиком Байрона. Что, кстати, тоже неплохо, особенно если чаёк, пирожные, приятная музыка. Старший товарищ Кнута, Мартин Гарднер, другое дело, — закончил по специальности философия, тонкий джентельменский юмор, книжки хвалят после прочтения, а не до, — развивают интеллект. Сумасшедший учёный западного образца.

«Где ваши доказательства»? А вам, дорогой читатель, приходило в голову изучить его фигуру? Можете ли вы обойти заторы авторитетов в своём сознании? Как говорил Мюнхаузен: «если бы вырос сад, я бы так и сказал — сад, но если выросло дерево, то зачем же мне врать?» Кстати, мой первый компьютер был собран из спичечных коробков по книжке Гарднера, мальчику ни в одном магазине не хотели продать столько коробков, пришлось взрослых просить.

Дональд Кнут в роли Василя Вышиванного (Эрцгерцога в вышиванке).

Книги по программированию, вообще, дело десятое. Лучше всего учиться, во-первых: у живых людей. Просто находишь себе любого, кто умеет программировать и учишься у этого человека всему подряд. Можно смотреть ему в рот, бегать за пивом, носить за ним стул — не убудет — это сэнсэй. Даже если в жизни не очень приятный человек, горбун с запахом, или неудачник. И не обязательно учиться какому-то конкретному языку или технологии, а просто всему тому, что этот человек умеет и может показать-рассказать на пальцах, интересно показать. Это вменённое знание, тон голоса, манера сидеть у экрана, вы просто подключаетесь и впитываете. Для начинающих это лучшее, но это работает и для мастеров, как, например, Лассетер и Миядзаки.

Во-вторых надо много программировать. Женщины не умеют программировать, не могут сенситивно подключиться к абстрактной деятельности. Когда все экраны будут ретина, а лучше всего пушистые, а код будет моргать и дышать отображая на своём «лице», всё что происходит внутри — их будет не оторвать от кода. Но неспособность «зацепиться за экран» это бич и опытного программиста, когда всё концентрируется в голове, взгляд на экран не возбуждает обратную реакцию, сенситивика отключается: начинаются боль и соскальзывание мысли. Нужна глубокая вовлечённость, прилипание. Ребёнка можно просто посадить к экрану, он прилипнет, но взрослый должен сам осознавать свою сенситивику. Отсюда и желание прилипнуть к компу вообще, хоть блоги читать и анекдоты: план такой: оставаться у экрана любой ценой. Но этого мало, надо погрузиться именно в процесс программирования, установить ток и обратную связь, цикл — «редактирую, запускаю, смотрю на результаты» должен быть запущен, итерация должна идти, остановишь итерацию — встанет и ход мысли. Поток Михая.

И третье: свободный браузинг, это базовый навык программиста, раньше ходили по толкучкам и библиотекам, то же самое и сейчас, но в интернете: если вам надо понять, как генерируются псевдо-случайные числа — вы просто ищите в интернете. Ребёнок в 12 лет уже может это делать. Уметь найти референс, туториал, исходный код. Это и важнейший навык современного человека, умение найти что-то конкретное в сети, и умение бороться с отвлечением, оно же «СОС». СОС, это — синдром отвлекающих состояний (или сисек), Shiny Object Syndrome. СОС — это проблема нашего гиперинформационного общества, ещё двадцать лет назад испытывавшего информационный голод, помню собирали наклейки от заграничного пива на полном серьёзе, а теперь оно уже стало гиперинформационным. Проблему изменений в психике с переходом к гиперинформации обсуждали ещё советские учёные в передаче Очевидное Невероятное в тихие 80-е. Выработка фильтра в сознании, умение сохранять целенаправленность в хаосе отвлекающих объектов. А это ещё только начало, — мы живём во времена тихого, медленного, малодоступного интернета, нас ждёт информационная сингулярность, запасайтесь валерьянкой и навыком свободного браузинга.

Ну, а книги надо читать не по теме, а по людям, — выбираете высокоинтеллектуального и/или приходящегося вам по душе автора, и читаете, познаёте как он мыслит, как видит. Например книжка Страуструпа ужасна в качестве учебника по С++, но книжка прекрасная, показано, как мыслит разработчик языка программирования и опытный программист.

В обществе программист это — чужак. Среди чиновников, менеджеров, бухгалтеров, клиентов, юзеров — это инопланетянин, Чужой-3. Он прилетел с планеты «Наука», откуда корни профессии, и только там, на родной планете программиста его могли бы понять. Но, на самом деле, и там программиста никто не ждёт, программист в научном сообществе — на самой далёкой периферии, даже не студент. Студент, — хотя бы известный элемент, «дитёнок» в научном сообществе, оно заточено, чтобы о нём нянчиться. Но программист возник, как класс где-то на окраине науки, и там живёт, никто не знает как и чем. В своё время возник пролетариат — люди приехали из деревни и стали работать на заводах растущих как грибы. Стали где-то там жить, что-то там есть, совершенно новая среда, — городские кварталы для рабочих масс. Программист физически живёт среди всех, но он не от мира сего, он от мира науки. Но в мире науки ему нет места. На первый взгляд современная наука «организуется начальством». Но это ложная картинка.

Вся наука рождена перепиской и созданием клубов по интересам. Сообщество увлечённых. Сумасшедшие учёные. История науки это p2p: люди находят друг друга, узнают милого по походке. Осмысленный круг общения, ритмичная переписка, алгоритмизированый процесс. Обнаружил дом сделанный из дуба трёхсотлетней древности в деревне Шарлибордо, — написал другим: милостивый господин Сарльваторе, сообщаю Вам, что дуб может держаться 300 лет в мокром песчаннике на берегу адриатики. Господа учли, занесли в свои тетрадки, распространяют дальше, ретвит, избранное. Дорогой сэр Карл, пересылаю Вам письмо от нашего друга из Шарлибордо, он сообщает прелюбопытные сведения о местных разновидностях дуба. Меш-сеть. Прежде чем она стала заметна людям, и на неё «дали денег», система работала столетиями автономно. В основном паразитируя на торговом почтовом траффике. Торгаши приметили, стали спонсировать, особенно тех, кто помогал считать прибыль быстрее, корабли и повозки улучшить, и прочие технологии торговли прокачивал — инновации.

Ганзейский господин со своими девайсами и документами чувствует себя в 21-м веке, хотя на дворе 16-ый.

Интернет за 500 лет до интернета, карта Ганзы.

Господин Сальваторе два дня сидит считает прибыль для своего набоба, остальные пять дней звёзды изучает, переписывается, трактаты сочиняет, учеников водит по гимназиуму, рассказывает о сути бытия. Так возникает университет, в него сразу же приходят несколько типов людей. Первое, это — ученики торговца, племянники в основном, он их прислал чтобы арифметике учиться, второе: приживалы, — люди которые жили рядом и просто просекли, что тут «что-то дают», надо только умные слова вовремя вставлять, тебя глядишь за штудента примут, а то и за учёного, кормить будут. Чичиковы. Третье — это мечтатели, «прослышал детина Михайло, что в Санкт-Петербурге учёности учат, сел на рыбный обоз и поехал» — сумасшедший учёный. Образуется научное сообщество, в котором куча народу, но держится всё равно на господине Сальваторе, сэре Карле и подтягивается какой-нибудь новенький Михайло. У каждого свой университет, в котором ему поговорить особо не с кем, и они ведут переписку друг с другом. До сих пор. Всё остальное, — научные журналы, бюрократия, академия наук, экзамены, дипломы, докторские диссертации — это возникает потом, чтобы как-то упорядочить втекающий молодняк, чтобы ускорить разработку новых видов пушек для государства и арифмометров для торгашей. Это не наука, это — научная периферия. Наука, это переписка сумасшедших учёных.

Поскольку программистам нет места даже в этой периферии, они на периферии периферии, то нам остаётся только выкручиваться самим. Аналогичную проблему решали сто лет назад, возник пролетариат, новый класс, места ему не было в тогдашней системе. Чем его занять, как его контролировать было не ясно, как ему жить самому, тоже не ясно. У людей новые навыки, интеллект в десять раз мощнее чем у крестьян: способность жить в городе, существовать автономно — вне общины. Прокачанные суперлюди по тем временам, читать умели, считать немного. Ленин полагал, что им надо дать власть, как самым интеллектуально передовым. На западе нашли более простой способ: ну если вы умнее, и вам нужно занятие посложнее, пожалуйста: потребляйте. Как оказалось, потребление способно полностью занять могучий интеллект пролетариата и всех его производных, — клергия, сервисмены. Нечего было огород городить с новой общественной формацией. Тем более, что мозгов пролетариата не хватило, чтобы с господами тягаться. Им магнитофон показали, иномарку дали, они своё пролетарское государство сдали с потрохами за два года. Скорее всего программисты в основном так и останутся жить под крышей торгашей и бюрократов, и контролировать их будут дальше через потребление, только супер-потреблением, соответствующем возросшему интеллекту. Но есть часть программистов, особых.

Программист овладевший критической массой навыков и понятий, алгоритмированием высокого уровня, уже становится как ядерная реакция, и сдержать его истеблишменту будет очень трудно, пример микрософтов, гуглей и яблок, организованных программистами как бы намекает. Программисты отчуждённые от торговли, от науки, от всего — сами могут стать силой, но для этого им придётся воспользоваться технологиями сумасшедших учёных. Умением создавать разветвлённые горизонтальные сети, общаясь друг с другом как сэры и синьоры уже умели сотни лет назад. Но с кем переписываться и строить взрослые отношения?

Человек позвонил мне по скайпу и говорит: «я в скайпе невидимка, просто мне постоянно звонят и спрашивают как дела, надоело отвлекаться на ерунду». Знакомая картинка? Скажем, у вас 200 друзей — школьные друзья, родственники, со двора народ. Вы выпиваете, тусуетесь, личный контакт, улыбки, объятия, прогулки, долгие разговоры — это ваш первый уровень социального общения. Но в один прекрасный день вы обнаруживаете, что никто не интересуется вашей главной темой — лямбдами на хаскеле, или стартапами — поговорить не с кем, тогда вы начинаете искать таких людей вне своего круга. Выходите в интеллектуальный космос. На контакт с высокоорганизованными формами жизни. Чужой встречает Хищника. Второй уровень общения возникает если таких инопланетян в вашей жизни будет несколько, возникает сеть. Проверенная комбинация — душевное общение в первом круге, интеллектуальное во втором. Ваш личный вопрос: насколько вы хотите ограничить общение в первом уровне, и сколько времени вы хотите проводить в космическом пространстве второго?

Чувствуете, что тупеете, в свои то двацать-тридцать-сорок, чувство, что жизнь заканчивается? Человек слаб, сообщество сильно. Например, вы ковыряете свою программу, медленно, годами, всё медленнее, так и жизнь пройдёт, но вдруг я у вас раз в месяц интересуюсь — как идут дела, дорогой сэр? А вы у меня. И все у всех. Есть много участников и они знают темы друг друга, возникает сообщество и в нём возникает электрический ток, в головах, вы садитесь писать код и вдруг понимаете, что все участники сообщества мысленно с вами, они в вашей теме, вы ощущаете желание работать, чтобы, было что показать на следующем сеансе связи или встрече, и они ощущают — то же самое. Чувство фидбэка и резонанса. На этом принципе моральной поддержки и общей комотивации, строилась вся наука, культура и аристократическая политика. Душевность и в поддержание совместного интеллекта на определённом уровне, совместная экспансия и ощущение смысла бытия, групповая защищённость, и даже элементарный уход от одиночества и прозябания, и возможность равняться друг на друга и учиться. Это — высший свет. Такое сообщество могут создать программисты. Вопрос некоторого отрыва от первого круга решается легко, многие просто обрывают старые связи которые тянут вниз, но этого мало и даже не обязательно. Главное — подключение ко второму уровню, поиск равных, других программистов со сходными взглядами, видением.

На первом уровне общения можно вести себя полусознательно, отвлекаться на эмоции и прожигать время, а на втором уровне друзей — вы ДЕРЖИТЕСЬ, вы лично, все вместе, и каждый в отдельности, стараются «держать себя в обществе» — это второй уровень. Разговоры по делу и на максимуме интеллекта. Быть «на высоте». Обычно редкие, тщательно сконструированные емайлы дают возможность держать планку интеллектуального общения выше, чем посиделки в скайпе. Желание просто включить скайп или лично собраться — это надежда на то, что оказавшись среди умных людей, и вам в голову придёт что-то умное. Иногда приходит, но дисциплина переписки проверена столетиями. В скайпе скорее всего будут такие-же люди как и вы, сборище замыленых и уставших, и замороченных. А если они будут на уровне, а вы нет? Тогда нафиг вы им нужны в своём отупелом состоянии? Уровень интеллекта меняется каждые пол-часа.
Хотя иногда зацепиться языками по скайпу тоже пробуждает мысль и мотивацию. Есть такой Маринэску, — создатель одного из «американских хабров» – InfoQ, весь бизнес ведёт виртуально, офиса нет, он много пишет и говорит о том, когда в виртуальном сотрудничестве удобнее использовать чат, а когда майлы, когда спец софт, где скайп, как наладить communication flow при разбросе по планете.
Человек учит нас передовым вещам, одновременно пиарится – типичный «американский программист».

Сообщество это ещё и драйвер пиара и выход на другие сообщества. Вся история Европы — это свободные сообщества, которые выходят на общение друг с другом. Полисный мир со времён античности. Сеть, это не только полностью равномерные равноуровневые связи, это множество связаных мелких центров.

В интеллектуальной сфере не важно — кто первый создал аспирин или кто, реально, первый изобрёл радио — важно, только то, кто первый написал об этом в сообщество, и сообщество подхватило идею, передало другим сообществам. А кто ещё её подхватит? Вы думаете где-то сидят люди и ждут вас с вашей гениальной идеей, программой? В Сколково что-ли? Ну, было бы классно, но только Сколково это периферия науки, бюрократия созданная вокруг чичиковых и если нам повезло, парочки сумасшедших учёных. Создание софта и комьюнити — это две стороны одной медали. Кому-то, как Дурову, удастся создать софт для готового и ждущего комьюнити — студенты и выпускники, а потом и вся страна. Есть готовый запрос на технологию или проект, но настоящая работа и настоящие непаханые нивы — это области, где вы создаёте и сообщество и софт. Это не только бизнес, но и созидание человеческого общества, как такового. Чем больше сообществ, тем выше всё общество, страна, планета в цивилизационном измерении.

Вот, например, в качестве мысленного эксперимента попробуйте организовать всех жителей условной многоэтажки так, чтобы они выполняя элементарные алгоритмы добились того, чтобы в их доме никогда, никто никого не оскорбил, не ограбил, не обокрал, в лифте и подъезде было бы чисто и не написано матных слов. Это просто пример, научная задачка по социальной алгоритмике и потенциальная ниша для софта. Какой рынок нерешённых проблем в нашей стране и в мире по организации людей на разумную совместную деятельность, даже простейшую. А вроде бы, что сложного, это же просто домофон плюс принципы соц-сети, всё алгоритмизуемо. Пишется несколько функций, тревога, общий сбор, коммит субботников, карма-репутация, вертикальная организация, горизонтальная, отслеживание безопасности детей, трекинг подозрительных личностей, протеканий водопровода — чтобы превратить многоэтажку в безопасное и приятное место нужно кода, порядка, как для одного сайта по продаже пиццы на ангуляре. Но нужно выйти из плоскости, увидеть социальное измерение алгоритмики.

Часто бывает так: парень написал на форуме «Пацаны есть идея, давайте проект замутим», стартап, крауд-майнинг фоток, разработка библиотеки, клон варкрафта, но это — не работает! Паблик созданный по принципу — установили софт, регайся кто хочет, — это ещё не сообщество, это стая обезьян. Нельзя организовать стаю обезьян. А что работает? Можно только найти ОДНОГО человека проникнутого той же идеей, того же уровня как и ты сам, и держаться за него годами, разруливая обиды и непонятки, терпя все заморочки, вырабатывая общий язык, обсуждая темы на интеллекте, и вместе искать третьего, а потом четвёртого. Это работает. Американцы часто пишут, что трое это уже достаточно для взлёта проекта. Нельзя поставить форум, багтрекер, создать репозиторий, главную страничку, нарисовать лого в инкскейпе, придумать название и сидеть ждать чуда. Называется легла и ждёт оргазма. Чудес не бывает, — нужен ритм общения, не в продуктивности дело, а в ритме общения. Поэтому надо узнавать друг друга по походке и держаться друг за друга и держать уровень.

Вот люди поставили phpBB или более модный (самый лучший пока) Discourse и думают, что у них есть сообщество. А почему? Потому, что у самих кроме софта ничего нет, нет умения общаться, поддерживать связь, нет понимания, что такое общение, дискуссия, самоорганизация, культура обсуждения. Люди надеются на алгоритм заложенный в софт форума, надеются на софт, а не на себя. Да, там много кода в этой борде, но из всех десятков или сотен тысяч строк кода, именно СОЦИАЛЬНОГО КОДА — ничтожная часть. Сообщество возникает на софте заложенном в головах, а не в компах, это называется манеры, вежливость, умение себя вести, говорить по делу, вести дискуссию, держаться в обществе, держаться вместе, и много других прекрасных названий — ЕЩЁ сохранились в русском языке, но они умирают — слова есть, применение утрачено, наследники великой культурной империи превращаются в дикарей постнуклеара. Этим чумазым детям наступившего будущего не интересно переписываться друг с другом на умные темы, они играют в игрушки из запчастей от сломанных советских звездолётов или в лазеры привезённые чужестранцами. Я понимаю, мы сейчас освоим технику, и займёмся делом. Но только когда? Вы уверены, что это вообще случится, ведь техника всё прибывает и прибывает. Когда же настанет время оглянуться по сторонам и обнаружить существование аналогичных себе существ, и понять, что играться друг с другом во взрослых умных людей — тоже очень интересно?

Философия программирования
6: Продукт и Проект
5: Реактос и Колибри
4: Технология «Шапито»
3: Чичиков и программиат
2: Миф и язык
1: Трёхнаправленное программирование
Яков Судейкин (Нивин) @4p4
карма
60,0
рейтинг 0,0
Реклама помогает поддерживать и развивать наши сервисы

Подробнее
Реклама

Самое читаемое Разработка

Комментарии (35)

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

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

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

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

          А вы, похоже, с этими алгоритмами не знакомы, и это кое-что говорит о ваших познаниях в области теории от программирования.
          • 0
            Сомневаюсь, что Кнут сказал хоть одно новое слово в парсерах, но даже если и сказал, то таких людей сотни, кто поучавствовал в развитии парсеров, тема бездонная и со стороны математиков, и программистов, и лингвистов. Но на педьестале стоит кнут со своей Библией. Это надо уметь. Аналог Эйнштейна, который в книге ядерной физики написал от силы пару строк, а считается величайшим гением всех времён и народов.
            • НЛО прилетело и опубликовало эту надпись здесь
            • 0
              Я не говорю об Эйнштейне, потому что я не физик; я говорю о Кнуте, потому что я программист, который интересуется парсерами.

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

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

    Уже третья статья, наверное пора спросить автора: уважаемый, а где философия-то? Сколько еще статей ждать?
  • +2
    Интересно, если Кнут только копипастил и его умные люди не читают, почему в сорцах 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) { ... }
    
  • +11
    >> Женщины не умеют программировать, не могут сенситивно подключиться к абстрактной деятельности.
    Ада Лавлейс смотрит на вас с укором.
    • 0
      «Ты безумна как и твой отец, Байрон», говорила мама Аде Лавлейс с раннего детства. Ада верила родной матери. В викторианскую эпоху назвать человека безумным было поставить на нём крест, общество было помешано(!) на рациональном. Говорят, поэтому, мать и водила дочь везде где были машины, где была логика. Её в юности очень впечатлил станок вышивавший узоры набитые на перфокартах. Когда она познакомилась с работой Бэббиджа, сначала по книжке Менабреа, которую она перевела на английский, а потом и лично, ей уже оставалось жить пару лет, она была смертельно больна. Её «заметки», несколько рисунков из которых и считаются «первой в мире программой», — это многие сотни страниц философских рассуждений, похожих на мою статью, и там есть одна табличка которую и считают первой программой. Всё это только усиливает тезис об эмоциональной вовлечённости в процесс, как необходимом элементе для программирования.
      • +1
        Нет, не усиливает. И, что важнее, никак не подтверждает тезис о том, что женщины не могут программировать.
        • НЛО прилетело и опубликовало эту надпись здесь
          • +1
            Глядя правде в глаза, по-настоящему программировать и среди мужчин могут только единицы.
            • НЛО прилетело и опубликовало эту надпись здесь
              • +1
                А давайте заодно взглянем вообще на историю? Много вы знаете известных женщин-математиков (здесь и далее — в сравнении с числом мужчин в той же профессии)? Философов? Возьмем другие области знания: архитекторов? Художников? Композиторов? Писателей?

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

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

                PS вы пользуетесь bluetooth или wifi? А про Хейди Ламарр вы слышали?
                • НЛО прилетело и опубликовало эту надпись здесь
                  • +1
                    Именно что «и статистика». То, что процент известных вам женщин в тех или иных областях деятельности крайне мал, никак не говорит о способностях женщины в этих областях деятельности.

                    Интереса ради — назовите, пожалуйста, хотя бы один преимущественно умственный род деятельности, где вам известно больше успешных женщин, чем мужчин.
                    • 0
                      К примеру есть много знакомых женщин, которые учились точным наукам, средня способность к программированию у которых ниже (по моим субъективным оценкам), чем у таких же мужчин. Возможно этот «скилл» уже лежит в выработанной генетической программе и связан с постоянным гендерным «вытеснением» женщин из подобных областей деятельности. Но, раз уж статистику делим на ноль, то вот вам честное слово: старался отбросить все предрассудки и оценить здраво и, полчается, что повторюсь — женщины (исходя из моего субъективного анализа) не на столько способны к программированию (даже среди тех, кто стремится к точным наукам), как мужчины.
                      • 0
                        Я соглашусь с тем, что это ваше субъективное наблюдение на вашей же выборке. Распространять его на всех женщин я бы не стал.
            • НЛО прилетело и опубликовало эту надпись здесь
  • +3
    Сколько нарциссизма, огоспидя.
    Ну и как отметили выше — поливание людей грязью.
  • НЛО прилетело и опубликовало эту надпись здесь
    • +4
      Как и раньше, согласен что в словах автора есть зерна истины, но ему самому еще учиться и учиться вещам, которые называются
      манеры, вежливость, умение себя вести, говорить по делу, вести дискуссию, держаться в обществе, держаться вместе, и много других прекрасных названий
    • 0
      Философия ведь так похожа на попытку объективно описать субъективные ощущения.
  • +2
    Кажется, в данной конкретной философии программирования нет ни философии, ни программирования :(

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

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

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

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

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

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

    А еще в тексте есть трудноуловимая зависть к «пацанам типа Дурова, которые пришли к успеху». Ну, что тут можно сказать… зависть — плохое чувство, но если уж кому и завидовать — так Кнуту и компании (за то что у них такие клевые мозги), а не Дурову (за то, что у него так дофига бабла).
    • НЛО прилетело и опубликовало эту надпись здесь
    • 0
      Зависти в тексте нет.
    • 0
    • 0
      * Программисты — новый социальный слой (класс по Марксу). Это неверно. В чем принципиальная (классовая!) разница между программированием и инженерией?


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

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

    Но похоже, наиболее фундаментальные открытия в программировании были совершены в 60-е. Тут тебе и P/V операции Дейкстры и Хоара (привет обедающим философам) или тот же Черч с лямбдами.
  • +1
    Спасибо, прочитал все три статьи на одном дыхании. Есть о чем подумать. Буду ждать продолжения.
  • +1
    Спасибо за интересную статью!

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.