Pull to refresh
22
0
someone @someone

User

Send message

Приключения в математическом лесу фрактальных деревьев

Reading time8 min
Views36K


Перевод поста Bernat Espigulé Pons, «Adventures into the Mathematical Forest of Fractal Trees».
Скачать перевод в виде документа Mathematica, который содержит весь код использованный в статье, можно здесь.


Без сомнения, золотое сечение и в наше время представляется одним из самых таинственных, волшебных и поразительных чисел, которые известны людям: Prikljuchenija-v-matematicheskom-lesu-fraktalnyh-derevev_1.png. (в языке Wolfram Language и системе Mathematica ему соответствует символ GoldenRatio). Как вы увидите из этого поста, это число действительно имеет множество интересных свойств, которые можно исследовать, причём некоторые из них рассматривались ещё в работах учёных Древней Греции, таких как Пифагор и Евклид, другие в работах итальянского математика Леонардо Пизанского, более известного под прозвищем Фибоначчи, или Иоганном Кеплером — астрономом эпохи Возрождения. Хотя это может прозвучать странно, в этом посте я расскажу вам о новых геометрических объектах, связанных с золотым сечением, которые осветили мне путь, когда я пытался отобразить неизвестную ранее область Математического Леса.
Читать дальше →
Total votes 61: ↑58 and ↓3+55
Comments6

Создание игры на ваших глазах — часть 2: Шейдеры для стилизации картинки под ЭЛТ/LCD

Reading time6 min
Views76K
Поговорим на этот раз о технологии. В этой статье я расскажу и покажу, как в Unity создать шейдер для стилизации графики под старые ЭЛТ. Такой шейдер подойдет для пиксель-арта и для стилизации картинки под древнюю технику. Злоупотреблять им не стоит, но иногда использовать к месту — можно. (Специально уточню — я не предлагаю использовать такой эффект постоянно. Но, например, в заставках — он может прийтись к месту).



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

Читать дальше →
Total votes 112: ↑103 and ↓9+94
Comments32

ARPU, или Несколько десятых доллара

Reading time3 min
Views33K
ARPU – average revenue per user, или «средняя выручка с пользователя». Если вы считаете, что этот показатель высчитывается через деление всей выручки на все инсталлы в срок с момента релиза и на сегодняшний день, то эта статья для вас.

Многие из-за нехватки знаний, а может, и из-за желания упростить себе работу, пытаются посчитать один из важнейших параметров игры по вышеприведенной схеме. И это неправильно. Особенно, когда LifeTime (время жизни игрока в проекте) пользователя меньше рассматриваемого периода в 2 раза или менее.
Читать дальше →
Total votes 39: ↑29 and ↓10+19
Comments13

Фракталы в простых числах

Reading time3 min
Views155K


Я обнаружил этот фрактал, когда разглядывал интерференцию волн на поверхности речки. Волна движется к берегу, отражается и накладывается сама на себя. Есть ли порядок в тех узорах, которые создаются волнами? Попробуем найти его. Рассмотрим не всю волну, а только вектор ее движения. «Берега» сделаем гладкими, для простоты эксперимента.

Эксперимент можно провести на обычном листке в клеточку из школьной тетради.
Читать дальше →
Total votes 190: ↑183 and ↓7+176
Comments33

Не AdMob-ом единым. Обзор интересных рекламных сетей и не только

Reading time9 min
Views67K
При разработке игр или приложений у каждого девелопера возникают вопросы о монетизации. Естественно сразу же приходит на ум AdMob, хотя таких систем намного больше, и возможно, в некоторых случаях имеет смысл даже отказаться от него. Ведь баннерная реклама обычно достаточно навязчива и “бьет наугад”, куда интересней более персонализированная реклама, в таком случае и рекламодатель, паблишер и самое главное конечный пользователь останутся в выигрыше.
Мы составили список необычных рекламных систем, которые могут помочь разработчикам в монетизации их приложений. А также краткий обзор услуг и цен для рекламодателей.

Читать дальше →
Total votes 30: ↑25 and ↓5+20
Comments25

Мошеннические методы монетизации в free-to-play играх

Reading time11 min
Views136K
Примечание переводчика: После публикации статьи с автором связался коммерческий директор из King.com, создателя Candy Crush Saga, и прояснил несколько моментов, после чего автор добавил пару замечаний. Добавленные абзацы отмечены курсивом.

