Ivan Begtin
7.99K subscribers
1.77K photos
3 videos
101 files
4.49K links
I write about Open Data, Data Engineering, Government, Privacy, Digital Preservation and other gov related and tech stuff.

Founder of Dateno https://dateno.io

Telegram @ibegtin
Facebook - https://facebook.com/ibegtin
Secure contacts [email protected]
Download Telegram
Полезная статья о которой хочется написать отдельно Deliver Your Data as a Product, But Not as an Application [1], она требует авторизации на Medium. но почитать её стоит.

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

Собственно в статье отсылка к хорошо известной книге Principles of Data-Oriented Programming [2] и следующим принципам:
- Отделяйте код (поведение) от данных;
- Рассматривайте данные как неизменные (immutable)
- Отделяйте схемы/структуры данных от их представления
- Представляйте данные с помощью простых структур данных

Статья написана с прицелом на OOP разработчиков которые хотели бы понять отличия программирования с данными и без.

Идея отделения данных от кода, в принципе, не нова. Лично я при проектировании разных ИТ продуктов за последние годы придерживался принципа API-first, то есть вначале у тебя появляется API, а потом уже разные интерфейсы поверх него.

В случае с данными оно разделяется на 2+ сервиса API. Первый сервис API для бизнес логики/кода, второй для данных, как правило Data API отдающее JSON или Protocol Buffers. Реальные системы могут иметь больше вариаций по разделению и компонентам, но бизнес логика и доступ к данным разделять стоит всегда.

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

И это, конечно, относится не только к данным статистики.

Ссылки:
[1] https://towardsdatascience.com/deliver-your-data-as-a-product-but-not-as-an-application-99c4af23c0fb
[2] https://blog.klipse.tech/dop/2022/06/22/principles-of-dop.html

#itarchitecture #datasaproduct #data #api
В рубрике интересных открытых данных данные по трафику судов [1] от Finnish Transport Infrastructure Agency. Данные по портам, кораблям, движению, портозаходам и ещё много чему. Всё без ограничений и аутентификации, покрывает практически всё Балтийское море.

Тот случай когда API оправдано на 100%. Для полного счастья нехватает только исторических данных для bulk download.

Ссылки:
[1] https://www.digitraffic.fi/en/marine-traffic/#vessel-locations

#opendata #finland #API
Обновлённая подборка государственных каталогов открытых API. Последний раз я писал о них полтора года назад за это время список пополнился:
- API.GOUV.FR - каталог API, стандарты и рекомендации Франции
- API.GOVERNMENT.AE - каталог API Объединённых Арабских эмиратов
- API.GOV.UK - каталог государственных API Великобритании
- API.GOV.AU - австралийский государственный стандарт предоставления API и каталог общедоступных API
- DEVELOPER.VIC.GOV.AU - портал для программистов (каталог API) правительства штата Виктория, Австралия
- API.NSW.GOV.AU - портал открытых API Нового Южного Уэльса, Австралия
- PORTAL.API.IPAUSTRALIA.GOV.AU - портал API патентного ведомства Австралии
- DEVELOPER.HEALTH.GOV.AU - B2G (Business To Government) портал API Департамента здравоохранения Австралии
- DEVELOPER.TECH.GOV.SG - портал для разработчиков от Правительства Сингапура, API, документация и тд.
- ESERVICES.MAS.GOV.SG - портал открытых API главного монетарного управления Сингапура (аналог центробанка)
- MYGDX.GOV.MY - каталог API на малазийском государственном портале MyGDX

В реальности каталогов API сильно больше, не везде они сразу бросаются в глаза.

#api #openapi
В рубрике недокументированных API ещё один пример, реестр НПА Казахстана zan.gov.kz [1]. Хотя на сайте нет документации на это API, но оно существует и все материалы оттуда доступны в машиночитаемой форме.

- https://zan.gov.kz/api/documents/search - пример запроса поиска (требует POST запрос)
- https://zan.gov.kz/api/documents/200655/rus?withHtml=false&page=1&r=1726577683880 - пример запроса получения конкретного документа

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

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

Я завел отдельный тег #undocumentedapi и время от времени буду приводить примеры по разным странам.

Ссылки:
[1] https://zan.gov.kz

#opendata #data #kazakhstan #laws #api #undocumentedapi
Forwarded from Dateno
Dateno Expands Data Capabilities for Professionals with API and Dashboard Tools!

We are thrilled to announce the launch of two powerful tools designed specifically for data professionals: the My Dateno personal dashboard and the Dateno API! These updates will greatly enhance your ability to manage and integrate data search into your workflows.

With My Dateno, users can now track their search history and access API keys, making it easier than ever to tap into Dateno's extensive data search capabilities. In the future, My Dateno will also provide access to premium features and additional data services. Plus, those who join our early access program will get free access to these new features during the testing period!

The Dateno API enables developers and businesses to integrate our platform’s search functionality directly into their products and infrastructure. This API offers fast, efficient search across 19 million datasets—including data files, geoAPI connections, and statistical indicators—with powerful filtering options. Retrieve comprehensive metadata and related resources, and streamline your data processing with ease.

We’re excited to empower data professionals with these new tools! 🚀

Learn more and sign up for early access at dateno.io

#Dateno #DataSearch #API #Innovation #DataIntegration #DataProfessionals
Как обещал пишу о том как работать с API Dateno, пока на уровне совсем азов, а далее будут примеры на Python и других языках. Может быть даже SDK, телеграм бот и не только.

1. Идём на Dateno.io, нажимаем на Sign In и регистрируемся на сайте my.dateno.io, там же получаем ключ
2. Открывает документацию на API по адресу api.dateno.io и смотрим как устроены запросы
3. Берём командную строку или UI инструмент или Python и делаем запрос к эндпоинту. Например такой запрос: https://api.dateno.io/index/0.1/query?apikey=my_personal_key&q=Nuclear&filters="source.countries.name"="Kazakhstan" где my_personal_key ключ из личного кабинета.
4. Получаем ответом JSON с результатами поиска по ключевому слову "Nuclear" и по стране Казахстан (Kazakhstan). В ответе ссылки на статистику связанную с ядерной энергетикой страны
5. Параметр filters можно передавать много раз и задавать не только страну, но и тип ПО (source.software.name), тип каталога данных source.catalog_type или тип владельца каталога данных "source.owner_type".
6. Фильтры - это фасеты. При запросе они возвращаются в атрибуте facetDistribution. Можно сделать вначале запрос без фасетов, получить найденные значения и далее фильтровать. Если будет запрос от пользователей, то мы опубликуем, в дополнение к API, полные значения фасетов.
7. В результатах поиска есть ссылка на первоисточник, но нет ссылок на ресурсы которые файлы или API. Чтобы из получить надо сделать запрос к точке подключения https://api.dateno.io/search/0.1/entry/{entry_id}?apikey=my_personal_key где entry_id - это идентификатор записи из результатов поиска. Ресурсов может не быть, иногда, может быть только один как в случае на картинке, а может быть много, десятки. Поэтому к ним запросы индивидуально.

API - это уникальная фича Dateno, открытого API нет у Google Dataset Search и большинства поисковиков по данным. Оно есть только у некоторых поисковиков по научным данным/ресурсам, но они сильно меньше по размеру чем индекс Dateno.

Пишите мне если про API будут вопросы, они почти наверняка появятся.

#opendata #api #dateno #datasearch #data