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

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

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

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

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

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

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

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

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

Далее

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

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

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

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

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

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

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

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

Полезные gamedev ресурсы

На тостере спросили про интересные gamedev сайты.

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

Рассылки в формате OPML

Список ссылками под катом.

Далее

Сделал email рассылку о новых статьях

Подписаться можно справа от поста ⟶

Или под постом, если вы смотрите мобильную версию.

Это на случай, если вы не пользуетесь RSS, но хотите следить за блогом.

А ещё рассылка поможет мне видеть скольким людям интересны мои тексты. Поэтому обязательно подписывайтесь :-)

О книге «Человек говорящий — эволюция и язык»

Обложка книги «Человек говорящий: эволюция и язык»

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

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

Главная мысль, которую я вынес из книги, звучит примерно так: об эволюции языка известно то, что ничего не известно, но Хомский c Бервиком имеют определённое мнение.

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

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

Тем не менее, общая концепция не сложна и я попробую её тезисно пересказать.

Далее