Архив за 13 сентября 2013 - 3

Nexus 7 (2013) — новое поколение планшетов, совместно разрабатываемых компаниями Asus и Google. В новом поколении все так же используется 7-дюймовый IPS дисплей, однако разрешение выросло до 1920x1080. Начинка также претерпела значительные изменения, теперь планшет работает на четырехъядерном процессоре Qualcomm Snapdragon S4 с частотой 1.5 ГГц, что дает прирост производительности почти в два раза по сравнению с моделью предыдущего поколения. Объем оперативной памяти также был увеличен вдвое и теперь составляет 2 Гб.

Читать полностью »

Сегодня я расскажу о трекере на кухне Додо Пиццы. На нашей кухне висят планшеты с интерфейсами трекера. Трекер — спинной мозг процесса изготовления пиццы. Он вступает в действие с момента принятия заказа и до передачи термосумки с пиццей курьеру.

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

image

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

Типы продуктов:

  • Выпекаемые: пиццы (экраны: Тесто, Начинка, Упаковка)
  • Полуфабрикаты: салаты, картошка, кукуруза (экраны: Закуски, Упаковка)
  • Простые: напитки, маффины (добавляются в завершении, на схеме не показаны)

Все продукты в завершении распределяются по экранам выдачи (экраны: Курьеры и Выдача в зал).

Каждый экран выводит определенное количество типов продуктов. Для каждого продукта выводятся определенные параметры (названия, размеры, толщина теста и т.д.). Цель — сделать так, чтобы работа с интерфейсами вызывала минимум ошибок у сотрудников. Я покажу, как шла работа над интерфейсами и какими были попытки сделать так, чтобы сотрудники не путали пиццы.
Читать полностью »

Профилирование – это очень важный аспект при разработке и поддержке почти любого приложения. Не в меньшей мере это относится и к базам данных. Особенно при больших объёмах информации производительность запросов к хранилищу данных является очень критичным. Что же касается производительности запросов в MarkLogic Server и их профилирования, можно сказать что эти вопросы являются одними из самых важных так как XQuery используемый в MarkLogic Server позволяет писать не только очень сложные запросы к самой DB но и довольно сложные приложения.Читать полностью »

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.

Читать полностью »

В Сети есть не так много информационных ресурсов IT-тематики, которые максимально серьезно подходят к оценке времени автономной работы. Нередко даже авторитетные обозреватели ограничиваются общими фразами типа «один-два дня проработает». И это при том, что лично я сразу перематываю статьи к разделу «Автономная работа». В данном вопросе меня неизменно радует ресурс Helpix, который проводит замеры «мобил» по 14-ти сценариям, до полной разрядки. То есть, тест длительности работы даже самого «захудалого» смартфона занимает в сумме порядка 120 (О_О) часов. Замеры вносятся в обновляемую сводную табличку, которую я и хотел бы продемонстрировать. Всего в списке содержится 27 единиц техники, включая планшеты. За август-сентябрь прибавились Highscreen Omega Q, Alcatel One Touch X'Pop 5035X, Highscreen Alpha R, teXet TM-4072 X-basic и Fly IQ4411 Quad Energie 2. На мой взгляд, это крайне полезный «сборник», который следует иметь ввиду при выборе смартфона.

Автономная работа смартфона: «внятный» сравнительный гидЧитать полностью »

Сенатор Руслан Гаттаров, ежедневно требующий чьей-нибудь проверки по части IT (безопасности, расходов и др.) на соответствие российскому законодательству перешел от Apple, Google, Facebook, Twitter к коллегам из органов госвласти.

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

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

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

Мы рассмотрим здесь только Watermark'и предназначение которых – ни при каких условиях не быть удалёнными, чтобы создатель приложения имел возможность считать их после любых атак потенциального злоумышленника, а пользователи приложения о них не догадывались. Есть и другие виды вотермарок, предназначенные, например, для отслеживания изменений в приложении, эдакие скрытые чексуммы, и они также должны быть сложно удаляемы, но это уже другая история.

Самый лучший Watermark

Прекрасный способ внедрения Watermark в приложение – это пофантазировать и придумать место, где никакой хакер Вашу вотермарку искать не будет: просто побоится потонуть в тоннах кода и забросит это дело. Если Вы разрабатываете визуальное приложение, то ничего не мешает менять цвет пикселя спрятанного в углу какой-нибудь кнопки в Богом забытом диалоговом окне. Цвет пикселя и будет вотермаркой. К сожалению такой случай не всегда приемлем и разработчикам удобнее воспользоваться каким-нибудь универсальным решением для внедрения вотермарки в уже скомпилированное приложение. Традиционно такую функцию встраивают в обфускаторы.
Читать полностью »

в 12:07, , рубрики: Asm.js, javascript, метки: ,

image
Этим прохладным днём я искал алгоритмы и реализации вычисления числа пи. Алгоритмов нашлось какое-то несметное множество, но тут нашёлся пост с описанием алгоритма и его реализацией на си.
Алгоритм подкупает своей скоростью, хоть и выдаёт hex представление, но так уж вышло, что мне нужен был вариант на js. Моментальная, практически, переработка на обычный js показала очень плохую статистику, работа при подсчёте 1000000-ого знака заняла… 48 секунд (4ГГц FF).
О том, как возился с asmjs и каких камней повстречал можно узнать под катом.
Читать полностью »

Или самый простой и удобный медиацентр понятный всем домочадцам

Медиацентр из MacMini и Rapsberry PI

картнка для привлечения внимания


Привет! С каждым днем собрать дома медиацентр становиться все проще. Вариантов много – от HTPC из старого железа до безымянных устройств размером с флэшку. На хабре было много обзоров самодельных бесшумных HTPC, android-боксов и нет-топов для реализации домашних медиасерверов. Я испытал много разных вариантов, прежде чем найти самый подходящий для себя и, самое главное, для домочадцев.

Задача-минимум:
1. Собрать и структурировать всю медиатеку воедино
2. Сделать ее максимально доступной к просмотру на двух телевизорах в разных комнатах
3. Иметь возможность просмотра или загрузки (для оффлайн просмотра) фильмов из медиатеки на мобильных устройствах
4. Удаленный запуск торрентов с мобильных устройств
5. Бесшумная работа устройств.

Путем проб и ошибок, я пришел к использованию XBMC на стареньком Mac-mini + Rapsberry Pi.
Пробы, ошибки, и удобная конфигурация под катом.
Читать полностью »

На сцену вышел Майк Белл (Mike Bell).

Когда мы говорим о мобильности, важным параметром является энергопотребление. Обычно речь идет о ваттах, реже о милливаттах, а как насчет микроватт?

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


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js