Обновить
256K+

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

О создании API

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

ConceptNet 5 — настоящий ИИ не за горами

Время на прочтение3 мин
Охват и читатели33K
ConceptNet

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

Новый API HeadHunter и прекращение поддержки API 1.0

Время на прочтение2 мин
Охват и читатели11K
Некоторые знают, что у нас есть API, программный интерфейс, позволяющий «общаться» с платформой hh.ru мобильным и десктопным приложениям, другим сайтам и просто виджетам, включая тот, что расположен справа от этой статьи на странице нашего блога.

Мы рады объявить, что на смену текущей реализации приходит новая, полностью переработанная версия API.
Читать дальше →

Создание пользовательских примитивов в САПР на MultiCAD .NET API

Время на прочтение6 мин
Охват и читатели13K
Одним из главных недостатков традиционного .NET API в .dwg совместимых САПР является невозможность создания пользовательских примитивов (Custom Entities) на .NET. Пользовательские примитивы создаются на С++, для их использования в .NET необходимо создать управляемые обёртки на C++/CLI.

Технология MultiCAD .NET позволяет создавать пользовательские примитивы, не выходя за рамки управляемого кода. Помимо отсутствия промежуточных объектов на C++, в MultiCAD .NET максимально используются стандартные для .NET механизмы, как следствие нет необходимости во многих привычных для САПР программистов операциях: не нужно вручную описывать сериализацию, свойства в инспектор можно вывести без создания COM объекта и т.п.

В качестве демонстрации MultiCAD .NET мы рассмотрим пример приложения CustomObjects, содержащийся в комплекте поставки SDK. Этот пример создает пользовательский примитив, который представляет собой прямоугольную рамку с находящимся внутри текстом:

Sample TextInBox MultiCAD .NET Entity

Чертежи, содержащие наш тестовый примитив, могут быть открыты в любой .dwg совместимой САПР. Для изменения примитива необходимо загрузить сборку, содержащую код примитива, причём во все поддерживаемые САПР платформы загружается одна и та же сборка без перекомпиляции. Технология является родной для nanoCAD, для загрузки модуля в AutoCAD требуется модуль расширения (Object Enabler). Как это работает смотрите под катом.
Читать дальше →

Открыта программа для разработчиков от Thalmic Labs (MYO)

Время на прочтение1 мин
Охват и читатели11K
2-го июля Thalmic Labs разослала уведомление об открытии регистрации в программу для разработчиков. Компания Thalmic Labs известна прежде всего своим браслетом MYO (новость на Хабре), который использует метод электромиографии для регистрации электрической активности мышц руки и передает по Bluetooth в мельчайших подробностях информацию о том, какое движение совершил пользователь. Таким образом, создается носимый интерфейс управления любым устройством, которое поддерживает интеграцию по Bluetooth.
Немного подробностей

В этот особенный день — обновленный API Яндекс.Подписок

Время на прочтение2 мин
Охват и читатели14K
imageКак многие знают, у нас есть прекрасный веб-сервис для чтения RSS/Atom-лент – Яндекс.Подписки. Однако у него был один небольшой недостаток – больше трех лет внешний API сервиса находился в состоянии бета-версии и практически не развивался, при этом внятная документация к нему отсутствовала. Из-за этого написать на его основе собственное приложение было проблематично. Но ситуация сдвинулась с мертвой точки: обновленный API Подписок официально можно считать открытым, а документация к нему стала доступна на странице Яндекс.API.
Читать дальше →

Как использовать Fullscreen API

Время на прочтение3 мин
Охват и читатели97K

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

Работаем с реляционными данными используя Backend-as-a-Service

Время на прочтение6 мин
Охват и читатели9.6K
Привет хабра-человеки,

Сегодня мы запустим JavaScript приложение, которое выписывает счет-фактуру прямо с сервера используя взаимодействие с АПИ BaaS платформы. Для разработки приложения потребовалось написать 0 строчек кода на стороне сервера, не смотря на то что приложение имеет удаленное (и полноценное) хранилище данных, возможность регистрации пользователя и поддержку логина. Исходный код доступен на гитхабе.



Под катом находятся подробности демонстрирующие простоту BaaS подхода в работе со сложными объектами используя Backendless.
Читаем дальше

Сервис Feedly запустил свой back-end для обработки подписок и отказался от плагина

