Ivan Begtin
8.03K subscribers
1.73K photos
3 videos
101 files
4.43K 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 ivan@begtin.tech
Download Telegram
В рубрике регулярных напоминаний не могу не рассказать про сервис оценки простоты языка Простой язык (plainrussian.ru) [1] который я много лет назад сделал и передал в Инфокультуру при её создании.

Это очень простой сервис который на вход получает текст на русском языке и на выходе выдает его сложность в баллах где баллы - это число лет учёбы которые необходимо пройти чтобы понимать этот текст. Например, 11.97 баллов - это, примерно, 1-3 курс ВУЗа, а то есть около 12 лет учебы.

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

У сервиса есть API [2] и открытый код [3]. Код не обновлялся примерно лет 10, во всяком случае та его часть которая использовалась для расчета формул.

И вот в формулах и было самое сложное и интересное. Алгоритмы сервиса работают на тех же принципах что формулы читабельности текста созданные изначально для английского языка: Flesch-Kincaid, SMOG, Automatic Readability Index и другие. В их основе подсчет числа слов на предложение, среднее число слогов на слово, среднее число букв на слово, число редких слов и так далее.

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

Сейчас всё это можно было бы решить гораздо быстрее, с современными ML инструментами расчеты были бы быстрее чем их проектирование.

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

По прежнему сайт остаётся одним из тех проектов которым регулярно пользуются несмотря на его неизменность в последние годы.

Ссылки:
[1] https://plainrussian.ru/
[2] https://github.com/ivbeg/readability.io/wiki/API
[3] https://github.com/infoculture/plainrussian/tree/master/textmetric

#plainrussian #russian #language #api #tools
Я регулярно писал о том что в России много открытых и общедоступных данных гос-ва через открытые API, нигде не документированные, но существующие [1]. Но это, конечно же, не только российская специфика и очень многие сайты создаются по архитектуре Jamstack [2] и данные подгружаются через вызовы REST API или запросы GraphQL.

Такой подход имеет много преимуществ при доступе с мобильных устройств и для ускорения настольных браузеров, но имеет один важнейший недостаток - контент сайтов выпадает из архивации. Поэтому, к примеру, многие данные с сайта Мэрии Москвы (mos.ru) не архивируются, они доступны только через API и не присутствуют в форме HTML кода.

А вот выдался и наглядный пример из другой страны. Относительно недавно обновился официальный сайт органов власти Республики Казахстан (www.gov.kz) [3]. Выглядит он сейчас весьма прилично, быстро грузится и обладает многими полезными характеристиками: удобным поиском, чёткой структурой и быстрым откликом.

И, как Вы уже догадались новый сайт Правительства Казахстана сделан именно таким. Почти весь контент отдаётся через GraphQL или REST API. Например, документы Министерства цифрового развития, инноваций и аэрокосмической промышленности Республики Казахстан [4] возвращаются именно через такое API [5]. Аналогично новости, события, вакансии, госуслуги, жизненные ситуации и тд. по всем организациям на этом портале.

Казалось бы почему бы не публиковать их сразу как открытые данные? Но это другой вопрос. Сейчас ничто не мешает желающим превращать данные из API с этого сайта/этой госсистемы в общедоступные наборы данных.

Но, конечно, это никак не поможет тому что сайт gov.kz будет хуже индексироваться поисковыми системами, что архивы материалов в Интернет-архиве (archive.org) будут не полны и что если теперь делать архивную копию этого сайта, то надо учитывать ещё и его API.

Ссылки:
[1] https://t.me/begtin/3303
[2] https://jamstack.org/
[3] https://www.gov.kz
[4] https://www.gov.kz/memleket/entities/mdai?lang=ru
[5] https://www.gov.kz/api/v1/public/content-manager/documents?sort-by=created_date:DESC&projects=eq:mdai&page=1&size=10

#opendata #opengov #digitalpreservation #webarchives #api #government #kazakhstan
ТикТок анонсировали API для доступа к их аналитике исследователям/учёным [1]. Сами ссылки на API и форма запроса доступа, видимо, появятся позже, а сейчас с ними работают представители их Content and Safety Advisory Councils (общественных советов по контенту).

Ссылки:
[1] https://newsroom.tiktok.com/en-us/an-update-on-our-platform-api-for-researchers

