Обновить
80
0
True Engineering @true_engineering

Создаем цифровые продукты

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

Дистанционное обслуживание рекламодателей

Время на прочтение5 мин
Количество просмотров2.4K
Обычно мы пишем статьи, основанные на нашем практическом опыте, но в этот раз решили немного порассуждать теоретически на тему дистанционного обслуживания рекламодателей в области печатных СМИ. В данной статье мы принципиально постараемся избегать названий и имен, а сосредоточиться на самой идее.

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

Мы столкнулись с тем, что работа с рекламодателями в печатных СМИ поставлена, как говорится, «по старинке». Все в основном завязано на конкретных менеджеров по рекламе с минимальной автоматизацией – в основном, это таблички в Excel и разложенные по папочкам документы.

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

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

MS Surface vs iPad Air: на чем предпочтительнее писать мобильные приложения для корпоративного сегмента?

Время на прочтение5 мин
Количество просмотров9K
Данный обзор подготовлен с целью сравнить и показать преимущества одной из платформ (Microsoft Surface 2, Apple iPad). Рассмотрен вариант использования планшета не для развлечений, а в качестве рабочего инструмента. Делается сравнение по всем параметрам устройств: внешний вид, аксессуары, мощность и «живучесть» батареи и, самое главное, операционная система и доступные программные продукты. В конце обзора сделан вывод о том, какое устройство является наиболее удобным корпоративным планшетом.

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

Мобильная разработка для СМИ. Азы, которые надо знать

Время на прочтение6 мин
Количество просмотров8.1K
В декабре 2013 года мы выступили на конференции Mobile Developer&Business Day с докладом «Особенности разработки мобильных приложений для СМИ». В презентации мы обобщили опыт EastBanc Technologies в разработке мобильных приложений для российских и американских СМИ, попытались коснуться всех важных вещей, которые когда-то стали для нас открытием. Мы хотим донести до читателей, как важно понимать, для чего вы делаете приложение: как поддержку бренда или расширение канала сбыта, т.к. по-нашему мнению для разработчика очень важно осознавать, за какую задачу он взялся и адекватно оценить ресурсо- и времязатраты.

В данной статье мы «беллетризировали» доклад. Надеемся, что-то полезное для себя найдут как начинающие разработчики, так и бывалые.

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

Переход на механизмы авторизации и аутентификации ADFS как часть маркетинговой стратегии

Время на прочтение6 мин
Количество просмотров39K
Статья будет интересна всем, кто хочет узнать значение страшного термина «Active Directory Federation Services» на примере из реальной жизни, а также всем, кто занимается разработкой кастомных систем на базе SharePoint и находится в процессе принятия решения, какую модель авторизации и аутентификации выбрать, либо собирается переключить существующее решение на ADFS.

А самое главное, она пригодится тем, кому важны потребительские качества IT-продукта, его значение и удобство для конечного пользователя.

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

Это система лояльности для кассиров, которые продают услуги нашего заказчика. Выполнена на MS SharePoint. Через портал кассиры копят бонусы и получают за них подарки (сувенирку, турпутевки, подарочные карты и т.п.) Компания таким образом может гибко управлять продажами нужных «позиций», анализировать работу кассиров и агентств и много еще чего полезного.

Мы разрабатывали программу лояльности с самого начала. Первый релиз состоялся в феврале 2013 года. Развитие системы продолжается. Например, только что мы провели полный редизайн портала. Но этому предшествовала миграция на ADFS, как важнейший этап модернизации. Об этом — дальше речь.

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

Преодолеваем скрытые опасности KVO в Objective C

Время на прочтение21 мин
Количество просмотров26K
The major difference between a thing that might go wrong and a thing that cannot possibly go wrong is that when a thing that cannot possibly go wrong goes wrong it usually turns out to be impossible to get at or repair.
— Douglas Adams


Objective C существует уже с 1983 года и является ровесником C++. Однако, в отличие от последнего он начал приобретать популярность только в 2008 году, после выхода iOS 2.0 — новой версии операционной системы для революционного iPhone, включавшей приложение AppStore, позволяющее пользователям приобретать приложения, создаваемые сторонними разработчиками.
Дальнейший успех Objective C обеспечивался не только популярность устройств на базе iOS и относительной легкостью продаж через AppStore, но и значительными усилиями компании Apple по совершенствованию как стандартных библиотек, так и самого языка.
Согласно рейтингу TIOBE к началу 2013 года Objective C обогнал по популярности C++ и занял третье место, уступая только C и Java.

