Ivan Begtin
7.98K subscribers
1.81K photos
3 videos
101 files
4.52K 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
За свои годы работы в ИТ я проработал "архитектором ПО" 3-5 лет, смотря как классифицировать совмещение с другими ролями.

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

Что я наблюдаю в последние годы:
1. Очень многие архитекторы пишут что язык моделирования UML мёртв. Действительно я практически не вижу UML диаграмм в хороших примерах и во многих областях они словно исчезли полностью. Вместо этого используют всё чаще модели C4 (Context, Containers, Components and Code) сделанные в нотации "boxes and lines"
2. Есть ощущение что многое сместилось в сторону легковесного описания архитектурных решений, таких как Architecture decision record (ADR) со структурированным описанием решений в Markdown
3. Восхождение и падение микросервисной архитектуры. О ней всё ещё говорят, но мало кто может показать живой пример с обоснованием и демонстрацией. За исключением микросервисов которые являются частью облачных платформ.
4. Каждый разработчик теперь мини-архитектор. Современное ПО состоит из множества "кубиков" и, зачастую, нужно лишь написать код для их "склейки".
5. Во многих процессах разработки облачные решения/продукты/API стали неотъемлимой частью архитектуры. Cloud-as-a-code - всё более распространённая концепцияи владельцы крупных облаков всячески это продвигают.
6. Нарастающее использование low-code/no-code платформ
7. Всё больше [Word]Ops. DevOps, DataOps, GitOps и, наконец, NoOps для полностью автоматической инфраструктуры.


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

#software #it
Давний вопрос - как вести личные заметки.
Есть простые способы такие как "классические" - это папки и файлы, сложенные локально или в каком-нибудь облачном сервисе вроде Dropbox или Google Drive. Чуть более сложные - это множество текстов в Google Docs.

Есть чуть более продвинутые с помощью OneNote или Evernote. У Evernote за долгое время появилось большое число поклонников, тех кто ведёт в них заметки чуть не всю свою зрелую жизнь, но проприетарность, свой формат хранения и ещё многие особенности, не сделали его стандартом де факто.