Принудительная монетизация


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

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

Этот дополнительный стресс часто подаётся в форме того, что Роджер Дики из Zynga называет «весёлыми мучениями». Приём заключается в том, чтобы поставить потребителя в очень неудобное или неприятное положение в игре, а потом предложить ему убрать эти «мучения» в обмен на деньги. Эти деньги всегда замаскированы в слоях принудительной монетизации, поскольку потребитель, столкнувшийся с «реальной» покупкой, скорее всего не поведётся на трюк.
Читать дальше →
Total votes 138: ↑131 and ↓7+124
Comments76

Правильная аналитика в мобильном приложении

Reading time6 min
Views65K
Подавляющее большинство мобильных приложений выходит в свет без интегрированных фреймворков аналитики и без правильной их настройки. Это очень печально, приложение не веб-сайт, где можно воткнуть Google Analytics за 10 минут и собирать статистику.

Я вижу четыре причины для того чтобы задуматься над аналитикой в мобильном приложении ДО его выхода:
  • С первого раза никогда не получается сделать успешное мобильное приложение. После выпуска требуется анализ поведения настоящих пользователей в «бою».
  • Оценка эффективности рекламных кампаний невозможна без аналитики.
  • Две недели занимает выкладка iOs приложения, когда вы спохватитесь придется ждать аналитику около месяца.
  • Данные из прошлого не вернуть.

Под катом набор инструментов для аналитики и рекомендации по их настройке принятые в Touch Instinct и ценные комментарии от LinguaLeo и агентства мобильной рекламы Mobio.


Читать дальше →
Total votes 43: ↑38 and ↓5+33
Comments28

Языки в Европе: когда перевод имеет смысл?

Reading time5 min
Views22K


Европа — это регион, где можно встретить очень много языков и еще больше жителей-полиглотов. Здесь существует 23 официально признанных языка и 60 региональных диалектов. Кроме того, в ЕС живет множество мигрантов, а это значит, что на улицах европейских городов можно услышать и совершенно экзотическую речь. Обо всем этом сообщает отчет Европейской Комиссии «Европейцы и их языки» за 2012 год.

И как же в этом хаосе определить, на какие языки переводить целесообразно, а на какие нет?

Ниже мы собрали ряд сведений о том, как европейцы используют и воспринимают языки. Данные вышеупомянутого отчета о 27 странах — членах ЕС были собраны компанией TNS Opinion & Social Network по заданию Европейской Комиссии.

Переведено в Alconost.

Читать дальше →
Total votes 23: ↑15 and ↓8+7
Comments12

Создание нативной библиотеки расширений для OpenFL, часть третья

Reading time3 min
Views3K

Предисловие


Это перевод заключительной, третьей части цикла статей о создании нативных библиотек расширения для OpenFL. Во второй части рассказавалось как создать библиотеку расширений для iOS. В данной части, будет рассказано о создании библиотеки расширений для платформы Android, на языке Java и, как будет видно далее, для Android сделать это несколько проще, чем для iOS.

Java, Haxe и все, все, все!


Для своей следующей игры, я придумал показывать справку в виде встроенной HTML страницы и нашел следующий проект: NMEWebview. Этот проект хорошо демонстрирует, как мы можем использовать код на Java в нашем приложении на haxe.

Пришло время проверить взаимодействие с кодом на Java.
Читать дальше →
Total votes 6: ↑6 and ↓0+6
Comments0

Создание нативной библиотеки расширений для OpenFL, часть вторая

Reading time4 min
Views3.7K

Предисловие


Это продолжение перевода серии статей о создании расширений для OpenFL от Laurent Bédubourg. В первой части мы создали простое расширение и скомпилировали его для нативных платформ (Linux/Windows, Android, iOS). В этой части мы добавим в наше приложение на iOS возможность отправлять твиты.

Что мы узнаем:
  • как структурировать исходный код нашего расширения для различных платформ
  • как связать код на haxe и функции из нашего расширения
  • как линковаться с iOS фреймворками (с фреймворком Twitter, в частности)

Читать дальше →
Total votes 13: ↑13 and ↓0+13
Comments0

Ещё один способ получить нестандартные данные в iOS

Reading time4 min
Views16K
Привет!