На сегодняшний день Objective C включает и такие относительно старые функции как KVC и KVO, существовавшие еще за 4 года до выхода первого iPhone, и такие новые возможности как блоки (blocks, появившиеся в Mac OS 10.6 и iOS 4) и автоматический подсчет ссылок (ARC, доступный в Mac OS 10.7 и iOS 5), которые позволяют с легкостью решать задачи, вызывавшие серьезные трудности ранее.

KVO — это технология, позволяющая незамедлительно реагировать в одном объекте (наблюдателе) на изменения состояния другого объекта (наблюдаемого), без внесения знаний о типе наблюдателя в реализации наблюдаемого объекта. В Objective C, наряду с KVO, существует несколько способов решения этой задачи:

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

Бронирование переговорных комнат — интеграция SharePoint 2010 с Exchange 2010

Время на прочтение5 мин
Количество просмотров45K
Несколько недель назад от наших заказчиков мы получили задачу на создание сервиса бронирования переговорных комнат. Компания заказчика довольна крупная и весьма продвинутая в плане ИТ. У заказчика много филиалов по всей России и в каждом по 5-6 переговорных комнат, сотрудники часто летают проводить совещания из одного филиала в другой, а найти свободную аудиторию «на месте» — это реальная проблема. Поэтому сотруднику было бы неплохо прямо со своего рабочего места в Москве «застолбить» переговорку, например, в Туле и со спокойной совестью лететь в командировку. Опытом создания подобного сервиса мы хотим поделится с хабросообществом.

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

Делимся опытом по интеграции SSO средствами SAML 2.0

Время на прочтение34 мин
Количество просмотров50K
1. Предыстория

Не смотря на то, что функция централизованного входа (Single Sign On, SSO) существует, обсуждается и применяется уже давно, на практике ее внедрение зачастую сопровождается преодолением самых различных проблем. Целью данной статьи будет показать, как реализовать простейший собственный Service Provider 1 (SP) для SAML 2.0 identity provider (idP) и с его помощью осуществить интеграции SSO в Java Web приложение.

Одним из наших последних проектов была подготовка и кластеризация портального решения для крупного университета. В рамках проекта мы столкнулись с задачей реализации (а также кластеризации) функции единой аутентификации для следующих систем:

  1. Liferay version 6.1.20-ee-ga2.
  2. Простое java web-приложение.
  3. Google apps.

Со стороны заказчика были выдвинуты основные требования построения SSO:
  1. Для построения SSO должен использоваться протокол SAML 2.0.
  2. Требуется интеграция с Jasig CAS для поддержания работы уже существующих систем.
  3. LDAP используется для проверки аутентификации пользователей.

