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

Julia — это Python++?

Логотип Julia

Давно хотел посмотреть на Julia, так как встречал его (её?) упоминание в очень разных и не всегда относящихся напрямую к программированию местах. Пока изучил только документацию и ничего серьёзного на нём не писал (это будет следующим шагом), но уже хочется сказать пару слов. В соответствии с собственными заветами :-D

Изначально я планировал сделать что-то вроде сводной таблицы «плюсы и минусы Julia», но по прочтении документации передумал.

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

Во-вторых, такие таблицы уже есть.

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

Далее

Процедурная генерация и прочая математика

Открыл для себя доклады, которые Squirrel Eiserloh делал для математической секции GDC. Очень наглядно и доступно рассказывает о процедурной генерации, случайности и прочей математике.

Доклады:

Доклады о процедурной генерации особенно интересны.

Софт для «поддержки принятия решений»

Обновлено: исходники проекта открыты — https://github.com/Tiendil/morphologic

В марте я писал в фейсбуке про софт для «поддержки принятия решений». О том, что не могу найти ничего подходящего.

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

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

Софт может пригодиться, если вам необходимо найти решение / выбрать архитектуру / определить лучшее сочетание параметров в сложной и / или слабо формализированной области.Например, вы знаете, что решение может обладать свойствами A, B, C, D, … Z, но не знаете какое сочетание свойств будет оптимальным. При том, что A и D несовместимы, а сочетание свойств B+X+Y выглядит лучше, чем P+Q.

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

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

На странице софта есть более подробноее описание и инструкция.

Посмотрите пожалуйста. В основном на предмет полезности для вас лично и идей в какую сторону двигать разработку.

Прототип:: https://tiendil.github.io/morphologic/

Группа в телеграм для обсуждения: https://t.me/morphologic_soft

Видео с изменениями карты мира «Сказки» с 2013 года

Изменения карты мира «Сказки» с 2013 года.

Смотреть лучше в максимальном качестве.

Карта изменяется динамически, исходя из действий игроков и своей внутренней логики.

По сути реализована небольшая модель формирования ландшафта с учётом климата и «точек влияния», контролируемых игроками.

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

Поверх этого отображаются обобщённые биомы (пустыня, джунгли, горы, etc). Для каждой клетки выбирается биом, который лучше всего ей подходит.

По ссылкам с ютуба можно скачать более подробные ролики.

О книге «Искусство Войны»

Обложка книги «Искусство войны»

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

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

Перескажу суть ещё короче, чем в книге:

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

Центральная мысль: успешными людьми слывут те, кто тратит ресурсы только на мероприятия с гарантированным профитом и не тратит в любом другому случае.