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

Автоматизация импортов в Python

Пример автоматизаиции импорта.

Пример автоматизаиции импорта.

Написал библиотеку для автоматического импорта модулей в Python.  Анализирует код и самостоятельно импортирует что надо. Называется smart imports: pypi, github.

Написал год назад (то есть год уже использую в своих проектах), но написать статью только сейчас руки дошли :-)

Документация пока находится на хабре.

О книге «Кровь, пот и пиксели» — производственные сказки на ночь

Обложка книги «Кровь, пот и пиксели»

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

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

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

Далее

Рассылка интересных статей

В прошлом году наконец собрал все свои подписки в одном месте на feedly.com —удобная штука, кстати, с фильтрами и прочим.

Оказалось, что в день приходит несколько сотен новостей. Чтобы оценить полезность источников, на которые подписан, начал выносить действительно интересные материалы в «избранное». Получился «ручной» фильтр, который сокращает количество новостей раз в 100. Среди них где-то 50% хабра и 50% всего остального.

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

Вот RSS

Нейронный сети научили генерировать полноценные анимэшные аватарки

Пример сгенерированных нейронной сетью аватарок

Пример сгенерированных нейронной сетью аватарок

Пример можно найти на картинке и по ссылкам:

сайт с генератором

краткий отчёт по разработке

статья

Но куда интереснее не сам результат, а способ его получения:

  1. Сырую обучающую выборку слили с сайта об японских играх (изображения персонажей).
  2. На этих изображениях сторонней нейронной сетью распознали лица.
  3. Другой сторонней нейронной сетью назначили полученным портретам теги (цвет волос, глаз, etc).
  4. Обучили свою сеть, которая по параметрам генерирует картинки.
  5. Использовали сеть из пункта 3 для расчёта оценочной функции (на сколько полученная картинка соответствует требованиям).
  6. Конечный результат получается генерацией нескольких аватарок и выбором одной с лучшим значением оценочной функции.

То есть в работе задействовано 3 нейронные сети, 2 из которых — обучены ранее другими людьми. По этому поводу можно было бы расписать много интересного, но просто оставлю как факт.

Опыт портирования проекта на Python 3

Лого Python 3.

Портировал Сказку на Python 3.

Хочу поделиться опытом портирования проекта с Python 2.7 на Python 3.5. Необычными засадами и прочими интересными нюансами.

Немного о проекте:

  • Браузерка: сайт + игровая логика (иерархические конечные автоматы + куча правил);
  • Возраст: 4 года (начат в 2012);
  • 64k loc логики + 57k loc тестов;
  • 2400 коммитов.

Далее