Категория: Неопубликованное

Заметки, которые я написал, но так никогда и не опубликовал в общем потоке.

О ретконе v1

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

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

Как можно так думать?
Очевидно, если вы жили вместе семь лет, вы любили друг друга. Может, не всё это время, но долго. Ты была счастлива с ним, потому, что если бы не была, ты бы и месяца не просидела, молодая тётка с кучей поклонников.
Я это вижу со стороны. А девушка, которая рассказывает, верит иначе (я уж не знаю, насколько искренне). Как это случилось?

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

Но у меня есть догадка, почему бывает реткон.
Он появляется, когда уходишь из избытка: из ситуации, когда отношения надоели тебе. Они могли надоесть и другому человеку, но тебе они тоже надоели. Реткон это обратная сторона прилипчивости.

Образ друга или любимой в голове сложены из памяти. Они хранят всё за многие годы. Когда рассудок спрашивает себя: люблю ли я этого человека? То память подсказывает: конечно! Вот ты любил её, вот ты делал для неё, вот сколько ты думал о ней.
Или рассудок спрашивает: любит ли она меня? И память говорит: да как же может не любить! Ты помнишь, как она тебя слушала, смеялась над твоими шутками? Что было потом это пустяки, сложи всё с прежними чувствами! Поэтому трудно поверить, что тебя разлюбили.

Образ сложен из памяти, но чувства – сегодняшние.
Сегодня и сейчас разлюбивший парень, разлюбившая девушка, забивший на тебя друг не хотят быть с тобой. Они не хотят в глубине души. Это видно в их действиях. Они не думают о тебе, не волнуются за твоё отношение, не стремятся быть с тобой, не боятся тебя потерять. Ты не радость для них.
Но когда они спрашивают себя: люблю ли я этого человека? То память отвечает: конечно! Вот сколько вы друг другу сделали. И они продолжают думать, что любят. (До какого-то момента, конечно)

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

Или вот мне рассказывали про девушку, которая долго встречалась с парнем и коллеги на работе стали ей говорить "бросай ты этого козла". И только в очередной раз я задумался.
Прямо вот так, "козла"? И она слушала? Мне бы сказали так про девушку, которую я люблю, я слушал бы дальше?
– Так она сама уже разлюбила.
– Нет, очень любила его ещё долго.

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

То есть, настоящие мотивы у людей совсем не такие, в каких они отдают себе отчёт.

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

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

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

ずる じる

Очевидная грамматика, но запишу.

Бывают глаголы, сделанные из онного чтения + する. Обычно оно превращается в ずる: 通ずる. И обычно у таких глаголов есть версия с じる вместо ずる (通じる). Это одно и то же. Какая распространённей – дело случая.

Возвратные глаголы к ним делаются по очевидным правилам. В первом случае する -> される, а ずる – ざれる (通ざれる)! Во втором じる -> じられる (通じられる).

О программировании

Навык программиста в том, чтобы делать то, что хочется быстро и дёшево.
NB: Позже я придумал иначе: в том, чтобы наиболее выгодно переводить усилия в удобство (чьё-то, а в конечном счёте своё).

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

Из этого заблуждения возникает архитектурная астронавтика и боязнь хардкода. "Что, если эти обстоятельства изменятся? А если эти? А те?" Такой образ мыслей существует до тех пор, пока человек замечает обстоятельства избирательно; пока он не окинет свой код взглядом и не увидит, что всё в нём – это обстоятельства. Программа это закодированное условие, ограничение на полный произвол. Делая её "универсальнее", вы убираете часть условий, перекладываете их на плечи пользователя.

Например, вы пишете интерфейс доступа к базе данных. Ваша цель конкретна: каталог фильмов, режиссёров, актёров. Что сделает начинающий программист? Запросы "getMovie", "getActor", "getDirector" и так далее.
Но это неуниверсально! Что, если завтра в базе появятся книги? Другой программист предлагает: сделаем "getWork", "getPerson", у work будет параметр type (movie, book), а person будет по отношению к work иметь relation (актёр, режиссёр, автор книги).
Хорошая это идея? Ну, нормальная. Реализовывать её сложнее. Пользоваться ей сложнее! API слегка неочевиднее. Но действительно, очень полезно для расширения.
Третий программист говорит: Кто знает этих заказчиков! Сегодня они хотят одни поля, а завтра другие. Предлагаю сделать ещё универсальнее: getTable(name), getRecord(table, index), getField(record, index). Обратите внимание, какая универсальность! Мы можем хранить внутри таблицы фильмов и актёров, а можем автобусов и маршрутов. Мы можем хранить данные на сервере, а можем кешировать локально. Может прозрачно вводить любые отношения и ограничения!

