Обновить
28.49

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

О создании API

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

Построение анимационного линейного графика скользящего среднего в R. Получение данных через NBA API

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

Продолжим анализировать баскетбольные данные с помощью R.


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


А строить мы будем графики скользящего среднего для трёх видов рейтинга команд НБА: атакующего, оборонительного и net-рейтинга (т.е. разницы между первыми двумя). В двух словах о них. Атакующий и оборонительный рейтинги — это количество очков, набранных/пропущенных командой за 100 владений. NET рейтинг — это их разница также на сто владений. Кому интересно узнать о них более подробно, могут прочитать глоссарий на сайте basketball-reference. Там есть формула расчёта, которую я тоже реализовал с помощью R, но так пока и не опубликовал статью об этом.

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

Чистая архитектура решения, тесты без моков и как я к этому пришел

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

Здравствуйте, дорогие читатели! В этой статье я хочу рассказать об архитектуре своего проекта, который я рефакторил 4 раза на его старте, так как не был удовлетворен результатом. Расскажу о минусах популярных подходов и покажу свой.

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

Конкурс разработчиков ботов для ТамТам

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


Bot API появился в мессенджере ТамТам недавно, 3 месяца назад. Мы провели закрытое бета-тестирование, в рамках которого 86 разработчиков создали 330 ботов. Вместе с бета-тестировщиками мы внесли сотни правок, выпустили два обновления Bot API и одно для документации.

Мы решили поддержать разработчиков и вместе с Mail.ru Cloud Solutions проводим конкурс ботов для ТамТам. Призовой фонд — купоны суммарно на 200 000 рублей на использование облачной инфраструктуры Mail.ru Cloud Solutions и любых сервисов на базе этой платформы. Каждый участник конкурса, помимо победителей, также получит промокод на 5 000 рублей для использования сервисов Mail.ru Cloud Solutions. Регистрация участников открыта до 21 июля 2019 включительно.
Читать дальше →

Терпение и труд весь текст извлекут

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

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


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



Источник изображения: Википедия

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

TestMace — мощная IDE для работы с API

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

Всем привет! Сегодня мы хотим представить на суд IT-общественности наш продукт — IDE для работы с API TestMace. Возможно некоторые из вас уже знают о нас из предыдущих статей. Однако всеобъемлющего обзора инструмента не было, поэтому устраняем этот досадный недостаток.


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

Запускаем OpenVPN в Докере за 2 секунды

Время на прочтение3 мин
Охват и читатели94K
Привет, хабровчане! Сталкивались ли вы когда-либо с ситуацией, когда очень хотелось бы виртуально перенестись в другой город, страну или на другой континент? У меня такая необходимость возникает достаточно часто, поэтому возможность иметь свой VPN сервер, который можно запустить где угодно, за пару секунд, стоял достаточно остро.

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


Достать worklog из Jira

Время на прочтение1 мин
Охват и читатели8.6K
Всем привет, недвано я писал про api клиент для Jira. Разбираться с ним я начал, когда возникла необходимость автоматизировать формирование отчета по времени(отчеты нужны заказчику). В итоге получися небольшой инструмент который позволяет быстро и легко вытаскивать необходимые данные.

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

TJBOT как иллюстрация IBM Watson services

Время на прочтение6 мин
Охват и читатели3.1K
Привет, Хабр! Весной 2019 года прошел очередной Think Developers Workshop, на котором все желающие могли собрать картонного робота TJBota под управлением IBM Watson Services. Под катом находится подробная инструкция, из чего и как собрать такого робота, полезные ссылки и простейшие рецепты, демонстрирующие некоторые когнитивные возможности сервисов Watson, а также небольшой анонс двух июльских семинаров о Watson Services в московском офисе IBM.

image

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

Что такое стек MERN, и как с ним работать?

Время на прочтение8 мин
Охват и читатели48K
Привет, Хабр!

Давным-давно мы выпускали пилотный проект о стеке MEAN (Mongo, Express, Angular, Node), который нас в целом не разочаровал, однако, допечаток и обновлений мы в свое время решили не делать — в отличие от издательства Manning, которое эту книгу обновило. Тем не менее, мы продолжаем поиски в данном направлении и сегодня хотели бы поговорить с вами о родственном стеке MERN, где на клиенте располагается не Angular, а React. Слово предоставляется Тиму Смиту.


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

Работа с API КОМПАС-3D → Урок 16 → Управляющие символы

Время на прочтение11 мин
Охват и читатели15K
Продолжаем цикл статей по работе с API САПР КОМПАС-3D. Управляющие символы уже несколько раз встречались нам на предыдущих уроках цикла. Тогда каждый раз говорилось, что выводимые строки не должны их содержать, так как КОМПАС обрабатывает их особым образом. Теперь пришло время познакомиться с ними поближе.

Освоив работу с ними, вы поймете, что создание сложных составных строк – тривиальная задача, в большинстве случаев не требующая написания большого объёма кода.

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


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

Работа с JSON RPC в Symfony 4

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


