Как стать автором
Обновить
33.68
Рейтинг

API *

Интерфейс программирования приложений

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

Technical Governance для IDP на 7000 разработчиков

Блог компании TINKOFF API *Управление разработкой *Управление проектами *Управление продуктом *

Всем привет, меня зовут Дмитрий Гаевский, я руковожу созданием внутренней платформы для разработчиков в Тинькофф. Последние два года стали знаковыми для российской ИТ-отрасли с точки зрения «распаковки» тем о таких платформах. Крупные технологические компании начали делиться опытом, и сегодня я расскажу о нашем кейсе. 

Читать далее
Всего голосов 9: ↑9 и ↓0 +9
Просмотры 291
Комментарии 0

Новости

На что бизнесу обращать внимание при проверке контрагентов: 13 показателей

Блог компании Datanomica Open source *API *Развитие стартапа Облачные сервисы *

Почти четверть компаний считались убыточными по итогам 2021 года, а более 8 тыс. юридических лиц из 3,2 млн в России на момент написания статьи находятся в реестре недобросовестных поставщиков. Недобросовестность партнеров может обернуться для компании не только финансовыми и налоговыми рисками, но и репутационными. Чтобы избежать или уменьшить риски, бизнес проверяет информацию о контрагентах в открытых источниках, собирает отзывы у коллег, которые уже работали с потенциальным партнером. Если проверять приходится много и часто, компании пользуются сервисами проверки контрагентов (СПК).

Читать далее
Всего голосов 3: ↑1 и ↓2 -1
Просмотры 367
Комментарии 4

Конструктор триггеров в Telegram. Или как мы сделали простейшего, но полезного бота

Java *API *
Из песочницы

Привет! Меня зовут Боровков Евгений и я предприниматель. В этой статье я расскажу про свой pet-проект. Или как я решил проблему вечного поиска информации прямо в уютном Телеграммчике.

Читать далее
Всего голосов 9: ↑9 и ↓0 +9
Просмотры 2.2K
Комментарии 12

Архитектура универсального проекта Django

Python *Django *Проектирование и рефакторинг *API *
Из песочницы

В ходе последних лет моей разработки проектов Django я понял, что почти все они имеют одно строение:
API, Apps, Config, Library, Utils, Workers...

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

Читать далее
Всего голосов 13: ↑11 и ↓2 +9
Просмотры 2.9K
Комментарии 14

Управление облаком с помощью API и CLI. Основы

Блог компании Serverspace IT-инфраструктура *API *

В этой статье объясняем, зачем нужны инструменты автоматизации API и CLI и как с их помощью управлять инфраструктурой на примере Serverspace.

Читать далее
Всего голосов 5: ↑3 и ↓2 +1
Просмотры 846
Комментарии 0

Как оставаться программистом, если у тебя память как у дрозофилы

Python *Программирование *API *Подготовка технической документации *
Перевод

Мой мадригал тем инструментам разработки, которые изменили мою жизнь

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

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

Сегодня никто бы больше и не подумал покупать документацию по разработке – и Microsoft, и Apple свободно выкладывают свою документацию в Интернете для всех желающих. А что говорить о проектах с открытым исходным кодом!

Во времена npmPyPI и GitHub сложно объяснить, насколько неоднозначным решением (которое требовалось всесторонне обдумывать) раньше считалось потребовать хоть какие-нибудь возможности, которые выходили бы за рамки функционала операционной системы. Часто вместе с продуктом приходилось сдавать и все его зависимости.

Читать далее
Всего голосов 45: ↑42 и ↓3 +39
Просмотры 42K
Комментарии 35

Безопасный Spring REST с применением Spring Security и OAuth2

Блог компании Southbridge Java *API *Kotlin *
Перевод

В этой статье мы продемонстрируем пример настройки Spring Security + OAuth2  для защиты конечных точек REST API на фреймворке Spring Boot. Клиенты и учетные данные пользователей будут храниться в реляционной базе данных (для баз данных H2 и PostgreSQL подготовлены примеры конфигураций).

Читать далее
Всего голосов 11: ↑11 и ↓0 +11
Просмотры 2.8K
Комментарии 4

Основное про API-шлюз в Kubernetes

Блог компании Nixys IT-инфраструктура *API *DevOps *Kubernetes *
Перевод
Tutorial

Существует множество альтернатив для доступа к модулю извне кластера. Шлюз API - это определенно новинка этой области, и потому выбран темой этой статьи.

Ранее мы описывали несколько способов доступа к модулям Kubernetes. Так, например, доступ к модулю pods можно получить через его IP-адрес, но важно учитывать, что поды по своей сути являются временными. Штатный способ - настроить Service: в этом случае IP-адрес стабилен, а задача Kubernetes - обеспечивать мапироание между Service и соответствующими ей подами. В настоящий момент доступны различные виды сервисов: только внутренние, NodePort, позволяющий открыть доступа извне кластера, и LoadBalancer, который полагается на сторонний компонент - обычно это на облачный провайдер. Не будем забывать и об Ingress, обеспечивающем маршрутизацию.