Я хочу показать, как, не используя приватных API ( = не используя приватных фреймворков/классов/функций) можно собирать разнообразные данные о использовании устройства.

Вот описание информации, которую можно получить:
  • Мощность сигнала сотовой сети: RSSI в дБм и относительную мощность в «палках»
  • Качество сигнала WiFi (0 — плохо, 4 — хорошо)
  • Состояние регистрации в сотовой сети: наличие SIM, поиск сети
  • Тип сети передачи данных: 2G, 3G, WiFi
  • Заряд аккумулятора с точностью до процента (стандартные средства дают точность в 5%)
  • Включен ли «режим самолёта» («airplane mode»)
  • Включены ли различные сервисы: будильник, Airplay, VPN, перенаправление звонков, Nike+

Читать дальше →
Total votes 38: ↑34 and ↓4+30
Comments16

Анализ статистики во free-to-play играх: инструменты аналитика

Reading time7 min
Views37K
Ключ к успеху при разработке free-to-play игр — анализ поведения игроков и постоянный тюнинг игрового функционала на основе статистики. Собрать статистику — это пол дела. Но как превратить гору сырых данных в информацию?

В моей прошлой статье я перечислила основные показатели, по которым можно отслеживать успешность игры. Во второй части цикла я сделаю обзор основных инструментов, которые помогут превратить данные в руководство к действию.
Читать дальше →
Total votes 35: ↑29 and ↓6+23
Comments35

Теория относительности в картинках

Reading time6 min
Views369K
В своей статье я хотел бы рассказать о теории относительности. Эта теория не требуется в представлении. С самого своего создания она была окутана ореолом тайны, поскольку полностью подрывает наши привычные представления о пространстве и времени. Все мы в школе учили формулы теории относительности, но мало кто действительно понимал их. И это не удивительно, ведь человеку, чтобы по-настоящему понять какую-то теорию во всей её красоте, полноте и непротиворечивости, не достаточно знать формулы. Нужно иметь какой-то визуальный ориентир, нужна динамика, чтобы было что-то, что можно повертеть в руках. Я решил восполнить этот пробел и написал небольшую программку, в которой можно «повертеть в руках» пространство-время. Мы, как настоящие исследователи, с помощью небольших экспериментов попытаемся выяснить основные свойства этой загадочной материи.
Под катом много картинок (и ни одной формулы).
Читать дальше →
Total votes 272: ↑266 and ↓6+260
Comments345

Вычисление оптического потока методом Лукаса-Канаде. Теория

Reading time7 min
Views57K

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

Если мы хотим узнать на сколько тот или иной объект объект сместился по отношению к его же положению на предыдущем кадре за то время, которое прошло между фиксацией кадров, то скорее всего в первую очередь мы вспомним про оптический поток (optical flow). Для нахождения оптического потока можно смело воспользоваться готовой протестированной и оптимизированной реализацией одного из алгоритмов, например, из библиотеки OpenCV. При этом, однако, очень невредно разбираться в теории, поэтому я предлагаю всем заинтересованным заглянуть внутрь одного из популярных и хорошо изученных методов. В этой статье нет кода и практических советов, зато есть формулы и некоторое количество математических выводов.
Читать дальше →
Total votes 111: ↑109 and ↓2+107
Comments19

Демистификация аварийных журналов iOS

Reading time30 min
Views60K


Прежде чем отправить в AppStore ваше приложение, вы долго тестируете его, чтобы убедиться, что ваше приложение работает безупречно. Оно отлично работает на вашем устройстве, но после того, как приложение попало в App Store, некоторые пользователи сообщают, что оно «вылетает»!

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

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

В этом уроке вы узнаете, как выглядят аварийные журналы, а также как получить аварийный журнал из iOS-устройства и iTunes Connect. Вы узнаете о символизации и о том, как вернуться от аварийного журнала назад, в код. Мы также займёмся отладкой приложения с ошибками, которые могут привести к сбою в определенных ситуациях.
Подробности
Total votes 77: ↑75 and ↓2+73
Comments16

Построение нейронных сетей в php используя FANN, пример реализации

Reading time5 min
Views83K
Передо мной предстала задача анализа большого количества информации и выявления закономерностей. И первое, что пришло в голову — построить математическую модель с помощью нейронной сети.

