Search
Write a publication
Pull to refresh
0
0
Andrey Khitryy @arkty

Android developer

Send message

Сбербанк делится опытом создания приложения в Material Design: стили и темы

Reading time20 min
Views53K
Привет, Хабрахабр! Не так давно мы подводили итоги конкурса по Material Design, и в комментариях нас просили показать реально популярные и красивые Material-приложения. Что же, встречайте: «Сбербанк Онлайн» в новом, современном интерфейсе. Про процесс создания приложения интереснее узнать от самих создателей.

Мы передаём слово команде разработчиков Android-приложения Сбербанка, чтобы вы услышали об опыте создания такой сложной штуки, как UI мобильного банк-клиента, из первых уст. Большую часть поста написал freeuser, так что спасибо говорите ему. ;)
Читать дальше →

Shazam: алгоритмы распознавания музыки, сигнатуры, обработка данных

Reading time13 min
Views164K
В ресторане заиграла почти забытая песня. Вы слушали её в далёком прошлом. Сколько трогательных воспоминаний способны вызвать аккорды и слова… Вы отчаянно хотите послушать эту песню снова, но вот её название напрочь вылетело из головы! Как быть? К счастью, в нашем фантастическом высокотехнологичном мире есть ответ на этот вопрос.

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


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

Как же всё это работает?
Читать дальше →

21 бесплатный учебный ресурс для разработчиков игр

Reading time8 min
Views136K
В интернете полным-полно создателей контента, и каждый хочет привлечь к себе внимание. Но, как ни странно, хороший учебный ресурс найти нелегко, а бесплатный – еще сложнее. Мы публикуем перевод материала, в котором автор собрал ссылки на самые авторитетные и полезные обучающие площадки.


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

Собственный поисковик по раздачам The Pirate Bay

Reading time10 min
Views18K
В последнее время на хабре стало популярно делать собственные поисковики по RuTracker. Мне это показалось прекрасным поводом для того, чтобы отойти от скучной enterprise разработки и попробовать что-нибудь новое.



Итак, задача: реализовать на локалхосте поисковик по базе The Pirate Bay и попутно попробовать, что же такое frontend разработка и с чем её едят. Задача осложняется тем, что TPB не публикует своих дампов, в отличие от RuTracker, и для получения дампов требуется распарсить их сайт. В результате гугления и осмысления задачи я решил в качестве поисковика использовать Elasticsearch, для которого написать client-side only фронтенд на AngularJS. Для получения данных я решил написать собственный парсер сайта TPB и отдельный загружатель дампа в индекс, оба на Go. Пикантность выбору придавал тот факт, что ни к Elasticsearch, ни к AngularJS я до этого ни разу не прикасался и именно их опробывание было моей настоящей целью.
Читать дальше →

Борис Гребенщиков за два дня собрал 3 миллиона на запись новых песен

Reading time2 min
Views14K
image

Борис Гребенщиков разместил на проекте planeta.ru краудфандинговую кампанию для сбора средств на запись и выпуск своих новых песен. Для оплаты аренды студии музыкант планировал собрать 3 миллиона рублей за 110 дней работы кампании. Однако поклонники собрали необходимую сумму уже на второй день её работы.

Известный музыкант, автор песен, бессменный руководитель творческого коллектива «Аквариум», Борис Борисович Гребенщиков известен своим поклонникам радикальным отношением к вопросу доступности творчества музыкантов. Все свои новые песни он сразу же выкладывает в интернет, считая, что музыкант работает ради аудитории – поэтому, чем больше людей услышат его песни, тем лучше. Участники коллектива зарабатывают на жизнь исключительно гастролями и концертами.

Но кроме концертов БГ с товарищами периодически выпускают синглы и альбомы, а на профессиональную запись на хорошем оборудовании требуются деньги. Как пишет сам музыкант:
Аквариум всегда записывал и выпускал свою музыку. В любую историческую эпоху. И всегда – благодаря друзьям. Именно Аквариум, еще в семидесятые годы прошлого века, начал, а в восьмидесятые развил «магнитиздат» – звуковой аналог самиздата в России.