Время на прочтение1 мин
Охват и читатели30K


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

Один из таких сервисов — Feedly, сегодня они, как и обещали, запустили свой back-end который полностью независим от Google Reader.
Читать дальше →

Разработка web API

Время на прочтение9 мин
Охват и читатели294K

Интро


Это краткий перевод основных тезисов из брошюры «Web API Design. Crafting Interfaces that Developers Love» Брайана Маллоя из компании Apigee Labs. Apigee занимается разработкой различных API-сервисов и консталтингом. Кстати, среди клиентов этой компании засветились такие гиганты, как Best Buy, Cisco, Dell и Ebay.

В тексте попадаются комментарии переводчика, они выделены курсивом.

Собираем API-интерфейсы, которые понравятся другим разработчикам


Понятные URL для вызовов API

Первый принцип хорошего REST-дизайна — делать вещи понятно и просто. Начинать стоит с основных URL адресов для ваших вызовов API.

Ваши адреса вызовов должны быть понятными даже без документации. Для этого возьмите себе за правило описывать любую сущность с помощью коротких и ясных базовых URL адресов, содержащих максимум 2 параметра. Вот отличный пример:
/dogs для работы со списком собак
/dogs/12345 для работы с отдельной собакой
Дальше

Feedly открыл API для сторонних RSS-приложений

Время на прочтение2 мин
Охват и читатели19K


Компания Feedly продолжает готовиться к массовому наплыву пользователей, который случится через 26 дней, когда прекратит работу Google Reader. Как и обещалось, разработан полноценный бэкенд для синхронизации фидов, максимально точная копия Google Reader API. Работа на проектом Normandy проделана в сотрудничестве с разработчиками приложений Reeder, Press, Nextgen Reader, Newsify и gReader. Теперь доступ к Feedly API предоставляется для всех этих приложений бесплатно!
Читать дальше →

OData контроллеры в .NET MVC

Время на прочтение10 мин
Охват и читатели41K
В недавно вышедшем ASP.NET and Web Tools 2012.2 Update заявлена частичная поддержка протокола oData в ASP.NET Web API. Решил сам попробовать, да и с коллегами поделиться. В статье опишу как использовать запросы и CRUD операции по протоколу oData с несколькими связанными объектами модели данных. В качестве front-end клиента использован Kendo UI framework.
Читать дальше →

Failsafe resource allocator over DHT

Время на прочтение6 мин
Охват и читатели2.5K
У нас есть некоторый диапазон чисел от 0 до N, надо написать две функции int alloc() и free(int). Первая выбирает один из свободных идентификаторов из диапазона [0, N), а вторая соответственно — «возвращает» его для повторного использования(полагаем, что число N достаточно мало, что бы идентификаторы могли закончится если их не возвращать, но больше чем число выделенных в каждый конкретный момент времени идентификаторов). При этом на «нижнем уровне» у нас есть только DHT. Нету блокировок, и, кроме того, от алгоритмов требуется отказоустойчивость — если какой-то из узлов кластера «сложится» во время выполнения алгоритма поведение системы должно быть предсказуемо. Если задача интересна, а также интересно узнать почему отказоустойчивый сервис с такой сигнатурой невозможно корректно использовать, и как надо исправить сигнатуру что бы это стало возможно — добро пожаловать под кат.

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

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

Админка за 10 минут

Время на прочтение4 мин
Охват и читатели148K
Здравствуйте, уважаемое Хабрасообщество!

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

Долгое время я использовал Twitter Bootstrap, но он не мог удовлетворить все потребности. Приходилось верстать дополнительные кнопочки и писать скрипты. Но вот однажды, я познакомился с замечательным UI-фреймворком KendoUI от Telerik. Что из этого получилось под катом.

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

Как я перестал волноваться и стал отдавать метаданные restful API

Время на прочтение5 мин
Охват и читатели19K
Если вы делаете публичный API, то скорее всего сталкивались с проблемой его документации. Большие компании делают специальные порталы для разработчиков, где можно почитать и обсудить документацию, или скачать библиотеку-клиент для вашего любимого языка программирования.

Поддержка такого ресурса (особенно в условиях, когда API активно развивается) — достаточно трудозатратное дело. При изменениях, приходится синхронизировать документацию с фактической реализацией и это напрягает. Синхронизация состоит из:
  • Проверки, что вся существующая функциональность описана в документации
  • Проверки, что всё описанное работает как заявлено в документации