Поскольку данные для анализа формируются в php и мне этот язык сейчас ближе всего, то искалась библиотека с интерфейсом для php. В связи с этим мне порекомендовали FANN (Fast Artificial Neural Network) — открытое программное обеспечение для построения сетей. У этого решения есть апи для 15 языков, так что почти каждый сможет выбрать что-то для себя.

Пример. Распознавание языка текста на странице

Для примера возьмем задачу легкую, но недалекую от нашей реальности и от серьезных задач. Допустим есть 1000 документов, на 3-х разных языках. Пусть это будут французский, английский и польский. Наша задача научить нейронную сеть распознавать язык документа. Для этого мы используем самый простой частотный механизм. Но тем не менее его результаты неплохи. Его суть в том, что у каждого языка с разной частотой в тексте встречаются одни и те же символы. Мы подготавливаем 3 больших куска текста для каждого из языков (английский, французкий, польский), посчитаем для каждого символа частоты. Эти данные мы передадим в нейронную сеть, с указанием какой набор частот принадлежит каждому из языков. Дальше нейронная сеть все сделает сама.
Читать дальше →
Total votes 36: ↑32 and ↓4+28
Comments19

CCV: современная библиотека компьютерного зрения

Reading time1 min
Views15K
Спустя два года разработки состоялся релиз библиотеки ccv 0.1, которая использует ряд современных алгоритмов компьютерного зрения.

Библиотека ccv написана на C и позиционируется как компактная, лёгкая альтернатива OpenCV, поэтому из неё старательно изъяты все несущественные функции. Таким образом, ccv предназначена не для экспериментов с разными алгоритмами, а для практического использования в конкретных приложениях.
Читать дальше →
Total votes 52: ↑47 and ↓5+42
Comments13

Как правильно сортировать контент на основе оценок пользователей

Reading time5 min
Views92K


В оригинале название звучит как «How Not To Sort By Average Rating». Я подумал, что дословный перевод «Как не сортировать по усреднённому рейтингу» будет малопонятен и хуже отражает содержание статьи.

Постановка проблемы


Вы занимаетесь веб программированием. У вас есть пользователи, которые оценивают контент на вашем сайте. Вы хотите разместить высоко оцененный контент наверху, а низко оцененный — внизу. Для этого на основе пользовательских оценок вам нужно вычислить некий «рейтинг».

Неправильное решение №1

Рейтинг= (Число положительных оценок) - (Число отрицательных оценок)

Читать дальше →
Total votes 458: ↑423 and ↓35+388
Comments134

На пути к Skein: просто и понятно про Blowfish

Reading time9 min
Views50K
«От желудка иглобрюхих рыб отходят мешковидные выросты. При появлении опасности они наполняются водой или воздухом, из-за чего рыба становится похожой на раздувшийся шар
с торчащими шипиками. Шарообразное состояние делает рыб практически неуязвимыми. Если всё же достаточно крупный хищник попытается проглотить такой шар, то он застревает
в глотке у хищника, который впоследствии умирает»


                                Википедия, свободная энциклопедия.

К концу 1993 года в мире криптографии возникла очень неловкая ситуация. Алгоритм симметричного шифрования DES, со своим слабеньким 56-битным ключом, был близок к фиаско, а существующие
на тот момент альтернативные варианты, такие как Khufu, REDOC II, IDEA были защищены патентами
и не доступны для свободного использования. Алгоритмы RC2 и RC4, разработанные в то время компанией RSA Security, также требовали проведение процедуры лицензирования. И в целом, индустрия криптографии в рамках государственных организаций и крупных корпораций была
обращена в сторону использования секретных алгоритмов, таких как Skipjack.

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

И он появился.
Читать дальше →
Total votes 100: ↑98 and ↓2+96
Comments28

Лучшие шрифты для программирования

Reading time4 min
Views247K
Статья написана в 2009 году, и с тех пор многое изменилось, в том числе появились некоторые альтернативные шрифты для программирования, например, Anonymous Pro.

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

Я выкладываю список из десяти моноширинных шрифтов, готовых к использованию. Некоторые из них идут в комплекте с современными операционными системами, но большинство можно бесплатно скачать из интернета. Отдельные, в том числе Consolas, являются частью коммерческого ПО.
Читать дальше →
Total votes 178: ↑161 and ↓17+144
Comments193

Information

Rating
Does not participate
Location
Санкт-Петербург и область, Россия
Date of birth
Registered
Activity