Quantcast
Channel: Корпоративный блог DataArt
Viewing all 1532 articles
Browse latest View live

Reverse engineering обсудили на IT talk в Херсоне

$
0
0

Геннадий Дубина, Senior Java/Android Developer, рассказал о reverse engineering для Android и как при помощи анализа и модификации сервиса раздобыть полезный код, на очередной встрече IT talk в Херсоне.

Вначале докладчик пояснил, в каких случаях нужен reverse engineering, затронул юридический аспект вопроса и сделал краткий обзор инструментов, которые позволяют это делать. Затем детально остановился на языке для модификации smali. Особенность языка заключается в том, что он нигде не описан. Поэтому Гена подробно рассказал о синтаксисе smali, о его методах и правилах их вызова, о логировании, о разнице между выключением и удалением логирования.

17670355295_fa5fff8999_k

Геннадий на конкретном примере разобрал, как писать код на smali. А участники встречи получили в помощь хорошую шпаргалку.

Артур Малега: «Отличная презентация. Отдельный плюс  — рассмотрена юридическая составляющая reverse engineering».

Презентация: http://www.slideshare.net/ittalk/android-smali-v2

Об IT talk.

Все фотографии


Wearable-IT talk прошел в Днепропетровске

$
0
0

На 16-й встречи IT talk в Днепре, где собрались и опытные, и начинающие специалисты,
Дмитрий Щербина, iPhone Developer, презентовал обзорный доклад о трендах и тенденциях рынка носимых устройств.

17931260308_c06cc0f0a0_k

Алексей Рыбаков iPhone Senior Developer, рассказывал о более прикладных аспектах Android Wear, ее положении на рынке OS для «умных часов» и ближайших конкурентах.

Вера, менеджер по развитию бизнеса: «От лица зрителей могу сказать, что в целом нам понравилось, узнали много интересных моментов, которые выявляются при личном опыте использования.
Хотелось бы, конечно, больше наглядности, т. е. больше презентуемых гаджетов. Но все же желающие получили возможность увидеть/потрогать Apple Watch и Android Wear».

18120210551_cd43624606_k

Олеся, начинающий разработчик: «Задав вопросы людям, которые уже имели опыт работы с «умными часами» и другими гаджетами, получила ответы, которые не всегда можно найти в открытом доступе. Спикеры сразу смогли заинтересовать аудиторию»

http://youtu.be/Xr8uv_caWlc

Все фотографии

Миграция данных Salesforce с помощью Pentaho Data Integration

$
0
0

Привет, Хабр.

Меня зовут Илья Гребцов, я работаю Java/JS Developer в DataArt. Хочу поделиться кое-чем полезным с теми, кто работает с Salesforce.

В Salesforce часто возникает задача массово создать/изменить/удалить группу связанных записей в нескольких объектах, аналогах таблиц в реляционной базе данных. Например, часто используемые стандартные объекты Account (информация о компании клиента), Contact (информация о самом клиенте). Проблема в том, что при сохранении записи Contact необходимо указать Id связанной записи Account, т. е. аккаунт должен существовать на момент добавления записи контакта.

В реальности связи могут быть еще сложнее, например, объект Opportunity ссылается и на Account, и на Contact. Плюс возможны ссылки на какие-либо нестандартные (custom) объекты. В любом случае, запись по ссылке должна быть создана раньше записи, на нее ссылающуюся.

Рассмотрим варианты решения этой проблемы:

Anonymous APEX

Необходимо подготовить APEX-скрипт, затем выполнить его в Salesforce Developer Console. В скрипте связанные объекты заполняются последовательно. В примере ниже вставляется тестовая запись Account, затем Contact. При вставке Contact используется Id записи Account, полученный после вставки Account.

Account[] accounts;
accounts.add(new Account(
Name = ‘test’
));
insert accounts;
 
Contact[] contacts;
contacts.add(new Contact(
AccountId = accounts[0].Id,
FirstName = ‘test’,
LastName = ‘test’
));
insert contacts;
 
Плюсы:
  • Developer Console всегда под рукой, ничего дополнительно устанавливать и настраивать не требуется.
  • Скрипт пишется на языке APEX, близком Salesforce-разработчикам.
  • Несложно реализовать простую логику.
Минусы:
  • Salesforce Limits допускают изменение не более 200 записей таким способом.
  • Тяжело реализовать сложную логику.
  • Метод не подходит для миграции данных извне Salesforce, все данные должны быть уже загружены.
Таким образом, способ подходит лишь для небольших простых изменений, производимых вручную.

Batch APEX

Когда необходимо произвести изменения множества записей, которые уже внутри Salesforce, можно воспользоваться Batch APEX. В отличии от предыдущего, этот способ позволяет обработать до 10 000 записей, согласно Salesforce Limits. Batch — кастомный класс, наследуемый от Database.Batchable, написанный на языке APEX.

Вручную класс можно запустить из Developer Console:
Database.Batchable<sObject> batch = new myBatchClass();
Database.executeBatch(batch);

Либо создать Job, с помощью которого процесс запустится в определенное время.

Таким образом, способ подходит для масштабных изменений данных внутри Salesforce, но весьма трудоемок. При внедрении с sandbox на продуктив класс, как и любой другой APEX-код, должен быть покрыт юнит-тестом.

Data Loader

Data Loader — стандартная Salesforce-утилита, устанавливающаяся локально. Позволяет обработать до 5 млн записей. Миграция с помощью Data Loader — best practise и наиболее популярный метод обработки большого количества записей. Выгрузка/загрузка записей осуществляется с помощью Salesforce API.

Утилита позволяет выбрать объект в Salesforce и экспортировать данные в CSV файл. А также наоборот, загрузить из CSV в Salesforce объект.

Обработка уже существующих данных в Salesforce выглядит следующим образом:

  1. Выгрузка необходимых данных из Salesforce в CSV-файлы.
  2. Изменение данных в CSV-файлах.
  3. Загрузка данных в Salesforce из CSV-файлов.

Пункт 2 тут — узкое место, не реализуемое самим Data Loader. Необходимо создание сторонних процедур обработки CSV файлов.

В качестве примера, чтобы вставить несколько записей контактов, данные должны пойти в связанные Account и Contact. Алгоримт действий должен быть таким:

  1. Подготовить CSV файл со списком новых записей Account. Загрузить в Salesforce с помощью Data Loader. В результате будет получен список Account IDs.
  2. Подготовить CSV файл со списком новых записей Contact. В нем в поле AccountId необходимо указать ID из списка, полученного на 1-м шаге. Это можно сделать вручную, либо использовать любой язык программирования.
  3. Загрузить в Salesforce полученную CSV со списком Contacts.

