IT-новости про Python, которые стоит знать

Собрали в одном месте самые важные ссылки
читайте авторский блог

     20.07.2023       Выпуск 500 (17.07.2023 - 23.07.2023)       Статьи

Jira worklog без плагинов

В связи с ситуацией и отключением плагинов табеля рабочего времени в Jira я начал изучать тему получения нужной информации по трудозатратам через Jira API. Даже нашел несколько статей на эту тему на уважаемом ресурсе. Но, как оказалось, некоторые моменты устарели, а некоторые были упущены авторами, либо они на них просто не наткнулись.

     20.07.2023       Выпуск 500 (17.07.2023 - 23.07.2023)       Статьи

Пишем свой Chat GPT

В июне у OpenAI вышла новость, что в модель GPT можно передавать API сторонних приложений, что открывает широкий круг возможностей для создания специализированных агентов. Мы с командой решили написать свой чат для работы с GPT4 от Open AI и другими ML/LLM моделями c возможностью кастомизации под внутренние нужды компании. Проект выложен в открытый доступ, скачать можно по ссылке. Сейчас он находится в активной разработке, так что будем рады видеть ваши замечания / пожелания в комментариях. Также присылайте ваши pull requests с исправлениями. 

     20.07.2023       Выпуск 500 (17.07.2023 - 23.07.2023)       Статьи

От маргинального языка к самому популярному в мире: как изменился Python за двадцать лет

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

     19.07.2023       Выпуск 500 (17.07.2023 - 23.07.2023)       Статьи

DesktopETL — кросс-платформенный прототип ETL-системы, или как регулярно загружать XML/JSON и сохранять в XLS/CSV

Идея моего домашнего проекта началась с простой, на первый взгляд, задачи: с потребности конвертировать файлы формата XML в формат XLS (или CSV) для последующего анализа. И я был наивен, чтобы попробовать решение «в лоб» и с помощью Excel импортировать богатый внутренний мир SAP Business Objects, описанный в иерархической структуре XML, в табличную форму, — и примерно через час мое сознание, в очередной раз выдав исключение о переполнении памяти, подключило опыт, который намекнул, что иерархические структуры заранее неизвестной глубины проще всего обрабатывать посредством рекурсии.

     19.07.2023       Выпуск 500 (17.07.2023 - 23.07.2023)       Статьи

VoiceChat на несколько человек с блэкджеком и (Web?)UI над UDP socket python

Лучший способ допилить что‑то — это придумать заново. Всё что вы прочитаете далее — есть мой гайд по изготовлению велосипеда и не претендует на звание полноценного презентабельного проекта.

     19.07.2023       Выпуск 500 (17.07.2023 - 23.07.2023)       Вопросы и обсуждения

Python Bytes: #344 AMA: Ask Us Anything

Очередной выпуск англоязычного подкаста Python Bytes

     18.07.2023       Выпуск 500 (17.07.2023 - 23.07.2023)       Статьи

Selenium. Автоматизация тестирования календаря (Datepicker)

Задача, у нас есть несколько страниц фильтром данных по дате с помощью поля с календарем (далее datepicker). Необходимо создать инструмент, который позволит задавать дату и локаторы элементов (идентификаторы например см. css-селекторы) управления календарем. Инструмент бы уже реализовал алгоритм выбора даты в календаре. Алгоритм выбора даты включает шаги описанные на схеме 1.

     18.07.2023       Выпуск 500 (17.07.2023 - 23.07.2023)       Статьи

Превращаем любой фреймворк в FastAPI. На прицеле Flask

Я уверен, вы знаете, что такое FastAPI. По результатам опросов Stackoverflow этот фреймворк уверенно входит в топ любимых фреймворков не только питонистов, но и разработчиков в целом. И не зря: за счет свеого подхода к сериализации данных он предоставляет действительно потрясающий опыт разработки.

     18.07.2023       Выпуск 500 (17.07.2023 - 23.07.2023)       Статьи

Simba: Симуляция десятков тысяч частиц в потенциале Леннарда-Джонса на чистом Python с GPU-ускорением

Примерно год назад я начал проект симулятора динамики частиц на Python, используя библиотеку Numba для проведения параллельных расчетов на видеокарте. Сейчас, добравшись до определенной вехи в его развитии, я решил открыть исходный код и выложить его на GitHub для всех, кому интересны подобного рода эксперименты.

     18.07.2023       Выпуск 500 (17.07.2023 - 23.07.2023)       Статьи

