Search
Write a publication
Pull to refresh
10
0
Илья @jvIlya

User

Send message

Микросервисы (Microservices)

Reading time22 min
Views710K
От переводчика: некоторые скорее всего уже читали этот титанический труд от Мартина Фаулера и его коллеги Джеймса Льюиса, но я все же решил сделать перевод этой статьи. Тренд микросервисов набирает обороты в мире enterprise разработки, и эта статья является ценнейшим источником знаний, по сути выжимкой существующего опыта работы с ними.

Термин «Microservice Architecture» получил распространение в последние несколько лет как описание способа дизайна приложений в виде набора независимо развертываемых сервисов. В то время как нет точного описания этого архитектурного стиля, существует некий общий набор характеристик: организация сервисов вокруг бизнес-потребностей, автоматическое развертывание, перенос логики от шины сообщений к приемникам (endpoints) и децентрализованный контроль над языками и данными.
Читать дальше →

Именование сложных действий в REST API

Reading time3 min
Views65K
Во всех руководствах в описаниях REST дают простые примеры, типа вот вам пользователи, они будут ресурсом /users, вот вам один пользователь, он будет /users/[id] и действия с ним добавить\удалить\изменить.

А что если действия сложные или комплексные и не вписываются в GET\POST\DELETE?

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

Верните музыку! Или дело одного скрипта [iOs VK App]

Reading time3 min
Views29K
Если Вы как и я пользуетесь вконтакте для прослушивания музыки, то я думаю Вас как и меня очень огорчило пропадание вкладки с музыкой из официального приложения. Одно радует, что разработчики оставили одну маленькую брешь, скорее всего специально… Заинтересовавшихся под кат.
Читать дальше →

Архитектура Android-приложений… Правильный путь?

Reading time5 min
Views95K
От переводчика: Некоторые термины, которые использует автор, не имеют общепринятого перевода (ну, или я его не знаю:), поэтому я решил оставить большинство на языке оригинала — они всё равно понятны и для тех, кто пишет под android, но не знает английский.
Куда писать об ошибках и неточностях, вы знаете.


За последние несколько месяцев, а также после дискуссий на Tuenti с коллегами вроде @pedro_g_s и @flipper83 (кстати говоря, 2 крутых Android-разработчика), я решил, что имеет смысл написать заметку о проектировании Android-приложений.

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

Превращаем html в нативные компоненты

Reading time7 min
Views19K
Доброго дня! Мы, мобильные разработчики компании surfingbird, решили попробовать написать небольшой цикл статей о том с какими трудностями мы сталкиваемся в процессе разработки мобильных приложений (android, ios), и как мы их решаем. Первый пост мы решили посвятить проблеме webview. Сразу оговорюсь, что решили мы эту проблему несколько кардинально… Для того чтобы было более понятно, придется рассказать пару слов о собственно том, чем мы занимаемся. Мы агрегируем контент из различных источников (парсим оригинальные статьи), выделяем значимую часть (контент) и на основе оценок пользователя и всяких сложных алгоритмов рекомендуем их конечному пользователю ну и конечно просто отображаем в более удобном виде.

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

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

image
Как избавиться от webview

Как создается Data Matrix?

Reading time4 min
Views59K
Data Matrix является двумерным матричным штрих кодом, состоящим из светлых и темных участков. С помощью такого штрих кода можно закодировать достаточно большой объем информации (2-3Кб). Часто Data Matrix применяется при маркировке небольших предметов, например микросхем, а также в пищевой, оборонной промышленности, рекламе и других сферах.

Существует множество сайтов для создания таких кодов, но мне всегда было интересно, каким же образом текст превращается в набор черных и белых квадратиков? Должен же быть какой-то алгоритм?

При создании Data Matrix нам понадобится обратиться к арифметике полей Галуа и кодам Рида-Соломона. Рассмотрим этот процесс на простом примере.
Читать дальше →

Google Play — работаем легально!

Reading time4 min
Views180K
Привет, Хабр!



Сегодня, я хочу рассказать о том как сделать свое хобби по разработке Android-приложений пусть небольшим, но официальным бизнесом. О том, как легально получать деньги, заработанные на Google Play, о «страшном» валютном контроле и «таинственном» паспорте сделки.
Читать дальше →

Кратко о гидродинамике: сохранение энергии

Reading time7 min
Views18K
В очередной раз извиняюсь за медленное написание постов в запланированной серии. В этот раз причина промедления объективна, в виде конференции в Вене, хотя и имеет значимую субъективную составляющую в виде собственного там участия и некоторых бюрократических моментов подготовки и оплаты.

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

Предыдущие посты:
Кратко о гидродинамике: ты помнишь, как всё начиналось?
Кратко о гидродинамике: уравнения движения

Снова формулы

Кратко о гидродинамике: уравнения движения

Reading time8 min
Views54K
Написав предыдущий пост, исторический и отчасти рекламный (хотя потенциальные абитуриенты такое вряд ли читают), можно перейти и к разговору «по существу». К сожалению, высокой степени популярности описания добиться вряд ли получится, но всё же постараюсь не устраивать курс сухих лекций. Хотя, от сухости избавиться не удалось, да и пост писался в результате ровно месяц.

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

Дебри теории, много формул и немного картинок в конце

Потоковое видео в Android

