Все потоки
Поиск
Написать публикацию
Обновить
38.8

Проектирование API *

О создании API

Сначала показывать
Порог рейтинга
Уровень сложности

Анализ отзывов посетителей ресторанов с Meanotek NeuText API

Время на прочтение4 мин
Количество просмотров4.9K
Анализ отзывов пользователей ресторанов был частью задачи тестирования SentiRuEval-2015, прошедшего в рамках конференции Диалог-2015. В этой статье поговорим о том, что собственно делают такие анализаторы, зачем это нужно на практике, и как создать такое средство своими руками с помощью Meanotek NeuText API

Анализ отзывов по аспектам часто разделяют на несколько этапов. Рассмотрим например предложение «японские блюда были вкусными, но официант работал медленно». На первом этапе мы выделяем из него важные для нас слова или словосочетания. В данном случае это «японские блюда», «вкусными», «официант», «медленно». Это позволяет понять, о чем идет речь в предложении. Далее мы можем захотеть сгруппировать термины — например отнести «блюда» и «вкусными» к еде, а «официант» к обслуживанию. Такая группировка позволит выдавать агрегированную статистику. Наконец, мы можем захотеть оценить тональность терминов, говорится о них что-то положительное или отрицательное
Читать дальше →

Геолокация без GPS (часть 2)

Время на прочтение4 мин
Количество просмотров24K
wifi Здравствуйте!
После предыдущей статьи (часть 1) я получил много отзывов о работе открытого API геолокации по WiFi и вышкам мобильных сетей.
В этот раз я хочу представить свои исправления, лицензирование проекта, геопозиционирование по нескольким точкам доступа, кейсы использования и самое главное — текущие проблемы
Узнать больше

Что новые версии UEFI-стандартов нам готовят, часть вторая, ACPI 6.0

Время на прочтение5 мин
Количество просмотров26K
Продолжаем знакомство с новыми возможностями недавно вышедших из под пера UEFI Forum стандартов, и если в предыдущей части речь шла о внутреннем стандарте PI, то на этот раз она пойдет об ACPI 6.0 и его отличиях от предыдущей версии 5.1.
Если вам интересно, что именно изменилось за 10 месяцев разработки стандарта, и какими новшествами нас порадуют или огорчат будущие системы с поддержкой ACPI 6.0 — добро пожаловать под кат.
Читать дальше →

API ХостТрекера: новые возможности сервиса

Время на прочтение3 мин
Количество просмотров3K
Сервис мониторинга сайтов ХостТрекер предлагает возможность управления и настройки мониторинга через API, что очень удобно при необходимости проверять большое количетсво сайтов или же для интеграции сервиса в различные приложения или восстановительные сценарии. API существует сразу в двух вариантах: HTTP (REST) и SOAP.



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

PushAll может отправлять уведомления в браузер Chrome без установки приложений и дополнений

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

Каким образом?


Google Chrome начиная с версии 42 поддерживает Push API через сервера Google, используя GCM Вы наверняка уже видели эти запросы для доступа к уведомлениям. Если разрешить доступ, сайт сможет отправлять вам уведомления. Эта функция совсем новая, и о ней мало кто знает, однако, по моему мнению, у нее уже есть большие недостатки:
  • Каждый сайт запрашивает разрешения в браузере, сложно контролировать, сколько источников сейчас могут присылать тебе уведомления, у каждого висит свой фоновый процесс, который отдельно просыпается, нет никакой истории полученных уведомлений или фильтрации, нет никакой синхронизации подписок между устройствами
  • Сайтам необходимо отправлять уведомления напрямую на устройства, следить за актуальностью базы устройств, следить за каждым устройством пользователя в отдельности
  • Данная возможность работает лишь на сайтах с SSL


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




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

Что за зверь deployd и почему его можно полюбить с первого клика

Время на прочтение3 мин
Количество просмотров6.6K
Мои 5 копеек
Я еще очень начинающий веб разработчик — как я это сам понимаю, хотя я неплохо знаю javascript, пользуюсь (точнея сказать — балуюсь) разными фреймворками типа bootstrap, jQuery, Webix, принюхиваюсь к Node.js и NoSQL базам, пробую разные варианты связок сервисов хранения даных вне машины (Firebase), но вот как то начать, что то делать свое, а не тупо повторять разные версии-варианты ToDo-шек, как то не получалось.
Хлеб я ем с другой области, посему все это — хобби для меня, хотя я люблю програмировать на С# и VB и есть парочку проектов успешно осуществленных и есть разные идеи у меня что мог бы я мог сделать, но вот как то нехватало того магического пинка в филейную часть, чтобы сделать первый шаг — и вот буквально на днях я открыл для себя DEPLOYD!

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

Деплойд — самый простой способ создать свой АПИ

Это просто как раз, два… ну вообщем вы счас все поймете:

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

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

3. Панель управления
Добавляйте и управляйте вашими API ресурсами через интуитивный веб интерфейс панели управления.

4. Развертка в 1 шаг