#api #tiktok #transparency #data
В рубрике интересных проектов на данных, общественный проект OpenAQ (Open Air Quality) посвящённый, как вы догадались, качеству воздуха и инструментам его измерения. Они обновили свой навигатор по датчикам, теперь можно увидеть [1] их во многих странах, особенно в Евросоюзе и США. А также много датчиков в Чили, Австралии и в Таиланде.

Проект любопытный, с открытыми данными, интерфейсами для разработчиков и тд.

Ссылки:
[1] https://explore.openaq.org/

#opendata #datasets #API #airquality #lifequality
Элон Маск, по видимому, решил всё же разрушить экосистему Twitter'а и теперь Twitter API только за деньги [1]. Это повлияет на то что от соцсети отключаться очень многие сервисы, продукты и инструменты. Например, ранее Twitter был одной из самых лояльных к архивации социальных сетей и было несколько хороших инструментов по архивации контента. Теперь, похоже, как и Facebook, Instagram и другие в Twitter'е начнут ловить и блокировать разного рода ухищрения работать с их контентом через неофициальные API.

Не знаю из какой парадигмы в новой команде Twitter՛а исходили в этом решении, считали ли они бесплатных пользователей API нахлебниками, или просто то что надо монетизироваться любой ценой. К тому же есть примеры соц сетей вроде Facebook'а которая всегда была закрытой. Но по модели использования Twitter не Facebook и не Instagram. Его реально можно заменить на Mastodon, пусть и с неудобствами.

Ссылки։
[1] https://twitter.com/TwitterDev/status/1621026986784337922

#API #twitter #socialnetworks
В рубрике как это устроено у них, проекты по систематизации доступа к данным и госсервисам для разработчиков в мире. Я несколько раз писал о таких проектах, но не грех и напомнить.

- API.GOUV.FR - каталог API, стандарты и рекомендации Франции
- API.GOVERNMENT.AE - каталог API Объединённых Арабских эмиратов
- API.GOV.UK - каталог государственных API Великобритании
- API.GOV.AU - австралийский государственный стандарт предоставления API и каталог общедоступных API
- DEVELOPER.VIC.GOV.AU - портал для программистов (каталог API) правительства штата Виктория, Австралия
- DEVELOPER.TECH.GOV.SG - портал для разработчиков от Правительства Сингапура, API, документация и тд.

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

#opengov #government #api #opendata
В рубрике интересных наборов данных, сайт День сурка (Groundhog-Day.com) [1] где собрана база из 74 животных предсказателей длинной зимы или ранней весны, включая 43 сурка.

Сделано явно с большой любовью к животным и к данным, потому что у сайта есть открытое API [2] с информацией о всех животных, их местонахождении и предсказаниях.

Ссылки:
[1] https://groundhog-day.com
[2] https://groundhog-day.com/api

#opendata #api
Подборка регулярного чтения про данные, технологии и не только:
- A Eulogy for Dark Sky, a Data Visualization Masterpiece [1] о визуализации данных в погодном приложении The Dark Sky для iOS и там же про наглядные решения контекстуализации данных. Я бы добавил этот термин в словарь "констектуализация данных" - это когда данные у Вас есть, но Вы подаёте их в том виде в каком они наиболее информативны и наглядны именно в том контексте/приложении/среде в которой их смотрят. А это приложение погоды отличный пример

- The Beginner's Guide to Databases [2] для новичков желающих разобраться в базах данных отличное руководство, оно не покрывает очень много чего, но одновременно даёт все нужные вводные для старта работы

- Meet Alpaca: Stanford University’s Instruction-Following Language Model that Matches GPT-3.5 Performance [3] новый интересный продукт как альтернатива GPT-3.5 под названием Альпака, главные отличия в открытости и меньших требованиях к железу. Открытый код главное преимущество [4]

- Finding Undocumented APIs [5] автор пишет про мою любимую тему, обнаружение недокументированных API. Я несколько выступлений и лекций проводил за эти годы про поиск и нахождение недокументированных API и ещё немало трюков могу рассказать о том как API находить, помимо перехвата запросов браузера к серверу. Так вот два самых очевидных способа часто срабатывающих:
* 1) Поискать API поиском Гугла на сайте явным образом вроде "REST API site:roskachestvo.gov.ru" и результат может удивить
* 2) Выяснить на каком программном продукте работает сайт и проверить не сохранилось ли в нём API идущее по умолчанию, у многих продуктов такое есть. Пример: Архив оцифрованных материалов Национальной электронной детской библиотеки РФ arch.rgdb.ru работает на движке DSpace, а у DSpace по умолчанию API доступно по ссылке /rest, проверяем, ага, вот и оно https://arch.rgdb.ru/rest/
Я могу не то что презентацию, а целый курс прочитать только по этой теме. Тем не менее ту статью рекомендую, часто информацию о API приходится выковыривать из сессий браузера.