Таким образом, способ подходит для масштабных изменений данных и внутри Salesforce, и с использованием внешних данных. Но весьма трудоемок, особенно если необходима модификация записей.

Pentaho Data Integration


Pentaho Data Integration также известная как Kettle — универсальная ETL утилита. Не является специализированной утилитой Salesforce. В наборе — Salesforce Input- и Output-методы подключения, что позволяет прозрачно обрабатывать Salesforce данные как данные из других источников: реляционных баз данных, SAP, файлов XML, CSV и других.

С Salesforce утилита работает через Salesforce API, таким образом, возможно обработать до 5 млн записей, как и с Data Loader. Только более удобным способом.

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

Есть как минимум две версии утилиты: платная с гарантированной поддержкой и бесплатная. Бесплатную Community Edition (Apache License v2.0) можно скачать по адресу http://community.pentaho.com/.

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

Особенности миграции данных с помощью Pentaho Data Integration стоит осветить подробнее. Здесь же опишу свой опыт и трудности, с которыми столкнулся.

Параметры подключения к Salesforce стоит указать в параметрах Transformation Properties. Единожды сделанные настройки будут доступны во всех шагах, где это необходимо, в виде переменных.
Я рекомендую указывать:

  • URL для подключения к Salesforce. Для продуктива, включая Salesforce Developer Edition: https://www.salesforce.com/services/Soap/u/21.0
    Для тестовых сред (sandbox): https://test.salesforce.com/services/Soap/u/21.0
    Версию API (в данном случае 21.0) изменять по необходимости.
  • Логин. Пользователь должен иметь достаточные права для подключения через API. В идеале, это должен быть System Administrator.
  • Пароль. Важно, помимо самого пароля необходимо указать Security Token.

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

Выборка данных осуществляется шагом Salesforce Input. В настройках этого шага нужно указать параметры подключения, в данном случае используются переменные, созданные ранее. Также выбрать объект и список полей для выборки либо указать специфичный запрос, используя язык запросов SOQL (похож на язык запросов SQL, используемый в реляционных базах данных).

Вставка данных осуществляется с помощью одного из нескольких Output шагов:

  • Salesforce Insert
  • Salesforce Update
  • Salesforce Upsert (объединяет insert и update: если запись есть — она будет обновлена, иначе вставлена новая)
Также возможно удаление записей с помощью
  • Salesforce Delete.

Как и в Input-шаге, необходимо указать параметры подключения, в данном случае используются переменные трансформации. Тут имеется и более тонкая настройка — параметры time out-подключения, по истечении которого трансформация завершится неуспешно. И специфичный для Salesforce параметр Batch Size — количество записей, передаваемых в одной транзакции. Увеличение Batch Size незначительно повышает скорость работы трансформации, но не может быть больше 200 (согласно ограничениям Salesforce). Кроме того, если имеются триггеры, осуществляющие дополнительную обработку данных после вставки, возможна нестабильная работа с большим значением Batch Size. Значение по умолчанию — 10.

Приведенные два шага полностью покрывают возможности утилиты Data Loader. Всё, что между ними, — логика обработки данных. И ее можно реализовать непосредственно в Pentaho Data Integration.

Например, один из самых востребованных шагов — объединение (join) двух потоков данных. Тот самый join из SQL, которого так не хватает в SOQL. Тут он есть. В настройках возможно выбрать тип: Inner, Left Outer, Right Outer, Full Outer — и указать ключи соединения.

Обязательное требование — входные данные для этого шага должны быть отсортированы по ключевым полям. В Data Integration для этого применяется отдельный шаг Sorter.

Сортировка производится в оперативной памяти, тем не менее, возможна ситуация, что ее не хватит и данные будут сохраняться в промежуточный файл на диск. Большинство настроек сортера связано именно с этим кейсом. В идеале нужно избегать свопа на диск: это в десятки раз медленнее сортировки в памяти. Для этого необходимо скорректировать параметр Sort size — указать верхнюю границу количества строк, которые теоретически могут проходить через сортер.

Также в настройках можно выбрать одно или несколько ключевых полей, по которым будет производиться сортировка в порядке возрастания или убывания значений. Если тип поля строковый, имеет смысл указать чувствительность к регистру. Параметр Presorted показывает, что строки уже отсортированы по данному полю.

Join и Sorter образуют связку, всречающуюся практически в каждой трансформации.

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

В качестве ключевых полей всегда нужно выбирать короткое поле. Data Integration позволяет выбрать несколько ключевых полей для сортировки и соединения, но скорость обработки при этом значительно снижается. В качестве обходного пути лучше сгенерировать суррогатный ключ, в результате останется только одно поле для соединения. В простейшем случае суррогатный ключ можно получить конкатенацией строк. Например, для соединения по полям FirstName, LastName лучше соединять по FirstName + ‘ ‘+ LastName. Если идти дальше, из полученной строки можно вычислить хеш (md5, sha2). К сожалению, в Data Integration нет встроенного шага для расчета хеша строки, его можно написать самостоятельно, используя User Defined Java Class.

Кроме приведенных выше шагов, Data Integration включает множество других. Это фильтры, switch, union, шаги для обработки строк, лукапы к реляцонным таблицам и веб-сервисам. И множество других. А также два универсальных шага, позволяющие выполнить код на Java или JavaScript. Не буду останавливаться на них подробно.

Неприятная особенность работы Data Integration именно с Salesforce — медленная скорость вставки записей через Salesforce API. Около 50 записей в секунду (как и у стандартного Data Loader, само по себе обращение к веб-сервису — медленная операция), что делает затруднительным обработку тысяч строк. К счастью, в Data Integration можно организовать вставку в несколько потоков. Стандартного решения нет, вот то, что я смог придумать:

Тут JavaScript-процедура генерирует случайный номер потока. Далее шаг Switch распределяет потоки согласно его номеру. Четыре отдельных шага Salesforce Insert производят вставку записей, таким образом увеличивая общую скорость потока до 200 записей в секунду. В конечном счете, все вставленные записи с заполненным полем ID сохраняются в CSV файл.

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

Полученную трансформацию можно сразу же запустить на локальной машине. Прогресс пробега отображается в Step Metrics. Тут видно, какие шаги работают, сколько записей было прочитано на этом шаге и передано далее. А также скорость обработки записей на конкретном шаге, что делает простым нахождение «бутылочного горлышка» трансформации.

