Search
Write a publication
Pull to refresh
1
0
Владимир Пестов @KozzyKoder

User

Send message

Следим за коллекцией. Tailable cursors

Reading time2 min
Views11K


Если вы молоды и энергичны интересуетесь mongoDb, хотите подискутировать на тему перевода слова tailable на русский, и вас интересует откуда взята пикрелейтед — добро пожаловать под кат.

Да, да это про меня, уже читаю

Основы Android NDK на примере работы с OpenAL

Reading time8 min
Views37K
День добрый, уважаемые Хабраюзеры!

С недавних пор занимаюсь разработкой приложений под Android, в частности разработкой игр. Так сложилось, что для одного проекта пришлось работать с Android ndk. Все трудности и нюансы работы с native рассмотреть в принципе невозможно в рамках одной статьи, решил в данной статье небольшое введение в ndk написать.
А чтобы статья была интересна не только новичкам, покажу как работать с OpenAL и форматами WAV, OGG.

Работа с Android NDK

Деньги и App Store

Reading time15 min
Views80K

Статистика для инди разработчика



Автор Emeric Thoa

Перевод мой

Intro


Когда я распрощался с работой на крупную игровую компанию и основал свою игровую студию, было интересно прикинуть, сколько денег можно было ожидать заработать как инди разработчик. Проработав в Ubisoft в разработке консольных AAA игр, у меня были некоторые соображения. Но они для моей новой инди жизни уже были неактуальны. 20-ти миллионные бюджеты в долларах, команды из 20 тысяч человек, продажи по 70 долларов за копию… Я понимал, что для инди все намного по-другому, но информации о том, насколько по-другому было очень недостаточно.

Angry Birds взлетела на Олимп, Plants vs. Zombies уже была показательным образцом успеха, Doodle Jump был хорошим примером успеха в то время, когда я стартовал, Cut the Rope продавалась по миллиону копий в неделю. Но, кроме случаев, которые я называю джекпотами, в сети было очень мало публичных данных со статистикой. Это значило, что финансовые ожидания от первого проекта SQUIDS были покрыты мраком необоснованных предположений. С тех пор, я собираю статистику и в этой статье хочу поделиться информацией с собратьями по оружию – инди разработчиками, которые находятся на той стадии, на которой я сам был полтора года назад.

Мифы App Store


Я предоставлю пост-мортемы и статистику, характерную для индустрии, и обосную какое место занимает наш проект SQUIDS в общей картине. Но, сначала я развенчаю несколько мифов про App Store с точки зрения денег.
Читать дальше →

Модель взаимодействия открытых систем, цикл Деминга и Туннельное моделирование

Reading time3 min
Views7.3K
Доброго времени чтения, уважаемые участники habrahabr.ru

