Ivan Begtin
8.09K subscribers
2K photos
3 videos
102 files
4.73K 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
О секретах популярности языка Python в сентябрьском исследовании от StackOverflow [1]. В качестве спойлера - главная причина в pandas [2], проекте поддерживаемом NUMFocus [3], организации поддерживающей качественные open source проекты полезные для науки.

В исследовании Stack Overflow это хорошо заметно, значительный прирост пользователей у Python происходит из аудитории "Academics" - это преподаватели, студенты и исследователи из университетской среды. Что и говорить, pandas - это отличный продукт по работе данными и полезный для любых задач анализа и обработки данных.

Ссылки:
[1] https://stackoverflow.blog/2017/09/14/python-growing-quickly/
[2] https://pandas.pydata.org/
[3] https://www.numfocus.org/open-source-projects/

#opendata #python #data
September 28, 2017
Jetbrains и Python Software Foundation опубликовали результаты опроса разработчиков на языке Python [1] в котором получили множество ответов и сформировали картину-образ сообщества.

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

В задачах Data Analysis и Machine Learning наиболее заметный рост. На сегодняшний день Python - это язык с невысоким порогом входа для обучения и огромным числом готовых пакетов для обработки данных.

И, конечно же, первичные анонимизированные данные опроса также опубликованы [2].

Если Вы хотите поучиться программировать, но не знаете чему, то попробуйте начать с Python. Это очень хороший стартовый язык, после него несложно учить более тяжелые языки вроде Java и C++, а для задач в обработке данных он годится сразу же.

Ссылки:
[1] https://www.jetbrains.com/research/python-developers-survey-2017/
[2] https://jb.gg/pythondevsurvey2017raw

#python #polls #data
April 5, 2018
March 20, 2019
Вышла новая версия Jupiter Notebook, под новым названием Jupiter Book [1]
Из новых возможностей:
- переход на язык разметки MyST Markdown [2]
- новая система сборки с поддержкой Jupiter Cache [3], запускающая исполнение notebook'а только при изменении кода
- больше интерактивности
- возможность сборки с командной строки

Jupiter Book - это стандарт де-факто для работы аналитиков и специалистов по data science и изменения в нём важны для всех кто работает с данными на регулярной основе.

UPD. Как меня поправляют читатели, это не новая версия версия Jupiter Notebook, но возможность преобразовывать .ipynb в книжке в виде новой версии инструмента. Что, впрочем, не отменяет его полезность.

Ссылки:
[1] https://blog.jupyter.org/announcing-the-new-jupyter-book-cbf7aa8bc72e
[2] https://myst-parser.readthedocs.io/en/latest/
[3] https://jupyter-cache.readthedocs.io/

#data #datascience #python
August 18, 2020
Те кто работал когда-либо с многочисленными библиотеками в языке Python знают про то как часто там одними и теми же словами называется разное или разными словами одинаковое и как оно часто несовместимо между собой.

Команда из Quansight Labs [1] сформировала консорциум по унификации API по работе с данными в языке Python [2], при поддержке таких компаний как Intel, Microsoft, Tensorflow, Google Research и других. О том почему это так важно и сколько накопилось отличий между библиотеками numpy, cupy, dask.array, jax, mxnet, pytorch и tensorflow они пишут в блоге этого консорциума [3]

Это хорошая инициатива, с открытым кодом [4] и полезными результатами для сообщества.

Ссылки:
[1] https://labs.quansight.org/
[2] https://data-apis.org
[3] https://data-apis.org/blog/announcing_the_consortium/
[4] https://github.com/data-apis

#python #data
August 18, 2020
В рубрике интересных инструментов по работе с данными Mercury [1], утилита по преобразованию тетрадок с Python в веб приложения и возможностью запуска их с определёнными параметрами.

Выглядит любопытно и есть живое демо [2], может быть полезно для разного рода способов публикации, например, студенческих работ или работ на хакатонах/конкурсах.

А может и другие применения есть.

Ссылки:
[1] https://github.com/mljar/mercury
[2] https://mercury-demo-1.herokuapp.com/

