» Материалы за Ноябрь 2017 года » Страница 5

 

В разрезе: новостной агрегатор на Android с бэкендом. Разработка под Android: выработка архитектуры

Автор: admin от 29-11-2017, 14:55, посмотрело: 97

Вводная часть (со ссылками на все статьи)



В водной статье я уже писал о том, что планируемым клиентом для проекта должен стать клиент Android: доступный большой аудитории, лёгкий, функциональный, красивый, быстрый (не приложение, а мечта!). Если с основаниями выбора платформы всё понятно, то с тем как реализовывать на базе неё все перечисленные требования – ясно было далеко не всё.



Ранее разработкой под Android не занимался поэтому достаточно ценными источниками информации для меня являлись:




  • Книга «Android Programming: The Big Nerd Ranch Guide» (ознакомление с переводом от издательства «Питер» подтвердило ранее имевшийся принцип: «можешь читать оригинал – читай оригинал»);

  • Сайт Google по разработке для Android;

  • Книга «Efficient Android Threading» от издательства O’Reilly;

  • Видео с проекта Яндекса «Мобилизация».



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




  • Логика работы с объектами Android (Activity, Preferences, TextView ….) перемешивалась с бизнес-логикой;

  • Объекты хранения фигурировали в коде построения интерфейса;

  • Модульное тестирование превращалось в ад из-за необходимости работы с родными объектами Android и их подмены экземплярами Robolectric;

  • Проверка асинхронного кода была возможна только на устройстве или эмуляторе (по принципу: «запустил-проверил-повторил»).

Категория: Операционные системы » Android

 

Логика камеры в 2D-платформере

Автор: admin от 29-11-2017, 14:55, посмотрело: 136

Логика камеры в 2D-платформере




Правильно настроить поведение камеры в классическом 2D-платформере не так просто, как может казаться.



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



Например, если камера сдвигается вверх при каждом прыжке персонажа, то это запросто может вызвать тошноту. Кроме того, при мгновенном разгоне и остановке персонажа камера может резко дёргаться.



В нашей новой игре Tiny Thor мы экспериментировали с различными вариантами. Я хочу рассказать о том, на каких техниках мы в результате остановились.

Категория: Операционные системы » iOS

 

Как перетасовать песни?

Автор: admin от 29-11-2017, 14:55, посмотрело: 120

Мы здесь в Spotify серьёзно относимся к фидбеку от пользователей. Какое-то время назад мы заметили, что пользователи жалуются на то, что при включенном режиме случайного перемешивания плейлиста порядок песен на самом деле не случаен — например, несколько песен одного и того же исполнителя могут быть воспроизведены одна за другой, при том, что в плейлисте множество песен разных исполнителей. Пользователи спрашивали неужели мы не способны сделать такую простую вещь, как случайный порядок воспроизведения треков? Мы отвечали «Он правда-правда случаен! Мы проверяли!»



Так кто же был прав — мы или пользователи? Как оказалось — и мы, и они. Ну и вообще дело обстояло значительно серьёзнее, чем казалось на первый взгляд.



Наш точка зрения



Ещё в самом первом релизе нашего плеера в нём была функция случайного перемешивания плейлиста. Мы использовали для этого алгоритм Фишера-Йетса — и он давал идеально случайное перемешивание. Но что такое «идеально случайное»? Это значит, например, что мы можем получить один из двух нижеуказанных порядков песен с одинаковой вероятностью (разные цвета означают треки разных исполнителей):



Как перетасовать песни?

Категория: Операционные системы » iOS

 

Впечатления разработчиков и дизайнеров от iPhone X — и от выреза

Автор: admin от 29-11-2017, 14:55, посмотрело: 178

Разработчики приложений и игр iPhone заполучили смартфоны iPhone X и поделились с нами впечатлениями



Впечатления разработчиков и дизайнеров от iPhone X — и от выреза


Главное для iPhone X — сторонние приложения. От дополненной реальности до сенсора TrueDepth, новые функции должны стимулировать креативность и подтолкнуть к действию сообщество разработчиков, которые выпустят для пользователей iPhone X инновационные новые приложения. Но хотя Apple даёт разработчикам новые игрушки на пробу, она должна при этом убедиться, что не сломала старые.



iPhone X — самое значительное изменение iPhone за несколько лет. У него увеличенное разрешение и иная форма экрана. Он избавился от кнопки Home, добавил новые или изменил старые жесты. Каждое из этих изменений может прибавить работы дизайнерам и разработчикам… а тут ещё вырез (notch). Можно ожидать, что примеру Apple последуют и другие производители смартфонов. Но как обойти эту штуку в дизайне? Насколько сложно адаптировать приложение для неё? Правда ли это, как говорят некоторые критики, пример плохого дизайна?



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

Категория: Операционные системы » iOS

 

Классификация звуков с помощью TensorFlow

Автор: admin от 29-11-2017, 14:40, посмотрело: 198

Классификация звуков с помощью TensorFlow


Игорь Пантелеев, Software Developer, DataArt



