Приветствую!
Сегодня я хотел бы вам рассказать о создании браузера на новом (относительно) языке Swift.
Код довольно простой. Как и сам браузер. Делал я его для практики. Все вопросы обсужу и помогу. Пишите в комментариях.
Читать полностью »
Приветствую!
Сегодня я хотел бы вам рассказать о создании браузера на новом (относительно) языке Swift.
Код довольно простой. Как и сам браузер. Делал я его для практики. Все вопросы обсужу и помогу. Пишите в комментариях.
Читать полностью »

Parse — прекраснейший BaaS, позволяющий в кратчайшее время поднять полноценную серверную инфраструктуру для мобильного приложения. Возможно, именно из-за этой простоты многие разработчики и забывают о появляющихся проблемах безопасности и открывающихся уязвимостях.
Читать полностью »

Паттерн MVVM хорошо известен, о нем написано много статей, наверное, каждый NET-разработчик сталкивался или слышал об этом паттерне. Цель этой статьи – рассказать о собственной реализации этого паттерна.
MugenMvvmToolkit — является кроссплатформенной реализацией паттерна MVVM и на текущий момент поддерживает следующие платформы:
Предновогодний привет всем читающим нас хабражителям!
2014 год был для нас насыщенным и во многом сложным, но при этом — еще и самым инновационным и поучительным.
Бюджеты на обучение в наше нелегкое время, к сожалению, страдают чаще других в корпоративной среде, но нам приятно быть исключением из этого правила: у каждого сотрудника Зетполаб всегда был и есть бюджет на обучение порядка 90000 руб. в год.
Из этого бюджета зептолабовцы могут посещать конференции, ходить на тренинги и курсы как внутри, так и вне компании, а также обучаться онлайн. На конференциях наши ребята часто выступают в роли спикеров:

Чтобы двигаться вверх по профессиональной и карьерной лестнице, иногда мало того багажа знаний, с которым ты в компанию приходишь — без перманентного стремления к новым вершинам далеко не уйти. А когда у сотрудников такое стремление есть — с этим можно и нужно работать. Хочется поделиться, как это делаем мы.
В этом году перед нами стояла задачка системно подойти к проработке самых необходимых навыков у сотрудников компании. Для начала их стоило выделить — это мы сделали стандартно, методом оценки персонала и индивидуальными беседами с руководителями отделов.
После того, как стали понятны «пробелы» в знаниях, которые есть не у одного-двух сотрудников, а у целых отделов, мы взялись за дело по-полной. Индивидуальные нюансы в основном прорабатывались на внешних курсах и тренингах, а над теми, что оказались глобальнее, работали внутри компании все вместе.
Естественно, вышесказанное касается как проработки профессиональных навыков, так и так называемых soft skills: например, все те, кому было важно научиться доходчиво доносить свою мысль до коллег и подчиненных, прошли курс ораторского мастерства.
На какой-либо индивидуальный внешний курс или тренинг от Зептолаб можно попасть двумя путями: Читать полностью »