Но этот универсальный интерфейс по сути не предоставляет никакого интерфейса. Вся сложность, все обстоятельства задачи легли на плечи пользователя. Универсальный интерфейс стал просто интерфейсом доступа к базе данных.
Архитектурным астронавтам это в голову не приходит, но ведь можно пойти ещё дальше. Кто сказал, что нам нужны таблицы и поля? А если завтра это изменится? Можно предоставить интерфейс "readBytes()" или "executeCode()". В таком случае пользователь может сам написать любой код, который будет работать с любыми данными, как ему вздумается!

Колхозная доктрина:
https://eax.me/kolkhoz-doctrine/

Открытый закрытый

В спортивном комплексе на Семёновской есть открытый бассейн и несколько закрытых. Однажды на двери открытого повесили объявление:

"Открытый бассейн временно закрыт, для желающих открыт закрытый бассейн".

Это уже достаточно всех запутало. Но пришёл сентябрь и касса закрытого тоже закрылась:

"Касса временно не работает. Билеты приобретайте в здании открытого бассейна"

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

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

С тех пор открытый бассейн снова открыли.

Экономика бесконечной разработки

Вот есть какое-нибудь Яндекс.Метро. Простое приложение для расчёта поездки. В последнее время оно показывает много рекламы. Понятно, почему: разработчикам надо платить. Поддержка на Google Play так и пишет: "благодаря рекламе оно продолжает жить и развиваться".

Сколько приложению нужно денег? Начнём с одного разработчика в месяц. Пусть даже он получает 300 тысяч. Или их несколько, но получают меньше, или работают не полную ставку. Неважно. Приложение установлено 150 тысяч раз, будем считать, 100 тысяч им пользуются. С каждого надо в месяц получить три рубля.
Нельзя ли вместо рекламы оплатить разработку прямо? Сколько это будет стоит? За год – 3*12=36 рублей + процент гугла = 50. Немного, но ощутимо каждый год, если таких приложений много.
А одной ставкой на 300 тысяч наверняка дело не обходится.

И тут возникает вопрос. А собственно, чем занимаются эти одна-две-три ставки на 300 тысяч? И нужно ли мне это?

Если подумать, мои интересы обычно противоположны. Я не хочу, чтобы приложение "развивалось". "Развитие" большинства приложений приносит мне только досаду и утрату привычных функций. Например, от Яндекс.Метро мне больше ничего не нужно. Я бы хотел, чтобы оно оставалось таким, какое есть. И я не хотел бы смотреть рекламу или каждый год платить за него. Удивительно, как эти интересы совпадают, и противоположны тому, что пользователь якобы должен хотеть!

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

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

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

Два монаха в одну ночь

В ведьмаке была героиня Кейра Мец, жила в домике на краю болота. Потом по сюжету уехала. Домик стоит пустой, дверь нараспашку.
Был сейчас в другом краю мира, изучал консольные команды, которыми можно спавнить персонажей. Все персонажи появляются и стоят без движения, взаимодействовать нельзя. Заспавнил Кейру Мец, вдруг смотрю, с ней можно разговаривать. Обратился к ней.
Кейра говорит: "Геральт! Так рада тебя видеть". И мы совершенно в другом месте, горит огонь, Кейра сидит за столом. С ней можно говорить на множество тем. Я закрыл диалог, оглядываюсь, а мы в этом домике на краю болота!
Оглядываюсь назад, а Кейры нет. Горит огонь, стул пустой, домик покинутый, дверь нараспашку.
Так чувствуют себя те, кому что-то мерещится.

NB: Два монаха в одну ночь

Одна тысяча пятьсот четыреста

Все смеются над тёткой, которая "одна тысяча пятьсот четыреста семьдесят восемь" – подумаешь, заработалась! Я как-то в первый или второй приезд в Японию затупил от того, что мне назвали цифру в духе "сен хяку нана дзюю эн". Я распарсил это как "Н сотен 7 десятков йен", и дальше мозг подсунул мне свою лучшую идею насчёт Н. Попытался дать 870 йен, это не получилось. Подумал, может, я не расслышал, и надо 670 йен, хотя всё это звучало как-то неправильно! Так что такое бывает.

