Рубрика «just for fun» - 3

DIY Face Averaging - 1
Узнали кого-нибудь? Всех людей выше не существует: это не фотография, а результат работы несложного алгоритма, усредняющего тысячи разных лиц. В этой статье мы поговорим о том, как легко в кратчайшие сроки набросать такой алгоритм и получить интересные результаты.
Читать полностью »

Предисловие

В общем, собрался я как-то для восстановления программисткой формы начать писать мини-проектики разных игр и задач, чтобы восстановить и улучшить эту самую программистскую форму. Первый выбор пал на шахматные задачи и на математическую игру Дж. Конве «Life».

Сегодня я расскажу о том, как реализовывал симулятор игры «Life» на базе кроссплатформенной библиотеки Qt. Делал всё на Qt Widgets без использования QML.
Читать полностью »

История Konami Code

Еще в 1986 году японская компания Konami – один из ведущих разработчиков и издателей видеоигр – запрограммировала секретную комбинацию клавиш в версии игры Gradius для игровой консоли NES.

Konami code или читайте между строк - 1

Однако настоящую популярность данная комбинация клавиш получила благодаря американской версии игры Contra (как «код на 30 жизней»).

Konami code или читайте между строк - 2

В разных играх этот код имеет разное предназначение:

  • Увеличение количества попыток
  • Полное вооружение в начале игры
  • Добавление жизней
  • Прочее

Читать полностью »

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

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

Что получилось? Далее детали и небольшое видео.

image
Читать полностью »

Привет!
Лето, все в отпуске. У всех расходы. Где взять денег? У банка!
Только за этот июль крупнейший банк России выдал кредитов физическим лицам на 73 545 493 тыс. руб. Если верить этой статье, то средний размер потребительского кредита около 140 тыс. руб. Выходит, банк умудрился за месяц выдать кредит более чем полумиллиону человек. Конечно, в этом банке используют скоринговые системы.
Я узнал про скоринговые системы пару лет назад и был потрясен. Сама идея, что бездушная машина может принимать решение о выдаче кредита на основе статистических данных, не выходила из головы. Я захотел поиграть в банк и проверить, выдаст ли компьютер кредиты моим друзьям, just for fun. Настоящие скоринговые системы я никогда не видел, но решил, что это и неважно, напишу сам.
Сказано — сделано.
Осторожно, много изображений!
Читать полностью »

Эксперименты с бит реверсными паттернами в двумерных аддитивных клеточных автоматах
Как-то я экспериментировал с клеточными автоматами. С одномерными и двумерными. Придумывал на каком исходном состоянии применить какое-то правило. Когда, в качестве исходного состояния двумерного клеточного автомата я начал использовать бит-реверсивную перестановку диагональной линии, то после применения автомата получались своеобразные узоры. Время от времени среди узоров появлялись явно выраженные характерные паттерны. Я выделил эти паттерны и немного с ними поэкспериментировал. С тем, что мне удалось выяснить, я делюсь в этой статье.

В статье я вкратце расскажу про аддитивные клеточные автоматы. А также приведу последовательность моих наблюдений и задач, которые я ставил. Каждый этап будет сопровождаться изображениями состояния клеточного автомата. Кроме того, для лучшей наглядности, я написал веб-приложение, которое добавит интерактивности при чтении статьи. Приложение основано на React и должно работать в современных браузерах. Также я буду сопровождать некоторые действия ссылками с кусками кода на Python.

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

Надеюсь, что статья развлечет вас, хотя я буду писать четко и по делу.

Читать полностью »

Как программисты ищут отличия

Часто за собой замечаю, что при виде какой-нибудь программы, игры или сайта у меня возникают странные мысли. И мысли эти меня пугают. А думаю я всякий раз о том, как эту программу/сайт/игру можно подхачить, взломать, обойти защиту, автоматизировать, расширить функциональность. Наверное, профессиональная деформация дает о себе знать. Или это подсознательное желание использовать накопленные знания, не находящие применения на работе. Как правило, эти желания остаются на уровне мыслей, но бывают исключения. Об одном таком случае я и расскажу вам сегодня…

Читать полностью »

В процессе работы над сервисом интеллектуального извлечения данных Convextra (о котором уже рассказывали на хабре) мы заметили, что многие наши пользователи используют плагин лишь для отслеживания изменений каких-либо данных на странице. Но, так как Convextra больше заточена на поиск и извлечение данных, то следить за обновлениями с ее помощью довольно неудобно и больше похоже на стрельбу из пушки по воробьям. Поэтому для решения этой задачи мы решили сделать отдельное эффективное и элегантное решение. Спустя всего пару дней на свет появился F5Dog.com — простой сервис отслеживания изменений на сайтах.

[F5]Dog.com — простой инструмент отслеживания изменений на сайтах
Читать полностью »

Современные вирусы умеют общаться по разным каналам связи.
На днях был продемонстрирован еще один способ.
На этот раз через микрофон и колонки.
Интересно? Добро пожаловать под кат.Читать полностью »

Доброго времени суток, %username%!
В некоторый момент своей жизни я понял, что нужно сделать что-то значимое. Да и подзаработать, если честно.
Тут ко мне пришел друг, который на продажу делал сборки разных игровых серверов и предложил сделать хостинг для игрушек.
Времени на тот момент было много, за плечами — два года кодинга на php фрилансером и было решено сделать этот проект.
PHP уже порядком поднадоел от нудной работы в стиле «подправь мне вот тут сайтик на Joomla», на хабре вовсю шло обсуждение нашумевшего NodeJS и в качестве инструмента для написания я выбрал именно его.
Что из этого вышло — читайте под катом.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js