К добавлению внешнего сервера рано или поздно приходит любой сложный проект. Причины, при этом, бывают совершенно различные. Одни, загружают дополнительные сведения из сети, другие, синхронизируют данные между клиентскими устройствами, третьи- переносят логику выполнения приложения на сторону сервера. Как правило, к последним относятся большинство «деловых» приложений. По мере отхода от парадигмы «песочницы», в которой все действия выполняются только в рамках исходной системы, логика выполнения процессов переплетается, сплетается, завязывается узлами настолько, что становится трудно понять, что является исходной точкой входа в процесс приложения. В этом момент, на первое место выходит уже не функциональные свойства самого приложения, а его архитектура, и, как следствие, возможности к масштабированию.
Заложенный фундамент позволяет либо создать величественный архитектурный ансамбль, либо «накурнож» — избушку на куриных ножках, которая рассыпается от одного толчка «доброго молодца» коих, за время своего существования повидала видимо — невидимо, потому что, глядя на множественные строительные дефекты заказчик склонен менять не исходный проект, а команду строителей.
Планирование — ключ к успеху проекта, но, именно на него выделяется заказчиком минимальный объем времени. Строительные паттерны — туз в рукаве разработчика, который покрывает неблагоприятные комбинации где время — оказывается решающим фактором. Взятые за основу работающие решения позволяют сделать быстрый старт, чтоб перейти к задачам, кажущиеся заказчику наиболее актуальными (как-то покраска дымоходной трубы, на еще не возведенной крыше).
В этой статье я постараюсь изложить принцип построение масштабируемой системы для мобильных устройств, покрывающей 90-95% клиент-серверных приложений, и обеспечивающей максимальное отдаление от сакраментального «накурножа».
Читать полностью »
Подходит к концу 2014 год, и сейчас самое время подвести итоги и выделить ключевые тренды в iOS разработке.
Благодаря фреймворку ReactiveCocoa, новая парадигма программирования все чаще используется среди iOS разработчиков.
Отказоустойчивость, отзывчивость, ориентированность на события и масштабируемость — вот четыре принципа реактивного программирования. Подробности можете узнать в реактивном манифесте (перевод на Хабре).
Для себя я выделил следующие преимущества реактивного подхода:
В качестве альтернативы реактивному подходу рекомендую посмотреть на Futures. Есть как минимум два интересных фреймворка: PromiseKit и CollapsingFutures
Читать полностью »
В Xcode 5 компания Apple представила новую систему построения интерфейсов приложений для iOS (6+) и MAC OS X (v10.7 +) “Auto Layout” (AL) призванную заменить устаревшую “Springs & Struts” (S&S). Основываясь на задании правил (Constraints) определяющих размер и положение интерфейсных элементов, AL предоставляет значительно более широкие возможности чем S&S. Тем не менее, слабой стороной AL (помимо большей сложности) является работа с переменными наборами элементов. Сама по себе система AL вообще не поддерживает опциональные элементы, но есть способы обойти это ограничение.
Читать полностью »
В ходе написания курсовой работы на заданную тему я столкнулся с проблемой поиска информации. Большинство ресурсов было посвящено определенным фреймворкам/средам разработки, в результате чего было решено оформить итоговое содержание курсовой в виде статьи на хабре. Это статья направлена в первую очередь на людей, которые не разбираются в данном виде ПО.
Читать полностью »
Посмотревшие этот сюжет, скорее всего согласятся с тем утверждением, что сенсорные устройства, пожалуй, как никому другому, сегодня нужны именно людям с вышеизложенными проблемами, так как, действительно, сильно облегчают их повседневную жизнь.
Этот видеоролик сегодня делается без особых проблем, связанных с монтажем и бесчисленными дублями. Здесь всё снято именно так, как это происходит в обычной жизни человека, работающего на Android с помощью программы TalkBack, обеспечивающей речевой доступ на всех современных Android-устройствах, начиная с версии 4.1.
Читатели, интересующиеся вопросом истории невизуальной доступности Android могут посетить сайт Tiflocomp. Если же говорить о существующих проблемах, связанных с невизуальной доступностью Android-устройств и программных продуктов, то здесь скорее дело в низкой заинтересованности разработчиков, в то время, как арсенал средств доступности, заложенных в самой операционной системе Android весьма существенен.
Читать полностью »
В конце октября в Москве прошла конференция мобильных разработчиков #MBLTDev, на которой я рассказывал про трилатерацию с помощью iBeacon.
В докладе я намеренно опустил все стандартные примеры кода, которые можно найти в интернете, и сосредоточился на том, какие есть конкурирующие технологии, как работает маяк, с какими трудностями приходится сталкиваться. Одним выступлением тему не покрыть, но надеюсь, в рассказе вы найдете для себя новое и уникальное.