Code Mining
274 subscribers
28 photos
1 video
4 files
68 links
ML4Code во всей красе, анализ кода и артефактов: лицензии, уязвимости, процессы. Комментарии к актуальным и не очень новостям, аналитика, эпизодический авторский контент, мемасики.

При поддержке: ods.ai, profiscope.io
По вопросам — @alsmirn
Download Telegram
to view and join the conversation
Code Mining pinned «Open Source Licensing Course, final Вот мы и на финишной прямой курса. Сегодня в 19:00 заключительная лекция. План лекции: - множественное и двойное лицензирование; - картина лицензирования в PyPI и в Data Science; - свободные и несвободные инструменты…»
Open Source Licensing Course - итоги и продолжение

Вот и закончилась основная часть курса по лицензированию. Урррыа 🥳🎉

Some stats. Суммарно, на курсе объявилось 20 уникальных участников, считаем, что это довольно неплохо. До финиша дошло не так много людей, как хотелось бы. Тем не менее, мы не ожидали, а ВСЕ домашние задания решенил ЦЕЛЫЙ ОДИН слушатель, за что мы особенно признательны! 🔥

По нашему желанию, мы продолжаем курс и подготовим материал не по ручному разбору лицензий, а о том как всё настроить и следить автоматически при помощи доступного инструментария. Но дату объявим попозжа, чтобы не переносить лишний раз ;).

ЗЫ: Слайды только что прошедшей лекции мы опубликуем в начале следующей недели.
Awesome Open Source Licensing

https://github.com/CodeScoring/awesome-open-source-licensing

По итогу создания курса по Open Source Licensing под уютным крылом ods.ai (https://ods.ai/tracks/open-source-licensing-course), мы собрали кучу рефов, статей, видосиков и тулов, короче все знания, которые могут вам пригодиться в повседневной разработке программного обеспечения при работе с Open Source.

Stars, forks, вот это всё, и передайте коллегам!
Code Mining pinned «Awesome Open Source Licensing https://github.com/CodeScoring/awesome-open-source-licensing По итогу создания курса по Open Source Licensing под уютным крылом ods.ai (https://ods.ai/tracks/open-source-licensing-course), мы собрали кучу рефов, статей, видосиков…»
Code Mining
Open Source Licensing Course - итоги и продолжение Вот и закончилась основная часть курса по лицензированию. Урррыа 🥳🎉 Some stats. Суммарно, на курсе объявилось 20 уникальных участников, считаем, что это довольно неплохо. До финиша дошло не так много людей…
03. Open Source Licensing Course. Lecture.pdf
2.7 MB
Делимся слайдами с третьей лекции по лицензированию

Внутри:
- множественное и двойное лицензирование
- картина лицензирования в PyPI и в Data Science
- свободные и несвободные инструменты для лицензионной чистоты проектов и как с ними работать в рамках CI/CD
- подведение итогов по домашним заданиям
- ещё домашние задания

Продолжение в разработке.
GitHub Copilot Labs

В "скандальном" Copilot появились Labs для VSCode: если выделить кусочек кода, то он попытается его описать по-английски. Занимательная игрушка, можно потыкаться.

Продолжаем наблюдения.
CFP @ Mining Software Repositories, 2022

23-24 мая пройдет, более чем знаковая конференция анализа исходных кодов и всего такого — MSR 2022. В связи с чем организаторы объявили CFP. Важные даты на скрине, полные здесь (их много ;).
Pybaobab – отрисовка деревьев решений в технике Баобаб

Удобно и полезно. Под капотом старый добрый graphviz.

Установка:
pip install pybaobabdt (py >= 3.6)

Код (GPLv3) | Статья

ЗЫ: интересно, у скольких подписчиков сработал триггер на слово Баобаб? Выпускники Мат-меха, отмечаемся под постом ;).
Data Elka 2021 🥇

Сап, как говорится в одном небезызвестном сообществе ;).

Мы рады пригласить подписчиков на ежегодное замечательное событие Data Elka, в рамках которого подводятся итоги уходящего года и вручаются памятные подарки за все хорошее лучшим участникам OpenDataScience-сообщества 🤓.

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

Свои видео мы их публиковали в рубрике #видоснавыходные в перемешку с другими не менее интересными видосами.

Все CodeMining-видео последнего года можно посмотреть на страничке посвященной прошедшему DataFest'у: https://ods.ai/tracks/code-mining-df2021

Если вам что-то понравилось, то велкам поддержать наше скромное ML4Code-направление.

Видео номинированы в разделе Industry domains, голосовать можно тут (рега обязательна).

Результаты будут озвучены вживую на трансляции в субботу.

Во славу Дата Ёлке! 🎄🎄🎄
Почему знать про лицензионную чистоту важно?

Многие слышали про более чем десятилетний спор за нарушение авторских прав на части кода Java между Oracle & Google. Всё разрешилось в сторону последних 👩‍⚖️.

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

Сообществом весьма себе предполагается, что свежезарелиженая платформа TikTok Live Studio основана на OBS (лицензия GPL v2.0), что, как мы знаем из курса лицензирования, накладывает определенные условия, как минимум вскрытие пациента под той же лицензией и упоминание копирайта и лицензии :).

Почитать материалы с комментариями IANAL (I'am not a lawyer) специалистов можно на Hacker News.

Мы у себя в Лаборатории обязательно глянем кейс и расскажем об этом через некоторое время. Ну а для проактивных читателей это может быть хорошим Домашним заданием (или тестовым ;).
С новым годом! 🌲🌲🌲

Мы "немного" поспали и продолжаем. Всем здоровья и всего такого!

Что-то в ушедшем году не успели довести и опубликовать, поэтому в ближайшую неделю-две будем закрывать гештальты :).

