Как стать автором
Обновить
12
0
Язовцев Игорь @SunSunSun

Android, операционные системы

Отправить сообщение

Введение в RxJava: Ключевые типы

Время на прочтение7 мин
Количество просмотров137K
rxjava
В вводной статье мы рассмотрели преимущества реактивного подхода в программировании на Java, а также ситуации в которых библиотека Rx бывает более или менее полезной. В этой части мы рассмотрим основные типы, на которых базируется концепция реактивного программирования и несколько дополнительных классов, которые помогут нам в понимании принципов работы библиотеки.
Читать дальше →
Всего голосов 17: ↑14 и ↓3+11
Комментарии0

Bomberlands — история разработки, отчёт за год и советы начинающим

Время на прочтение18 мин
Количество просмотров8.5K
image
Если ты доделал свою первую игру, значит с тобой что-то не так.

Именно эта фраза, прочитанная в одном из постов, впечаталась в мою память 2 или 3 года назад. И автор был прав. Начав делать свой первый прототип, большинство разработчиков бросают его на пол пути и берутся за следующий по разным причинам.
Осторожно, трафик!
Всего голосов 10: ↑10 и ↓0+10
Комментарии1

8 успешных людей делятся опытом: как найти ментора?

Время на прочтение3 мин
Количество просмотров46K
Грамотный наставник играет большую роль в пути к успеху. Но как найти ментора, как вести себя с ним? Об этом рассказывают бывший госсекретарь США, основатели нескольких успешных стартапов и один из лучших авторов New York Times.

1. Речь о человеке, не о должности


«Для меня наставничество жизненно необходимо. Я приписываю большую часть своего успеха тому, что у меня было много отличных менторов, людей, к которым я могла придти и у которых могла спросить совета», — пишет Алекса фон Тобель, основатель и глава сервиса для финансового планирования LearnVest.com. Алекса отмечает, что важны знания и личные качества наставника: если ваш ментор не думает наперёд или же не самый честный человек, то он сам станет проблемой.

image
Читать дальше →
Всего голосов 13: ↑13 и ↓0+13
Комментарии12

STM32F103C8T6 — первые шаги. Начинаем делать осциллограф

Время на прочтение4 мин
Количество просмотров219K
О радостях и трудностях первого знакомства с STM32 после AVR. Как я реализовывал простейшую задачу — передачу данных на ПК.

Читать дальше →
Всего голосов 29: ↑29 и ↓0+29
Комментарии44

Гидропоника на подоконнике или C++11 в микроконтроллерах AVR

Время на прочтение18 мин
Количество просмотров54K
Проект не содержит Ардуино


Этот проект изначально должен был выглядеть иначе — монументальное сооружение, состоящее из тумбы с канистрами и насосами, водружённого на неё аквариума и помидорного оазиса поверх него. В райских кущах помидорного оазиса планировался водопад, а в аквариуме — рыбные формы жизни, главное требование к которым — умение поедать незапланированных жителей аквариума и держать в чистоте стёкла; основные кандидаты — сомики и гурами. Как вы уже могли догадаться, мой девиз — «лень — двигатель прогресса» (и чего только не сделаешь, чтобы аквариум не чистить и помидоры не поливать).
Читать дальше →
Всего голосов 52: ↑50 и ↓2+48
Комментарии104

Доступна Android Studio 1.4

Время на прочтение4 мин
Количество просмотров45K
Несколько дней назад стала доступна Android Studio 1.4 на Stable Channel, привнёсшая ряд удобных новшеств в инструментарий Android разработчика. Тех, кто еще не успел ознакомиться с нововведениями, прошу под кат.


Читать дальше →
Всего голосов 28: ↑28 и ↓0+28
Комментарии22

Интерфейс JTAG? — Это очень просто

Время на прочтение6 мин
Количество просмотров255K
Многие знакомы со словом «JTAG», но знакомство это скорее всего поверхностное. В этой статье я хочу перевести Вас на новый уровень, так сказать «во френдзону». Возможно, для многих я не открою ничего нового, но надеюсь тем, кто давно хотел ознакомиться, будет интересно почитать. Итак, от винта.
image

Запустить JTAG тестирование
Всего голосов 90: ↑86 и ↓4+82
Комментарии17

Исходники Windows Research Kernel в свободном доступе

Время на прочтение2 мин
Количество просмотров25K

Что же такое Windows Research Kernel?