Друзья помогали полулегально записаться ночью в студии. Друзья распространяли полноценные альбомы с самодельными обложками на катушках и кассетах. Друзья привезли нас в Канаду на первую профессиональную сессию звукозаписи. Друзья открыли нам двери фирмы «Мелодия». Сегодня мы все — обитатели Прекрасного Нового Мира Интернета, где музыку можно слушать бесплатно. Но, чтобы ее записывать, нужны деньги.

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

Легко переходим на векторный формат картинок вместо нарезки под разные плотности экранов в Android 4.0+. Часть 2 из 2

Reading time3 min
Views29K


В предыдущей части мы обсудили библиотеку BetterVectorDrawable, реализующую VectorDrawable для Android 4.0+.
В этой части речь пойдет о преобразовании изображений из SVG в vector drawable XML.
Читать дальше →

Легко переходим на векторный формат картинок вместо нарезки под разные плотности экранов в Android 4.0+. Часть 1 из 2

Reading time4 min
Views36K


Обычно дизайн приложения рисуется в векторном редакторе (например, Sketch), но типичным форматом картинок в приложении под Android является растровый (как правило, PNG). При разработке приложения необходимо для каждого векторного изображения заниматься утомительной работой по изготовлению набора растровых картинок для разных плотностей экранов. Количество таких комплектов может доходить до шести по числу возможных плотностей: ldpi, mdpi, hdpi, xhdpi, xxhdpi, xxxhdpi (плотность xxxhdpi необходима только для иконки приложения). При верстке иногда приходится задать в разметке явные размеры для изображения, что может потребовать перемасштабирования растровой картинки, а это, в свою очередь, наверняка приведет к появлению артефактов. К тому же наличие нескольких комплектов картинок отрицательно сказывается на размере выходного apk.
Читать решение...

Открытый митап Rambler.Android

Reading time1 min
Views4.8K
Rambler.Android — периодические встречи Android-разработчиков, проводимые компанией Rambler&Co.

В сентябре у нас будет третья встреча, и она будет особенная. После предыдущих двух, которые были внутренними, мы решили полностью изменить формат. Участие во встрече будет открытым, и любой, кто вовлечён в Android разработку, теперь может присоединиться к нам.

Темы докладов:
  • Конвейерное производство приложений (Мельников Андрей — andrey7mel)
  • Android M: опыт личного знакомства (Щенёв Вадим — v555)
  • Vector Drawable API. Возможности применения (Осипенко Олег — basnopisets)
Читать дальше →

Хабр шелл: встраиваем кросплатформенный ssh server в java приложение

Reading time4 min
Views15K


Расскажу как внедрить в существующее java приложение ssh сервер, который может выводить в терминал данные о лучших статьях с habrahabr. Это лишь пример, но на его основе вы сможете получить дополнительное средство для администрирования вашей программы и расширить поведение любыми командами, без изменения исходного кода и пересборки приложения.
Подробности

Что нас ждет в Liferay 7.0

Reading time4 min
Views27K
Компания Liferay объявила о выходе последней milestone версии Liferay 7.0 m7. Это означает что дальше пойдут уже альфы и беты, в которых будет идти исправление ошибок — функциональных же изменений уже особо не ожидается. И хотя до релиза еще примерно полгода, уже сейчас можно посмотреть что же нового нас ждет в новой версии Liferayimage
Читать дальше →

Большинство топ-менеджеров готовы заменить сотрудников роботами

Reading time5 min
Views11K
image

• Семьдесят процентов менеджеров готовы рассмотреть возможность использования робота в своей команде.

• Говорят, роботы могут отвечать на телефонные звонки, выполнять административную работу и писать отчеты.

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

Чат-помощник на сайт с помощью Telegram за 15 минут

Reading time4 min
Views197K


Про чаты-помощники