Для регулярных преобразований Data Integration позволяет создать Job, запускаемый по условию или расписанию на локальной машине или выделенном сервере.

Спасибо за внимание. Надеюсь, Salesforce-разработчики возьмут столь полезное средство на вооружение.

DataArt провел гоночный турнир на киевской JEEConf

$
0
0

Киевские коллеги установили специальный настольный кар-трек, на котором участники JEEConf 2015 могли соревноваться в свободное от докладов время. Конференция, собравшая более 900 участников и 80 спикеров со всей Европы, прошла 22 – 23 мая.

Трек представлял собой две дорожки для двух машинок — каждая на своей гоночной полосе. Задача — проехать как минимум круг. «Как минимум» — потому что трек представлял собой непростую трассу с участками разной сложности: имитация песчаного покрытия, петля на 360 градусов, заносы и крутые повороты. Все это делало трассу сложнопроходимой — машинки так и норовили покинуть полосу и выскочить за пределы трека. Но именно это и придавало еще больше азарта IT-мини-гонщикам.

17963405818_b3a67c0d86_k

Больше всего внимания наш трек привлекал во время обеда, когда мы проводили Большой гоночный турнир. Он каждый день собирал по 24 участника и не менее 50 болельщиков.

Победителями стали Илья Корниенко и Павел Васильченко, которые получили по набору из трех моделей гоночных автомобилей Hot Wheals, чему были несказанно рады.

17963531380_bc53e67481_k

Стенд DataArt стал своеобразным центром конференции: многих манили призы — беспроводные наушники Beats и камера GoPro Generation 4 — в розыгрыше которых участвовал каждый заполнивший анкету. Не обошлось на нашем стенде и без моментальной беспроигрышной лотереи, и без кофе для всех.

17528652804_8ac6bce2be_k

Спасибо организаторам XPInjection и всем участникам за внимание и хорошее настроение!

Все фотографии

DataArt провел День карьеры для студентов «Львовской политехники»

$
0
0

Львовский DataArt пригласил в гости студентов университета «Львовская политехника», чтобы поделиться с ними техническими и нетехническими знаниями.

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

18165825726_aca018b470_o

Константин Полосухин, QA Lead, поведал о своем пути в мир IT и дал практические советы построения карьеры. Студенты спрашивали Костю о его первом проекте, трудностях, с которыми он сталкивался, путях их решения. Многие интересовались, где получить опыт работы, который требуют работодатели, и с чего начинать строить карьеру. Немало вопросов посвятили проблеме выбора: как правильно определить технологию, которая станет для тебя главной в программировании, и что сейчас наиболее востребовано.

Максим Тхорик, Senior QA, раскрыл тему совмещения учебы и работы, поделился  секретами приобретения опыта работы, дал несколько дельных советов, на что сейчас стоит обратить внимание, привел ссылки, которые могут стать хорошим подспорьем в построении карьеры. Его спрашивали о качестве полученных в университете знаний и применения их в реальных проектах.

18004430518_2f377cd64f_o

Владимир Бронников, Senior .NET Developer, говорил, конечно, о .NET и его перспективах. Оказалось, около 60% студентов выбрали именно эту технологию, поэтому их интересовало все — от полезной литературы до проблем в проектах у Владимира и шансах на интересную работу.

Все фотографии

DataArt Usability Course дал жизнь сразу нескольким медицинским проектам

$
0
0

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

Проекты выпускники представили профессиональным медикам. Современные технологии пока недостаточно глубоко проникли в российскую медицинскую сферу, поэтому докторов удивили новые возможности высоких технологий.
Цель одного проекта — проектирование интерфейса медицинской информационной системы, которая действительно упрощает работу медиков: позволяет вести учет осмотров больных, базы анализов, исследований и пациентов, список дел врача и назначений.
Другие команды разработали систему автоматизации заполнения медицинской документации, систему контроля приема фармакологических препаратов и еще несколько не менее полезных и интересных проектов. 18080605621_6a53572e2e_k

Ольга Азимбаева, наша коллега и преподаватель курсов: «Когда мы объявляли начало курсов по юазбилити, рассчитывали только на студентов ВГУ, для которых курс входил в учебную программу. Было очень приятно увидеть около 70 человек на первой лекции вместо предполагаемых 20 и понять, что разработка удобных и ориентированных на пользователей интерфейсов важна и интересна многим. По закону «естественного отбора», до завершения курса 11 самых мотивированных и выносливых — они смогли вытерпеть сеансы общения со сложными заказчиками и создать прототипы приложений. Надеюсь, приобретенные навыки помогут им найти себя и любимое дело в жизни».

Артем Астафуров: «Раз на рынок IoT пришел Google, значит, мы двигаемся в правильном направлении»

$
0
0

Компания Google представила два новых инструмента для «интернета вещей» — операционную систему Brillo и протокол Weave — на ежегодной конференции для разработчиков Google I/O 28 — 29 мая. Блог DataArt попросил прокомментировать это события Артема Астафурова, вице-президента DataArt, главу практики IoT/M2M.

Что появление этой платформы означает для рынка?
— Из доступной сейчас информации очень тяжело сделать далеко идущие выводы о Brillo и Weave. Пока очевидно несколько вещей. Во-первых, на рынке точно появятся продукты, которые работают на новой операционке и поддержат новый протокол. Во-вторых, стандарт Weave будет конкурировать с уже существующими стандартами AllJoyn) и OIC). За каждым из них — более 100 компаний, которые уже потратили время и силы, чтобы договориться о взаимодействии, поэтому так просто они не сдадутся. Встанет ли Weave в один ряд с существующими стандартами или же ему удастся интегрировать AllJoyn и OIC, пока не совсем ясно. Что касается того, что Android теперь можно установить на любые устройства, это безусловно интересно.
Еще пара важных вопросов, на которые пока нет ответов.
Насколько маленькими смогут быть устройства, с которыми будет работать Brillo? Компания Canonical — та, что делает Ubuntu Linux — сделала Ubuntu Snappy для IoT. Эту ОС можно запускать на маленьких устройствах, типа домашних точек доступа. То есть Ubuntu Snappy — потенциальный конкурент Brillo.
Насколько дешевыми будут устройства на Brillo? Можно ли поставить Android на недорогие процессоры простых домашних сетевых устройств?