Сила рекламы

В центре Москвы открылось новое кафе где-то во дворах. Чтобы привлечь посетителей, они выставили на людной улице человека, который зазывает:
Ресторан Байкал приглашает посетить наше заведение! На все блюда сегодня скидка: 30 процентов!

Зазывает громко, хорошо. Уже пару месяцев (при переписывании поста – почти год!) я хожу мимо этого места и слышу это постоянно. Я хорошо запомнил, что:
1. В ресторане Байкал мало посетителей.
2. Их цены завышены на 30%.

К сожалению, я так и не знаю:
1. Чем в этом ресторане кормят.
2. Где этот ресторан.

Наверное, он закроется прежде, чем какой-нибудь случай донесёт это до меня.

P.S. Спустя год мне стало, наконец, ясно, где находится ресторан Байкал. Это произошо когда они повесили вывеску.
P.P.S. Спустя десять лет я это уже не помню!

Плохие перемены всегда на слуху

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

Я пришёл к вам сегодня с чашкой пессимизма. Плохие перемены, о которых вы слышите, всегда на слуху. Поэтому вы о них слышите. Мало кто специально роется, выискивая те плохие новости, которые не приходят к нему сами.
За их шумом прячутся и другие плохие перемены, тихие и едва заметные.

Забудьте про термины

Когда вы разбираетесь в чём-то, ваша задача не найти подходящее название, а понять, что происходит. Названия при этом даже вредны.

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

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

Одна известная тётка-психолог придумала свой способ говорить об отношениях людей. Ситуации, которые ей попадаются часто, как-то обозначила: плюсы, минусы, дефолты, скалки. Разные стороны личной жизни называет ресурсами: работы, любви, ещё чего-то.

И вот ей в ЖЖ пишут люди и рассказывают свои истории:
"У меня был прокачан ресурс работы и спорта, так что кое-какие опоры оставались"
"В этих отношениях я была большим минусом, а он плюсовал"

Вы понимаете, что они хотят сказать? Они сами-то понимают?

Первая хочет сказать, что на работе её ценят. Может быть, что повышают иногда, что не скучно ей. И что в спортзал ходит. А может быть, в походы или на плавание. Вторая – что привязалась к парню и надоела ему. Зачем нужно было использовать хитрые слова, чтобы сказать меньше и запутаннее, чем можно было сказать прямо?

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

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

Это не просто смешно, а ещё и вредно. Дёргая за ярлычки, к которым у вас ничего не привязано, вы незаметно для себя рассуждаете, не приходя в сознание. Вооружаетесь пистолетом без патронов и фонарём без батарей. Вы не очень понимаете, кто такой zaec, нужно ли от него бежать или ловить его, но вы придали ему название и опознали, что "в кустах zaec", и внезапно уже кажется, будто ситуация ясна. Хотя вы по прежнему не знаете, чего ждать от кустов!

(Если ваш zaec больше собаки ростом, я бы на вашем месте свалил. Даже несмотря на то, что это zaec)

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

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

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

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

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

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

Говорите и думайте теми словами, которые вам предельно ясны. Теми словами, которые вы действительно поняли. Чем более конкретен предмет, тем сложнее в нём запутаться: в физике, математике, химии у названий есть чёткие определения, поэтому там можно выучить название и разобраться в нём на лету (и то не лучший подход). В истории, социологии, психологии, тем более в философии, и в общем в жизни.

Эйнштейн говорил, что если человек разбирается в вопросе, он сможет объяснить его десятилетнему ребёнку. В этом возрасте дети не знают ни квантовой механики, ни психологии. Единственный способ объяснить эти предметы ребёнку – говорить человеческим языком. Использовать такие понятия, которые мы все хорошо понимаем. Такой разговор срывает любые покровы наукообразия, обнажает ваше непонимание, которое вы скрывали от себя за умными словами.

Юдковский описывал игру "Табу мыслителя": объяснить название, не пользуясь им самим и родственными словами. Например, вместо "заяц" сказать "небольшое четвероногое животное с серой или белой шерстью, сильными задними лапами и длинными ушами"