Code Mining
942 subscribers
90 photos
4 videos
8 files
173 links
ML4Code во всей красе, анализ кода и артефактов: лицензии, уязвимости, процессы. Комментарии к актуальным и не очень новостям, аналитика, эпизодический авторский контент, мемасики.

При поддержке: ods.ai, @codescoring
По вопросам — @alsmirn
Download Telegram
Forwarded from CodeScoring Updates
Наши последние выступления

А пока мы готовим очередной релиз, предлагаем посмотреть наши последние доклады о проблематике композиционного анализа программного обеспечения (да-да, тот самый Software Composition Analysis).

Highload Foundation
Безопасность цепочки поставки Open Source-компонентов
Видео | Презентация

PHDays 11
Актуальные вызовы композиционному анализу ПО
Видео | Презентация

DevOpsConf 2022
Protestware. Как много в этом слове!
Видео | Презентация
🔥5
Diagram as Code for prototyping cloud system architectures

Полезная библиотека/утилита для отрисовки архитектур на python.

Целевая аудитория — архитекторы облачных сервисов, но применимо, мягко говоря, везде, где надо рисовать и версионировать диаграммы. Под капотом Graphviz.

В библиотеке реализована поддержка отображения иконок большинства облачных провайдеров (AWS, Azure, GCP, Kubernetes, DO, OpenStack, Elastic и пр.), также есть набор пиктограмм для отрисовки Flowchart-диаграмм и возможность поставить свои изображения.

Больше примеров.

Сам проект живет здесь:
https://github.com/mingrammer/diagrams.
👍5🔥1
GPT-3 пытается объяснить код

Увлекающий сознание многих Copilot построен на OpenAI Codex, потомке авторегрессионной генеративной модели GPT-3. А что будет если скормить исходники самой GPT-3?

Саймон Уиллисон попробовал и получил (внезапно!) неплохие результаты. Примеры для python & javascript. Вы можете попробовать самостоятельно.

Понятное дело, что именно осмысления машиной здесь нет, только объяснение конструкций, но вот как раз эта функция возможно и была бы полезна самым начинающим разработчикам.
🔥3
BLOOM — autoregressive Large Language Model (LLM)

Не успели мы написать о том как GPT-3 умеет из коробки объяснять код, так вот ещё новость приехала. В открытый доступ выложена новая авторегрессионная мультиязыковая модель BLOOM, BigScience Language Open-science Open-access Multilingual.

https://huggingface.co/bigscience/bloom

И это действительно выглядит как тектонический сдвиг, потому как это первая открытая LLM (176 млрд. параметров) обученная в условиях полной прозрачности.

Что внутри:
- 46 естественных языков
- 13 языков программирования

Немного статистики:
> 900 исследователей
> 50 стран участниц
> 3 мес. обучения (Jean Zay Public Supercomputer)

Про датасет | про железо.

Контекст работы с кодом нам интересен особенно, конечно.

Говорят, что есть: Java, PHP, C, C++, Python, JavaScript, C#, Ruby, Lua, GO, TypeScript, Scala, Rust... perl'a нет ;)

Осталось только добраться и пощупать. Кто у нас тут недавно YaLM 100B поднимал?

PS. Обратим внимание, что модель лицензирована BigScience Responsible AI License v 1.0 (RAIL), которая носит разрешительный характер "при стремлении к ответственному использованию Модели". Вобщем, нужно ещё покурить подробности того, что авторы подразумевают под отвестственным использованием.
1👍1
Если DOOM в Grafana, показался слишком простым, то можно насладиться вот такой 🔥 новостью:
Forwarded from Denis Sexy IT 🤖
This media is not supported in your browser
VIEW IN TELEGRAM
Щас будет сложна, но теперь DOOM можно запустить в DOOM, чтобы играть в DOOM прямо внутри DOOM.

Наконец человечество дошло до сингулярность — после адаптации DOOM под тесты на беременность и прочие калькуляторы, мы пришли к тому, что DOOM запускает сам себя, это как придти туда, откуда вышли.

Ютубер и по совместительству кодер под ником Kgsws использовал уязвимость DOS-версии Doom II, которая заставляет запускать Chocolate Doom (современный порт игры, совместимый с оригинальной DOS-версией игры) внутри оригинала в виде анимированной текстуры.

Если прям совсем технически, то чувак наткнулся на команду «SpawnMapThing», обычно используемую для размещения оружия, врагов и т. д. на уровнях. Определенная часть кода, которая определяет в каком состоянии находится предмет или враг, может быть заменена исполняемым фалом, как например DOS-версии Doom.

