Я программист. Это то, что я делаю. Это то, что я люблю.

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

Но я не программист с рождения. Я не из тех чуваков, которые сделали свою первую игру на Бейсике в возрасте 3 лет.

Мне нравится программировать, потому что мне нравится что-то делать. (Хотя примите это за то, что есть, своего рода апостериорную рационализацию; возможно, мне нравится программирование просто потому, что мне нравится программировать.)

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

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

Потому что взаимодействие с машиной — это лишь крошечная часть программирования. Говорить с ним правильно несложно. Организация вашего кода, структурирование ваших программ, написание вещей, к которым вы сможете вернуться и понять годы спустя… это совсем другое.

И это 90% игры. Выучить язык легко. Освоить искусство сложно.

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

Вы чувствуете, что понимаете логику, когда учитесь программировать. Вы делаете много if/else, равно, больше и тому подобного. И конечно, это своего рода символическая логика, но это не логика людей. Это то, что принадлежит домену, и этот домен общается с компьютерами.

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

Таким образом, вы чувствуете, что знаете много о многом.

Ты не прав.

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

Полное освоение домена дает ощущение силы. И это чувство силы может сделать вас слишком большим для ваших штанов.

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

А для людей, которые являются поклонниками Science(tm), эти научные чуваки становятся гуру, научными священниками, которые, наконец, могут сказать им, как думать обо всем остальном.

Мне не нужно говорить вам, что чувак-ученый знает дерьмо о дерьме. Мне не нужно говорить вам, что его компетентность иллюзорна.

Например, когда вы читаете Snow Crash и слышите о нам-шубе, вы не воспринимаете это всерьез, не так ли? Нил Стивенсон — писатель. Он не лингвист. Он не Ноам Хомский.

Это работает и наоборот.

Да, люди могут комментировать что угодно. Я постоянно комментирую политику, и у меня нет политологического образования. Свобода слова и т.д. и т.п.

Говоря о политике, вы знаете своего кандидата против истеблишмента, который собирался в Вашингтон навести порядок, но в итоге стал еще одним винтиком в истеблишменте? Они лгали? Были ли они в заговоре, чтобы получить ваш голос, обещая то, что они никогда не планировали выполнить? Или они были просто посторонними, которые не знали, что на самом деле будет означать это обещание?

Доехали ли они до Вашингтона и поняли: «О да, я ни хрена не знаю»?

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

То же самое, когда фанаты Science(tm) начинают говорить о смерти философии, или смерти религии, или смерти феминизма, или смерти чего бы то ни было от рук Science(tm).

Просто… заткнись. На небе и на земле есть больше вещей, засранец, чем мечтается в твоей философии

Программисты любят (по крайней мере, по моему опыту) говорить об эффекте Даннинга-Крюгера. Я думаю, это потому, что они получили хорошую дозу Даннинга-Крюгера во время обучения программированию. Чтобы овладеть творческим искусством программирования, требуется много (много) практики, и легко недооценить ее количество.

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

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

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

Люди нечеткие. Они не похожи на машины. Мы не принимаем точных представлений о вещах. Все по аналогии. Мы в первую очередь реагируем чувствами. Наши эмоции управляют нашей логикой. Наши эмоции, по сути, являются нашей логикой. Все остальное — апостериорная рационализация.

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

Чтобы научиться справляться с этой нечеткостью, нужна мудрость, а информатика не учит мудрости.

Если вы сомневаетесь в этом, поговорите как-нибудь с преподавателями.

Программисты (не все, но необычно большое количество) не очень хорошо разбираются в социальных явлениях.

Объедините это с комплексом бога, и вы получите кучу придурков.

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

Потом я побывал на нескольких конференциях. Потом я залез в интернет.

Если вы когда-нибудь были на Slashdot, Hacker News или /r/programming, вы не можете не согласиться с тем, что там много действительно ужасных людей. Вокальные, ужасные люди.

Люди, которые думают, что попытки разнообразить методы найма — это расизм. Люди, которые думают, что гуманитарные степени ничего не стоят. Кто думает, что меритократия может работать. Кто думает, что управление того не стоит. Которые отказываются даже от стоячей встречи. Кто сексист и гордится этим.

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

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

И мы должны сказать им, чтобы они сделали это. Эти голоса доминируют… но они не обязаны.

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

Я мог бы перечислить целый список этих глупых, глупых тезисов, которые продолжают всплывать. Я мог бы объяснить, почему меритократия не является противоположностью расизма, я мог бы рассказать о том, что научно доказано, что меритократия не работает. Я мог бы показать, как программисты искажают либертарианцев, потому что они обычно занимают привилегированное положение в мире и не могут представить, что они будут аутсайдерами в своем либертарианском раю.

Я мог пройти через все это. Но я не буду. Дело не в Ореоле жопы, который есть у этих парней. Дело не в том, что каждая солнечная система в Галактике Придурков вращается вокруг сверхмассивной черной дыры их дерьмовых мнений.

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

Это не хорошо. Информатика, как и любая область, требует других голосов. Мы знаем это из природы, где однородность является синонимом коллапса. С возможной смертью.

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