Идея туннельного моделирования базируется на объединении двух идей
— модернизированной девятиуровневой модели взаимодействия открытых систем (http://habrahabr.ru/post/176249/)
и
цикла Деминга Plan-Do-Check-Act, который входит в стандарт ГОСТ Р ИСО 9001.
Читать дальше →

Глобалы MUMPS: Экстремальное программирование баз данных. Часть 2

Reading time7 min
Views9.6K
Роб Твид (Rob Tweed)
Начало см. часть 1.

Глава 2. SQL/реляционные БД против MUMPS



В этой главе будут изложены основные различия между обычными SQL реляционными базами данных и БД на основе MUMPS.

Прочитайте главу 1, если вам нужно лучше понять что такое глобалы и как делаются манипуляции с ними.
Читать дальше →

Victor, Charlie, Victor, Charlie, приём

Reading time5 min
Views24K
Каждый, кто хоть раз устанавливая дату и время на компьютере, видел аббревиатуру UTC, но не все знают откуда на самом деле берётся это время и почему оно так важно.

Идём в ногу со временем

Абстрактность и модель взаимодействия открытых систем

Reading time4 min
Views7.8K
Доброго времени чтения, уважаемые участники habrahabr.ru

Данная статья нацелена на обсуждение применения измерения абстрактности.

В книге — Архитектура и стратегия. Инь и Янь информационных технологий предприятия — красной нитью проходит использование уровней абстрактности для создания моделей предприятия и информационных технологий. Аналогичная мысль содержится в классификации уровней информационных систем для предприятий связи — Бизнес-процессы в компаниях связи

На аналогичную идею применения абстрактности я вышел в 2003 году при чтении учебников философии (Философия для аспирантов). Через год (в результате обсуждения идеи на форуме) появилась идея измерения абстрактности в процентах.
Читать дальше →

Несколько подробностей об std::string

Reading time10 min
Views78K
Недавно заинтересовался реализацией std::string в libstdc++. Не в связи с принятием нового стандарта, а чтобы разобраться. Благо требования к строковму типу почти не изменились.

Основным средством для анализа кода несомненно является метод пристального вглядывания, но чтобы сузить область вглядывывания и сделать процедуру более захватывающей можно реализовать для строки идиому «трассер» подсмотренную в «C++ Templates: The Complete Guide». Трассировка позволяет выявлять подозрительные интересные операции над строками.

Как известно, std::string это псевдоним для
std::basic_string<char>
и нам ничего не мешает определить
std::basic_string<X>
. В X можно определить несколько статических счетчиков и итерировать их в конструкторе, деструкторе и остальных методах. Выполняя разные операции над такой строкой можно будет проследить эффективность применяемых алгоритмов в терминах количества операций.
Кроме того, в g++ для
std::string a(«entrails»); 
выражение
std::cout << reinterpret_cast<char*>(*((void**)(&a))); 

выведет содержимое строки. Т.е. std::string — является, по сути, указателем на char.
Вобщем, эти и другие шокирующие поднобности под катом.
Читать дальше →

Основы безопасности операционной системы Android. Native user space, ч.1

Reading time8 min
Views99K

Вступление


В этой статье я попробую рассмотреть безопасность чуть-чуть повыше ядра, а именно: как работает безопасность в Native user space. Мы коснемся темы процесса загрузки операционной системы и рассмотрим структуру файловой системы Android. Как я уже говорил, я не очень силен в Linux, поэтому если заметите неточности, то исправляйте — меня научите и статью улучшите. Так как эта тема довольно обширная, я решил разбить её на две части. В первой части мы рассмотрим процесс загрузки операционной системы и особенности файловой системы. Всем кому интересно, добро пожаловать!
Читать дальше →

Нелинейное сжатие размерности, используя ограниченную машину Больцмана

Reading time3 min
Views16K
Привет. В этом посте мы продолжим экспериментировать с ограниченной машиной Больцмана. В предыдущем посте о регуляризации в РБМ мы увидели как можно получить более локальные фичи, которые обладают большей обобщающей способностью. Но мы не оценили их робастность по сравнению с более простыми и быстрыми алгоритмами. Для этого эксперимента мы обратимся к линейному методу главных компонент (вы можете ознакомиться с этим методом и глянуть реализацию на c# в моем первом посте). Желающим ознакомиться с первоисточником по теории сжатия размерности с использованием РБМ рекомендую глянуть статьи Джеффри Хинтона тут и тут. Мы же продолжим тестирование на множестве печатных больших букв: обучим РБМ, построим главные компоненты, сгенерируем сжатые представления данных, а из них восстановим первоначальные изображения, и затем оценим разницу между оригинальными изображениями и восстановленными.

Читать дальше →

Почему Fantom?

Reading time8 min
Views18K
Fantom — это объектно-ориентированный, статически-типизированный язык общего назначения, разработанный братьями Фрэнками (Brian Frank, Andy Frank). Одна из ключевых особенностей Fantom — это мощная стандартная библиотека, абстрагированная от конкретной среды, в которой она будет исполняться. В данный момент код, написанный на Fantom, можно запустить в Java Runtime Environment (JRE), .NET Common Language Runtime (CLR) или же скомпилировать в код на JavaScript.

class HelloWorld
{
  static Void main() { echo("Hello, World!") }
}
Не впечатляет?

Откуда берутся идеи?

Reading time8 min
Views36K
Эта статья содержит все известные мне на сегодня способы поиска (или «каналы» появления) продуктовых идей. В виде более-менее упорядоченного списка.

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



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

RPG для обучения детей программированию на Java

Reading time2 min
Views126K

Java считается мало подходящим для того, чтобы стать первым языком программирования, в отличие от того же Pascal или Python, тем более для детей. Однако, это обстоятельство не остановило специалистов университета Калифорния (Сан-Диего) от любопытного эксперимента, который, по их словам, показал вполне успешные результаты — ими была разработана игра CodeSpell для обучения детей Java в ходе игрового процесса.

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

Игровой процесс — правда, урывками и без особого смысла — можно посмотреть на видео
Узнать подробности

Windows Phone и непрерывная интеграция в TeamCity

Reading time6 min
Views5.5K
Хочу поделиться опытом в настройке системы непрерывной интеграции для проекта Windows Phone 7 в Team City. Надеюсь, сэкономлю тем, кто пойдёт той же тропой, потраченные мной самим время и нервы.

Дано:
  1. Довольно-таки массивное приложение Windows Phone 7 c unit-тестами, реализованными средствами Silverlight Toolkit.
  2. Настроенная сборка приложения в TeamCity без запуска unit-тестов. Агент для сборки — «физическая» (в смысле, не виртуальная) машина.

Необходимо:
  1. Настроить ещё одного build-агента TeamCity на виртуальной машине под VMWare.
  2. Запускать unit-тесты при сборках и сбора результатов их выполнения в статистику TeamCity.

Читать дальше →

Списки из lambda-функций

Reading time17 min
Views11K
Примечание переводчика: Оригинал здесь. Все примеры в оригинале написаны на JavaScript, но я решил перевести их на Scheme. Уверен, менее понятно не стало, но зато видна вся красота этого языка.
UPD: добавил ко всем примерам справа еще и оригинальные примеры на JavaScript.


Если закрыть глаза на практическую сторону компьютеров — размер, вес, цену, тепло и т.п., что же на самом деле должен уметь язык программирования? Давайте исследуем этот вопрос.

Для понимания примеров в этой статье необходимы базовые понятия о функциях в LISP (Scheme). Если вы понимаете, что напечатает этот код, можно смело читать дальше:

(define x 10)

(define (f y)
    (display x) (newline)
    (display y) (newline)
)

(define g f)
(f 1)
(g 2)

var x = 10;

var f = function(y) {
    console.log(x);
    console.log(y);
}

var g = f;

f(1);
g(2);


Эта статья — просто разминка для мозгов, а не то, что можно было бы использовать в реальном коде. Но как гитарист играет гаммы, которые он никогда не использует в настоящей песне, так же и программистам стоит разминать свои мозги время от времени.
Читать дальше →

ASP.NET MVC. Урок 0. Вступление

Reading time2 min
Views784K
Я пишу сайты на asp.net mvc. В этих 16 главах я хочу рассказать, как я это делаю. Это некий учебник-справочник всех тех знаний, которые я накопил в течение трех лет.

Почему именно asp.net mvc

ASP.NET MVC я люблю потому что:
  • Это .net. Я знаю .net и С#.
  • Это компилируемый код.
  • Это не ASP.NET WebForms, я работаю с html-кодом.
  • Используется MVC-паттерн.
  • Visual Studio – самое популярное средство разработки, в котором есть IntelliSense.
  • Отличные инструменты отладки.


Читать дальше →

Быстрый старт: Визуальное проектирование базы данных в MySQL Workbench

Reading time6 min
Views106K
image

Цель данного поста — помочь начинающему разработчику быстро освоится и спроектировать простенькую базу с помощью инструмента для визуального проектирования баз данных MySQL Workbench от компании Oracle и получить её ER-модель и SQL-дамп.
Читать дальше →

Продолжение видео лекций курса «Операционные системы» с Алексеем Брагиным в МГТУ им. Баумана

Reading time1 min
Views23K
Мы продолжаем выкладывать в общий доступ лекции imageАлексея Брагина, который теперь читает авторский курс лекций об операционных системах в МГТУ им. Баумана.

Прошу принять во внимание, что это пилотный проект. А так конструктивная критика приветствуется, пожелания принимаются.
По просьбам трудящихся качество звука значительно улучшено!
Но смотреть, все равно лучше в HD


Читать дальше →

Правильные имена и полезные ошибки

Reading time3 min
Views31K
image
Эта статья для тех, кто получает от разработки приложений больше удовольствия, чем денег.
Тем не менее, здесь пойдет речь об увеличении дохода с Ваших приложений.
В 2013 году я совершенно случайно столкнулся с тремя способами увеличить денежный поток раза в два, то есть вместо 25 долларов в день мне стало капать 50. А иногда 100.
Кому эти суммы кажутся смешными, проходите мимо.
А кто знает цену каждому заработанному доллару — прошу под продолжение.
Читать дальше →

Коаны Гита

Reading time3 min
Views38K
По мотивам «Коанов Вима».

Тишина
Что-то одно, но хорошо
Только богам
Хобгоблин
Длинное и короткое

Тишина


Python-программистка передала свой файл ~/.gitconfig мастеру Гиту. Среди строчек кода было следующее:

[alias]
; Явное лучше подразумеваемового. Если мы хотим выполнить слияние,
; нам следует сделать это самим.
pull = pull --ff-only

Мастер Гит кивнул. «git pull origin master», — сказала программистка.
Читать дальше →

Information

Rating
Does not participate
Location
Челябинск, Челябинская обл., Россия
Date of birth
Registered
Activity