Всем привет, сегодня поговорим о том, как подружить Symfony 4, JSON RPC и OpenAPI 3.


Данная статья рассчитана не на новичков, вы уже должны понимать как работать с Symfony, Depedency Injection и другими «страшными» вещами.


Сегодня рассмотрим одну конкретную реализацию JSON RPC.

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

Параноидальные видео с митапа Яндекс.Денег

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

Недавно я читал статью о том, как научиться программировать под Android с нуля за полчаса. Она начиналась со слов «Вы можете даже не догадываться, но миллионы людей во всем мире зарабатывают деньги на разработке приложений под Android». Дальше в ней, конечно, не было ничего хорошего — установите Android Studio, вот вам XML, вот активити, здесь впечатайте текст на Java. Совершенно стандартная я-научу-вас-программировать-за-полчаса статья с рекламой платных курсов.


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


29 мая у нас прошёл митап Android Paranoid, и здесь три доклада с него. Коллеги подробно рассказали про ML Kit от Google, о разработке клиента для распределенной системы и про одно публичное API, которое Google не афиширует. Добро пожаловать под кат.

Создание анализатора Roslyn на примере проверки инкапсуляции

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

Что такое Roslyn?


Roslyn – это набор компиляторов с открытым исходным кодом и API для анализа кода для языков C# и VisualBasic .NET от Microsoft.


Анализатор Roslyn – мощный инструмент для анализа кода, нахождения ошибок и их исправления.


Синтаксическое дерево и семантическая модель


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


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


Каждый код обладает синтаксическим деревом. Для следующего объекта класса


class A
{
    void Method()
    {
    }
}

синтаксическое дерево будет выглядеть так:


Дерево

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

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

Как работать со множественными запросами. Композиция, Reducer, ФП

Время на прочтение6 мин
Охват и читатели3.3K
Привет, Хабр. Меня зовут Максим, я iOS-разработчик в компании FINCH. Сегодня я покажу вам некоторые практики использования функционального программирования, которые мы наработали у себя в отделе.
Читать дальше →

Каркас API на Golang

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

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


image


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

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

Обратная совместимость

Время на прочтение2 мин
Охват и читатели6.1K
В новых версиях операционных систем часто нарушается обратная совместимость, а программистам нужно буквально переписывать свои программы каждые 3 года, иначе они не будут работать. Почему нельзя добавлять новые возможности без нарушения обратной совместимости?

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

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

Мы написали самый полезный код в своей жизни, но его выкинули на помойку. Вместе с нами

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


Я повесил у себя в подвале боксерскую грушу, приклеил на нее стоковое фото типичного менеджера и запихал внутрь динамик, чтобы он проигрывал фразы, которые меня злят. Например, груша говорит: «Бизнесу не нужен твой идеальный код. Ему нужно решить проблему так, чтобы прибыль покрыла затраты. Если для этого нужен говнокод, значит будет говнокод». И начинаю дубасить.

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

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

Работа с API КОМПАС-3D → Урок 15 → Составные строки на основе параграфа

Время на прочтение13 мин
Охват и читатели3.2K
В уроке 12 мы познакомились с составными строками и рассмотрели недокументированный способ их создания. В уроке 13 были представлены параграфы. Сегодня мы рассмотрим, как их использовать для создания составных строк. Для начала возьмем строки, включающие в свой состав отклонения и дроби, и познакомимся с такими компонентами составных строк, как надстрока, подстрока и спецсимволы.


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

Документация по API Xamarin теперь в открытом доступе

Время на прочтение2 мин
Охват и читатели4.6K
Мы рады объявить о выпуске всей документации по API Xamarin в формате Open-Source! Документация по API помогает улучшить взаимодействие с IntelliSense и является одним из лучших способов помочь разработчикам достичь своих целей.

Документация по API Xamarin


Кроме того, мы также перенесли хостинг с сайта Xamarin на docs.microsoft.com:

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

CardInfo — API для определения логотипа, цветов банка и прочего по номеру карты

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

UPD. CardInfo больше не работает. Используйте BinKing.


Гайд по использованию: habr.com/ru/post/527796
Сайт сервиса: binkng.io




Тут и демо, и документация: cardinfo.online — это API. Вы ему 6 первых цифр банковской карты, оно вам ссылку на логотип банка, его фирменные цвета, бренд (Visa, MasterCard, и т.д.) и прочее в формате JSON. CardInfo нужен тем, кто создаёт форму для приёма банковских карт у себя на сайте, чтобы улучшить UX (удобство, впечатления, чувство безопасности) пользователей. Принимать платежи прямо у себя на сайте позволяет cloudpayments.ru в России и странах СНГ, и stripe.com во всём остально мире.

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

Однако, крупные компании уже давно сделали свои формы такими, а мелкие всё ещё нет. Почему? Создание такого решения для своей формы займёт около 7 дней работы программиста и ещё 7 работы дизайнера (логотипы выкачивать, обрабатывать, перерисовывать). Крупные компании могут себе позволить потратиться на создание такой формы. Мелкие компании считают ценность такой формы не достаточной, чтобы платить за неё столько.

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

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