В качестве idP решили использовать Shibboleth (http://shibboleth.net/about/index.html) как open source-систему, реализующую в полном объеме протоколы SAML 1.0 && SAML 2.0.

Сложные моменты, с которыми мы столкнулись при решении данной задачи:

  1. Отсутствие экспертизы по работе с протоколом SAML 2.0 и продуктом Shibboleth.
  2. Сырая и еще не достаточно хорошо структурированная документация по Shibboleth от производителя.
  3. Отсутствие качественных примеров по реализации Service Provider’а для интеграции SSO в свое Java Web-приложение.

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

2. Для кого предназначена статья?

Данная статья ориентирована на следующую аудиторию:
  1. Разработчики, интегрирующие функцию SSO в своих проектах средствами SAML 2.0.
  2. Java-Разработчики, которым нужен практический пример интеграции в свое приложение функции SSO средствами SAML 2.0.
  3. Java-Разработчики, которые хотят опробовать в качестве SSO Identity Provider’а (idP) компонент Shibboleth.

Для понимания статьи рекомендуется иметь минимальные знания по протоколу SAML 2.0.

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

Отзывчивое Android-приложение или 1001 способ загрузить картинку

Время на прочтение16 мин
Количество просмотров55K
О реализации многопоточности при разработки Android-приложений уже написано немало. В этой же статье хочется провести сравнение нескольких распространенных на сегодня способов скачать/прочитать/сохранить/посчитать, при этом не дав пользователю повода для раздражения. Постараться понять, когда то или иное решение будет уместным, а чего лучше не делать вовсе. Попытаемся показать, почему привычных вещей, таких как класс Thread и пакет java.util.concurrent оказывается недостаточно, когда речь заходит об Android-приложении.

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

Автоматическая сборка iOS-приложений на разных версиях Xcode с помощью Jenkins

Время на прочтение6 мин
Количество просмотров29K
Если к вам уже приходили с вопросом «Где можно получить свежую сборку?», то вы прекрасно понимаете, зачем нужна автоматизация сборки и распространения. Никто не хочет тратить лишнее время на рутинную работу. Раньше мы пользовались утилитой под названием iOSBetaBuilder (http://www.hanchorllc.com/betabuilder-for-ios/). Это приложение предназначено для упрощения распространения AdHoc сборок iOS-приложения: нужно только ввести название и версию проекта, адрес (URL), где хочется выложить сборку, и получаются сгенерированные index.html и manifest.plist. На первое время этого достаточно.

Но когда проект достигает стадии багфиксинга, тратить лишние 5 минут на сборку и перепубликацию для QA – неохота и некогда. А когда проектов становится много, а их сборки становятся дольше… В рамках компании затраты времени помноженные на количество проектов становятся слишком существенными, и приходит время автоматизации.

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

Для тех, кто уже в теме, есть интересный раздел в конце статьи: как настроить сборки с различными версиями Xcode на одной машине.

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

Разработчики в борьбе за эффективность программиста, команды, команд

Время на прочтение9 мин
Количество просмотров8K
Всем привет.

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

Речь пойдет, конечно, о коде.

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

Да и давайте признаемся — все мы любим писать “фреймворки”, которыми пользуемся потом сами и которыми пользуются другие. Это добавляет немного куража нашей повседневной деятельности.

И тут автор ловит себя на том, что поступает неправильно, начиная описывать ситуации — все и так понимают, о чем речь. А описать нужно технологии и процесс. Поэтому давайте просто остановимся на абстрактной мысли, что внезапно нашлось много кода, который может быть полезен коллегам и его хорошо бы сделать легкодоступным. Также примем во внимание вторую, куда менее приятную, мысль, что в “зрелых” проектах можно найти большое количество copy-paste кода, значительно понижающего сопровождаемость. Да и работу над такими проектами приятной назвать трудно. И с этим надо что-то делать.

И мы решили с этим что-то делать.

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

Пробуем Orchard CMS для корпоративного сайта

Время на прочтение7 мин
Количество просмотров7.6K
Привет!

У нас есть корпоративный сайт на Liferay, и он требует довольно кропотливой работы на этапе создания layout. Мы решили посмотреть, чем отличается создание кастомного раздела в Liferay от того же процесса в Orchard CMS в рамках такой небольшой задачки как создание корпоративных новостей.



Что у нас из этого вышло:

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

Дизайн для приложений BFM.ru: общее и частное в линейке нативных мобильных приложений для новостного портала

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

В июле мы анонсировали публикацию мобильных приложений для делового информационного портала BFM.ru — iOS и Windows 8-версии. Для нашего отдела мобильной разработки этот проект стал еще одним приложением для новостных ресурсов, среди которых — Newsweek, Slate, Engadget и другие. Чтобы обобщить опыт и поделиться им с читателями, для которых актуальны вопросы дизайна новостных приложений, мы решили сделать небольшую ретроспективную зарисовку, посвященную дизайну линейки мобильных приложений портала BFM.ru.



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

Мобильный Timeline корпоративной жизни для iPhone. Приглашаем высказаться!

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

Сегодня мы хотим пригласить уважаемое хабрасообщество оценить идею iPhone-приложения, которое агрегирует сообщения из корпоративных соцсетей. Под постом предлагаем оставлять комментарии различной направленности, изобличающие ошибки и хвалящие достоинства как интерфейса приложения, его дизайна или самой идеи, так и технические характеристики приложения. В общем, давайте резвиться! (но конструктивно!)

Что важно: это не очередной агрегатор соцсетей, ключевое слово тут «корпоративный»!

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

Как с помощью технологий Azure повысить явку на выборы президента США

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

Одним из самых захватывающих опытов в истории EastBanc Technologies стала совместная с Microsoft и Bing работа над проектом Polling Place Locator — облачным Azure-приложением, которое 6 ноября 2012 года помогло 6 миллионам американцев найти свои избирательные участки. В этот день произошло два исторических события — 1) президентом Соединенных Штатов Америки во второй раз стал Барак Обама; 2) наше приложение выдержало колоссальную нагрузку в 1,5 млн уникальных визитов и 6 млн API-запросов за один день, в течение которого Polling Place Locator показывался на каждой странице американского сегмента Facebook, на mashable.com и на сайтах нескольких кандидатов в президенты.