Ну а API-шлюз, как новинку в этой области, мы оставили на десерт, решив посвятить ему целый пост.

Читать далее
Всего голосов 10: ↑9 и ↓1 +8
Просмотры 2.7K
Комментарии 0

Интеграция с маркетплейсами или как я научился не волноваться и полюбил API-интеграцию

API *Разработка под e-commerce *Управление e-commerce *Управление продажами *
Tutorial

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

💡 Сначала материал не разрешили публиковать — сочли его рекламным. Но когда узнали все детали — что через наш API можно формировать до 500 запросов в сутки бесплатно (а этого по опыту хватает в среднем на обработку 50 заказов), — «дали зеленый свет» и попросили указать все это в начале материала. Что я и делаю 🙂 Заявку на подключение доступа можно оформить на сайте компании через форму обратной связи.

Читать далее
Рейтинг 0
Просмотры 999
Комментарии 6

Что станет с производительностью, если переборщить с ленивой загрузкой

Блог компании Издательский дом «Питер» Высокая производительность *JavaScript *Программирование *API *
Перевод
Ленивая загрузка – это выжидательный подход к работе с ресурсами, когда загрузка ресурса откладывается до момента, пока он фактически не понадобится. В таком случае при работе с критически важными ресурсами экономятся данные, а также снижается конкуренция за эти данные при работе по сети. Такой прием стал веб-стандартом в 2019 году, а сегодня loading=«lazy» для изображений поддерживается в большинстве крупных браузеров. На словах все отлично, но случается ли перебор с ленивой загрузкой?

В этом посте обобщены и проанализированы данные о прозрачности веба, взятые в открытых источниках, а также проделано импровизированное A/B тестирование. Эта работа помогает понять производительность и степень внедрения нативной ленивой загрузки при работе с картинками. Оказывается, ленивая загрузка может быть поразительно эффективна при избавлении от ненужных картиночных байт, но, если с ней переусердствовать – это плохо скажется на производительности. А именно: наше исследование показывает, что при более жадной загрузке изображений в пределах первичной области видимости – в сочетании с более свободной и ленивой загрузкой остальных – достижима золотая середина. Экономится количество загруженных байт и улучшаются показатели Core Web Vitals.
Читать дальше →
Всего голосов 9: ↑9 и ↓0 +9
Просмотры 5.5K
Комментарии 1

Сервис, который должен был объединить торговые площадки США Ebay, Amazon и Zappos

Разработка веб-сайтов *Интерфейсы *API *Joomla *Разработка под e-commerce *

В далёком 2012 году довелось мне участвовать в одном интересном проекте - BuyinUsa. Идея проекта была в следующем: объединить в одном месте товарные предложения с наиболее популярных торговых площадок США, представить их российским потребителям, взять на себя доставку и конвертацию при оплате.

Для начала решили взять самые крупные: ebay, amazon, zappos. К тому же в этот год zappos вообще закрыл возможность для российских пользователей даже заходить на их сайт. А тут мы такие…

Как, наверно, кто-то еще помнить, тогда вездесущего алиэкспресс еще не было, да и умением покупать за границей отличались лишь “продвинутые интернетчики”, а наша задача была предложить услугу как можно более массовому потребителю.
Я выступал в роли и соучредителя и в качестве, как бы сейчас сказали, тимлида, так как вся разработка проекта была на мне. Я был еще достаточно юным и пылал энтузиазмом:)

Вся разработка осуществлялась удаленно, программисты, вебмастер, дизайнер и я работали исключительно через сеть. Использовались в основном простые средства вроде teamview и skype. В качестве основы для сайта взяли всем известную Joomla, а для интернет-магазина Virtualmart. Конечно, по современным воззрениям это ужас-ужас, но тогда мне так не казалось.

Что надо было решить:

1. Карточка товаров, которые были очень разноплановые. А от характеристик зависела возможность отфильтровать товары в поиске.

Решение: взяли более ста карточек с разными характеристиками и просили их отсортировать по важности знакомых и друзей. Сравнивали результаты и выделяли главные. А потом скопировали карточку с Запоса и отредактировали её под свои нужды:)

Читать далее
Всего голосов 7: ↑7 и ↓0 +7
Просмотры 1.7K
Комментарии 7

Гайд по первичной настройке асинхронного Python-приложения с GraphQL-библиотекой Strawberry

Python *API *
Tutorial