Когда наступит время развертки вышего приложения, вы сможете развернуть его самостоятельно на любой сервис поддерживающий Node.js и MongoDB.

Звучит красиво, но что собственно под капотом? А давай те глянем:
Читать дальше →

Подключение любого сайта к PushAll через RSS. Конвертер новостных лент в Push-уведомления

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

Введение


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



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

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

API Медузы: пишем полнотекстовый RSS

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

Meduza.io — не исключение: текст приходит урезанный, приходится каждый раз переходить из ридера в браузер для прочтения одной новости. Особенно это выглядело ужасным, когда на Медузе не было нормальной мобильной версии, веб-версия на телефоне сильно тормозила.

Существуют различные сервисы для парсинга html в rss, но когда я наткнулся на консольный клиент для Медузы, у меня сразу же возник вопрос, а какое API там используется и можно ли его заюзать для написания своего приложения?

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

Вычисляем персонажей гейммастеров в World of Warcraft с помощью Python

Время на прочтение3 мин
Количество просмотров56K
Был у меня как-то сайт по поиску твинков в World of Warcraft. Любой мог ввести ник и получить список персонажей, находящихся на той же записи (если данные имелись в базе сайта, конечно).

И вот однажды ко мне зашел посетитель из Blizzard:

image

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

Что новые версии UEFI-стандартов нам готовят, часть первая, PI 1.4

Время на прочтение5 мин
Количество просмотров16K
После полугода разработки организация UEFI Forum выложила наконец в открытый доступ документацию по новым стандартам Platform Initialization 1.4, Advanced Configuration and Power Interface 6.0 и Unified Extensible Firmware Interface 2.5, на базе которых сейчас разрабатывается абсолютное большинство прошивок для ПК и серверов.
Обычно между выпуском новых версий стандартов и первыми прошивками на их базе проходит обычно от 4 до 6 месяцев, но уже сейчас можно предсказать с высокой долей вероятности, какие именно новые возможности появятся в UEFI для платформ на базе процессоров Intel Skylake и AMD Falcon Series.
Я решил разделить описание новшеств на 3 части, иначе оно рискует оказаться очень длинным и читать его никто не станет. Если вас интересуют новшества, описанные в стандарте PI 1.4 и мои комментарии к ним — добро пожаловать под кат.
Читать дальше →

Как мы учили кассу самообслуживания принимать деньги

Время на прочтение8 мин
Количество просмотров19K
Наша компания уже около двух лет занимается кассами самообслуживания, и по этому пути мы шли итеративно. В одном из своих предыдущих постов я рассказывал какие сложности возникли во время наших первых запусков двух магазинов в Калининграде. При этом и там, и в несколько последующих магазинов, мы установили кассы, которые принимают оплату только по банковской карте. Это решение имело плюсы как для нас (такое решение быстрее запустить), так и для магазинов (они смогли разделить потоки покупателей в соответствии с типом оплаты). Но мы понимали, что рано или поздно нам придется взяться за подключение модуля наличных к кассе самообслуживания. Всем, кому интересно узнать как это было, добро пожаловать под кат.


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

Вторая версия Evernote SDK для Android: новые возможности Evernote в ваших приложениях

Время на прочтение2 мин
Количество просмотров6.1K
Десятки тысяч разработчиков уже используют платформу Evernote, чтобы сделать свои приложения функциональнее и привлекательнее для 100 миллионов пользователей нашего сервиса. Очевидно, что значительная часть этого сообщества имеет дело с Android.

С недавним обновлением приложения Evernote для Android нам представилась возможность также подготовить Evernote SDK 2.0 для Android, мы рады пригласить разработчиков опробовать новые возможности в своих проектах.

Evernote for Android SDK на Гитхабе >>

image

Это обновление включает ряд важных изменений:
Читать дальше →

Авторизация для API с помощью токенов

Время на прочтение3 мин
Количество просмотров44K
Как и обещал ранее, продолжаю свою серию статей про создание API на Symfony2. Сегодня я бы хотел рассказать о авторизации. Из популярных бандлов есть JWTAuthenticationBundle и FOSOAuthServerBundle, у каждого есть свои плюсы и минусы, но мне хотелось бы рассказать как сделать авторизацию самому, чтобы понимать как это работает.
Читать дальше →

Ближайшие события

Dadata.ru проверяет документы и знает все банки

Время на прочтение1 мин
Количество просмотров16K
DaData.ru — сервис автоматической проверки и исправления контактных данных (ФИО, адресов, телефонов, email, паспортов). Плюс javascript-виджет и API подсказок при вводе адреса, ФИО, организации и банковских реквизитов.

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

Свежие подробности

Уведомления могут помочь вам узнать вашу аудиторию лучше + новости + СоХабр

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


Предисловие


Наверняка вы все ещё используете СМС-сообщения или E-mail для уведомления ваших пользователей. Уведомления просто улетают, и вы не знаете, что происходит с ними дальше. В PushAll мною была реализована система сбора данных об уведомлениях. Вы сможете сделать рассылку вашим пользователям в канале, после чего следить за тем, что происходит с уведомлениями:
  • Сколько человек получило уведомление
  • Сколько человек открыло уведомление (перешло по ссылке)
  • Сколько человек просто удалило уведомление из списка