Windows Research Kernel содержит исходные коды основной части ядра Windows (NTOS).
NTOS реализует базовые функции операционной системы для:
  • процессов;
  • потоков;
  • виртуальной памяти и менеджеров кэшей;
  • управления вводом/выводом;
  • реестра;
  • исполнительных функций, таких как куча (heap) ядра и синхронизация;
  • менеджера объектов;
  • механизма локального вызова процедур;
  • низкоуровневого управления CPU (планирование потоков, асинхронные и отложенные вызовы процедур, обработка прерываний/ловушек, исключения).

Читать дальше →
Всего голосов 64: ↑53 и ↓11+42
Комментарии111

Sliding экранов внутри приложения

Время на прочтение6 мин
Количество просмотров54K


Здравствуйте!

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

Примером таких решений является переключение между рабочими экранами в Android, где для перемещения от одного экрана к другому достаточно выполнить жест вправо или влево. О возможной реализации подобного решения и пойдет речь в данном посте.
Читать дальше →
Всего голосов 42: ↑38 и ↓4+34
Комментарии33

Atmel Software Framework (ASF): как это работает?

Время на прочтение5 мин
Количество просмотров22K

Немного теории


Atmel Software Framework (ASF) — программная библиотека, которая содержит широкий набор встраиваемого кода для микроконтроллеров Atmel всех семейств: megaAVR, AVR XMEGA, AVR UC3 и SAM.
Основные преимущества:
  • Упрощается использование и освоение микроконтроллеров, так как библиотека написана на высоком и среднем уровнях абстракции;
  • ASF разработана для использования на любой стадии проектирования;
  • ASF интегрирована в Atmel Studio с графическим пользовательским интерфейсом, но также может использоваться с компиляторами IAR и GCC;
  • ASF бесплатна.



Читать дальше →
Всего голосов 14: ↑14 и ↓0+14
Комментарии3

Программируем Arduino на чистом Си

Время на прочтение3 мин
Количество просмотров139K
В жизни ардуинщика рано или поздно наступает момент, когда в штатной среде разработки становится тесно. Если скетчам перестает хватать памяти, требуется жесткий реалтайм и работа с прерываниями или просто хочется быть ближе к железу — значит пришло время переходить на C. Бывалые электронщики при упоминании Arduino презрительно поморщатся и отправят новичка в радиомагазин за паяльником. Возможно, это не самый плохой совет, но мы пока не будем ему следовать. Если отбросить Arduino IDE и язык wiring/processing, у нас в руках останется прекрасная отладочная плата, уже оснащенная всем необходимым для работы микроконтроллера. И, что немаловажно, в память контроллера уже зашит бутлоадер, позволяющий загружать прошивку без использования программатора.
Читать дальше →
Всего голосов 40: ↑36 и ↓4+32
Комментарии29

Введение в новый CoordinatorLayout

Время на прочтение5 мин
Количество просмотров54K
В этом году на конференции Google IO компания Google представила новую библиотеку Android Design Support Library, которая создана для того, чтобы помочь разработчикам внедрять материальный дизайн в их приложения. Билиотека содержит много компонентов, нужных для этого нового стиля, и работает со всеми уровнями API, начиная с седьмого. Если по какой-то причине вы пропустили её анонс, можете ознакомиться с постом Ian Lake, выложенным на Android Developers Blog.

Встречайте Android CoordinatorLayout


Из всех компонентов, включенных в Android Design Support Library, наиболее интересным выглядит новый «прокачанный FrameLayout», он же герой нашей статьи — CoordinatorLayout. По названию можно догадаться, что CoordinatorLayout позволяет координировать некие зависимости между включенными в него виджетами.

Всё, что нужно сделать — обернуть необходимые нам виджеты в CoordinatorLayout. Давайте посмотрим, как это будет выглядеть в коде. Наш демонстрационный код очень прост — Floating Action Button, по нажатию на которую на экране появляется Snackbar.
Читать дальше →
Всего голосов 13: ↑13 и ↓0+13
Комментарии5

SoC: пишем реализацию framebuffer для контроллера в FPGA

Время на прочтение13 мин
Количество просмотров33K


Приветствую!

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

Вы ещё раз убедитесь, что разработка под FPGA и написание драйверов под Linux дело очень простое, но интересное.

Также в конце есть маленький опрос — хочется узнать мнение сообщества. Если не сложно, прошу проголосовать.

Добро пожаловать
Всего голосов 49: ↑48 и ↓1+47
Комментарии10

Best practices от Google по разработке Android приложений