— Что она означает для нашей IoT-практики в целом и платформы DeviceHive в частности?
— Разных IoT-платформ на рынке сейчас великое множество. Каждая помогает решать свои задачи — и тем, кто ей пользуется, и тем, кто ее построил.
Нам в IoT-практике DataArt очень любопытно, что и как сделал Google в Brillo, и мы с нетерпением ждем подробностей, которые должны появиться в 3-м квартале этого года. Пока остается лишь гадать.
Мы же в DeviceHive — в партнерстве с Canonical/Ubuntu и AllSeen Alliance — какое-то количество вещей из тех, что планирует выпустить Google, уже сделали. Наши клиенты ими успешно пользуются. Приход Google на этот рынок означает, что мы двигаемся в правильном направлении, и самое интересное еще только впереди. Мы ведь помним, как в 2012 году Google закрыл проект Android@Home. Тогда в Google сочли, что компания бежит впереди паровоза и опережает время. А сейчас, похоже, самое время для таких разработок».

Будущие айтишники получили призы от DataArt

$
0
0

DataArt наградил семь лучших учеников субботней школы Херсона, которые хотят стать программистами, тестировщиками, специалистами по экономической аналитике. Обучение организовала кафедра информатики, программной инженерии и экономической кибернетики (ИПИЭК) факультета физики, математики и информатики Херсонского государственного университета, с которым DataArt сотрудничает с открытия офиса.

DSC_0669

Вручал награды выпускник ХГУ 2015 года и наш коллега Александр Аташьян. Он рассказал ученикам о перспективах учебы в университете и трудоустройства в IT-компанию, поделился своей историей профессионального роста в IT-сфере, как расширил свою базу технических знаний в университете и, благодаря этим знаниям, . поступил в бесплатную .NET School DataArt, стал одним из лучших ее выпускников и практикантом в компании. Сразу работал в реальном проекте и получил огромный практический опыт. После успешного прохождения практики стал специалистом, Junior .NET Developer, и полноценным коллегой в DataArt.

DSC_0677

Бесплатная субботняя школа ИПИЭК, где работают преподаватели кафедры, — возможность для старшеклассников подготовиться к поступлению на специальности «Информатика» и «Программная инженерия» в ХГУ и узнать больше об IT-сфере.


Банкатон в Германии — как мы получили приз «за эмоции»

$
0
0

Меня зовут Илья Аристов, я — РМ в DataArt. Расскажу, как мы съездили на Банкатон-2015 во Франкфурт.

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

Кодинг начинался в понедельник с утра и заканчивался во вторник вечером, а в воскресенье прошла официальная часть, представление команд, рассказ о регламенте. За бутылкой немецкого официального напитка мы начали раздумывать, чтобы такое реализовать за отведенное время. Благо компания у нас большая — недавно открыли офис в Мюнхене и смогли привезти немецкого коллегу. После продолжительного брейншторма решили делать то, что интересует самих немцев (спасибо за идею коллеге!), а именно — простой механизм пожертвований проверенным организациям.

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

Мы бы не были айтишниками, если бы не захотели прикрутить кое-что модное — weareables. Родилась блестящая идея добавить эмоций в благое дело пожертвований. Нам было необходимо реализовать еще одно приложение для часов. Цель простая: при нахождении человека в определенной локации выдавать ему сообщение, что он может сделать пожертвование. Или, например, человек на стадионе и смотрит футбол, часы отслеживают его пульс и, когда он повысится, должны предложить помочь своему клубу пожертвованием (кейс чисто немецкий :)).

В итоге родился весь «флоу», только оставался вопрос, когда все это успеть сделать.
На помощь пришли удобные API спонсоров, один из которых помогает интегрироваться со всеми немецкими банками (www.figo.io), другой — с распознаванием чеков, финансовых отчетов и прочей «бюрократией» (www.gini.net ).

У Figo — мощный функционал, одно то, что через него можно подключиться к счету в любом немецком банке, ставит его на очень высокий уровень для бизнес-решений, которыми занимается наша компания. С API можно работать через несколько стабильных SDK, все взаимодействие идет через REST-сервисы. Особое внимание Figo уделяет безопасности клиентов.

Для нашего решения мы получали данные по счетам клиента и выполняли платеж на счет благотворительной организации. Аутентификация шла через сайт Figo.

На исходе первого дня стало понятно, что все сделать мы не успеем. Решили остановиться только на мобильном приложении, остальное обернуть в красивые картинки. К тому же, у нашего немецкого коллеги — 20 лет дизайнерского опыта за плечами, поэтому в качестве сопроводительных картинок сомневаться не пришлось. Мы сконцентрировались на разработке приложения, оставив только основной флоу: нагенеренное нами оценивалось в несколько человекомесяцев работы хорошей команды. Возможно, тут сказался небольшой опыт участия в хакатонах — первый день ушел на обсуждения, рисования прототипов и мокапов, на «трогание» API-спонсоров. «Но у нас же еще ночь впереди!..»

Интеграция с Gini далась нелегко. У нее чуть меньше SDK, которые нам были интересны (вернее, те, которые мы могли использовать нашей командой), но само решение мне понравилось. Идея создавать электронные чеки или использовать данные с бумажных носителей не нова, но конкретное применение и реализацию я увидел впервые, как и интерфейсы, организованные через REST-команды. Весь процессинг проходит довольно быстро, но мы долго не могли получить конкретные результаты. В какой-то момент появилось опасение не успеть заинтегрироваться со обоими API, а тут еще и интернет лагает…

Банки энергетика пустели незаметно (стоит отдать должное организаторам — с едой и напитками все было на высшем уровне, все были сытые и довольные, некоторые даже слегка веселые, но статья не об этом :)). Но никто не ожидал, что будет такой плохой интернет — он постоянно отваливался, и это добавляло эмоций и сложности в разработке, а особенно с интеграцией с API.

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

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

Идеи и решения других команд оказались очень интересными.

Кто-то сделал персонального финансового помощника, который по голосовой команде мог отсканировать чек и привязать его к нужной статье расходов (при помощи Gini API). Одна из команд-победительниц при помощи Figo API сделала решение удобного планирования пенсионных накоплений (больше подходит для Европы). Ребята, сидевшие за соседним столом, сделали решение для малого бизнеса — оплата при помощи двух телефонов, Figo и Gini API. Кассир посылает запрос клиенту c фото чека, клиент подтверждает и платит со своего счета через Figo API. Все довольны, не надо платить банку за EFT-терминал.

Самым большим сюрпризом оказалось, что мы выиграли специальный приз от «Дойче банка». Им очень понравилась наша идея и то, что мы добавили «эмоции» через wereables.

