Около года назад я поучаствовал в конкурсе Kivy App Contest 2014. Игрушка заняла одно из призовых мест (номинация «лучшая идея») и ко мне неоднократно обращались с просьбой выложить её на маркет. Я долго откладывал, но позавчера наконец созрел и потратив вечер — выложил. Оказалось всё совсем просто и я решил написать эту инструкцию для тех, кто, как и я, пишет на киви «в стол». Ну или тех, кто пишет на Питоне и не в курсе, что на нём можно легко писать андроидные приложения и даже выкладывать их в маркете. Инструкция рассчитана на таких же как я полнейших чайников в разработке под Android. Профессионалам можно здесь прекратить чтение, а можно поправить/дополнить в комментариях.
@Bublzread-only
User
Интересное по хабу .Net за 2014 год
2 min
26K Мы с вами люди рабочие и зачастую не замечаем ничего что происходит за пределами нашей работы. Так и я, работая изо дня в день, знаю только про свой SpecFlow и смежные вопросы. Но ничего – по сторонам. Этим постом я хочу восполнить пробелы новостей в области .Net
Новости хаба .Net на Хабре занимают 33 страницы или 328 постов. Что говорит о том что новости появляются почти каждый день =) Посмотрим на самое интересное из них (на мой скромный взгляд). Ну и загляните под кат: до ката, конечно же, не все.
Доступен новый JIT: теперь с поддержкой SIMD
Как работает декомпиляция в .Net или Java на примере .Net
Microsoft раскрыла исходный код компилятора С#
Consulo: ~1000 коммитов, или как прошла осень
Под капотом у Stopwatch
Как тестировать код финализатора (c#). Послесловие: тест все-таки упал
Новости хаба .Net на Хабре занимают 33 страницы или 328 постов. Что говорит о том что новости появляются почти каждый день =) Посмотрим на самое интересное из них (на мой скромный взгляд). Ну и загляните под кат: до ката, конечно же, не все.
Доступен новый JIT: теперь с поддержкой SIMD
Как работает декомпиляция в .Net или Java на примере .Net
Microsoft раскрыла исходный код компилятора С#
Consulo: ~1000 коммитов, или как прошла осень
Под капотом у Stopwatch
Как тестировать код финализатора (c#). Послесловие: тест все-таки упал
+21
Skype + Python = Skype4Py
2 min
4.9KВ этой статье я хотел бы рассказать о своем знакомстве с замечательным расширением для Skype API — Skype4Py. Используя его, можно собственно подключиться к скайпу и, написав пару строк кода, осуществить то, чего не сделали разработчики.
Где-то месяца два назад я нашел на гуглокоде проект под названием moc-tray. Представлял он из себя программу, написанную на gtk2-perl, смысл которой висеть в трее и выдавать контекстное меню для доступа к основному функционалу прекрасного консольного плеера mocp. Решил я побаловаться и сделать отображение текущей песни в качестве статуса в скайпе.
Сказано — сделано.
Где-то месяца два назад я нашел на гуглокоде проект под названием moc-tray. Представлял он из себя программу, написанную на gtk2-perl, смысл которой висеть в трее и выдавать контекстное меню для доступа к основному функционалу прекрасного консольного плеера mocp. Решил я побаловаться и сделать отображение текущей песни в качестве статуса в скайпе.
Сказано — сделано.
+9
F-Droid, сетевой репозиторий пакетов открытого ПО для Android, aka «Маркет» для тех, кто шлет патчи
4 min
43KТема альтернативных источников программного обеспечения для Android и альтернативных «маркетов» в частности уже несколько раз поднималась на Хабре, но большинство их описываемых сайтов были откровенно варезными рассадниками (поэтому ссылки не даю). Здесь же я хотел бы рассказать о проекте F-Droid.org, который ставит своей целью собрать и сделать легко доступными для пользователей приложения с открытым исходным кодом (Open Source) и четкими лицензиями использования и изменения.
+48
Музыкальные паблики по-новому, или как я Public Radio делал
11 min
6KЭто единственный пост про проект Public Radio в хабе «Я пиарюсь». Причина простая: этот пост совершенно, никаким образом не технологический. Просто не знаю, в какой хаб лучше поместить этот пост.
Я пишу его скорее для самого почти полугодичной давности, когда положил в долгий ящик, а потом чуть не забросил этот проект. Для таких же, как я — людей, которые по каким-то причинам, жизненным обстоятельствам перестали работать над каким-то прекрасным проектом, и вот-вот махнут на него рукой. Я довел Public Radio до логической точки, до сегодняшнего первого релиза благодаря, пожалуй, в том числе какому-то везению, которое поставило меня на ноги, но именно такая статья, наверное, помогла бы мне тогда, если бы мне не так сильно повезло.
Остальные публикации пойдут в «веб-разработку», «javascript» и так далее: мне есть много что рассказать о начинке моего «радио», но начать большой рассказ о нем я очень хочу именно с лирики и просто истории того, как я все это делал.
Чтобы вы понимали, о чем я говорю: Public Radio — это специализированный плеер для музыкальных пабликов в Вконтакте. Как сказала моя хорошая подруга, один из первых тестеров этого приложения — «last.fm с подборками от теплых ламповых человеков, а не от бездушных роботов». Собственно, это абсолютно точное описание: last.fm дает достаточно точные подборки по твоим вкусам, но это действительно «группы, похожие на те, что вы слушаете». Но есть одно НО: множество групп, похожих на те, что я слушаю, и множество тех, что меня приведут в восторг, не совпадают. Я вот за неделю использования Public Radio с удивлением для себя самого понял, что мне очень даже нравятся некоторые представители отечественной альтернативной сцены (например, Пионерлагерь Пыльная Радуга) — хотя всегда слушал несколько другую музыку.
Я пишу его скорее для самого почти полугодичной давности, когда положил в долгий ящик, а потом чуть не забросил этот проект. Для таких же, как я — людей, которые по каким-то причинам, жизненным обстоятельствам перестали работать над каким-то прекрасным проектом, и вот-вот махнут на него рукой. Я довел Public Radio до логической точки, до сегодняшнего первого релиза благодаря, пожалуй, в том числе какому-то везению, которое поставило меня на ноги, но именно такая статья, наверное, помогла бы мне тогда, если бы мне не так сильно повезло.
Остальные публикации пойдут в «веб-разработку», «javascript» и так далее: мне есть много что рассказать о начинке моего «радио», но начать большой рассказ о нем я очень хочу именно с лирики и просто истории того, как я все это делал.
Чтобы вы понимали, о чем я говорю: Public Radio — это специализированный плеер для музыкальных пабликов в Вконтакте. Как сказала моя хорошая подруга, один из первых тестеров этого приложения — «last.fm с подборками от теплых ламповых человеков, а не от бездушных роботов». Собственно, это абсолютно точное описание: last.fm дает достаточно точные подборки по твоим вкусам, но это действительно «группы, похожие на те, что вы слушаете». Но есть одно НО: множество групп, похожих на те, что я слушаю, и множество тех, что меня приведут в восторг, не совпадают. Я вот за неделю использования Public Radio с удивлением для себя самого понял, что мне очень даже нравятся некоторые представители отечественной альтернативной сцены (например, Пионерлагерь Пыльная Радуга) — хотя всегда слушал несколько другую музыку.
+28
Adobe выпустила PhoneGap 3.0 с новой модульной архитектурой и новыми API
1 min
18KКомпания Adobe выпустила версию 3.0 открытого фреймворка PhoneGap для разработки приложений, пишет TechCrunch. PhoneGap позволяет писать кросс-платформенные мобильные приложения на HTML5, CSS и JavaScript.
В новой версии PhoneGap представлена новая модульная архитектура, которая, по словам компании, «позволит вашему приложению оставаться небольшим и быстрым». Разработчики смогут просто выбрать нужные API, после чего будут автоматически установлены необходимые плагины.
+23
SparkleShare + SCM-Manager: Очень простая альтернатива DropBox для локальной сети под Windows
2 min
18KTutorial
Это руководство подскажет вам, как буквально за 10 минут создать простой, удобный и надежный аналог Dropbox, который будет под вашим полным контролем и позволит обмениваться файлами с коллегами по локальной сети.
+7
ВКонтакте Android SDK
2 min
65KРешили поделиться своими наработками по реализации ВКонтакте API для Android. Данное SDK позволяет быстро авторизоваться и вызывать методы API, например отправить запись на стену, получить список друзей пользователя и многое другое. Изначально библиотека разрабатывалась как ядро проекта Kate Mobile. Совсем недавно пришла идея оформить часть кода в ощедоступную библиотеку. На скорую руку вынести её в отдельный проект и теперь она доступна всем желающим. Сейчас реализованы основные методы API, пополняем по мере необходимости. Будем улучшать на основании полученного фидбэка. Если он будет.
+27
Пишем своё первое приложение на Android
10 min
1.8MПредисловие
Цель данного поста — с одной стороны поделиться своим успешным опытом старта разработки приложений на платформе Android и с другой стороны поспособствовать развитию рынка софта для этой замечательной и бурно растущей платформы за счёт (без ложной скромности скажу) возможно Вас, прочитавших данный пост. В сети, конечно, можно найти материалы на тему разработки приложения «чуть сложнее, чем helloworld», но как правило они разрозненные и в них не описываются различные мелкие подводные камешки. В данном посте мы рассмотрим полный цикл разработки приложения, начиная с чистого компьютера до готового apk-файла. Под катом скрины.
+108
Мобильная веб-разработка: HTML5 приложение для Android
11 min
112KTutorial
Recovery Mode
Вступление
К счастью, есть более чем один способ написать приложение для мобильного телефона. Можно сделать сайт, упаковать его специальным образом, и вуаля, вот вам и приложение!
+21
Скачивание музыки из vk.com
4 min
73KПосле недавней шумихи вокруг аудиозаписей на сайте vk.com решил подстраховаться и скопировать всю свою коллекцию на жесткий диск. Для решения мною была написана простенькая утилита на Java. Ниже — её код c комментариями. Статья предназначена для читателей, знакомых с любым языком программирования общего назначения и умеющих компилировать и запускать написанные на нем программы.
Важное замечание: если Ваши аудиозаписи уже изъяты, то скачать их таким образом скорее всего не получится.
Важное замечание: если Ваши аудиозаписи уже изъяты, то скачать их таким образом скорее всего не получится.
+1
Генератор ASCII-артов на HTML5
9 min
54KTutorial
Доброго времени суток, уважаемые хаброжители.
В этой статье я расскажу о том, как при помощи HTML5 можно сделать простенькое приложение, которое будет генерировать ASCII-арты на основе обычных изображений. Статья ориентирована на тех, кто только начинает свое знакомство с такой замечательной технологией, как HTML5, коим являюсь и я. Профессионалы вряд ли найдут для себя что то новое.
Копался я недавно в интернете в поисках обоев и наткнулся на одно интересное изображение(1.1мб). И меня “зацепила” идея рисовать изображения разноцветными буквами. Порывшись в интернете узнал, что это называется ASCII-art. Ну и конечно же первая мысль: “А запилю ка я приложение, что бы мои любимые обои таким образом нарисовало!”
Сказано — сделано. Есть время, есть желание — почему бы не попробовать.
В этой статье я расскажу о том, как при помощи HTML5 можно сделать простенькое приложение, которое будет генерировать ASCII-арты на основе обычных изображений. Статья ориентирована на тех, кто только начинает свое знакомство с такой замечательной технологией, как HTML5, коим являюсь и я. Профессионалы вряд ли найдут для себя что то новое.
Дело было вечером, делать было нечего
Копался я недавно в интернете в поисках обоев и наткнулся на одно интересное изображение(1.1мб). И меня “зацепила” идея рисовать изображения разноцветными буквами. Порывшись в интернете узнал, что это называется ASCII-art. Ну и конечно же первая мысль: “А запилю ка я приложение, что бы мои любимые обои таким образом нарисовало!”
Сказано — сделано. Есть время, есть желание — почему бы не попробовать.
+67
Практические советы по составлению портфолио для тестировщиков
5 min
38KКогда я решила попробовать себя в удаленном тестировании, зарегистрировалась на нескольких freelance-биржах и не получила ни одного предложения о работе, то задумалась о том, что же со мной не так. Немного подумав, я поняла, что для полного счастья мне не хватает портфолио. Я прочитала определенное количество статей, содержащих советы для новичков в этом деле. Некоторые из них были довольно неплохими, как, например "Фриланс — практика", но ни одна из них так и не помогла мне в составлении портфолио тестировщика.
+1
WindowsAndroid позволяет запускать Android 4.0 ICS как Windows-приложение
2 min
159KЕсли вы хотите запускать приложения под Android на своем ПК или ноутбуке с Windows, то теперь такая возможность появилась. Новая программа WindowsAndroid позволяет запускать Android 4.0 Ice Cream Sandwich как «родное» приложение для Windows. Соответственно, в открывшемся окне можно работать со всеми Android-программами.
+91
Заготовка для сайта (Kohana+Bootstrap+HTML5)
4 min
29KРассмотрим заготовку для сайтов, обладающую хорошими возможностями для дальнейшего расширения. Будут указаны её основные особенности, и подробно описан процесс установки.
Если представленная заготовка окажется полезной большинству пользователей, о чем они не преминут указать в комментариях, тогда, скорее всего, отдельные её модули и особенности будут рассмотрены в дальнейшем.
Некоторые функции, код и отображение данных используются больше в показательных целях, чем для практического применения в рамках создания рабочего сайта.
В представленном виде заготовку уже можно применять для создания простых сайтов, но с неплохими возможностями для расширения.
Если представленная заготовка окажется полезной большинству пользователей, о чем они не преминут указать в комментариях, тогда, скорее всего, отдельные её модули и особенности будут рассмотрены в дальнейшем.
Некоторые функции, код и отображение данных используются больше в показательных целях, чем для практического применения в рамках создания рабочего сайта.
В представленном виде заготовку уже можно применять для создания простых сайтов, но с неплохими возможностями для расширения.
+12
Пишем свой блог с фреймворком Fat-Free Framework
8 min
24KTutorial
Translation
На всякий случай — это перевод (многие не замечают этого в интерефейсе ХабраХабра).
«Fat-Free» можно перевести с английского как «Обезжиренный» — фреймворк и в самом деле поражает своим размером (55 КБ) и скоростью работы.
Я наконец-то нашёл лёгкий и быстрый фреймворк. Он умещается в файл размером всего 55Кб и имеет множество возможностей, о которых вы можете узнать на его официальном сайте, поэтому не буду повторяться. Вместо этого я решил сделать небольшой учебник, из которого вы узнаете как сделать свой блог на этом фреймворке.
Вам понадобится PHP 5.3 на сервере. Я использовал Ubuntu 11.04 для написания этого учебника, на которую легко устанавливается эта версия. Если вы работаете на RHEL или Centos то я предлагаю заглянуть вам на IUS Community Project для получения последней версии PHP.
«Fat-Free» можно перевести с английского как «Обезжиренный» — фреймворк и в самом деле поражает своим размером (55 КБ) и скоростью работы.
Я наконец-то нашёл лёгкий и быстрый фреймворк. Он умещается в файл размером всего 55Кб и имеет множество возможностей, о которых вы можете узнать на его официальном сайте, поэтому не буду повторяться. Вместо этого я решил сделать небольшой учебник, из которого вы узнаете как сделать свой блог на этом фреймворке.
Вам понадобится PHP 5.3 на сервере. Я использовал Ubuntu 11.04 для написания этого учебника, на которую легко устанавливается эта версия. Если вы работаете на RHEL или Centos то я предлагаю заглянуть вам на IUS Community Project для получения последней версии PHP.
+30
О порядке поиска пакетов и модулей для импорта в Python
5 min
58KНачать, видимо, следует с того, что речь пойдет об интерпретаторе CPython версии 2.7.x (примеры проверялись на версии 2.7.3).
На официальном сайте имеются описания инструкции import и модулей в Python:
Из них следует, что в Python имеются пакеты (package), модули (module) и имена, определенные в модулях (names). Также следует отметить, что в некоторых частях документации модули называются подмодулями (submodule), если они размещены внутри пакета.
В языке Python инструкция import позволяет импортировать пакеты, модули и имена в пространство имен, в котором инструкция import выполняется. При это существует две интересные особенности:
Из этих двух особенностей следуют такие неоднозначности для записи import abcd:
Еще примеры неоднозначностей:
Для разрешения эти декларативных неоднозначностей должен существовать императивный алгоритм. Такой алгоритм в некотором виде описан в официальной документации Python.
На официальном сайте имеются описания инструкции import и модулей в Python:
Из них следует, что в Python имеются пакеты (package), модули (module) и имена, определенные в модулях (names). Также следует отметить, что в некоторых частях документации модули называются подмодулями (submodule), если они размещены внутри пакета.
В языке Python инструкция import позволяет импортировать пакеты, модули и имена в пространство имен, в котором инструкция import выполняется. При это существует две интересные особенности:
- Из синтаксиса инструкции import не всегда явно следует, что именно должно быть импортированно: пакет, модуль или имя
- Синтаксисом инструкции import невозможно явно указать, что путь к модулю является абсолютным путем (хотя явно указать, что путь является относительным можно, а также возможно изменение семантики инструкции, в части использования абсолютного пути по умолчанию, см. www.python.org/dev/peps/pep-0328 )
Из этих двух особенностей следуют такие неоднозначности для записи import abcd:
- Импортировать ПАКЕТ abcd, либо импортировать МОДУЛЬ abcd
- Импортировать пакет/модуль abcd из ТЕКУЩЕГО ПАКЕТА (из пакета того модуля, в котором исполняется import abcd), либо ИЗ ПАКЕТА в соответствии с перечнем каталогов, указанных в sys.path
Еще примеры неоднозначностей:
- from abcd import defg: (импортировать модуль defg из пакета abcd, либо импортировать пакет defg из пакета abcd, либо импортировать имя defg из пакета abcd, либо импортировать имя defg из модуля abcd) X (из того же пакета, либо из пакета в соответствии с sys.path)
- import abcd.defg: (импортировать пакет defg из пакета abcd, импортировать модуль defg из пакета abcd) X (из того же пакета, либо из пакета в соответствии с sys.path)
Для разрешения эти декларативных неоднозначностей должен существовать императивный алгоритм. Такой алгоритм в некотором виде описан в официальной документации Python.
+30
TextTest — кроссплатформенный фреймворк на python для тестирования GUI и не только. Часть 1
7 min
13KTutorial
Предлагаю поговорить сегодня о замечательном фреймворке для тестирования TextTest. Это кроссплатформенный инструмент для функционального тестирования с «record-replay» парадигмой. Как следует из названия TextTest пропагандирует довольно необычный на сегодняшний день подход текст-ориентированного тестирования, который позволяет легко и просто писать и читать тесты. Помимо TextTest мы поговорим о StoryText — являющимся строго говоря отдельном инструменте для тестирования GUI, но совместно с TextTest он позволяет делать это гораздо приятнее. Так же упомянем о третьем модуле от автора — CaptureMock.
+15
TextTest — кроссплатформенный фреймворк на python для тестирования GUI и не только. Часть 2
13 min
11KTutorial
Продолжение рассказа о замечательном кроссплатформенном фрейворке для функционального-тестирования TextTest. Первая часть статьи.
+8
Подробнее о Sikuli в автоматизации тестирования
6 min
67KTutorial
Вступление
Sikuli — это API позволяющая писать на Jython сценарии автоматизации опираясь на визуальную составляющую любой программы/сайта и т.д. Особенно приятна для автоматизации Flash.
О Sikuli написано мало статей и большинство из них обзорные. Ещё меньше русскоязычного хелпа, и ещё меньше примеров кода. И отсутствие последнего пожалуй самое трагичное для тестировщика ПО который столкнулся в работе с необходимостью автоматизировать какой либо флэш. Как раз это и подтолкнуло меня написать более ёмкую статью по Sikuli и описать несколько подробнее некоторые особенности использования.
+12
Information
- Rating
- Does not participate
- Location
- Санкт-Петербург, Санкт-Петербург и область, Россия
- Date of birth
- Registered
- Activity