Для распознавания человеческой речи придумано множество сервисов — достаточно вспомнить Pocketsphinx или Google Speech API. Они способны довольно качественно преобразовать в печатный текст фразы, записанные в виде звукового файла. Но ни одно из этих приложений не может сортировать разные звуки, захваченные микрофоном. Что именно было записано: человеческая речь, крики животных или музыка? Мы столкнулись с необходимостью ответить на этот вопрос. И решили создать пробные проекты для классификации звуков с помощью алгоритмов машинного обучения. В статье описано, какие инструменты мы выбрали, с какими проблемами столкнулись, как обучали модель для TensorFlow, и как запустить наше решение с открытым исходным кодом. Также мы можем загружать результаты распознавания на IoT-платформу DeviceHive, чтобы использовать их в облачных сервисах для сторонних приложений.



Выбор инструментов и модели для классификации



Сначала нам нужно было выбрать ПО для работы с нейронными сетями. Первым решением, которое показалось нам подходящим, была библиотека Python Audio Analysis.



Основная проблема машинного обучения — хороший набор данных. Для распознавания речи и классификации музыки таких наборов очень много. С классификацией случайных звуков дела обстоят не так хорошо, но мы, пусть и не сразу, нашли набор данных с «городскими» звуками.

Категория: Программирование » Веб-разработка

 

Доступен PhpStorm 2017.3

Автор: admin от 29-11-2017, 14:40, посмотрело: 275

Доступен PhpStorm 2017.3



Всем привет!



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



Для вступления, я думаю, достаточно. Стоит разве что добавить, что статья является вольным переводом страницы “What’s new”. Скачать новую версию можно по предыдущей ссылке или с помощью Toolbox App. Как всегда, доступна 30-дневная пробная версия. Полную же версию могут использовать обладатели действующей подписки на PhpStorm или All Products pack, а также студенты и разработчики проектов с открытым исходным кодом.



Погнали! (Осторожно, под катом 2873.15 Кбайт картинок.)

Категория: Программирование, Веб-разработка

 

«Блендер на 28 докладов, каждый из которых равен десяти статьям» — интервью с Программным комитетом HolyJS 2017 Moscow

Автор: admin от 29-11-2017, 13:50, посмотрело: 76

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



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



Это происходит само собой, просто по статистике? Если набрать достаточное количество докладов, всё получится автомагически? Как бы не так. Всё подстроено. Как программу на JS проектируют архитекторы, так и за каждой конференцией стоит команда отличных инженеров, которые проектируют её специальным образом. Они проектируют не только структуру, но и вместе с докладчиками «отлаживают» каждый доклад, строчка за строчкой, раз за разом. Проводят кросс-ревью, оценку, починку багов. Пишутся специальные инструменты и выкладываются на GitHub. И так до тех пор, пока не скомпилируется хорошо работающая, безбажная конференция.



Наверное, каждый иногда хотел пообщаться с разработчиками тех инструментов, которыми мы все пользуемся. К примеру, кто хотел бы сказать пару ласковых создателям React или Node.js? А кто хотел бы узнать от них парочку тайн о внутренней кухне проекта?



Это интервью — с разработчиками конференции HolyJS 2017 Moscow, с её Программным комитетом. Мы будем обсуждать:




  • какие сложности возникают при разработке программы конференции и как их побеждают;

  • кто допущен к сакральному процессу отбора докладов и нужно ли для этого быть богом javascript;

  • совместима ли работа в ПК с обычной жизнью;

  • какие доклады стоит послушать и на какие ни в коем случае не стоит приходить хипстерам;

  • кучу рандомных интересных фактов.



«Блендер на 28 докладов, каждый из которых равен десяти статьям» — интервью с Программным комитетом HolyJS 2017 Moscow

Категория: Информационная безопасность

 

«ONLYOFFICE Документы» для iOS: как изменилось приложение за год

Автор: admin от 29-11-2017, 13:50, посмотрело: 67

Мы потихоньку начинаем подводить итоги этого трудового года, и начнем, пожалуй, с нашего приложения для iOS — "ONLYOFFICE Документы". В этом году оно серьезно изменилось в плане функциональности. Стало более самостоятельным, благодаря добавленной возможности работать локально, без подключения к порталу ONLYOFFICE. Обзавелось совместной работой и адаптировалось к iOS 11 и IPhone X.



Расскажем обо всем по порядку.

«ONLYOFFICE Документы» для iOS: как изменилось приложение за год

Категория: Информационная безопасность

 

Хакерские байки c Quora

Автор: admin от 29-11-2017, 13:50, посмотрело: 71

История первая



Восемь лет назад в старшей школе я хакнул основной сервер моей школы и нанес реальный вред.



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

У каждого студента был свой аккаунт на сервере.



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



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



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

Категория: Информационная безопасность

 

Три мифа о безопасности мобильных платежей

Автор: admin от 29-11-2017, 10:20, посмотрело: 105

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

Категория: Программирование » Веб-разработка