ЗЫ: прикрутили реакшены 😘.
Hashing It Out: A Survey of Programmers' Cannabis Usage, Perception, and Motivation

В конце прошлого года вышла довольно любопытная статья об исследовании изменения сознания у разработчиков под воздействием Каннабиса от Университета Мичигана.

В исследовании поучаствовало 803 разработчика (из них 450 программиста с полной занятостью). Довольно интересно почитать про мотивацию, ожидания и реальные результаты исследуемых.

Почитать есть что, но самое интересное и ожидаемое на картинках выше.

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

Статья: https://arxiv.org/abs/2112.09365
PyNose: a Test Smell Detector for Python

А ещё в прошлом году у JetBrains Research вышла определялка говнокода в python-тестах. Работает для Unittest & Pytest. Версия 1.0.0 вышла в декабре'21.

Виды test smell, которые выделяют авторы:
- Assertion Roulette
- Conditional Test Logic
- Constructor Initialization
- Default Test
- Duplicate Assert
- Empty Test
- Exception Handling
- Lack of Cohesion of Test Cases
- Magic Number Test
- Obscure In-Line Setup
- Redundant Assertion
- Redundant Print
- Sleepy Test
- Suboptimal Assert
- Test Maverick

Использовать можно в виде плагина к Pycharm.

Код: https://github.com/jetbrains-research/pynose

Подробности в статье: https://arxiv.org/abs/2108.04639. Единственное, она описывает предыдущую версию, которая в ветке ASE2021.

Upd. Уточняем как использовать:
1. берете сборку плагина отсюда (.zip)
2. ставите по инструкции
3. берете тесты, можно вот эти или свои какие-нибудь ;)
4. ...
5. profit, в IDE появляются подсказки, как показано на гифках
Использование публичных наборов данных в коммерческом ПО

Коллеги из ODS поделились прекрасной статьёй: Can I use this publicly available dataset to build commercial AI software? Most likely not.

Поднят крайне важный вопрос для DataScience сообщества. Поясняем, оказывается (wat?), далеко не все публично доступные наборы данных можно использовать для построения коммерческих решений.

Авторы рассматривают лицензионные соглашения 6 популярных датасетов использующихся в Computer Vision (CIFAR-10, ImageNet, Cityscapes, FFHQ, VGGFaces2 и MS COCO) и делают "прекрасное" заключение, что натренированные на этих данных модели, как минимум, не могут коммерциализироваться.

Пример результатов анализа лицензии датасета CIFAR-10 приведен на скрине.

Логично было предположить подобное, но для многих это может быть прямо открытием века 💣.

Посмотрим, чем ответит сообщество ;).

ЗЫ: а мы в свою очередь поняли, чем ещё дополнить курс по Open Source лицензированию.
Using public datasets in commercial software

Great paper: Can I use this publicly available dataset to build commercial AI software? Most likely not.

An extremely important question for the Data Science community: it turns out (wat?) that not all publicly available datasets can be used to build commercial solutions 💣💣💣.

Authors examine license agreements of 6 popular datasets used in Computer Vision (CIFAR-10, ImageNet, Cityscapes, FFHQ, VGGFaces2 and MS COCO) and conclude that the models trained on these data can not be commercialized at least.

An example of the results of the CIFAR-10 dataset's license analysis is shown in the screenshot.

It was logical to assume this, but for many community members this may be the opening of the century.

Prepared by @codemining for ods.ai. Subscribe!
code2vec: Learning Distributed Representations of Code

Мы уже ранее рассказывали про построение эмбеддингов по коду в нашем обзорном докладе на DataFest Siberia v2, но есть смысл выделить отдельным постом.

Послушать по-русски:
https://www.youtube.com/watch?v=qm2hB5Bi49A&t=507s

Поиграться можно здесь:
https://code2vec.org/

Сорцы | Статья
Продолжая рубрику #языкибываютразные, напишем про ещё один внезапный язык, Rockstar.

Язык с динамической типизацией, в котором исходный код представляется в виде текстов похожих на песни.

Вдохновлен рок-хэви-хэйр-металлическими балладами 80-90-х годов 🎸🎸🎸.

Сайт | Спека

Есть множество реализаций, в т. ч. на Python, JS, Java, OCaml, etc.

Пример кода приближенного вычисления числа π:
My life was a mushroom cloud, then
it was nothing
Sin is unquenchable
My cell was empty

Your love was a jackhammer shaking the bars
Your life is a fungus
Your love is mycorrhizal
My life was empty without your love

Until your life is my life,
build my life up
Put your love into Me
Put my life into the song,
until your love is stronger than the song
Put the song of Me into Me
Knock the song down

Put your love into You



Продолжение тут, больше примеров здесь. Надеемся, что вам весело ;).
Download trends for PyPI

Для вызнавания трендов популярности проектов в python-сообществе прибегают к изучению данных о скачивании (внезапно ;).

К сожалению, PyPI отдает статистику только в моменте, да и не то :/.

Тем не менее, есть ряд сервисов, которыми можно воспользоваться и поиграться:
- https://pypistats.org/
- https://pepy.tech/

Поработать с данными напрямую можно через Google BigQuery, в котором можно поковыряться и поиграть с данными: тут и версии питона, откуда скачивали и т.п.

@codemining