Reading time7 min
Views200K
В этой заметке я хочу рассказать о некоторых подводных камнях, с которыми можно столкнуться при работе с потоковым видео в Android приложениях. Конкретно, речь пойдёт о конвертации видео и протоколах доставки/воспроизведения видео.
Сразу оговорюсь, что экспертом я в данной области не являюсь, а лишь хочу поделится недавно полученным опытом.


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

Плакаты на IT тематику

Reading time1 min
Views29K
Почитывая «Банду четырех», всё чаще думаю как хорошо было бы иметь отдельный плакат на стену в офисе, резюмирующий и объясняющий шаблоны проектирования. Как здорово было бы не держать все их в голове, а имея проблему, взглянуть и найти подходящее решение. Но найти подходящий постер оказалось не так то просто, да и тот оказался не идеальным.
Читать дальше →

Устраиваемся программистом за рубежом

Reading time16 min
Views63K
Как часто вас посещала мысль о трудоустройстве за границей, будь то просто временная работа или переезд на постоянное место жительство? Какую страну выбрать? Возможно ли пройти собеседования за тысячи километров по телефону и получить джоб-офер? Как будет выглядеть переезд и жизнь в другой стране? В данной статье я бы хотел поделиться личным опытом и опытом многих моих друзей работающих за рубежом.
Читать дальше →

2D->3D in Augmented reality

Reading time8 min
Views26K
image

В данной статье я расскажу как в приложениях Augmented reality по найденому расположению объекта в сцене построить 3D-пространство. Для этого необходимо получить две матрицы – проекционную (GL_PROJECTION) и модельную (GL_MODELVIEW) для работы, например, в OpenGL. Делать это мы будем средствами библиотеки OpenCV.

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

10 феерических выступлений Стива Джобса

Reading time3 min
Views70K

На прошлой неделе случилось то, что хотелось оттянуть на как можно больший срок, но что все равно было неизбежным. Самый инновационный предприниматель Америки, а может, и мира, Стив Джобс оставил пост CEO компании Apple.
Некоторым везунчикам в жизни предоставляется шанс работать над одним революционным устройством. Стив Джобс – человек, который совершил сразу несколько революций в цифровом мире, – по праву может считаться успешным человеком. 
В этой статье собраны 10 наиболее известных и символичных выступлений, которые характеризуют жизнь и карьеру мастера. 
Читать дальше →

Что стоит за номером «кредитки»

Reading time1 min
Views9.4K
Прежде всего о терминологии. То, что в России часто называют кредиткой — является банковской (чаще всего) платёжной картой. Карты выпускать может не только банк. Карты могут быть не только кредитные. Вобщем, теорию вы и сами сможете найти.

А теперь, собственно, инфографика о том, как устроены номера банковски карт (600*1800px 280KB):

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

Разработка привлекательных реалистичных пользовательских интерфейсов

Reading time4 min
Views15K
Cекрет разработки привлекательных интерфейсов заключается в реализме. Ваша задача — придать плоским элементам объём, используя свойства реальных объектов, вроде неровностей и шероховатостей, бликов и теней, различных текстур поверхностей. В идеале они должны выглядеть как предметы на вашем столе. Создавая классный интерфейс, в первую очередь нужно думать не «как», а «почему».
Читать дальше →

Руководства и инструменты для портирования на WP7 для Android-разработчиков

Reading time1 min
Views1.3K
imageВ конце прошлого года я писал об открытии сайта по портированию на WP7 для iPhone-разработчиков. С тех пор там произошло несколько обновлений, а вчера появился раздел для разработчиков на Android.

Сейчас на сайте доступны следующие инструменты:
Читать дальше →

Как выкачать исходники Android под Windows

Reading time3 min
Views14K
В недавнем посте о восстановлении работы git-репозитория Android многие жаловались, что пока нет веб-интерфейса доступа к исходникам из Windows тоже нет. Это не так, git под Windows есть и их можно легко забрать. Единственное что не работает без пинка — это repo, который весьма удобен для выкачивания сырцов. Однако пинок требуется минимальный, имя пинку — Cygwin. Этот пост о том, как поставить Cygwin с нуля, какие пакеты выбрать для работоспособности repo и как всё выкачать пользователям Windows. Для понимания поста требуется умение работать с консолью на базовом уровне, понимать что такое приглашение, уметь печатать текст и жать Enter.

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

Flash для Android для ARMv6-процессоров

Reading time2 min
Views40K


Если вы помните, Adobe заявляла, что не будет выпускать Flash для Android-устройств без поддержки инструкций ARMv7.

Так вот, возрадуйтесь, обладатели Android-устройств с ARMv6-процессорами!

Командой разработчиков Android Campus был выпущен порт Flash 10.1, адаптированный под многочисленные Android-устройства на базе процессоров с набором инструкций ARMv6. Ссылки, список поддерживаемых устройств и некоторые подробности под катом.
Читать дальше →

Использование unix pipes для отображения прогресса выполнения нативного кода на Android'е

Reading time4 min
Views3.4K
В одном из проектов мне понадобилось отслеживать прогресс выполнения нативного кода на Android'е (конкретно — портированного FFmpeg'а). Ситуация осложнялась также тем, что по ряду причин код выполнялся в нескольких процессах.

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

Information

Rating
Does not participate
Location
Россия
Registered
Activity