Газета Los Angeles Times назвала Polling Place Locator «возможно, самым полезным инструментом поиска избирательных участков», а телеканал CNN рассказал о приложении в прайм-тайм.

Историю о том, как EastBanc Technologies внес свою лепту в развитие американской демократии, читайте далее! Под хабракатом мы рассказываем о технической реализации приложения, применении Windows Azure в высоконагруженных приложениях и о том, как приложение работало, и как мы сделали так, чтоб отпустило пожалуйста что ничего не упало даже в пиковые нагрузки.

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

6 практических советов для начинающих при построении простого BI-решения

Время на прочтение4 мин
Количество просмотров44K
Данной статьей хотелось бы показать шаги и предложить некоторые рекомендации в процессе создания BI-решения с использованием практически всего стека BI компании Microsoft. В создании BI-решения будут использованы SQL Server, SQL Service Integration Services, SQL Server Analysis Services.

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

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

Варим MVVM для Windows Store-приложений

Время на прочтение11 мин
Количество просмотров8.2K
Когда мы начали работать над приложениями под Windows 8, мы искали библиотеку поддержки шаблона Model-View-ViewModel (MVVM) для этой платформы. Некоторое время провели в интернете в поиске таковой, но в итоге приняли факт, что таких библиотек в природе пока не существует (возможно, мы плохо искали, но теперь это уже не так важно). Ответ на вопрос «что делать?» напрашивался сам…



В недрах нашей компании EastBanc Technologies была создана специальная библиотека (кодовое название EBT.Mvvm). Цель создания — экономия времени в будущем при разработке сложных приложений для Windows 8. В библиотеку вошли как наши собственные наработки, так и некоторые идеи и примеры, которые встречались нам во время наших поисков.

Итак, что мы имеем: все помнят, что основная идея шаблона — это ослабление связи между ViewModel (будем называть вью-модель) и непосредственно View (представление). Идеальное состояние — это когда code-behind представления содержит только конструктор с InitializeComponent и, возможно, код поддержки визуального поведения, которое нельзя определить через XAML. Таким образом, разработчик отдает представление дизайнеру, а сам сосредотачивается на работе и тестировании логики приложения.

Данная статья ориентирована на разработчиков, уже знакомых с программированием на C# и XAML под Windows 8. Ниже мы приводим описания основных фич нашей библиотеки в виде примеров кода их использования и комментариев. Итак, поехали:

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

Как мы нашли свой дао в разработке приложения для Windows 8

Время на прочтение4 мин
Количество просмотров6.4K
Windows 8-приложение для телерадиоканала «Комсомольская правда» стало нашей первой разработкой для данной платформы. Тем не менее, за него мы взялись уже будучи обремененными достаточным опытом в разработке мобильных приложений для СМИ: например, в нашем арсенале уже были журнал Newsweek, Engadget, Washington Post и даже тот же самый ТВ-, радиоканал «Комсомолки» (только для iOS). И тем не менее, когда мы столкнулись с Windows 8, оказалось, что нам есть чему поучиться и над чем поразмыслить.

Что хотел заказчик

Заказчики из «Комсомолки» поставили очень простые задачи: чтобы и радио и ТВ были доступны на одном экране, и чтобы все это говорило и показывало. Такое дзен-ТЗ поначалу нас не смутило…

Ты помнишь, как всё начиналось…

На старте мы не стали особо париться и рефлексировать, а просто собрались и придумали… натюрморт. То есть первый мозговой штурм закончился тем, что мы придумали привычный любому iOS-разработчику скевоморфичный дизайн с детально прорисованным ретро-радио и телеком и с газетой «Комсомольская правда», в которую завернута селедка.


Что-то вроде того…

Придумав красоту, мы успокоились.

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

7 шагов успешной миграции портала SharePoint 2007 на SharePoint 2010

Время на прочтение8 мин
Количество просмотров9.9K
Привет! Это наш первый материал на Хабре. В нем мы собираемся рассказать о нашем опыте миграции сложного портала с применением метода Database Attach. Enjoy!

Немного о том, кому, скорее всего, будет интересно это читать

Решив поделиться своим опытом миграции одного портала, мы ориентировались, прежде всего, на тех, кто не спрашивает «Зачем мигрировать?», не задается вопросом «А может быть сразу на 2013?», а также на тех, кто знает не понаслышке ужасные слова Windows Workflow Foundation, Event Handlers, Jobs, Content Types, Future Receivers, различный Site, List и т.п. термины и думает, как сделать, чтобы это заработало в SharePoint 2010.

Читать дальше →
12 ...
7

Информация

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