Запуск Piggy Bank

Download Piggy Bank / Android

С гордостью объявляю, что я выпустил в свет моё первое (но надеюсь не последнее) андроид приложение, называющееся Piggy Bank (или Свинья-Копилка по русски).

|[[image:sc1_tb.png|100px|link=source]]|[[image:sc2_tb.png|100px|link=source|right]]|[[image:sc3_tb.png|100px|link=source]]|[[image:sc4_tb.png|100px|link=source|right]]|

Скачать его можно по этой ссылке
[[https://play.google.com/store/apps/details?id=com.arkoniak.piggybank|https://play.google.com/store/apps/details?id=com.arkoniak.piggybank]]

С помощью этого приложения можно решать очень простую задачу: если вы хотите накопить какую-то сумму в течение некоторого времени, то с помощью Свиньи-Копилки вы будете знать сколько времени уже прошло, сколько времени осталось и успеваете ли вы накопить деньги в срок.

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

Далее, выбирая нужную цель или создав новую нажатием на кнопку “+” вы попадаете в окно управления целью. В этом окне можно изменить саму цель, добавить новые начисления (или списания) или изменить предыдущие записи. При этом в окошке сверху будет показано сколько уже набрано, сколько ещё осталось набрать, сколько времени прошло и сколько осталось. Для удобства, та же информация отображается в виде прогресс-баров. Если прогресс бар набранных денег хотя бы приблизительно совпадает или опережает прогресс прошедшего времени, то значит всё у вас хорошо и есть хороший шанс набрать деньги в срок. Если же он отстаёт, то значит надо задуматься над тем, откуда взять недостающую сумму и может быть пришла пора немного поэкономить.

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

Раскрутка Android приложений

Эта статья является переводом http://www.technewscentral.co.uk/how-to-promote-android-app. Возможно, в будущем я добавлю в эту статью свои личные замечания и постараюсь держать список линков в более-менее адекватном состоянии.

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

Исходная идея очень проста, чем больше количество загрузок/установок приложения, тем выше его его позиция в магазине гугл плея. Так что, шаг №0 состоит в том, чтобы обзвонить всех своих друзей и родственников, у которых есть андроид телефон и попросить их загрузить приложение и оставить о нём хорошие отзывы. В самом деле, никто не захочет скачивать приложение, у которого нет отзывов, так что это придаст вашему приложению неплохое ускорение на начальном этапе. Попросите также, чтобы они поставили +1 в гугл плюс на маркете.

Затем начните размещать приложение в различных аппсторах. Некоторые из них приведены ниже:

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

Подобно веб сайтам, можно рекламировать и андроид приложения. Так что, при наличии достаточного количества денег, можно найти огромное количество сервисов, которые будут продвигать ваше приложение, при этом возможны различные механизмы, как например оплата за показы, оплата за установку и тому подобные на аппсторах типа AppBrain и других. В эту тему углубляться не будем, так как хороший поиск в гугле выдаст массу вариантов. Для того, чтобы было с чего начать, можно воспользоваться следующей ссылкой: http://www.mobyaffiliates.com/blog/how-to-promote-your-ios-and-android-mobile-apps/

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

Создайте видео промо для приложения и размещайте его на ютубе, metacafe, фейсбуке, гугл плюс и в других сетях.

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

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

Создавайте посты посвящённые запуску вашего приложения на различных андроид форумах. Некоторые из топовых форумов приведены ниже.

Размещайте приложение на таких сайтах, как piratebay, isohunt, mediafire, 4shared и т.д. Как ни странно, но люди ищут андроид приложения на таких сайтах.

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

Удобное копирование файлов между серверами

Недавно передо мной встала задача по перекидыванию кучи файлов с одного сервера на другой. scp оказалась не очень удобной для этого, так как возникли проблемы с симлинками и расставлением прав, поэтому пришлось обратиться к команде rsync. Правда тут же возникла другая проблема – к части файлов не было доступа, поэтому они не скопировались, но так как на экран выводилась вся доступная информация о происходящем, то разделить глазами, что куда выводится возможности не было. Перенаправление вывода в файл спасало, но при этом терялась информация о процессе. И тут на помощь пришёл tee и конечная команда стала выглядеть так

rsync -ave ssh : > >(tee /tmp/rsync_log) 2> >(tee /tmp/rsync_err_log >&2)

Смысл в следующем:

  • rsync – собственно команда копирования
  • -a – команда архивирования. Включает в себя
    • r = рекурсивное копирование (по директориям)
    • l = копирование симлинков, как симлинков
    • p = сохранение прав
    • t = сохранение времени создания файлов
    • g = сохранение групп, которой принадлежит файл
    • o = сохранение владельца файла
    • D = сохранение файлов устройств и специальных файлов
  • v = verbose режим, то есть выводится дополнительная информация.
  • e = выполнить соответствующую команду на удалённой машине.
  • >(tee …) = скопировать stdout в файл и копию отправить на экран
  • 2> = добавить к выводу на stdout результат выполнения следующей команды
  • >(tee … >&2) = скопировать вывод stderr в файл и так же отдать его на экран.

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

Способы управления несколькими удалёнными репозиториями в гите

Самый простой и изящный способ, который я нашёл на http://jeetworks.org/node/22

git remote | xargs -L 1 git push

Meiretta

Берк сделал кибернетическую руку для своего персонажа!
Встречаем
http://youtu.be/24fLi3he5IA

Возвращение!

После долгого перерыва решил вновь сюда писать.
Новости такие – несмотря ни на что, я вновь пишу игру и вновь пишу её на jmonkey. Мои познания в яве и прочих вещах значительно выросли за последнее время (ну или по крайней мере я так думаю).

Будущая игра будет tbs, с космическим сюжетом. Идеи я черпаю из древних настолок, таких как WarpWar, Star Vikings, Imperium. На самом деле есть два этапа, в которых я хочу реализовать свой план. Во-первых, хочется сделать тактическую часть, то есть управление кораблями и космический бой. Во-вторых, хочется сделать стратегическую часть, в которой будет возможность постройки баз и исследования космоса с поиском врагов.

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

Ошибка Unable to find package java.lang in classpath

При импортировании проекта в NetBeans из репозитория, почему-то возникает ошибка, указанная в заголовке. Лечится очень странным образом: надо перезапустить netbeans.

Кстати, при создании проекта надо делать одну важную вещь. В корне необходимо сделать файл .gitignore, в который добавить строчку local.properties. А в самом файле local.properties, необходимо указывать путь к sdk

Создан новый портал – Artania.ru!

Для одного хорошего человека разместил на сервере сайт. Собственно портал сейчас состоит из двух частей, сайта, у которого пока что, увы, есть только landing page http://artania.ru. И к этому сайту идёт дополнительно небольшая вики http://elm.artania.ru

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

Генерация токенов в руби

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

Так что, рецепт такой, запускаем irb и там выполняем последовательно

:001 > require 'securerandom'
=> true
:002 > SecureRandom.hex
=> "f44b0dabdd9e93dd7f3824aa3e320249"
:003 > SecureRandom.urlsafe_base64
=> "23wLyIytgYqEweoWjRqebg"
:004 > SecureRandom.urlsafe_base64 50
=> "ndePvxI9YN6ZIEWi9IjeodX-CXn2HWmSVUtLg8-M1rZ8zj1aTUyO90UUCpck6M8-b4Y"
:005 > exit

В 4 строчке была сформирована urlsafe строка длиной 50 символов.
Начиная с этого места можно уже погуглить какие ещё опции есть в этом модуле.

Определение размера директорий

Зачастую бывает необходимо узнать, какая же из директорий съедает больше всего места, и кого нужно удалить, чтобы опять появилось свободное место. В этом очень помогает следующая магическая строчка
 
$ du -ks * | sort -k1gr

Команда du показывает размер директорий на один уровень вниз, sort позволяет отсортировать данные. В частности, ключ r означает обратное расположение записей, то есть первой будет идти наиболее толстая директория. Ключ g означает, что сортировку надо проводить по числовому идентификатору.