Время на прочтение8 мин
Количество просмотров45K
В данной статье я хотел бы вкратце рассказать про самые последние best practices от Google. Я постарался выделить самые основные моменты, чтобы читатель сразу мог понять, что именно какая-либо фича дает разработчику. Не удивляйтесь, если где-то повторяюсь. Конспектировал + добавлял от себя по ходу просмотров видео в www.youtube.com/channel/UCVHFbqXqoYvEWM1Ddxl0QDg

Также к каждому пункту приводятся все необходимые ссылки для более подробного ознакомления с конкретной best practice.
Читать дальше →
Всего голосов 32: ↑30 и ↓2+28
Комментарии18

Ускорение обработки изображений в Android

Время на прочтение29 мин
Количество просмотров16K
image Центральные процессоры и графические ядра современных устройств, работающих под управлением Android, способны на многое. Например, их вычислительную мощность можно направить на обработку изображений.

Для того чтобы это сделать, стоит обратить внимание на технологии OpenCL и RenderScript.

В этом материале рассмотрен пример Android-приложения, в котором показаны методики высокопроизводительной обработки изображений с использованием языков программирования OpenCL и RenderScript. Эти технологии разработаны с прицелом на возможности графического аппаратного обеспечения, рассчитанного на параллельную обработку данных (шейдерных блоков). Они позволяют ускорить работу со значительными объёмами данных и решение задач, предусматривающих большое число повторов команд. Хотя, для ускорения обработки графики в Android-приложениях, вы можете воспользоваться другими технологиями, в этом материале рассматриваются примеры построения инфраструктуры приложения и реализации графических алгоритмов на OpenCL и RenderScript. Здесь так же рассмотрен класс-обёртка для OpenCL API, который позволяет упростить создание и исполнение приложений, работающих с графикой и использующих OpenCL. Использование исходного кода этого класса в ваших проектах не требует лицензирования.
Читать дальше →
Всего голосов 20: ↑18 и ↓2+16
Комментарии3

Как дизайнеру подготовить передачу Android-приложения разработчику

Время на прочтение2 мин
Количество просмотров39K
Во время нарезки графики под приложения часто возникает множество сложностей: от разрешения устройств и проблемы с сетками и рекомендациями Google до непосредственно передачи приложения разработчику. За 2 года я работала над дизайном более 10 приложений, научилась находить решения самых разных проблем и делать так, чтобы в конечном итоге приложение выглядело так же, как и в дизайне.
Об этом и пойдет речь под катом.



Читать дальше →
Всего голосов 34: ↑28 и ↓6+22
Комментарии22

Перевод книги «Kingpin». Глава 3. «The Hungry Programmers»

Время на прочтение8 мин
Количество просмотров31K
magisterludi: Кевин Поулсен, редактор журнала WIRED, а в детстве blackhat хакер Dark Dante, написал книгу про «одного своего знакомого».

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

Начало и план перевода тут: «Шкворень: школьники переводят книгу про хакеров».
Пролог
Глава 3. «The Hungry Programmers»
Глава 5. «Cyberwar!»
Глава 34. DarkMarket
(публикуем по мере готовности переводов)

Логика выбора книги для работы со школьниками у меня следующая:
  • книг про хакеров на русском языке мало (полторы)
  • книг про кардинг на русском нет вообще
  • Кевин Поулсен — редактор WIRED, не глупый товарищ, авторитетный
  • приобщить молодежь к переводу и творчеству на Хабре и получить обратную связь от старших
  • работать в спайке школьники-студенты-специалисты очень эффективно для обучения и показывает значимость работы
  • текст не сильно хардкорный и доступен широкому кругу, но затрагивает вопросы информационной безопасности, уязвимости платежных систем, структуру кардингового подполья
  • книга иллюстрирует, что «кормиться» на подпольных форумах — плохо заканчивается

Хочу выразить благодарность ребятам из проекта «Юные программисты ФСБ РФ» из Кадетской школы 1770 г. Москвы и руководителю Сергею Епифанцеву за координационную работу.

image

Кто хочет помочь с переводом других глав пишите в личку magisterludi.
Читать дальше →
Всего голосов 23: ↑14 и ↓9+5
Комментарии7

Переводим ActionBar на следующий уровень

Время на прочтение9 мин
Количество просмотров37K
Еще в ноябре 2012 года, я написал сообщение в блоге озаглавленное как "ActionBar в движении". Эта статья в основном касалась методики того, как красиво и уникально оживить ваш ActionBar . Хотя я упомянул некоторые из возможностей применения данного эффекта, я никогда не имел времени, чтобы добавить данный вид анимации ActionBar к какому-либо из моих собственных приложений. Но я видел в Play Store приложение использовавшее его.

