Вопросы воли

Вопросы воли

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

Казалось бы, что сложного в написании простой функции? Однако неизбежно наступает момент, когда ты не в состоянии это сделать. Тогда начинается: почту надо проверить, а какая погода будет завтра, а чего в чатиках нового. А может за это время на почту письмо пришло? Одно и то же ощущение, знакомое с первых лет студенчества: перед тобой лежит отбойный молоток который невозможно взять в руки. Не потому, что тяжело. Потому, что помнишь ощущение, которое за этим последует. Треклятый подвал на Шпалерной полон пыли и бетонной крошки, но совершенно не расширяется.

Любопытно в этот момент изучать влияние смены деятельности. Бросить отбойник и взяться за мешки с бетонными обломками. Или плюнуть на функции, засев за литературу. Усталость не пропадет, но окажется, что силы еще есть. Если вы устаете на работе, то один вариант из двух: либо работа ваша — полная хрень, либо вы не умеете контролировать свою префронтальную кору. Все грешат на работу и за это сложно винить. Фраза «работа нормальна, но я неадекватен» звучит сомнительно, особенно когда звучит на собеседовании.

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

А ведь это очень похоже на обучающее моделирование. Подключаем тензорфлоу или другую неведомую хренотень, выбираем активационную функцию из советов на СтекОверфлоу и рассуждаем на планерках о дефиците мощности серверов. Какая разница, что там происходит во время обучения с коэффициентами?

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

Ну не могу я написать эту функцию сейчас. Разве это плохо? Зато я могу сейчас подумать о структуре Госпера в диатропической модели эволюции, одушевлении абстракций или содержании философского трактата: «Мир как воля и представление коэффициентов клеточного автомата». Тем более, существуют вопросы такой глубины, что даже теоретическая возможность однажды над ними подумать приносит наслаждение и решимость повторно открыть редактор.

Загадка совы

Каким образом средство контрацепции в старом анекдоте про урок географии превратилось в сову? Почему современные ораторы предлагают натягивать на глобус именно эту птицу? Почему, скажем, не цаплю или даже не змею? Связано ли это с игрой «Что? Где? Когда?»?

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

Не простим, но забудем

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

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

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

О чем это я? Забыл. Не то про вишню хотел написать, не то про зиму, не то про Гребенщикова.

Вартбург

Вартбург

Никогда не могу угадать элитность и стоимость вещей. Например, автомобили. У меня стойкое ощущение, что садясь в майбах я блевану, настолько он отвратителен. А вот «Москвич» с плавниками великолепен. Паркетные джипы — уродство,а на старый квадратный лендровер могу смотреть вечно. Буханка неказиста, но мила, шишига злее, чем сто тридцатый зил, но стройнее, чем сто тридцать первый. Вольво предали идеал красоты, отказавшись от дизайна гробов. «Козел» хорош, но избыточен. Любые Жигули уродливы (короткая Нива — вершина вазовского мастерства), хуже них только бмв. Старые линкольны очаровательны. Единственный успех Фольксвагена — старый пассат универсал.

Самая красивая популярная машина всех времен — Запорожец 968M. Однажды я разбогатею и куплю себе сразу два автомобиля. По субботам буду кататься на Вартбурге, по воскресеньям на Запорожце, а по будням на велосипеде и такси.

Тут мне возразят, мол ничего я не понимаю в автомобильном вопросе. Что ж, пусть так. Зато каждый раз, когда мне показывают автомобиль со словами: «Он стоит как три квартиры», я все глубже понимаю творчество Дюшана и Мандзони.

Функциональное лукавство

Функциональное лукавство

Прочел первую половину учебника по Haskell, уснул, проснулся и дочитал вторую половину. Теперь не могу понять: либо я дурак, либо хаскелисты снобы. Что такого функционального в хаскеле, чего нет в том же JS?

Обособленность модулей кода — это скорее не функциональная особенность, а элемент гигиены. Иммутабельность очень лукавая: у нас нет переменных, но если очень надо, то можно создать новую константу с нужным значением и дальше работать с ней. А еще, вот вам линзы. Функции чистые, но вы же понимаете, в каком мире живем, поэтому вот вам IO. Все всегда функционально. Но когда требуется, можно использовать монаду.

Оператор if тот же самый. Нет оператора for, но его в JS продолжают использовать только архаичные дилетанты, которые со времен изучения плюсов вертели «О» большое на цикле. Радует управление ленивостью, но я слабо могу представить, как это связано с функциональным стилем. Списки, кортежи, лямбда-функции, функции высшего порядка, типы — все как везде. Синтаксис другой, а логика работы прежняя.

Что в этом языке такого необычного, страшного? Я не говорю, что язык плохой, скорее наоборот: синтаксис лаконичный, компилятор строгий. Но хотелось во время знакомства хвататься за голову с криком «Факмаймозг!». Потом открыть свой обычный код, произнести «глянь че!», поработать и закрыть редактор со словами «О, как!». Вместо этого лишь информация о красивом языке, не более. Теория категорий, даже в поверхностном изложении, возбуждает в миллион раз сильнее.

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

Четыре работы

На четырех работах

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

Предприниматели выставляют себя опорой государства. Но на самом деле, они не опора, а подпорки.

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

Добровольные спасатели и добровольные пожарные могут лечиться у добровольных хирургов.

Калории — это единицы измерения количества теплоты. Лучший способ избавиться от них — снять куртку.

История бы не запомнила сожжение книг на Унтер-ден-Линден, если бы книги были электронные, а все мероприятие свелось к нажатию одной кнопки.

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

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

«Права» и «свободы» — это антонимы.

Когда женщина тоскует по плетке, она объявляет себя феминисткой.

Каждый, кто производит товар сложнее булавки, имеет право дать в морду Адаму Смиту.

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

Может Нассим Талеб и умный мужик, но любая уборщица мужского туалета его опровергает.

Насилие, это не плохо. Плохо то, что насилие — это инструмент и мало кто умеет им пользоваться.

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

За утерю карты

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

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

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

Устаревшая карта и ошибочная карта — это разные вещи. Тут хорошо провести аналогию с лоциями. Открываешь гражданскую лоцию и читаешь: «Остров Безымянный. Подхода к острову нет. На острове отсутствуют источники питьевой воды, строения и дороги». Потом открываешь секретное приложение к этой лоции, а в нем: «Остров Безымянный. В точке с координатами x,y есть родник с питьевой водой и остатки охотничьего зимовья, от которого к юго-западной части острова ведет заросшая мелколесьем дорога. В точке с координатами xx,yy корабль с параметрами … может подойти к берегу на расстояние двух кабельтовых».

Конечно, спутниковые данные, а тем более дроны — это прекрасно, особенно для бомбежки и наведения хаоса. Вот только не выцепить с них ни грузоподъемность мостов, ни проходимость болот, ни другую полезную информацию. Оправдывать продажу секретных карт тем, что карты старые — все равно, что заявить: «Ну продал он пулемет, и чего? Этот пулемет еще с брежневских времен на складе лежал».

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

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

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

В России картографический бардак, анархия и презрение. За сбыт краденного с использованием служебного положения грозит до семи лет тюрьмы, а за разглашение государственной тайны — четыре года и титул «жертвы царизма». Полная свобода, не то, что в какой-нибудь замшелой Турции, где на военных картах указан лаконичный текст: «За утерю карты — смерть».

Замыкания в JS

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

1+’1’=’11’

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

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

Досада разработчика

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

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