#datatools #notebooks #python #opensource
February 9, 2022
В рубрике интересные продукты с открытым кодом Grist, открытая альтернатива Airtable, инструмент работы с таблицами [1].
Функции очень похожи:
- быстро и с нуля построить базы данных (аналог Access, только в вебе)
- гибкое управление правами доступа к данным
- визуализировать данные, строить отчеты
- делиться данными с другими

Ну и конечно замена Excel во всём что касается редактирования таблиц. Авторы также подготовили обзора сравнений в Airtable [2] и кроме открытого кода предлагают облачный сервис GetGrist [3] где можно его потестить. Конечно из России использовать облако затруднительно, оплата там в долларах США.

Из больших плюсов продукта поддержка формул на Python с полной поддержкой Python’s standard library [4]

Ссылки:
[1] https://github.com/gristlabs/grist-core
[2] https://www.getgrist.com/blog/grist-v-airtable/
[3] https://www.getgrist.com/
[4] https://support.getgrist.com/formulas/#python

#data #tools #spreadsheets #opensource
March 17, 2022
August 12, 2022
August 23, 2022
September 30, 2022
October 20, 2022
Полезное чтение про данные, технологи и не только:
- Restfox [1] аналог Postman с открытым кодом, позволяет настраивать и тестировать работу с API. До уровня Postman не дотягивает, но выглядит неплохо
- Python 3.11.0 is released — Impacts to Data Science and Engineering [2] - коротко о том почему надо прямо сейчас обновлять Python до 3.11. Если кратко: быстрее на 10-60%, лучше управление ошибками и много изменения затрагивающих работу с данными.
- Hertz [3] фреймворк для Go по созданию микросервисов. Давно пора переводить микросервисы на Go и Rust.
- Data Catalogs Are Dead; Long Live Data Discovery [4] очередной текст в копилку хайпа про смерть корпоративных каталогов данных и развитие data discovery. Будем честными, ещё каталоги то мало где внедрены, а тут сразу data discovery. Автор Barr Moses, CEO стартапа Monte Carlo, так что текст нельзя считать независимым. Но почитать стоит
- Open Source Law, Policy & Practice [5] вышла вторая редакция книжки про регуляторное регулирование открытого кода. Книга полезная, но как же она далека от госполитики в постсоветских странах! В открытом доступе, к сожалению, нет. Только заказывать за деньги, но если интересуетесь законами про open source, то читать стоит.

Ссылки:
[1] https://github.com/flawiddsouza/Restfox
[2] https://medium.com/codex/python-3-11-0-is-released-impacts-to-data-science-and-engineering-2d6c474611f4
[3] https://github.com/cloudwego/hertz
[4] https://medium.com/towards-data-science/data-catalogs-are-dead-long-live-data-discovery-a0dc8d02bd34
[5] https://global.oup.com/academic/product/open-source-law-policy-and-practice-9780198862345?cc=gb&lang=en&#the

#opensource #datatools #data #python #datacatalogs #datadiscovery
October 27, 2022
Для тех кто любит программировать на Python и не любит Javascript не могу не рассказать о таком проекте как PyScript [1], код для исполнения кода Python'а на стороне браузера. Включает как простые, так и сложные примеры [2], а также по нему есть огромное руководство с кучей подробностей [3].

Признаюсь, я лично, никогда не любил разработку фронтэнда именно из-за Javascript'а, какое-то сильное чувство отторжение у меня вызывало его использование, так что не только Javascript'у проникать на сервер, но и Python'у в браузер.

А их свежего и любопытного - руководство по написанию расширений для Google Chrome с помощью PyScript [4].

Почему это важно? Многие продукты по обработке и визуализации данных не сервере написаны на Python. Если PyScript будет работать с хорошей производительностью, то часть задач обработки можно будет перенести в браузер и поддерживать единую кодовую базу.

Пока единственное ограничение в том что PyScript более-менее оттестирован в Chrome, но даже в Firefox'е его активно не проверяли.