Больше информации можно посмотреть на www.bankathon.net . организаторы обновили его, выложив информацию об участниках и победителя.

Антипаттерны в Rails обсудили на RubyС 2015

$
0
0

Наш коллега Владимир Мельник, Ruby Senior Developer, выступил на ежегодной конференции RubyС 2015 в Киеве.

«Мой доклад был о том, что классы и иерархия классов возникли из неверного, слишком упрощенного, платонического толкования природы. Но мы имеем дело не с конкретными реализациями совершенных объектов природы, а с системами, состоящими из множества компонентов. Таксоны не следует воспринимать как нечто целостное. Они представляют собой совокупность множества генов. Так же мысли, идеи и смыслы состоят из кирпичиков-мемов (термин ввел биолог Ричард Докинз).

18414611462_ffa70d0b6a_k

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

В докладе я привел примеры некоторых антипаттернов в Rails, которые называются “Rails-Way”. Полиморфные ассоциации, STI, псевдо- (суррогатные) ключи, сам паттерн ActiveRecord и нарушение SRP приводят к тому, что код становится сложно поддерживать. Альтернативой этому мне видится композитный подход и паттерны, взятые из Domain-Driven Development. Создавая правильную схему отношений, разделяя ответственность, используя DataMapper вместо ActiveRecord, разделяя DAO и Entities, мы сможем добиться гораздо лучшего качества кода», — поясняет Владимир.

 Презентация доклада.

Кроме того, DataArt установил на конференции Instagram-принтер —  все желающие могли сфотографироваться на смартфон, выложить фотографию в Instagram со специальным хештегом DataArt_Kyiv, и за минуту получить распечатанный снимок.

18230848288_b0ec1915e2_k

Вторым развлечением от DataArt стала моментальная лотерея, призами которой были, в том числе, полезные летом фрисби. А после конференции мы разыграли суперпризы — камеру GoPro Generation 4 и Smart Watch от Motorola.

18418609195_6c484b6938_k

Главная Ruby-конференция года собрала более 300 участников и 20 докладчиков-экспертов со всего мира.

Все фотографии

9 инструментов тестирования юзабилити

$
0
0

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

Юзабилити — это простота использования программных продуктов. Понятие включает следующие нефункциональные аспекты использования ПО:

  • Эффективность (выполнения задач пользователем).
  • Результативность (по времени выполнения).
  • Удовлетворение (опытом пользования) в указанном контексте использования (пользователи, задачи, оснащение и окружения).

Рассмотрим инструменты для измерения юзабилити. Мы использовали три основных критерия оценки:

  • Возможность записи аудио и видео во время тестирования.
  • Качество инструментов пост-редактирования тестовых сессий.
  • Возможность использования мобильных устройств для тестирования.

После завершения исследования и сравнения девяти популярных инструментов мы пришли к выводу, что у нас до сих пор нет комплексного, полностью интегрированного инструмента тестирования юзабилити для мобильных устройств, который бы соответствовал следующим критериям:

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

Инструмент / Функция

Аудио-видео запись

Возможность редактирования записей

Возможна мобильное тестирование

Дистанционное немодерируемое тестирование

Доступные тестировщики

Цена

Ovo Logger

v

v

v

x

x

от $ 3 000

Ovo Solo

v (только для ПК)

v

x

x

x

$ 99

Morae

v

v

x

x

x

$ 1 995

UserTesting

v

v

v

v

v

$ 49 за один тест с возможностью оптовых скидок

Userlytics

v

v

v

v

v

$39 в месяц и выше с возможностью оптовых скидок

Userfeel

v

x

x

v

v

$49 за один тест с возможностью оптовых скидок

OpenHallway

v

v

x

v

x

$49 в месяц и выше в зависимости от плана

UsabilityTools

x

x

x

x

Да, но платные

От $ 300 за месяц. Первые 14 дней бесплатно.

TryMyUI

v

x

x

v

x

$ 35 за один тест с возможностью оптовых скидок

Ovo Logger

Ovo Logger от Ovo Studios создан в основном для студий тестирования юзабилити, которые работают с большими объемами распределенными командами исследователей. Инструмент рассчитан в основном на них, поскольку им нужно надежное средство для захвата, редактирования и обмена результатами.

Ovo Studio также занимаются созданием пользовательских лаборатории проверки юзабилити, и Ovo Logger частично создан для работы в них. Инструмент в целом лучше остальных, но достаточно дорогой.

Плюсы:

  • Ориентирован на предприятия.
  • Записывает несколько входов и отправляет стримы нескольким пользователям сразу.- Инструменты редактирования предоставляют анализ тестов в реальном времени.
  • Позволяет сохранять важные моменты при просмотре записи.
  • Позволяет захватывать картинку с невзломанных iPad, iPhone и девайсов на Android с помощью приложения Logger.

Минусы:

  • Разработан специально для крупных фирм с несколькими офисами и/или юзабилити-командами.
  • Требует отдельный компьютер для запуска программного обеспечения.
  • Цена выше, чем у конкурентов.
  • Инструмент основан на ряде источников, связанных с ними требований по лабораториям и т. д.

Аудио-видео запись

Возможность редактирования записей

Возможна мобильная тестировка

Дистанционное немодерируемое тестирование

Доступные тестировщики

Цена

v

v

v

x

x

От $ 3 000

Ovo Solo

Ovo Solo — продукт Ovo Studios, разработанный для небольших компаний. Можно даже сказать, что это — лайт-версия Ovo Logger, позволяющая захватывать видео взаимодействия с экраном одновременно с лицами и голосами участников исследования. Простое управление ведения журнала позволяет анализировать получившиеся видео. Однако инструмент поддерживает только Windows, поддержка iOS не предусмотрено. С другой стороны, его демократичная цена делает инструмент грамотным выбором при невысоком бюджете.

Плюсы:

  • Относительно невысокая цена за захват, монтаж и показ сессий юзабилити-тестирования.

Минусы:

  • Нет варианта для Mac.
  • Нельзя напрямую записывать взаимодействие с экраном мобильного устройства.
  • Базовый набор инструментов редактирования, не для продвинутых исследователей.

 

Аудио-видео запись Тестировщика

Возможность редактирования записей

Возможна мобильная тестировка

Дистанционное немодерируемое тестирование

Доступные тестировщики

Цена

v

v

x

x

x

$99

Morae