Пройдя по тёмным коридорам и убив пару импов, ты садишься в комнату с приглушённым светом, отключаешь HUD. и погружаешься в doom-метаверс.

Код здесь.
🤯6👍1🔥1
The Good, the Bad, and the Ugly: Mining for Patterns in Student Source Code

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

Исследователи из Бельгии порешали эту задачку представив применение их алгоритма FREQTALS, который анализирует абстрактные синтаксические деревья (AST) и находит паттерны плохой разработки.

Все примеры для Python, но авторы думают расшириться на Java, Cobol & C#.

Статья здесь.
🔥5👍2
Process Mining Handbook

Для всех, кто увлекается сабжем. Спрингер открыл свободный доступ Process Mining Handbook. Книга которая должна дать должное погружение для всех желающих и сочувствующих области.

На пяти сотнях страниц изложены основные топики и современные подходы к анализу процессов:
- Process Discovery
- Conformance Checking
- Data Preprocessing
- Process Enhancement and Monitoring
- Assorted Process Mining Topics
- Industrial Perspective and Applications

Забирать здесь.
🔥4
Data Fest Siberia 3 CFP 🎉

Внезапный па-бам! 💣💣💣

Первый ОФФЛАЙН Data Fest Siberia 3 после доооолгого перерыва. Пройдет в Новосибирске в Академгородке 8 октября.

Code Mining будет там, ждем ваших заявок!

Темы секций:
- Reliable ML (Interpretable ML, Causal Inference, A/B testing, ML System Design)
- NLP
- MLOps
- Code Mining
- ML & Security
- LeanDS / DS Processes & Teamleading
- CV
- Open Source
- Medicine
- Process Mining
- ML Trainings

Интерактивы и нетворкинговые активности
- Собеседования в никуда
- Проекты участников
- DS Career панель
- Unconference

Страница конференции.

Подать заявку в форме, если есть что обсудить/уточнить (сомневаетесь, нужен совет и т.п.), то писать @alsmirn.

До встречи на фесте!
6🎉4
PyData Meetup @SPb

И мы продолжаем анонсы предстоящих событий с нашим участием.

В эту субботу, в Санкт-Петербурге пройдет собрание сообщества PyData SPb (@pydata_spb).

Тезисы от организаторов:
На сей раз мы поговорим про питонопакеты и безопасность, про структуры данных и низкий уровень, а также про бигдату. И, возможно, опробуем пару более компанейских форматов.

Собственно "про питонопакеты и безопасность" мы и расскажем.

17 сентября, старт в 17:00 @failoverbar.

Участие бесплатное, регистрация приветствуется.
👍5
Energy Efficiency across Programming Languages

Увлекательное и довольно очевидное по выводам исследование опубликовали коллеги из Португалии в 2017 году.

Рецепт прост: взяли 27 языков, взяли приличный список программ для замера эффективности исполнения (потребление энергии, время, ресурсы памяти), свели результаты в таблички.

Конечно не без выводов, но таблица как бы намекает ;)

Насладиться научным подходом можно здесь.

ЗЫ: только тссс, зелёным не говорите, а то ещё с забастовками против Python будут выходить.
😁8👎1
HackConf 2022

У кого свободное воскресенье, приходите на HackConf!

Это слет сообществ, событие пройдет 18 сентября 2022 года в Санкт-Петербурге оффлайн.

Слет IT сообществ ставит цель — объединение сообществ, личные знакомства, общение и развитие. Основные направления: Разработка и администрирование — Dev/DevOps, безопасность — HackZone, работа с большими данными, искусственным интеллектом и машинным обучением — Data Science и секция по электронике — Hardware.

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

Где? СПб, пл. Победы, д. 1, Park Inn Пулковская
Когда? 18 сентября с 10.00 до 18.00

Канал HackConf: @hackconfspb
Программа и регистрация: https://hackconf.ru/
👍2
Иванниковские чтения!

Сегодня в Казани проходит конференция «Иванниковские чтения».

Программа (pdf) бомба! Такого масштаба по нашей теме в России ещё не было ;).

По факту это Data Analysis for Software Engineering, который представлен в двух параллельных треках:

- «Трансформация и анализ программ» (12.30-18.30). Ссылка на трансляцию.

- «Управление данными и информационные системы» (12.30-18.10). Ссылка на трансляцию.

Докладов 30 штук! И всё выглядит очень серьезно. Что поймаем — расскажем на канале.