Тем не менее, экспериментировать можно уже сейчас.

Ссылки:
[1] https://pyscript.net
[2] https://pyscript.net/examples/
[3] https://realpython.com/pyscript-python-in-browser/#modules-missing-from-the-python-standard-library
[4] https://medium.com/@petefison/write-chrome-extensions-in-python-6c6b0e2e1573

#opensource #python #programming
November 18, 2022
В рубрике полезного чтения про данные, технологии и не только:
- Generating income from open source [1] автор перечисляет успешные бизнес модели на открытом коде, вроде ничего нового, но и систематизация вполне неплохая. Полезное чтение для всех кто об этом думает.
- Data Documentation 101: Why? How? For Whom? [2] зачем, как и для кого описывать данные и связанную с ними инфраструктуру. Мысли более чем разумные, а я добавлю что автоматизация - это то без чего не выжить в мире документации. Жду не дождусь когда сделают ИИ который за тебя задокументирует код, API, данные и оставит пояснения где ещё надо вручную поправить потому что непонятно.
- The Data Journey Manifesto [3] 22 принципа из мира дата-аналитики. Все как бальзам на душу: не тестируй качество данных вручную, не доверяй поставщикам своим, знай как должно быть и как не должно быть, находи проблемы быстро. Хорошие тезисы, стоит на разные языки их перевести
- DashQL -- Complete Analysis Workflows with SQL [4] научная статья про DashQL язык интегрированный с SQL для построения цельных аналитических конвейеров данных. Статья любопытная, но хочется сразу ненаучного, а так чтобы примеры можно было посмотреть и эксперименты поделать
- Survey reveals AI’s impact on the developer experience [5] исследование от Github о том как разработчикам нравятся ИИ инструменты. Тут есть, конечно, некоторая циничность. Это примерно как если бы Google делал исследование о том как люди любят пользоваться поиском или Microsoft о том как люди любят писать тексты. Тем не менее любопытное там есть, области применения ИИ инструментов и ожидания от них.
- StackOverflow 2023 developer survey [6] результаты опроса разработчиков от StackOverflow, в случае данных два главных навыка остаются критично важными - это Python и SQL. Они же лидируют в общем зачёте, уступая только HTML/CSS и Javascript. Обратите внимание что у профессиональных разработчиков SQL важнее и чаще нужен чем Python, а у начинающих наоборот, Python с большим отрывом. Учите SQL если кратко;)

Ссылки:
[1] https://vadimdemedes.com/posts/generating-income-from-open-source
[2] https://towardsdatascience.com/data-documentation-101-why-how-for-whom-927311354a92
[3] https://datajourneymanifesto.org
[4] https://arxiv.org/abs/2306.03714
[5] https://github.blog/2023-06-13-survey-reveals-ais-impact-on-the-developer-experience/
[6] https://survey.stackoverflow.co/2023/

#readings #python #data
June 16, 2023
October 21, 2023
March 21, 2024
Хорошая статья [1] о том как добиться высокой производительности Python при обработке очень больших файлов с данными на примере данных конкурса One Billion Row Challenge [2].

Ключевое что можно из статьи вынести:
- да, по умолчанию Python медленный, но есть много способов его очень сильно ускорить
- Polars и DuckDB дают сильнейшее ускорение, буквально 30кратное и делают обработку данных особенно быстрой
- Pandas - это медленно, пора отказываться от него где возможно
- замена CPython на PyPy заметно ускоряет процесс
- всё это без использования GPU, на ноутбуке

А я не могу не вспомнить что уже есть One Trillion Rows Challenge [3] где Dask претендуют на лучшую скорость обработки данных [4]

Больше соревнований хороших и разных!

Ссылки:
[1] https://towardsdatascience.com/python-one-billion-row-challenge-from-10-minutes-to-4-seconds-0718662b303e
[2] https://1brc.dev
[3] https://t.iss.one/begtin/5529
[4] https://docs.coiled.io/blog/1trc.html

#data #dataengineering #contests #python
May 31, 2024