Morae от Techsmith — первый инструмент, специально созданный для юзабилити-тестирования, и несмотря на возраст, до сих пор один из лучших вариантов. Позволяет записывать, анализировать, редактировать и делиться сессиями.

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

Плюсы:

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

Минусы:

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

Аудио-видео запись Тестировщика

Возможность редактирования записей

Возможна мобильная тестировка

Дистанционное немодерируемое тестирование

Доступные тестировщики

Цена

v

v

x

x

x

$ 1 995

UserTesting

UserTesting предоставляет сеть исследователей, но при необходимости позволяет и проводящему тестирование набирать исследователей самостоятельно. Участник исследования создает список заданий для тестировщиков. Записывается взаимодействие тестировщика с экраном и его голос

UserTesting включает мощные и простые в использовании инструменты видеомонтажа для создания нарезок.

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

UserTesting —одно из самых мощных инструментов для удаленного немодерируемого юзабилити-тестирования.

Плюсы:

  • Доступный способ провести дистанционное немодерируемое тестирование юзабилити.
    Аудио- и видеозапись.
  • Простое и быстрое создание нарезок при помощи встроенных функций.
  • Результаты тестирования доступны час-два в зависимости от количества исследователей. Предоставляются инструменты отбора демографий.

Минусы:

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

Аудио-видео запись Тестировщика

Возможность редактирования записей

Возможна мобильная тестировка

Дистанционное немодерируемое тестирование

Доступные тестировщики

Цена

v

v

v

v

v

$ 49 за тест с возможностью оптовых скидок.

Userlytics

Userlytics предоставляет дистанционное юзабилити тестирование на основе Windows и мобильных девайсов. К сожалению, его нельзя модерировать. Если вам необходимы функции мобильного тестирования, есть возможность апгрейда инструмента до уровня Gold или Enterprise. Тестировщиков можно набирать и с помощью Userlytics, и из своих источников. Есть возможность записи взаимодействий с экраном, голоса тестировщика, видео с вебкамеры и письменные ответы на вопросы после прохождения теста.

Плюсы:

  • Относительно невысокая цена.
  • Прост в установке и обращении.
  • Есть возможность скачивать записи для редактирования и обмена (при апгрейде).

Минусы:

  • Довольно запутанная система набора функций тестов на основе платных апгрейдов, потребуется некоторое время, чтобы во всем разобраться.
  • Есть ограничения (на основе апгрейдов) количества вопросов после исследования.

Аудио-видео запись Тестировщика

Возможность редактирования записей

Возможна мобильная тестировка

Дистанционное немодерируемое тестирование

Доступные тестировщики

Цена

v

v

v

v

v

$ 39 в месяц и выше с возможностью оптовых скидок.

Userfeel

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

Также есть возможность письменных ответов на послетестовые вопросы. Видео тестов доступны на вебсайте, но нельзя скачать и редактировать их. Зато есть бесплатная возможность “white label”-воспроизведения видео, крайне полезная функция при тестировании на языках, кроме английского.

Плюсы:

  • Качественный инструмент для дистанционного немодерируемого юзабилити-тестирования на разных языках.
  • Есть фильтрация по демографии и языку.
  • Сравнительно невысокая стоимость.
  • Возможность послетестовых вопросов.
  • Бесплатное “white label”-воспроизведение тестов.

Минусы:

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

Аудио-видео запись Тестировщика

Возможность редактирования записей

Возможна мобильная тестировка

Дистанционное немодерируемое тестирование

Доступные тестировщики

Цена

v

x

x

v

v

$ 39 за тест с возможностью оптовых скидок.

OpenHallway

OpenHallway — инструмент для исследований на основе Windows и Mac. Тестировщиков исследователь набирает сам, но панели управления пользователями в инструменте нет. OpenHallway сам генерирует ссылки на сессии тестирования, когда все готово.

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

Количество места для хранения видео зависит от варианта, который вы используете: Basic, Plus или Premium. На количество сессии ограничения нет, но вот место под хранение видео в какой-то момент может закончиться.

Плюсы:

  • Прост в использовании.
  • Прост в установке.
  • Удобный инструмент для записи немодерируемых дистанционных юзабилити-тестирований.
  • Поддержка Windows и Mac.

Минусы:

  • Не поддерживает мобильные устройства.
  • Без Java инструмент работать не будет.
  • Видео только в формате MP4, скачивание и редактирование возможно только в платных вариантах.

Аудио-видео запись Тестировщика

Возможность редактирования записей

Возможна мобильная тестировка

Дистанционное немодерируемое тестирование

Доступные тестировщики

Цена

v

v

x

v

x

$ 49 в месяц и выше с возможностью оптовых скидок.

UsabilityTools

UsabilityTools — набор инструментов для юзабилити, фидбека и отслеживания нажатий, объединенных в один интерфейс. Это упрощает работу с тестами, требующими использования различных инструментов.

Есть две версии: UX Suite и Conversion Suite. Они включают клик-тестинг, веб-тестинг, опросник, кард-сортинг и Persona Creator. Вы можете создать веб-тесты на основе различных сценариев для посетителей сайтов. Они выберут вариант “success” и “abandonment” в зависимости от того, смогли ли выполнить поставленную задачу.

Плюсы:

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

Минусы:

  • Отсутствует функция записи аудио и видео тестирования.
  • Мобильные взаимодействия с использованием аудио и видео записей недоступны.
  • Все панели управления тестировщиками платные

Аудио-видео запись Тестировщика

Возможность редактирования записей

Возможна мобильная тестировка

Дистанционное немодерируемое тестирование

Доступные тестеровщики

Цена

x

x

x

x

Да, но в платных вариантах

От $ 300 за месяц. Первые 14 дней бесплатно.

TryMyUI

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

Плюсы:

  • Несколько дешевле многих других немодерируемых инструментов.
  • Предоставляется аудио и видео записи тестирования.

Минусы:

  • Отсутствует функция редактирования видео.
  • Отсутствует возможность мобильного тестирования.

Аудио-видео запись

Возможность редактирования записей

Возможна мобильная тестировка

Дистанционное немодерируемое тестирование

Доступные тестировщики

Цена

v

x

x

v

x

$ 35 за тест с возможностью оптовых скидок

DataArt поддержал 7-й велодень в Херсоне

$
0
0

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

18373825722_7e632641b3_o

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

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

18190095908_c2a297cf67_k

Дмитрий Лукьяненко, QA DataArt:  «Велодень для меня — всегда море позитивных эмоций. Когда ты едешь в колоне из более чем 500 велосипедистов чувствуешь, что ты не одинок во взглядах на образ жизни, в своей любви к велосипеду. Покататься в компании друзей и единомышленников — всегда классно, особенно если их так много! Спасибо всем за участие!»