Все работает благодаря обратной связи о выполняемых действиях на устройстве.
Читать дальше →

API RingCloud, всё только начинается

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

Доброго времени суток. Ранее RingCloud анонсировал запуск REST API, которое позволит нашему продукту интегрироваться с различными CRM-системами. И хотя его разработка еще продолжается, мы рады представить Вашему вниманию первую версию. Под катом мы рассмотрим общую архитектуру данного сервиса, его принцип работы, а так же разберём примеры использования.
Читать дальше →

Событийная модель построения проектов и решений Visual Studio для разработчиков

Время на прочтение17 мин
Количество просмотров15K
Эта небольшая статья поможет:

  • Ознакомиться с событийной моделью построения проектов и решений MS Visual Studio;
  • Понять, как получить поддержку Command-Line режима devenv.exe для VSPackage (где он изначально не предусмотрен);
  • Понять, как эмулировать схожую модель событий от MSBuild Tools и транслировать на главный плагин;
  • Узнать, как работать по приоритетной подписке;
  • Узнать варианты получения контекста построения при обработке событий Visual Studio / MSBuild Tools;
  • Узнать об оценке MSBuild Property & MSBuild Property Functions;
  • Получить общие сведения межмодульного взаимодействия на слое абстракции для разнородных компонентов системы.

Синопсис


Мне довольно часто приходиться заниматься автоматизацией тех или иных процессов, поэтому не мудрено, что часть решений рано или поздно коснулись и Visual Studio.

На самом деле, эта статья, или даже заметка — результат рабочего и уже давно написанного плагина, который еще года 2 назад являлся лишь побочным продуктом при работе над одним проектом на C++. Однако мой дебют на Хабрахабре будет, пожалуй, с этого.
Читать дальше →

Особенности разработки API на Symfony2

Время на прочтение5 мин
Количество просмотров17K
Так вышло, что всю свою недолгую карьеру я занимаюсь разработкой API для мобильных приложений и сайтов на Symfony2. Каждый раз открываю для себя все новые знания, которые кому-то покажутся очевидными, а кому-то помогут сэкономить не мало времени. Об этих знаниях и пойдет речь.
Читать дальше →

Service-Oriented Architecture and Legacy Systems

Время на прочтение8 мин
Количество просмотров18K
Корпоративные системы быстро эволюционируют из монолитных хранилищ в распределенные приложения, основанные на сервисах с гибкими схемами использования.  Чтобы идти в ногу со временем, IT организации должны приспосабливать свои старые приложения к изменяющимся бизнес-требованиям почти что в режиме реального времени, и фактически без возможности второго шанса. Сервис-Ориентированная Архитектура (SOA) эволюционировала для поддержки гибкости операций и федеративности бизнес-процессов, подсистем. Авторы статьи Николас Серано (Nicolas Serrano), Хуасин Эрнандес (Josune Hernantes) и Горка Галлардо (Gorka Gallardo) дают обзор текущего состояния технологии SOA и как развиваться в существующем окружении.
                                                                                        Предисловие от Кристофа Эберта (Christof Ebert)

Современный бизнес должен быть способен гибко и быстро приспосабливаться к требованиям рынка, но даже незначительные изменения в процессах могут повлечь переработку множества информационных систем, которые изначально были разработаны как монолитные хранилища. Для сохранения конкурентоспособности, затраты на поддержку должны постоянно снижаться, а системы ­постоянно эволюционировать. SOA делает возможным переход от монолитных систем к сервис-ориентированным. Это содействует гибкости, слабой связанности, выделению абстракций из реальной инфраструктуры. Возможности по обнаружению сервисов и повторному использованию гораздо выше с SOA. Дополнительные возможности и принципы можно узнать из Манифеста SOA. [1][2]

Новизна SOA заключается в том, как моделируется инфраструктура архитектурного решения, основанная на сервисах, вместо фокусирования на всём приложении. Сервисы являются маленькими, обособленными элементами ПО, которые решают одну задачу и могут быть повторно использованы во многих приложениях. SOA основывается на принципе слабой связанности, что означает что каждый сервис – это изолированная сущность с ограниченными зависимостями от других общих ресурсов, таких как базы данных, легаси приложения или разные API. Такое архитектурное решение позволяет создать уровень абстракции между потребителями и создателями. Это влечёт за собой свободу в реализации и обновлениях без ущерба для потребителей сервиса. Да, SOA имеет немало плюсов для бизнеса, но это не лучшее решение для всех случаев. Среди плюсов подхода можно обозначить следующие пункты:
Читать дальше →

PushAll — платформа для рассылки мгновенных уведомлений

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


Основная идея


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

Сама система позволяет легко подписываться и отписываться от тех или иных каналов. Что исключает возможность внезапного спама, как это происходит в случае с такими методами уведомлений как SMS и E-mail.
Читать дальше →

Вклад авторов