Так что использовать сейчас? Самыми популярными и, на мой личный взгляд, удобными инструментами являются инструменты с использованием Markdown нотации:
• Notion (https://notion.so) - практический идеальный конструктор для создания пространств ведения заметок. Позволяет очень многое в управлении контентом, таблицами, подготовкой текстов и ведения заметок. Реально хороший инструмент и относительно недорогой. Главный недостаток в том что его шаблоны довольно ограничены, а всё остальное надо делать самостоятельно что требует хорошей самоорганизации и чёткости в структурировании себя. Лично я веду в Notion базы рецептов и ингредиентов. Минимальная стоимость в $4 в месяц.

• Roam (https://roamresearch.com) - гораздо менее насыщенная функциями (но куда больше смыслом) платформа для ведения личных журналов и заметок с акцентом на студентов и исследователей. Главные достоинства - это воспроизведение процесса мышления человека и автоматическая простановка обратных ссылок в заметках, а также организация всего процесса по организации собственного исследования или же того как делать заметки при обучении. Roam существенно дороже и выходит в $15 в месяц или за $500 можно получить пожизненный доступ. Многие считают что это того стоит, а о том как использовать Roam есть хорошая серия видеопрезентаций от Shu Omi. Там, в том числе, есть хорошо изложенное видео о том как использовать Zettelkasten метод в управлении знаниями и обучении через Roam.

• Obsidian (https://obsidian.md/) - это ещё один инструмент, на сей раз только в виде настольного приложения с синхронизацией с сервером по выбору пользователя и поддерживающее визуализацию взаимосвязанных заметок. Его оффлайновость с опциональным использованием сервера - это большое достоинство. Он бесплатен для тех кто хочет использовать в личных целях локально и $4 стоит подписка на синхронизацию через сервер.

• HackMD (https://hackmd.io) - персональная или командная вики основанная на Markdown. Хорошо годится для заметок в целом и куда хуже для структурированного ведения заметок если только нет большой привычки к Wiki. Стоит $5 в месяц за пользователя, есть возможность использовать бесплатно или развернуть свою копию из open source.

• WriteApp (https://writeapp.co) - это скорее минималистичный редактор чем полноценная система управления заметками. Стоит $25 для одноразовой покупки и $5 за ежегодное обновление. Лично я его часто использую как локальный Markdown редактор и потом из него уже переношу онлайн.


Наверняка этот список неполон, лично я использую пока Notion и WriteApp, присматриваюсь к Roam, но понимаю что чтобы его использование себя окупало надо вести исследовательские проекты или тщательно документировать долгосрочные размышления

#notes #software
Алексей Лукацкий довольно сдержанно пишет о довольно важной проблеме, российское регулирование отстаёт даже у, казалось бы, неглупых людей в Минцифре РФ. При всей той критике что я в их адрес могу адресовать, я, всё же, несмотря ни на что и вопреки всему, считаю что это тот редкий случай когда люди понимающие в ИТ там есть. Но современное ИТ - это не набор готового ПО на которое у его разработчиков есть все права. Это сложный механизм управления зависимостями (dependency management), отдельная и большая индустрия software and application intelligence и так далее.

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

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

#opensource #software
Explorium, стартап по подготовке данных (data preparation) получил очередной раунд венчурного финансирования в 75 миллионов USD [1] что теперь составляет 127 миллионов USD вложенных инвесторами в этот продукт. Продукт у них интересный [2], в виде создания платформы для очистки, обработки и, что важно, обогащения данных для чего они используют множество открытых и коммерческих источников дополняя данные загруженные на их платформу сведениями о компаниях, статистике в геопривязке, информацию о людях и не только. У них весьма большая External Data Library [3].

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

Интереснее то что таких инструментов всё больше и значительные инвестиции идут в облачные продукты.

Ссылки:
[1] https://venturebeat.com/2021/05/18/data-prep-platform-explorium-raises-75m/
[2] https://www.explorium.ai/
[3] https://www.explorium.ai/platform-data-engine/

#tools #software #startups
Неплохой обзор развёртывания ArangoDB [1], альтернативы MongoDB. Альтернативы, в целом, неплохой, но не то чтобы "вау, надо быстро всё заменять".

Как и MongoDB в ArangoDB есть поддержка JSON и загрузка JSON и JSON lines файлов, как и MongoDB в ArangoDB свой формат бинарной сериализации, VelocityPack (в MongoDB - это BSON). Но есть и куча нюансов, для меня лично одним из важнейших был то что в ArangoDB отсутствует тип данных "дата и время", вместо этого дата хранится как в JSON, в виде строки, а в языке запросов предусмотрены функции работы с ней. Лично по мне - это сомнительный подход, обойти это можно, но надо прикладывать лишние усилия. Хорошо бы упростить миграцию с MongoDB на ArangoDB.

С другой стороны, ArangoDB куда больше постепенно внедряется в data science и modern data stack. Там есть ArangoML [2], metadata store и многое другое. Плюс у них лицензия кода Apache 2.0, а не SSPL как у MongoDB.

Так что публикации про ArangoDB читать интересно и полезно, экспериментировать с ним стоит.

Ссылки:
[1] https://ericfossas.medium.com/the-best-nosql-database-for-kubernetes-fd920003e1ad
[2] https://www.arangodb.com/machine-learning/

#datatools #opensource #software #reading
Dataskop [1] свежее приложение от команды AlgorithWatch по сбору и визуализации данных которые собирает о пользователе ТикТок и с возможностью пожертвовать эти свои данные на исследования в области приватности. Сама идея интересная, делать приложения по анализу приватности в виде приложения с браузером внутри. Вместо того чтобы делать расширение для браузера, согласовывать его с владельцем магазина расширений, проще поместить Chromium в оболочку и делать исследование в замкнутом пространстве. Хорошая идея, тянет на возможность её универсальной реализации, не только применительно к ТикТоку.

А пока можно скачать приложение и поэкспериментировать. Я вот, к сожалению, проверить не могу, ТикТоком совсем не пользуюсь.

Ссылки:
[1] https://dataskop.net/overview-in-english/

#privacy #software #tiktok
Интересное мероприятие Software Source Code as documentary heritage организованное ЮНЕСКО совместно с французским некоммерческим проектом Software Heritage о сохранении исходного кода.
Там много интересных докладов, например, об организации хранения петабайтов в человеческом ДНК и о том сжатии огромных объёмов открытого кода.
Но важнее то что открытый код рассматривается как часть культурного/цифрового наследия человечества.

https://webcast.unesco.org/events/2023-02-07-software-heritage/

#opensource #opendata #software
Для тех кто работает с файлами в WARC формате (большая часть сайтов в ruarxive хранятся в нём) ещё одна утилита по работе с ними. Warchaeology [1]. Утилита создана в Национальной библиотеке Норвегии и позволяет:
- конвертировать форматы ARC, WARC и Nedlib
- листать WARC файлы
- удалять дубликаты файлов
- валидировать содержание WARC файлов
- предоставлять оболочку по работе с WARC файлами

Инструмент полезный, может пригодится тем кто любит работать в командной строке. Я также напомню про библиотеку и утилиту командной строки WarcIO [2] с функциями извлечения и пересжатия содержимого WARC файлов и разработанную мной когда-то утилиту MetaWARC [3] которая тоже умеет извлекать контент из WARC файлов и ещё индексировать их в sqlite и считать статистику и даже извлекать метаданные из вложенных файлов.

Больше инструментов полезных и разных! Если Вы знаете хорошие инструменты с открытым кодом для цифровой архивации, пишите нам, будем делать их обзоры.

Ссылки:
[1] https://github.com/nlnwa/warchaeology
[2] https://github.com/webrecorder/warcio
[3] https://github.com/datacoon/metawarc

#tools #opensource #digitalpreservation #webarchives #WARC #software
Полезное чтение про данные технологии и не только:
- AI Doesn’t Kill Jobs? Tell That to Freelancers [1] статья в WSJ о том что рынок фрилансеров резко проседает с 2022 года (появления ChatGPT) и у людей делавших рутинную цифровую работу теперь задача найти себе новый заработок.
- AI Is Already Wreaking Havoc on Global Power Systems [2] лонгрид в Блумберг о том как AI влияет на энергопотребление. Большой интерактивный продукт, приятно смотреть. И тема актуальная
- The Rise of Medium Code[3] в блоге Dagster про восхождение среднего кода (medium code). О том что с разработкой ПО не всё так плохо, просто по другому.
- Governing with Artificial Intelligence [4] свежая статья от ОЭСР про госуправление с помощью ИИ. Как раз актуально, много разговоров на эту тему и больше хайпа чем смысла, а тут сжато и с примерами
- How to optimize the systematic review process using AI tools [5] об использовании ИИ для систематического обзора тематических статей/публикаций. Полезно учёным и исследователям в самых разных областях.

Ссылки:
[1] https://www.wsj.com/tech/ai/ai-replace-freelance-jobs-51807bc7
[2] https://www.bloomberg.com/graphics/2024-ai-data-centers-power-grids/
[3] https://dagster.io/blog/the-rise-of-medium-code
[4] https://www.oecd-ilibrary.org/science-and-technology/governing-with-artificial-intelligence_26324bc2-en
[5] https://acamh.onlinelibrary.wiley.com/doi/full/10.1002/jcv2.12234

#readings #software #ai
Свежие результаты опроса разработчиков от Stackoverflow [1].

Если совсем коротко,то PostgreSQL + JS.
Если не совсем, то стоит посмотреть разные срезы, они показательны в том что разработчики знают и что хотят знать.

Для меня более значимо то чего там нет, а там нет многих технологий и инструментов которые, к примеру, я использую и которые наиболее популярны сейчас в работе с данными. Это к тому что дата инженерия и аналитика отошли уже от "чистой разработки". Например, у Elasticsearch есть значимые альтернативы. Duckdb спешно набирает популярность и тд.

Ссылки:
[1] https://survey.stackoverflow.co/2024/

#software #opensource #surveys