Пишете на Python и давно хотели запрыгнуть на поезд хайпа по GraphQL, но никак не могли выбрать между Graphene и Ariadne? Предлагаем вам третий вариант – Strawberry.

Strawberry – code-first библиотека с большим количеством батареек. 2.6 тыс. звёзд в репозитории на GitHub. Для описания типов можно использовать dataclasses и pydantic-модели. Из коробки поддерживается асинхронность.

В этом гайде мы напишем приложение, реализующее создание и получение пользователей (users) и их книг (books).

Читать далее
Всего голосов 8: ↑8 и ↓0 +8
Просмотры 1.7K
Комментарии 0

25 правил разработки программных интерфейсов [издание третье, дополненное и расширенное]

API *

Это — очередная (уже третья) ревизия главы 11 мой книги о разработке API. Если вы найдёте этот текст полезным, я буду очень благодарен за рейтинг на Амазоне.

Читать далее
Всего голосов 14: ↑14 и ↓0 +14
Просмотры 5.9K
Комментарии 41

GraphQL: доступ запрещен

Блог компании HeadHunter Java *API *

Жил-был один маленький разработчик, работал себе над REST API и горя не знал. Но вот приходит к нему тимлид и предлагает затащить GraphQL. Казалось бы: классный и мощный GraphQL — это запросто! Но в процессе проектирования API разработчик столкнулся с неожиданными проблемами и суровыми испытаниями: система оказалась довольно сложна и полна различных прав и ролей.

Всем привет! Меня зовут Олег, я — бэкенд-разработчик системы Talantix. В этой статье я расскажу о том, как работать с доступом к данным в GraphQL.

Читать далее
Всего голосов 13: ↑12 и ↓1 +11
Просмотры 3.3K
Комментарии 11

Создание IoT-приложения с использованием HTTP API

Блог компании RUVDS.com Python *API *Разработка для интернета вещей *Интернет вещей
Перевод
Фото: kwan fung на сайте Unsplash

Уже несколько лет не снижается ажиотаж вокруг IoT-устройств. Эти устройства могут быть почти чем угодно: от будильника, показывающего погоду, до холодильника, сообщающего о ценах в ближайших продуктовых магазинах. Какой бы ни была реализация, для общения с источниками данных эти устройства используют API. Но как конкретно подключаются сообщения, данные и устройства?

В этом посте мы покажем пример проектирования и моделирования данных для IoT-устройства. Для этого будет использовано M5Stack — небольшое модульное IoT-устройство с экраном, и подключение к API Metropolitan Transportation Authority Нью-Йорка (MTA) для получения актуального графика движения поездов на разных станциях.
Читать дальше →
Всего голосов 31: ↑30 и ↓1 +29
Просмотры 3K
Комментарии 0

Интеграция QUIK в инфраструктуру или API

Анализ и проектирование систем *IT-инфраструктура *API *

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

Читать далее
Всего голосов 3: ↑3 и ↓0 +3
Просмотры 2K
Комментарии 0

REST API на основе Snake (Python, Mamba, Hydra и Fast API)

Блог компании RUVDS.com Open source *Python *API *
Перевод
Tutorial

Сегодня я хочу попробовать что-то новое и начну исследовать мир Python. В этой статье представлен пошаговый туториал по реализации простого REST API при помощи Python, Fast API, Hydra и Mamba. Более того, я вкратце опишу, как упаковать всех этих змей в один образ Docker и заставить их работать вместе. Весь код выложен на моём GitHub.

Давайте начнём с кратного объяснения того, почему я решил выбрать эту тему.
Читать дальше →
Всего голосов 29: ↑27 и ↓2 +25
Просмотры 5.4K
Комментарии 2

Telegramm-habr-бот. Долгий путь к совершенству

Habr Python *API *
Из песочницы

Каждый день мы просматриваем habr. Каждый день заходим на главную ленту и просматриваем её. Что, если автоматизировать этот просмотр?

В статье я расскажу, как я писал telegram-бота на python3, который вытаскивает заголовки статей с habr и пишет их в telegram.

И т. Д.

Читать далее
Всего голосов 20: ↑14 и ↓6 +8
Просмотры 4.8K
Комментарии 25

Количество партиций в Spark при инициализации Data API: DataFrame, RDD, DataSet

Блог компании OTUS API *

Любое Spark Data API: DataFrame, RDD, DataSet состоит из партиций. Партиция — это часть данных, аллоцированных в оперативной памяти воркеров (жестком диске при кэшировании) для параллельных преобразований. Например, можно одновременно прибавить какое-то число к каждому элементу из партиции. Распределение элементов по партициям и их количество может происходить по принципу round-robin либо по хэшу от какой-то колонки в результате различных операций и зависит от типа операции.

Читать далее
Всего голосов 10: ↑8 и ↓2 +6
Просмотры 654
Комментарии 1

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