Ну круто же, да? В следующем году будем готовиться с докладами, а сегодня посидим на круглом столе по безопасной разработке с нашим @codescoring.
🔥10
На пленарном заседании тоже рассказывают интересные вещи.

https://youtu.be/L7ZRV2Voee4
👍5🔥1
Data Fest Siberia 3 🎉🎉🎉

В эту субботу, 8 октября состоится долгожданная конференция Data Fest Siberia 3.

Про анализы этого нашего кода будет рассказывать Валентин Малых (Huawei Noah's Ark lab) с докладом: "AI4SE: Search by Code".

Валентин расскажет, как они применили современные технлогии NLP для задачи поиска по коду в разрезе решения продуктовой задачи.

Ну а если в целом про программу, то с расписанием можно познакомиться здесь:
https://ods.ai/events/datafestsiberia3/schedule

Будет четыре потока с крутецкими докладами, присоединяйтесь!

Мероприятие бесплатное, но регистрироваться заранее обязательно (Join и погнали!).
🔥3👍2🎉2
Подготовили и делимся с вами таймкодами стрима докладов с секции «Трансформация и анализ программ» на прошедших Иванниковских чтениях. Сохраняйте в закладках и приятного просмотра! Программа на сайте конференции.

#видоснавечер

- [video] Подходы, направленные на повышение эффективности фаззинг-тестирования компонентов защищенной ОС

- [video] Усовершенствованный фаззинг на основе грамматик

- [video] Сильно оптимистичные решения для динамической символьной интерпретации

- [video] Инструмент динамического анализа IoT-систем ELF с поддержкой символьных вычислений

- [video] Обнаружение ошибок взаимоисключающей блокировки в программах на языке С# при помощи методов статического анализа

- [video] Статический анализатор для языков с поддержкой исключений

- [video] Поиск использований освобожденного ресурса в исходном коде на языке C# методами статического анализа

- [video] Повышение точности статического анализа за счет учета значений полей класса, имеющих единственное константное значение

- [video] Обзор методов статического анализа для поиска утечек памяти

- [video] Автоматическое тестирование LLVM-программ со сложными входными структурами данных

- [video] Генерация шаблонов исправлений кода на основе репозиториев

- [video] Применение статического анализа исходного кода для поиска проблем с производительностью: примеры из практики

- [video] Построение распределения данных и генерация кода при распараллеливании на гетерогенный вычислительный кластер

- [video] Большие трансформеры для генерации кода

- [video] Автоматизация создания окружения при динамическом анализе ПО на основе полносистемного анализа с использованием QEMU

@codemining
🔥6
PiterPy 2022

Скоро стартует конференция PiterPy, и мы как члены программного комитета получили "ссылочку для скидочки" для участников CodeMining. Движухи много и вся она обещает быть не только интересной, но и полезной ;).

Доклады по бэку, тестированию, ML, DevOps & MLOps, а также Vanilla Python. Кстати, в последний мы прокрались с докладом про статический анализ популярных библиотек и выковыривание всякого интересного вместе с Николаем Марковым.

Помимо докладов планируются круглые столы про Open Source, NLP и безопасность.

Конференция включает в себя два дня Онлайна (18 и 19 октября) и один день Оффлайна (28 октября) и стартует уже на этой неделе. Записи все останутся.

Есть опция участия в формате "Community day", что дает возможность бесплатного участия во второй день Онлайн конференции, а вся конференция всё-таки стоит денег.

Для посещения конференции "по полной", организаторы сделали промокод для CodeMining, который дает неплохую скидку для физических лиц:
- 20% на Double Online
- 25% на Online + Offline

Промокод: codemining2022JRGpc
Регистрация по ссылке.
3🤩2
Searching by Code in the Instructions

На прошедшем Data Fest Siberia 3 в Академпарке был замечательный доклад про это наше AI4SE (Artificial Intelligence for Systems Engineering), и мы рады подсветить его в рубрике #видоснавечер.

Докладывался Валентин Малых из Huawei Noah's Ark lab и подсветил как саму AI4SE, так и задачу, которую они решали у себя в Лаборатории.

Сам доклад именно про NLP4SE, где вводным образом раскрыт вопрос: Codex, Codex Glue, Copilot, ну и конечно сама задача организации подсказок для разработчиков на основании данных из StackOverflow. Причем подсказок не только на основании code-запроса, но и traceback'а с которым столкнулись сами разработчики.

Приятного просмотра!
🔥32👏1💩1