Артем Комисаров: «Даже не ожидал, что в нашем городе настолько много велосипедистов!»

Анастасия Васильева: «Очень вдохновляет, что у нас столько веломанов!»

Все фотографии

DataArt провел экскурсии для старшеклассников Херсона

$
0
0

Коллеги из херсонского офиса ответили ученикам старших классов на вопрос «где можно применить знания информатики и английского?».

PR-менеджер Ирина Третьякова познакомила учеников с рабочим процессом в DataArt, рассказала о возможностях и перспективах профессионального роста, упомянула, что в городе действуют технические сообщества, позволяющие углубить технические знания.

HR-менеджер Алена Горошенко подробно остановилась на том, что нужно знать и уметь, чтобы работать в IT-компании, как стать востребованным IT-специалистом, объяснила, какие требования предъявляются к потенциальным кандидатам и как можно совмещать учебу и работу в DataArt.

Ученики интересовались востребованными технологиями и литературой в помощь начинающим, наблюдали рабочие будни IT-специалиста: митинги, разработку и тестирование ПО.

Киевский офис получил домашние и летние подарки

$
0
0

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

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

18259452628_840076dd23_k

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

Победитель караоке-батла Игорь Мастерной получил игру «Колонизаторы» — на радость себе и коллегам.

18260788809_32751365c3_k

Хорошо, когда есть коллеги, с которыми можно разделить сразу две радости!

Все фотографии

Встреча GDG и трансляция конференции Google I/O Extended прошли в Воронеже

$
0
0

DataArt провел встречу GDG-сообщества и  трансляцию международной конференции Google I/O Extended.

18226209220_2177fbdede_k

Арсений Печенкин, ведущий разработчик DataArt, выступил с темой “Google I/O 2015: everything you need to know”, подготовив слушателей к предстоящей трансляции.

18227757619_d5b314e071_k

Дмитрий Провоторов, менеджер продуктов, сооснователь «Мануфактура IT Production & Graphic Design», провел мастер-класс проектирования интерфейсов «Особенности проектирования интерфейсов на примере Google Material Design», а после разобрал кейс одного стартапа и дал экспертную оценку, советы и рекомендации по улучшению проекта.

Потом началось долгожданное событие для Google-сообщества всего мира — трансляция конференции Google I/O из Сан-Франциско. Обратный отсчет начала конференции участники вели вместе и встретили открытие аплодисментами.  

18226114718_aaf14f8611_k

Иван Дегтярь, партнер встречи GDG-сообщества: «Большое спасибо команде DataArt. Мы сотрудничаем не впервые и рады будем продолжить! Очень важно, что в Воронеже есть возможность проводить подобные встречи. Современные навыки и знания, площадка для общения и поиска партнеров — то, что необходимо, чтобы местное IT-сообщество могло развиваться и дальше».

Google I/O — ежегодная конференция, ориентированная на веб-разработчиков, проводимая Google для обсуждения развития открытых веб-технологий и сервисов Google. Проводится в Moscone Center (Сан-Франциско, Калифорния) в мае или июне с 2008 года.

Все фотографии


DataArt подвел итоги хакатона по «интернету вещей»

$
0
0

DataArt провел хакатон по «интернету вещей» для студентов городских вузов и колледжей в Одессе. Участники разрабатывали проекты на основе лабораторного стенда DeviceHive Galileo Discovery Platform, созданного DataArt с применением микроконтроллера Galileo 2 от Intel. Преподаватели одесских университетов и коллеги из одесского DataArt выступили менторами, коллеги из других офисов помогали оценить проекты онлайн.

18487456915_3af0a1da26_k

В тройку победителей вошли следующие команды и их проекты:

  1. «Greenhouse» — студенты Академии связи создали систему автономного климат-контроля для теплиц. Система использует серию датчиков для определения параметров окружающей среды и автоматически включает освещение, вентиляцию и другие переферические устройства при выходе параметров за границы нормы. Управление осуществляется через специально разработанный веб-интерфейс.
  2. «Автономная машина» — команда Одесского национального политехнического университета применили плату Gallileo 2 для управления роботизированным автомобилем. Машина использует серию датчиков для автономной навигации в пространстве, поддерживает функцию ручного управления с помощью специального приложения на Android.
  3. «ЕкоВольт» — проект помогает экономить электроэнергию путем удаленного контроля состояния электрических устройств, подключенных к розетке. Управляется с помощью специального приложения под iOS, а связь устройств осуществляется через DeviceHive.

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

17864776014_95f5f5acc8_k

Каким образом мы получили такие результаты? По итогам вводной встречи, где продемонстрировали возможности платформы, сформировалось семь команд. Ребята показали отменные навыки программирования, а работы превзошли ожидания. Пять проектов дошли до этапа оценивания, в котором учитывались следующие критерии:

  1. Применимость проекта в реальной жизни (business value).
  2. Максимальное использование возможностей стенда, периферических датчиков, концепции «интернета вещей» (IoT-фактор).
  3. Совместимость с другими платформами (сompatibility).

В бесплатном хакатоне мог участвовать любой человек, понимающий алгоритмы программирования. Над проектом работали в командах от одного до пяти участников. DataArt и Intel предоставили стенд для каждой команды, подробное руководство по работе с DeviceHive Galileo Discovery Platform.

Хакатон проходил на базе DeviceHive. Это специальная гибкая платформа с открытым исходным кодом, использующая сетевые и облачные технологии. Она позволяет реализовывать различные решения для обмена информацией между устройствами по принципу Machine-to-Machine/M2M.

В рамках хакатона использовался стенд DeviceHive Galileo Discovery Platform. Подробное руководство об устройстве стенда и его функционировании можно прочесть здесь. На сайте Intel можно ознакомиться с процессом установки ПО и получить дополнительную информацию.

В сентябре планируется провести второй хакатон по «интернету вещей». Следите за новостями DataArt!

Все фотографии

Google I/O 2015 глазами непрограммиста

$
0
0

Елена Федорова, HRM-директор воронежского офиса DataArt и координатор сообщества Google Developer Group Voronezh побывала на конференции Google I/O 2015 в Сан-Франциско и делится впечатлениями — не с точки зрения разработчика, а c позиции обычного пользователя.