Крестики-Нолики (Tic Tac Toe) с компьютером на Python. Мой первый шаг к Machine Learning. Часть 1

Я любитель Python и совсем недолго осваиваю язык всеми доступными способами. Моя цель - понять принципы машинного обучения и его взаимосвязь с нейросетью. Никакого опыта в IT не имел, тем не менее постараюсь излагать общепринятой терминологией, не судите строго. Моя основная профессия не менее сложная, далека от IT, но для упрощения работы в нее все больше внедряются AI и ML. Мною движет лишь интерес к современным технологиям, программированию.

     17.07.2023       Выпуск 500 (17.07.2023 - 23.07.2023)       Статьи

Пять декораторов Python, которые могут сократить код в два раза

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

     17.07.2023       Выпуск 500 (17.07.2023 - 23.07.2023)       Релизы

Вышел Savant 0.2.4: компьютерное зрение на базе глубокого обучения для Nvidia Jetson и dGPU

После месяца напряженной работы мы выпустили новую версию Savant (0.2.4), с новыми функциями и примерами использования.Savant — это фреймворк компьютерного зрения с открытым исходным кодом для создания приложений компьютерного зрения на базе нейронных сетей, работающий на стеке Nvidia. Он упрощает разработку динамических, отказоустойчивых конвейеров видео‑аналитики, использующих рекомендованные Nvidia инструменты для центров обработки данных и граничных ускорителей.Savant построен на базе DeepStream и предоставляет высокоуровневый уровень абстракции для быстрой разработки конвейеров компьютерного зрения на базе Nvidia DeepStream.

     17.07.2023       Выпуск 500 (17.07.2023 - 23.07.2023)       Статьи

Визуализация реальных масштабов проклятия размерности

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

     17.07.2023       Выпуск 500 (17.07.2023 - 23.07.2023)       Видео

Как мы делаем CPython быстрее. Прошлое, настоящее и будущее

Многие из вас слышали, что Python 3.11 значительно быстрее 3.10. Как нам это удалось? И как мы делаем 3.12 и последующие выпуски ещё быстрее? В своём выступлении я обзорно расскажу, какие техники мы используем для ускорения CPython. Постараюсь не использовать сложную терминологию и обойтись диаграммами, простыми примерами и математикой из средней школы. Наконец, я попытаюсь спрогнозировать на сколько станут быстрее последующие выпуски CPython, и как далеко можно вообще зайти в деле ускорения Питона.

     17.07.2023       Выпуск 500 (17.07.2023 - 23.07.2023)       Видео

Внутри нового специализирующего адаптивного интерпретатора CPython 3.11

Python 3.11 вышел в свет 24 октября 2022 года, получив новый «специализирующий адаптивный интерпретатор». Я хочу рассказать вам о том, как ваш код начал оптимизировать сам себя по ходу исполнения, используя разные техники, позволяя в среднем достичь 25% ускорения. Расскажу о сложностях, с которыми можно столкнуться в ходе создания оптимизаций для динамических языков. А также о том, что будет в Python 3.12 и дальше.

     15.07.2023       Выпуск 499 (10.07.2023 - 16.07.2023)       Статьи

Ping пакеты как временное хранилище данных на python raw socket

Payload (данные) в ping пакете действительно есть, однако до реальной пользы им далеко - это английский алфавит (нет, я не испытываю ненависть к латинице, просто мне хотелось бы уметь редактировать это содержимое).

     14.07.2023       Выпуск 499 (10.07.2023 - 16.07.2023)       Статьи

Простой бэкап базы данных и статики для небольшого Django-проекта

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

     13.07.2023       Выпуск 499 (10.07.2023 - 16.07.2023)       Статьи

Highload-проект с нуля за 2 месяца

Как за ограниченное время из готовых компонентов создать и запустить по-настоящему нагруженный проект? Рассмотрим пример метрик, архитектуры, технических ограничений и подходов к проектированию систем на примере проекта «Экологический диктант».

     13.07.2023       Выпуск 499 (10.07.2023 - 16.07.2023)       Статьи

FVWA (Flask Vulnerable Web Application)

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

     13.07.2023       Выпуск 499 (10.07.2023 - 16.07.2023)       Статьи

Экстренное шифрование данных

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