Здравствуйте!
Несмотря на снижение популярности формата XML с начала 2000х, он прочно занял свои ниши. Я сталкивался с обработкой XML ~ в 60% проектов и посвятил ей занятие своей стажировки Masterjava. Наиболее частые его применения: XHTML, SOAP, различные конфигурации (например Tomcat, SoapUI, IntelliJ IDEA, Spring XML конфигурация), импорт-экспорт данных. В Java есть несколько API для работы с XML и для разработчика важно понимать, какое из API требуется выбрать в каждой конкретной ситуации. В этой статье я кратко перечислю все Java XML API, их назначение и примеры использования, и подробнее остановлюсь на работе с достаточно редкой, но в ряде случаев единственно верной технологией StAX. Предполагается что с элементами XML вы уже знакомы.Читать полностью »
Рубрика «api» - 48
Java XML API: выбираем правильно. StAX: работаем с удовольствием
2017-10-10 в 5:40, admin, рубрики: api, dom, dtd, java, JAXB, sax, stax, XML, xsd, xsl, xslt, ПрограммированиеРаботаем с долгими API в ASP.NET Core правильно или тонкости переезда на новую платформу
2017-10-08 в 20:13, admin, рубрики: .net, .net core, ajax, api, ASP.NET, asp.net core, C#, mvc, Разработка веб-сайтовMicrosoft очень постарался, создавая новую платформу для веб-разработки. Новый ASP.NET Core похож на старенький ASP.NET MVC только, быть может, самой MVC-архитектурой. Ушли сложности и привычные вещи из старой платформы, появился встроенный DI и легковесные view-компоненты, HTTP модули и хэндлеры уступили место middleware и т.д. Вкупе с кроссплатформенностью и хорошей производительностью всё это делает платформу очень привлекательной для выбора. В этой статье я расскажу, как мне удалось решить специфическую задачу логирования длительных запросов к сторонним API для повышения удобства анализа инцидентов.
Читать полностью »
Что делать, если Instagram не дал доступ к API? Дополнение
2017-10-08 в 19:20, admin, рубрики: api, Instagram, python, python 3Здравствуйте ещё раз!
Я прочёл её и мне показалось, что её можно продолжить.
Ни для кого не секрет, что самая популярная и прибыльная площадка для рекламы, бизнеса и прочего — Instagram. Почему им стал именно сервис, в котором по началу можно было загружать только картинки определённого размера (соотношение сторон имеется ввиду) и не было абсолютно ничего, что было в тогдашних соцсетях — совсем непонятно, но факт есть факт. Ввиду чего все стараются проникнуть на площадку Instagram и захватить оттуда наибольшее количество аудитории, и делают, это, конечно же, не вручную. А за этим следует, что Instagram жёстко блокирует доступ для ботов, спамеров и прочему, дабы сеть оставалась чистой.
1. Самые полезные функции (постинг и удаление постов) доступны только из мобильного приложения Instagram, эмуляция запросов сложна, так как надо вытащить из приложения ключ, который с каждой новой версией обновляется.
2. Web-версия обрезана, но радует, что в ней есть возможность лайкать, комментировать и удалять комментарии
3. Есть API, но процедура его получения удручающе долгая и спамерам и ботам такой путь точно не светит. Плюс было много моментов, когда соглашения в API менялись, что не всегда удобно.
Читать полностью »
API на Swift за пять минут. Лекция в Яндексе
2017-10-08 в 11:32, admin, рубрики: api, coredata, mysql, open source, perfect, s3, server-side, swift, swift server side, vapor, xcode, Блог компании Яндекс, зависимости, Промышленное программированиеЕсть мнение, что Swift — особенно благодаря развитию в опенсорсе — уже сейчас применим за рамками софта для платформ Apple. Наши коллеги из «Рамблера», включая разработчика Самвела Меджлумяна, даже пробуют этот язык в качестве серверного решения. На встрече сообщества CocoaHeads Самвел перечислил готовые продукты для построения сервера на Swift, сравнил их между собой и показал короткое демо.
Вести с полей больших и умных данных: программа конференции SmartData 2017 Piter
2017-10-06 в 11:07, admin, рубрики: api, artificial intelligence, big data, big data analytics, catboost, Conference, data mining, deep learning, machine learning, neural networks, neural networks and deep learning, neuroscience, smart data, Анализ и проектирование систем, Блог компании JUG.ru Group, машинное обучениеВ 2016/2017 годах мы обнаружили, что на каждой из наших конференций есть 1-3 доклада о Big Data, нейросетях, искусственном интеллекте или машинном обучении. Стало понятно, что под эту тему можно собрать хорошую конференцию, о чём я сегодня вам и расскажу.
Вкусно: мы решили собрать под одной крышей учёных, инженеров-практиков, архитекторов и сделать упор на технологии — казалось бы, обычное дело, но нет.
Сложно: копнув глубже, можно увидеть, что отдельными вопросами все занимаются не сообща, а врозь.
Учёные строят нейросети в теории, архитекторы делают распределённые системы для корпораций с целью обработки огромных потоков данных в реальном времени, без конечной цели унифицировать к ним доступ, инженеры-практики пишут под это всё софт для сугубо узких задач, которые потом нереально перенести на что-то другое. В общем, каждый копает свою грядку и не лезет к соседу… Так? Да нет же!
На деле: Все занимаются частью общего. Как сама Smart Data (а «умные данные» — это очень узкий перевод) по природе своей, так и те, кто с ней работает, по сути, делают распределённую сеть различных наработок, которые могут создавать порой неожиданные сочетания. Это и формирует фундамент Умных данных в своей красоте и практической значимости.
Итак, что это за кусочки паззла и кто их создает, можно будет посмотреть и даже обсудить с создателями на конференции SmartData 2017 Piter 21 октября 2017. Подробности под катом.
Дальше будет много букв, мы же за большие и умные данные, хотя исторически анонс подразумевает быстрый и ёмкий текст, краткий и точный, как выстрел снайпера в ясную летнюю ночь.
Читать полностью »
Разработка Feed Manager для автоматизированной закупки трафика
2017-10-04 в 11:45, admin, рубрики: api, Axonite, CPAPI, feed management, Аналитика мобильных приложений, Блог компании Mobio, интернет-маркетинг, мобильный маркетинг, Повышение конверсииМобильный маркетинг предполагает взаимодействие двух или трех ключевых фигур.
Клиент — рекламодатель или разработчик мобильного приложения, желающий купить трафик хорошего качества.
Паблишер — арбитражник, администратор группы в соц. сети, разработчик приложения со встроенной (in-app) рекламой.
А также зачастую посредник — агентство мобильного маркетинга, которое занимается подбором офферов от клиентов и оптимизацией трафика партнеров.
Так как Mobio является агентством, то в статье мы рассмотрим, как именно, с нашей точки зрения, происходит работа с трафиком.
Когда время перезагрузки имеет значение или почему IBM использует CRIU на мейнфреймах
2017-10-04 в 6:09, admin, рубрики: api, CRIU, IBM, linux, s390, Блог компании Virtuozzo, виртуализация, контейнеры, мейнфрейм, миграция, Разработка под LinuxВ современном мире, когда светлое будущее прочат микросервисам, кажется странным заниматься технологиями, которые помогают обновлять код без перезагрузки. Ведь микросервисы и контейнеры куда проще «убить» и создать заново. Тем не менее, мы продолжаем работу над системой живой миграции CRIU, и нам в этом активно помогают ребята из IBM. Почему? Попробуем объяснить.
Новое API браузера, определение масштаба отображения (и не только)
2017-10-03 в 17:40, admin, рубрики: api, javascript
В веб-разработке нередки моменты, когда требуется отслеживать что именно видит на своём устройстве пользователь. В первую очередь это относится, конечно, к масштабу устройства.
Я работаю над встраиваемой мини-CRM и понятия не имею как будет выглядеть сайт. Внизу страницы плавает элемент управления, всегда занимающий комфортную для касания часть экрана. Вряд ли пользователь мобильного телефона будет увеличивать масштаб чтобы оценить эстетику шрифта на нашем виджете, а вот чтобы разобрать текст неоптимизированного для мобильных устройств сайта — запросто. Поэтому, чтобы не перекрывать пользователю содержимое сайта, виджет прячется при масштабировании.
Сейчас задача определения масштаба решается, мягко говоря, непросто, и появление нормального API было бы весьма кстати.
Читать полностью »
Интернет-аукционы, API и конкретный пример, как на этом могут заработать сторонние разработчики
2017-10-03 в 8:21, admin, рубрики: api, domraider, ico, аукционы, владельца винфона, мобильная разработка, полный боли крик, проект, размышления, разработка, разработка мобильных приложений, Разработка под e-commerce, французы
В чем главная проблема всех ICO? 90% проектов собирают деньги на решение несуществующих проблем. Я серьезно, если вчитаться в многочисленные WP, то создастся впечатление, что каждое из них писалось как «манифест решения главной проблемы вселенной». Но мы-то в курсе, что главный ответ на все – это 42, так что идем дальше. В итоге, у нас остается 10% ICO-проектов, проблематика которых вполне реальна, а у десятой части из них – то есть 1% от всей массы – есть еще и уже действующий бизнес в сфере. На той неделе, листая Bits.Media, я нарвался на такой французский проект, входящий в этот 1% – площадку интернет-аукционов DomRaider (изначально парни специализировались на дропкэтчинге — перехвате и выкупе доменных имен с истекшей регистрацией, но решили расшириться) и, вчитываясь в Whitepaper, понял, что у меня появились некоторые мысли на их счет и ими нужно поделиться в письменном виде.
Итак, мы имеем: проект, ICO которого уже состоялось (необходимая сумма была собрана), так что тут мы рассуждать об эмиссии токенов и дивидендах не будем, как, собственно, и агитацией вложиться рублем. Мы тут люди взрослые, так что обсудим пункты, которые касаются разработки независимой экосистемы вокруг интернет-аукционов как таковых и конкретно вокруг проекта французов в качестве живого примера приложения сил. Да, вы не ослышались, в болоте ICO появился проект с открытой инфраструктурой, который с порога заявляет, что хочет привлекать сторонних разработчиков, сделает API и еще позволит все это монетизировать. Не знаю как вам, а мне хочется верить. А в процессе можно и помечтать об идеальном интернет-аукционе.
Читать полностью »
Как найти лучшие авиабилеты в интерфейсе гугл-таблицы
2017-10-03 в 6:37, admin, рубрики: api, google apps script, Google Cloud Platform, авиабилеты, Геоинформационные сервисыНачало
Я часто езжу в поездки и покупаю авиабилеты.
И так же часто страдаю от интерфейса агрегаторов авиабилетов.
Я не могу выбрать билет и совершить покупку.
Кейс
Я точно знаю, куда хочу полететь.
Примерно знаю на сколько дней.
И примерно в какие даты — например в этом месяце.
В этот раз я захотел слетать в Серфаус — это горнолыжная деревня в Австрии.
Улететь не ранее 5 января, вернуться на позднее 15 января. На 6-8 дней.
Теперь нужно найти лучший билет под эти условия.
"Лучший" в моем случае — это комбинации объективной цены и субъективного удобства перелета — время вылета/прилета, аэропорт вылета, авиакомпания и так далее.
Как кейс решается у агрегатора авиабилетов
- Трансформирую деревню Серфаус в три ближайших аэропорта — Мюнхен, Инсбрук и Цюрих с помощью гугл-карт.
- Иду в агрегатор авиабилетов. Нахожу инструмент типа "Календарь низких цен".
- Открываю его в трех вкладках для трех аэропортов.
- Выбираю январь.
- Начинаю тыкать в каждый день января, чтобы увидеть время вылета/прилета и цену билета.
- Если мне понравился какой-то билет, тыкаю в него, чтобы убедиться, что билет реально есть. Потому что кеш.
- Чтобы запомнить, в какой день какой билет мне понравился, я записываю его в блокнот или таблицу.
В последних трех пунктах я страдаю.
Потому что я не хочу тыкать и проверять. Я не хочу переключаться между вкладками.
А хочу увидеть реально доступные билеты со временем вылета и ценой и выбрать один из них.
И купить его.
Но, в итоге, я не нахожу нужный билет за психологически комфортное время.
И, не совершив покупку, ухожу.
Как кейс должен решаться
- Указываю "Серфаус" в поле "Куда" в агрегаторе.
- Выбираю примерные даты.
- Выбираю подходящую продолжительность.
- Получаю список билетов для покупки.
- Выбираю подходящий билет и покупаю.
… такого сценария работы нет у агрегаторов.