Читать дальше →

Немного о Steam Web Api

Время на прочтение3 мин
Охват и читатели202K


Сервис цифровой дистрибуции Steam от компании Valve становится всё более популярным среди игроков. По состоянию на январь 2013, через Steam распространяется более трёх тысяч товаров, на которые действуют ежедневные, срединедельные и скидки на выходные дни, а количество зарегистрированных аккаунтов превысило 60 миллионов.

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

Создание телефона в браузере с использованием WebRTC и сервиса Plivo

Время на прочтение6 мин
Охват и читатели5.4K
Недавно был разработан стандарт WebRTC, позволяющий организовать потоковую передачу данных между браузерами. Chrome 17, Opera 12, Firefox 18 (а также версии, выше указанных) в той или иной мере уже поддерживают этот стандарт. Так же существует расширение webrtc4all, которое позволяет остальным браузерам работать с WebRTC. Я не буду здесь описывать преимущества, недостатки и перспективы технологии, перейду сразу к практическому использованию.
Читать дальше →

Знакомство с Rest4Enterprise или REST-сервисы для ленивых

Время на прочтение3 мин
Охват и читатели6.7K
Так сложилось, что по долгу службы столкнулся со следующей задачей: нужно было быстро и как можно проще сгенерировать много REST-сервисов. Мне казалось, что должно существовать немало решений, этой не такой уж и сложной задачи. И каково было мое удивление, когда пошарив по бескрайним просторам Интернета, нашел всего лишь пару подходящих продуктов. Среди наиболее подходящих мне отобрал Rest4Enterprise, restSQL и IBM Web API Services (может кто еще какие знает? you are welcome!). restSQL показался совсем хиленьким, продукт от IBM – наоборот, мощнейшим зверем. Поэтому придерживаясь правила «золотой середины», решил опробовать Rest4Enterprise. Продукт еще совсем новый (январь 2013), информации по нем, кроме официального источника нет вообще, поэтому решил поделиться с хабрачитателями своим небольшим опытом работы с ним.
Читать дальше →

Виджет с вакансиями в IT на основе API

Время на прочтение2 мин
Охват и читатели10K
Друзья, многие из вас могли заметить, что в нашем блоге на Хабре справа от постов появился виджет вакансий. Мы сделали его, чтобы вам стало проще следить за предложениями работы в сфере информационных технологий. Виджет использует наш API, открытый для всех.

Мы постарались задать наиболее интересные критерии отбора вакансий. Например, он выдает только предложения работодателей с привлекательной зарплатой — не менее 90-100 тыс. рублей.



Узнать подробнее о том, как работает виджет и API

Elophant: хоть какой-то доступ к API League of Legends

Время на прочтение4 мин
Охват и читатели15K


Уверен, что многие из тех, кто хоть иногда играет в игры жанра MOBA (Multiplayer Online Battle Arena), или даже просто в MMORPG, наверняка слышали про такой проект как League of Legends.
LoL — второй (после Demigod) клон всем известной «Доты», и, на данный момент, имеет очень много поклонников по всему земному шару (30+ млн. зарегистрированных пользователей). В 2010-2011 League of Legends даже была включена в список дисциплин на крупнейшем чемпионате для геймеров — WCG (World Cyber Games).

Впрочем, хватит хвалить и без того хвалёную игру, перейдем к делу. Как-то раз, мне приспичило узнать подробную информацию о своем игровом аккаунте в LoL, а именно: посмотреть результаты своих последних сыгранных матчей, общую игровую статистику для каждого персонажа и соответствующие значения KDA Ratio (Kills / Deaths / Assissts). Но узнать эту информацию мне нужно было не имея под рукой клиента с игрой. Я перелопатил весь официальный сайт и форум, в поисках хоть какой-то информации об API — все безуспешно. Тогда, я еще не знал про ресурсы LoLKing, SoloMid и т.д.

Уже намного позже, в процессе «гугления», был найден сайт Elophant.com, на котором располагалась (собственно, и сейчас располагается) небольшая API — документация. В ней описаны основные методы, позволяющие узнать имя саммонера, информацию о его рунах / страницах талантов, информацию о последних десяти сыгранных матчах, общую игровую статистику, информацию о всех существующих игровых предметах / персонажах и т.п.
Читать дальше →