Google I/O — крупнейшая в мире конференция для разработчиков, программистов, любителей и поклонников технологий Google. Проходит ежегодно уже восемь лет, длится два дня. На этот раз на нее съехались более 6000 участников. Попасть на Google I/O может любой желающий. Для этого надо успеть купить билет за $900 — а заканчиваются они очень быстро. Еще одна возможность попасть на конференцию — быть крутым Android-разработчиком или помогать продвигать технологии Google. Я поехала в Сан-Франциско как координатор и организатор Google Developer Group Voronezh. Мы с 2008 года проводим мероприятия на тему технологий Google. Например, в декабре 2014 г. у нас прошел GDG DevFest Voronezh, в котором участвовали 300 человек — по меркам Воронежа очень большая конференция.

Не буду рассказывать о техническом содержание конференции. Будет правильнее дать полезные ссылки на announcements и видео с докладов на конференции google.com/io/videos.

Даже чтобы попасть внутрь Moscone Center в день регистрации, надо отстоять очередь в три квартала.

1

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

17

На следующий день я пришла к Moscone Center в 8 утра — за полтора часа до начала докладов, и обнаружила, что очередь четырежды обвилась вокруг здания конгресс-центра. Люди приходили к 5 утра, чтобы первыми попасть внутрь и занять самые хорошие места в зале.

К 9:30 мы наконец оказались в зале. Партер с трех сторон окружал гигантский экран, на котором в ожидании главного доклада всей конференции медленно плавал кит. Пленарный доклад, или Keynote — чистое шоу: отличный звук, красивая картинка, завораживающие фотографии.

3

После Keynote участники расходятся по 3-этажному конгресс-центру. Одновременно идет 15 секций.

34

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

8

Хочется отметить секцию CodeLab, на которой каждый желающий мог попробовать в деле Google Pay, Tango, Android Wear под Android-часы или AndroidAuto (платформа для автомобильных компьютеров). На фото — вариант для машин.

45

На третий этаж конференц-центра загнали настоящие автомобили.

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

54

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

52

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

48

CardBoard — картонные коробочки, в который можно вставить смартфон и открыть на нем приложение для виртуальной реальности. Получается такая дешевая версия Oculus Rift. Можно вертеть головой во все стороны и смотреть видео, снятые при помощи круговой батареи из 16 GoPro: крутишь головой, видишь разные объекты, людей, а звук в наушниках помогает полностью погрузиться в виртуальное пространство.

26

Tango — проект дополненной реальности. На мониторе, прикрепленном к оружию, демонстрируется компьютерный симулятор-стрелялка, в котором бегаешь по реальному пространству.

40

Вечером первого дня прошла грандиозная вечеринка на свежем воздухе — в центре квартала на зеленой полянке собралось много народа. Развлечения и еда были на любой вкус. Живая музыка, караоке, медитация в магическом шаре, аниматоры. На следующий утро в очереди ребята из Google раздавали нуждающимся средства от похмелья.

30

Во второй день Google I/O на меня как на девочку самое большое впечатление произвел доклад о проекте Jacquard — как современные технологии меняют мир тканей. В рамках проекта Levi’s вместе с Google разрабатывает «умные штаны» (интересно, что в Google за это отвечает человек по имени Иван Пупырев). Они сшиты из денима, в который вплетены проводящие нити. Таким образом, ткань по сути превращается в тач-скин. Из этой ткани можно шить одежду, ею можно обивать мебель, из нее можно создавать носимые интерфейсы.

41

Rapid paper prototyping — четыре станции, на которых вместе с экспертами Google можно обсудить, нарисовать и склеить прототип будущего приложения.

37

Зона Android Wear была посвящена умным наручным часам. Умеют напоминать, что надо позвонить родителям или заказать столик в ресторане.

19

Этот хор смартфонов, которые ладно играют и поют на все голоса.

21

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

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

11

В заключительной секции Speechless участвовали докладчики, умеющие много и смешно шутить. На ура пошла шутка про применение новой искусственной руки — new opportunities for digital proctologist («новые возможности для цифрового проктолога»).

Наша #gdg тусовка на #google i/o 2015

28

Спасибо всем коллегам, которые поддерживали меня, и благодаря которым я оказалась на этой конференции. Спасибо коллегам, которые остались в Воронеже и проводили трансляцию конференции из Сан-Франциско и Google-хакатон. У нас тоже было круто на #GDG I/O 2015 Extended #Voronezh!

Я рада, что встретила друзей и коллег-организаторов GDG из других городов и стран, познакомилась и увидела лично тех, с кем долго переписывалась по работе над Google-комьюнити. Отдельная благодарность Наталье Ефимцевой за заботу и курирование наших российский GDG-сообществ.

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

Воронежский DataArt провел Google-хакатон

$
0
0

Google-хакатон прошел в воронежском офисе DataArt 29 мая. Участники погрузились в разработку приложений, чтобы через шесть часов представить жюри свои проекты.

17792007843_1d3728d103_k

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

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

18386278946_28101d5183_k

Третья команда представила прототип PMMlife, содержащий новости факультета ПММ, контактные данные ключевых людей факультета и расписание пар.

Все фотографии

DataArt накормил голодных программистов на Open Class Programming Competition

$
0
0

DataArt, спонсор соревнования Open Class Programming Competition (OCPC) в Одессе, предложил участникам «Набор голодного программиста», чтобы поддерживать их боевой дух пять часов, за которые надо было решить 10 задач.

Текст задач составлен с юмором, их главный герой — джуниор Ситарам Раджу. В конкурсе можно участвовать двумя способами. Личное первенство предполагает призы и более строгие правила, конкурсанты находятся там, где проходит соревнование, каждому выделяется один компьютер.

18603054052_320189af3a_o

При участии онлайн решать задачи может любое количество людей, на нескольких компьютерах и где угодно в мире.

OCPC — отличный шанс начинающим программистам показать себя: “open class” означает, что для желающих нет ограничений по возрасту, статусу или опыту работы.

17984940874_a15c024bbe_b

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

Open Class Programming Competition проходит на базе Одесского национального университета им. Мечникова уже третий год.

Все фотографии

Дети коллег рисовали город мечты и делали лед

$
0
0

Во многих офисах DataArt отметили день защиты детей.

17979520553_87eeff7d11_k

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

18412870239_f871f93d45_k

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

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

Когда сокровища были спасены, наступило время пиццы, мороженого и сладостей. А потом — батуты, настольный футбол, аквагрим, аттракционы и фото на память.

18600514765_b1421e2e78_k

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

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

Все фотографии

Viewing all 1532 articles
Browse latest View live