Будучи на Google I/O, я наконец нашел приложение, использующее в ActionBar технику анимации. Давайте будем честными, это буквально взорвало мой взгляд когда я в первый раз это увидел. Я влюбился в хороший, тонкий и чрезвычайно полезный анимационный эффект, и, вероятно, даже больше, чем в само приложение! Я уверен, вы знаете приложение о котором я говорю, так как оно было представлено во время Google I/O. Это приложение Play Music!

Последнее обновление Play Music (v5.0) претерпело полный редизайн и внешний вид страниц с описанием исполнителя и альбома. Если вы откроете такую страницу, то вы заметите, что ActionBar изначально невидим и наслаивается на большое изображение, описывающее исполнителя или альбом. Но как только вы начинаете прокручивать страницу вниз (если это возможно), то ActionBar постепенно проявляется. ActionBar оказывается полностью непрозрачным, когда изображение становится прокрученным за экран.
Читать далее
Всего голосов 30: ↑26 и ↓4+22
Комментарии6

Игра-подобие Pacman на STM32F429I-DISCO с редактором карт

Время на прочтение4 мин
Количество просмотров9.8K
Видео для привлечения внимания



В двух словах о себе

Студент почти уже 4 курса факультета ПМ-ПУ Санкт-Петербургского государственного университета, с 1 курса потихоньку программирую на C/C++, около полугода назад стал поглядывать в сторону Java (огромное спасибо проекту JavaRush!). Регулярно цепляют новые темы для изучения: в рамках диплома занимаюсь обработкой изображений, также мучаю Qt, успел повозиться с машинным обучением, сделать проект на Ruby on Rails, а сейчас начинаю копаться в распознавании речи.

И вот однажды я понял, что мне хочется попробовать поработать с «железом». Долгие поиски в интернете и раздумья привели меня к тому, что я решился разбираться с ARM процессорами. Аргументами в пользу этого стало также и то, что в обозримом будущем, когда появятся свободные деньги, мне бы хотелось прицепить ко всему этому камеру и дисплей — мощность ARM вполне позволит мне это сделать.

Знакомство с железом

Мой выбор пал на семейство STM32. Подумав, что с парой светодиодов я быстро наиграюсь, а вот с экранчиком уже можно вдоволь поразвлекаться, я заказал себе STM32F429I-DISCO. Будучи ужасно разочарованным всеми питерскими магазинами, которые продают нужное мне железо, я все-таки получил заветную плату. Около недели разбирался с основами, радуясь каждому мигающему светодиоду или заработавшей функции.
Читать дальше →
Всего голосов 20: ↑19 и ↓1+18
Комментарии0

Как легко сделать Navigation Drawer и вкладки, используемые в популярных приложениях от Google

Время на прочтение15 мин
Количество просмотров125K
При использовании популярного приложения Play Маркет многие обратили внимание на вкладки для переключения контента. Такое применение вкладок можно найти и в других приложениях от Google, таких как Play Музыка, Play Пресса.



На этой почве возникает интерес, а иногда и необходимость (если заказчик просит) реализовать увиденное. Я не стал исключением и при проектировании нового приложения, дизайн которого был набросан на черновике, присутствовал очень схожий дизайн, хотя и имел всего несколько вкладок. Казалось бы, что сложного? Сейчас откроем официальную документацию, просмотрим необходимые разделы и приступим к делу. Но, изучив документацию, не смог обнаружить соответствующих примеров — и тут же возник новый вопрос. Почему Android разработчики из компании Google по умолчанию не предоставляют примеров с необходимой функциональностью, чтобы сделать это довольно просто, ведь это реализовано в каждом их приложении? Также, погуглив, нашлись аналогичные вопросы на Stack Overflow. Исходя из этого, оказалось, что существует проблема или, по крайней мере, нераскрытый вопрос, в котором следует разобраться.

Ниже хочу рассказать о том, как всё же можно реализовать паттерн Navigation Drawer вместе с вкладками, как в популярных приложениях от Google.
Читать дальше →
Всего голосов 41: ↑39 и ↓2+37
Комментарии26

Информация

В рейтинге
Не участвует
Откуда
Екатеринбург, Свердловская обл., Россия
Дата рождения
Зарегистрирован
Активность