Многие люди продают через интернет товары и услуги. Еще больше людей — покупает что-то через интернет.
Во время выбора покупок, часто возникают вопросы, которые можно решить позвонив и пообщавшись с менеджером.
Скорее всего я — не единственный человек на хабре, который общению с менеджерами по телефону предпочитает переписку.
И тут на помощь приходят всплывающие чаты-помощники, которые вроде-как повышают конверсию, но многих нервируют.
(Для тех, кто не в курсе: в углу сайта всплывает окошко, в котором можно он-лайн переписываться с консультантом).

Есть с десяток подобных сервисов и все они работают по принципу "пробная версия бесплатно, а дальше за деньги".
На хабре есть несколько статей, вот одна из них (http://habrahabr.ru/company/tuthost/blog/165365/), но, я уверен, аудитория Хабрахабра знает о чем речь.
Большинству людей подойдет бесплатный вариант любого такого сервиса: нужно всего-навсего зарегистрироваться и вставить на сайт кусок JS кода. Для тех у кого много менеджеров — придется платить: например Редхелпер на 10 операторов обойдется Вам:
115200 руб. за 1 год



Скорее всего — цена адекватная для тех, кто платит зарплату десяти менеджерам.

Но я решил изобрести бесплатный «велосипед» из подручных материалов.
Запуск у себя на сервере займет 15 минут. Всем, кому идея интересна — прошу под кат.
Читать дальше →

Многострадальный notepad: ошибка, которую не исправляют уже 13 лет

Reading time6 min
Views145K


В стандартном блокноте для всех версий Windows, начиная примерно с 2001 года, имеется ошибка, про которую практически все знают, но никто не собирается её исправлять. И это понятно, ведь это не критическая уязвимость, ничьей безопасности она не угрожает. Да и пользуется ли кто блокнотом вообще?

Тем не менее, сам факт довольно странный, поэтому мы попробуем найти эту ошибку в коде 64-битного и 32-битного notepad.exe от windows 7, исправим её, и выясним наконец, почему же она возникла. Заключается ошибка в следующем:

Если в блокноте включена опция «перенос по словам» (word wrap), то после сохранения файла начинаются всевозможные глюки: строки начинают разъезжаться, курсор улетает, текст вводится не туда, куда вы ожидаете, и так далее.
Читать дальше →

Врач в облаке: как может выглядеть новая медицина

Reading time5 min
Views7.9K
Давно ли вы были в поликлинике? Я недавно. Нет, мне нечасто приходится болеть, просто если организм дает какой-либо намек, что не все в порядке, предпочитаю проверить наиболее простые и важные показатели своего здоровья. И, да, иногда это приводит меня в поликлинику.

Храм очередей


Дозвониться в регистратуру, взять талон, прийти, отсидеть очередь, получить консультацию, сдать анализы, снова записаться и так далее… Многие мои друзья и знакомые предпочитают как можно реже проходить этот замысловатый путь. И я их понимаю: в большинстве случаев результат от посещения врача если и не отсутствует, то по крайней мере неочевиден. Большинство визитов — трата времени. Но, в какой-то момент, может обнаружиться, что у человека раковая опухоль или какое-либо другое заболевание. И важно этот момент не пропустить.

К сожалению, существующее соотношение «количество посещений/результат» создает в наших головах своеобразную стену из лени и оправданий. Лень — это весьма полезное качество людей, которое не позволяет организму делать лишнюю работу, которая не является необходимой для выживания. Наш мозг говорит нам: «Эй, тебе не следует по каждому чиху бежать в поликлинику, вряд ли это что-то серьезное! У тебя работы навалом и тараканы не кормлены!». И вправду — не стоит. Но как понять, что в этот раз ты не ошибся? Ведь существует большое количество недугов, на начальных стадиях протекающих скрыто.

Датчики


Тут я, естественно, подумал о трекинге. «Почему бы не отслеживать показатели собственного здоровья в автоматическом режиме?», — подумал я. А ещё так подумали Google, Microsoft, Apple и сотня других компаний и начали строить новую IT-инфраструктуру в области здорового образа жизни.
Читать дальше →

Нью-Йоркский суд: шимпанзе — не люди

Reading time2 min
Views16K
Судья Барбара Джаффе после четырёхмесячного разбирательства постановила, что шипанзе — не люди. Они не могут пользоваться правом «хабеас корпус» — презумпции незаконности задержания. Судья отметила, что когда-нибудь попытки наделить шимпанзе человеческими правами могут увенчаться успехом.

Глава общества Nonhuman Rights Project Стивен Уайз обещал подать апелляцию, чтобы освободить Геркулеса и Лео из университета в Стоуни-Брук.

image
Тридцатипятилетний самец карликового шимпанзе (бонобо) по имени Канзи сравним с трёхлетним ребёнком по интеллекту. Канзи понимает две тысячи слов. Шимпанзе с помощью клавиатуры с лексиграммами сам попросил свою учительницу, доктора Сью Сэведж-Рамбо, научить его разжигать огонь, чтобы готовить на нём пищу.
Читать дальше →

Спросите Итана №21: Почему существует жизнь?

Reading time5 min
Views23K
image
В двух словах я могу сформулировать всё, что я узнал о жизни: она продолжается.
— Роберт Фрост

Читатель спрашивает:
Хотелось бы узнать ваше мнение по вопросу применения второго закона термодинамики к истокам жизни.

И вот, о чём он говорит.

image

Давно известно, что в начале Вселенной не было ничего, похожего на жизнь. Не то, что сложных многоклеточных форм жизни вроде млекопитающих или насекомых — сразу после Большого Взрыва не было даже атомов! Но из этого очень горячего и плотного супа доисторической материи и излучения постепенно вышло всё. И некоторые из этих шагов известны нам полностью.
Читать дальше →

Корреляция, ковариация и девиация (часть 3)

Reading time5 min
Views45K


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

В данной статье покажем, что матрица Грина и матрица корреляции — суть одно и то же.
Читать дальше →

Как я собрал скелет бота для заказа такси в Telegram

Reading time4 min
Views76K
В день запуска ботов в Telegram я за 3 часа собрал бота, который присылает температуру воздуха в ответ на геолокацию пользователя. С того же дня я бредил вызовом такси через бота в Telegram, так как API службы такси у меня был под рукой.

Моя цель – не просто рассказать, как я собрал бота для вызова такси, а поделиться этим процессом с другими, чтобы то время, которое я потратил на реализацию алгоритма не тратили остальные. Вследствие этой работы любая служба такси, при наличии API, может за 5 минут настроить шаблон этого бота под себя. Или владелец бота с большим количеством пользователей сможет быстро подключать к себе службу такси.
Читать дальше →

Библиотека Chronos: облегчаем написание долгих операций

Reading time7 min
Views15K
Привет, Хабр! Хочу рассказать вам о библиотеке Chronos для Android (API level >= 9), цель которой – облегчить написание долгих операций, например, сетевых запросов, или обращений к БД.

Какую проблему решаем?

Не секрет, что для Android задача выполнения асинхронных операций всегда была одной из самых частовстречающихся. Действительно, крайне мало приложений работают исключительно в оффлайн, и где можно обойтись без сетевого взаимодействия. И уж совсем крохотная их часть обходится без обращения к постоянной памяти устройства, будь то база данных, Preferences или обычный файл. Однако, на протяжении истории развития системы нам так и не было предложено ни одного достаточно удобного решения “из коробки”.
Читать дальше →

Программирование — не тяжелый физический труд, но все равно отстой

Reading time10 min
Views54K
Peter Welch
30 апреля 2014 г.
Об авторе. Peter Welch писатель и программист, автор книги «And Then I Thought I Was a Fish», автор блога «Still Drinking».


Изображение: Joe Raedle/Getty Images

Каждый мой друг, хотя бы дважды в неделю поднимающий на работе что-то тяжелее ноутбука, рано или поздно в разговоре невзначай бросает что-то вроде: «Бро, ты не пашешь на износ. Я только что отработал 4700-часовую неделю, копая тоннель под Мордором, используя отвертку»

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

Information

Rating
Does not participate
Location
Петрозаводск, Карелия, Россия
Date of birth
Registered
Activity