- Data wrangling essentials: comparisons in JavaScript, Python, SQL, R, and Excel [6] сравнение функций преобразований данных в Excel, Python, R, SQL и Javascript. Полезно для тех кто вынужден пользоваться 2-3 языками/синтаксисами. Python там, правда, это не совсем Python, а конкретно Pandas, но текст от этого ценности не теряет.

Ссылки:
[1] https://nightingaledvs.com/dark-sky-weather-data-viz/
[2] https://technically.substack.com/p/the-beginners-guide-to-databases
[3] https://pub.towardsai.net/meet-alpaca-stanford-universitys-instruction-following-language-model-that-matches-gpt-3-5-490a38114a7e
[4] https://github.com/tatsu-lab/stanford_alpaca
[5] https://inspectelement.org/apis.html
[6] https://observablehq.com/@observablehq/data-wrangling-translations

#opensource #readings #api #data #guides
Про публикацию открытых государственных данных в России иногда, всё же, можно рассказать и что-то хорошее, хотя и нечасто. ФНС России обновило портал ФИАС [1] (Федеральной информационной адресной системы) в которой собраны сведения о более чем 32 миллионах зданий и сооружений и других связанных с ними объектов [2]. Система эта существует достаточно давно и доступ к ней есть через скачивание полных дампов, скачивание дельт изменений, API и СМЭВ. В общем это очень хороший пример того как правильно публиковать данные в открытом доступе если делать это на системной основе.

Я бы сказал что высокие оценки ФНС в части открытости [3] вполне оправданы, это редкое по нынешним временам системное раскрытие нужных бизнесу данных, причём данных референсных, составляющих базовую цифровую инфраструктуру. По сравнению с каким-нибудь Минэкономразвития России ФНС большие молодцы.

Особенно важно что в ведомстве понимают продолжают публиковать данные для массовой выгрузки в виде полных дампов, до 36GB в сжатом виде один дамп. К сравнению власти Санкт-Петербурга "похоронили" свой портал открытых данных ради портала API [4], что власти города конечно не красит.

Возвращаясь к ФИАС, конечно, даже подобная публикация данных неидеальна и её есть куда улучшить, особенно если смотреть не на форму, а на суть данных. А суть в том что это геоданные, без геоидентификаторов. Для того чтобы данные можно было применять в большой аналитической работе необходимо чтобы записи о муниципалитетах, улицах, зданиях и иных объектах содержали их геокоординаты, геоформу, включали Shape файлы, KML, GeoJSON, GML и все остальные геоформаты доступа к таким данным. Иначе говоря были бы интегрированы с данными Росреестра и доступны для выгрузки.

Другая важная сторона публикации данных в раскрытии их под свободными лицензиями. До сих пор на сайте ФИАС нет явно указанных, четких, не имеющих оговорок, условий использования этих данных. А чтобы использовать их в таких проектах как Wikidata или OSM лицензии имеют значение. Публикация данных под Creative Commons Zero выглядит наиболее логично.

Ссылки:
[1] https://fias.nalog.ru
[2] https://fias.nalog.ru/Statistics/
[3] https://t.me/ahminfin/568
[4] https://api.petersburg.ru

#opendata #geodata #russia #api #datasets
Я уже несколько раз писал о том что государства по всему миру продолжают создавать каталоги API, по аналогии с сайтами для разработчиков предлагаемыми в коммерческом секторе. Новые каталоги API в тот же список:
- Каталог административных API Японии http://api-catalog.e-gov.go.jp/ открыт 31 марта 2023 г., 39 API
- Государственные API в Малайзии https://www.mygdx.gov.my/en/landing-page/architecture?theme=first-theme 130 API
- Портал API налоговой службы Австралии https://apiportal.ato.gov.au, 6 API
- Портал госAPI ОАЭ https://api.government.ae 29 API
- Портал API налоговой службы Новой Зеландии https://portal.api.business.govt.nz 30 API
- Каталог API Литвы https://api.gov.lt около 40 API

А также предыдущий список из 6 каталогов API.

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

#openapi #opendata #api #government