Эссе о разработке игр, мышлении и книгах

Травмирование формализмом

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

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

Людей, которые любую работу делают максимально формально, не вникая ни в какие нюансы?

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

Так вот, всему этому я придумал диагноз: «травмирование формализмом».

Суть вот в чём…

Далее

О книге «Гарри Поттер и методы рационального мышления»

обложка книги «Гарри Поттер и методы рационального мышления»

Я предполагал, что ГПиМРМ будет научпопом с примесью Гарри Поттера, оказалось что это Гарри Поттер с примесью научпопа. Хуже от этого не стало, просто имейте в виду.

По сути, это «юмористичный» фанфик, базирующийся на предположении, что Гарри вырос не в семье идиотов, а в здоровой семье оксфордского профессора. Дадим мальчику гениальный мозг (не знаю как в оригинале), повернём его на научной фантастике и науке. Добавим немного фансервиса и получим интересный фанфик с юмористичным первым томом. Назвать юмористичными второй и третий тома у меня язык не повернётся. Именно поэтому «юмористичный» взят в кавычки.

Предположу, что оригинальную задумку Элиезера Юдковского  можно наблюдать именно в первом томе (и начале второго). Именно там раскрывается характер Гарри, его отношение к науке и подход к жизни. Очутившись в Хогвартсе мальчик офигевает от повсеместного бардака и иррациональности. Вооружившись научным методом и знаниями маглов, пацан начинает успешно и с душой шатать вековые устои. Способы шатания доставляют, по крайней мере меня они несколько раз успешно довели до смеха, что случается редко.

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

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

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

Далее

О книге «Изобретение науки»

Обожка книги «Изобретение науки — новая история научной революции»

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

Направлена книга на две группы людей: обычных любопытствующих и историков науки. Каким образом у автора (Дэвид Вуттон) получилось соединить несоединимое до конца не понятно, но в целом получилось.

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

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

Обзор книги будет в нескольких частях:

  • О методе и позиции автора
  • Состояние мира до научной революции
  • Предпосылки научной революции
  • Ход научной революции
  • Итоги

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

Далее

Интеллект, компетентность и принятие решений

Часто, когда я встреваю в «политические» «дискуссии», мне начинают вменять примерно такое мнение: «людей низводим до уровня идиотов». Формулируется оно разными словами, но суть цитата передаёт ярко.

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

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

Далее

Уникальные идентификаторы для связи исходников. Как?

Хочу странного, может подскажете способ сделать.

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

Фичей не в смысле больших user-story, а в смысле конкретных пунктов, реализацию которых надо контролировать. Например «имя гильдии должно быть уникально», «Это поле должно отображаться только залогиненому пользователю».

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

Вопрос вот в чём: как делать идентификаторы, которые будут связывать фичи с кодом?

Варианты, которые вижу:

  1. Писать руками. Проблемы: геморрой и простор для ошибок/опечаток.
  2. Плагин для emacs (любого другого редактора), который в файле с фичами генерирует уникальные идентификаторы, после чего копировать их куда надо. Проблемы: его надо сделать, нужно поддерживать уникальность между файлами, хочу фичи не только в отдельном файле, но и в коде, если это будет удобно.
  3. Литературное программирование: писать фичу сразу там, где реализуется. Проблемы: фича реализуется в нескольких местах (код, тесты, вёрстка, документация), поэтому идентификаторы всё равно нужны.
  4. Идентификатором делать сам текст фичи. Проблемы: занимает много места, текст может меняться и будет геморойно менять его везде.