Python_BE1
9 subscribers
748 photos
251 videos
7 files
672 links
Канал по Python, полезный и интересный контент для всех уровней.
По вопросам сотрудничества @cyberJohnny
Download Telegram
🧠 GitHub раскрывает планы по следующей эволюции Copilot — от помощника к полноценному агенту.

🔗 В новом посте GitHub делится видением agentic workflows — когда Copilot становится не просто ассистентом, а полноценным участником команды, который умеет:
• понимать задачу целиком,
• планировать шаги,
• писать и менять код,
• создавать PR и даже инициировать обсуждение.

📌 Что важно:
— Copilot теперь работает в рамках цепочек действий (tasks → plans → code)
— Появляются memory и context-aware агенты
— Идея — не просто "автодополнение", а делегирование работы: от заведения ишью до его закрытия
— Акцент на безопасную, контролируемую автоматизацию

⚙️ Пример: вы создаёте issue → Copilot планирует, как решить → предлагает PR → вы ревьюите и мёрджите.

🛠 Уже сейчас GitHub тестирует:
- Copilot Workspace (автогенерация изменений по issue)
- GitHub Agents (task‑oriented агенты для DevOps и beyond)

📎 Читайте подробнее: (https://github.blog/news-insights/product-news/from-pair-to-peer-programmer-our-vision-for-agentic-workflows-in-github-copilot/)

Copilot перестаёт быть просто AI‑другом в редакторе — он становится сотрудником, который понимает задачи, работает в контексте проекта и помогает двигать код вперёд.

@python_be1
🚀 Шпаргалка по Docker 🐳

🔹 Сборка (Build)
🔹 Запуск (Run)
🔹 Шаринг (Share)
🔹 Управление (Management)

📌 Сборка образов
📍 Создать образ из `Dockerfile` и присвоить тег:
```

docker build -t myimage:1.0 .

```
📍 Посмотреть локальные образы:
```

docker image ls

```
📍 Удалить образ:
```

docker image rm alpine:3.4

```

📌 Запуск контейнеров
📍 Запустить контейнер на порту 5000:
```

docker container run —name web -p 5000:80 alpine:3.9

```
📍 Остановить контейнер:
```

docker container stop web

```
📍 Принудительно завершить контейнер:
```

docker container kill web

```
📍 Список запущенных контейнеров:
```

docker container ls

```
📍 Удалить все контейнеры:
```

docker container rm -f $(docker ps -aq)

```

📌 Работа с образами (Share)
📍 Скачать образ из реестра:
```

docker pull myimage:1.0

```
📍 Изменить тег у локального образа:
```

docker tag myimage:1.0 myrepo/myimage:2.0

```
📍 Запушить образ в реестр:
```

docker push myrepo/myimage:2.0

```

📌 Управление Docker (Management)
⚙️ `docker app` – Управление приложениями
⚙️ `docker image` – Управление образами
⚙️ `docker container` – Управление контейнерами
⚙️ `docker network` – Управление сетями
⚙️ `docker volume` – Управление хранилищами
⚙️ `docker stack` – Управление Docker Stack
⚙️ `docker swarm` – Управление кластером Swarm
⚙️ `docker system` – Управление всей системой

📝 Сохраните, поделитесь с друзьями и подписывайтесь на канал! 💙🐳

#devops #девопс

Подпишись 👉@i_DevOps (https://vk.com/club216361228)

@python_be1
🌟 Odigos — распределенный трейсинг без модификации кода. Этот open-source проект меняет правила игры в observability-инструментах. Инструмент умеет автоматически генерировать распределенные трейсы для приложений на Java, Python, .NET, Node.js и Go без необходимости правки исходного кода.

Под капотом используется eBPF для низкоуровневой инструментации, что особенно ценно для скомпилированных языков вроде Go. Трейсы сразу экспортируются в формате OpenTelemetry, что позволяет интегрироваться с любыми совместимыми системами мониторинга.

🤖 GitHub (https://github.com/odigos-io/odigos)

@python_be1
This media is not supported in your browser
VIEW IN TELEGRAM
⚙️ Подменяй любые импорты в Python “на лету” — без изменения кода

Если ты хочешь протестировать модуль, подменить зависимость, замокать внешний сервис или обмануть импорт — не обязательно редактировать исходники. Python позволяет перехватывать импорты прямо во время выполнения, через `sys.modules`.

Вот минимальный приём, который делает это прозрачно:

```

import sys
import types

# Создаём фейковый модуль
fake = types.SimpleNamespace()
fake.get_data = lambda: "подмена работает"

# Подменяем импорт
sys.modules['external_service'] = fake

# Теперь даже import будет работать
import external_service
print(external_service.get_data()) # → "подмена работает"
```

@python_be1
🚀 Быстрый HTTP‑сервер на базе asyncio.Protocol

В этом гайде показано как создать минималистичный HTTP‑сервер на Python, используя низкоуровневый API `asyncio.Protocol`, что делает его быстрее и гибче, чем решения на основе `asyncio.Streams` или фреймворков типа FastAPI.

Основные пункты:

1. Сокет-обработчик (`ConnectionHandler`)
- Наследуется от `asyncio.Protocol` — реакции на события `connection_made`, `data_received`, `connection_lost`.
- Хранит буфер, транспорт и маппинг маршрутов.

2. Парсинг HTTP-запросов
- В `data_received` накапливаются байты.
- Запрос считается полным при обнаружении `\r\n\r\n`.
- Затем из заголовков извлекаются `method`, `path`, другие поля.

3. Маршрутизация через декоратор
- Класс `HTTPServer` собирает функции-обработчики для путей.
- Обработчик вызывает либо корутины, либо возвращает статический HTML.

4. Отправка ответа
- Используется `asyncio.create_task` внутри колбэка, чтобы запустить `send_response` — где формируется ответ с HTTP-кодом, заголовками и телом.
- После `write()` соединение закрывается.

5. Простой запуск сервера
- Через `loop.create_server()` создаётся экземпляр `ConnectionHandler`.
- `serve_forever()` запускает обработку соединений.

6. Высокая производительность
Сервер обрабатывает ~100 000 запросов за ~4.2 с при нагрузке 100 одновременных соединений, в то время как FastAPI справляется за ~32 с :contentReference[oaicite:1]{index=1}.

Зачем это полезно:

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

Поддержка сообщества:
На Reddit статья получила высокую оценку как "отличный материал по Asyncio Protocols"

https://jacobpadilla.com/articles/asyncio-protocols

@python_be1
This media is not supported in your browser
VIEW IN TELEGRAM
Очередная нейронка выдает себя за «искусственный интеллект»

Этот «искусственный интеллект» на самом деле:

@python_be1
This media is not supported in your browser
VIEW IN TELEGRAM
🐍 Продвинутый Python‑совет дня

💡 Используй слоты (`__slots__`) для оптимизации классов, когда тебе нужно много однотипных объектов.

По умолчанию Python хранит атрибуты объектов в словаре (`__dict__`), что удобно, но неэффективно по памяти. Если ты точно знаешь, какие поля будут у объекта — зафиксируй их:

class Point:
slots = ("x", "y") # только эти атрибуты допустимы

def __init__(self, x, y):
self.x = x
self.y = y```

📈 Выгода:

Уменьшает использование памяти до 30–50% для миллионов объектов

Ускоряет доступ к полям (нет __dict__)

Запрещает создание произвольных новых атрибутов (меньше багов)

🧠 Подходит:

Для численных расчётов (вместо namedtuple)

При генерации большого количества однотипных объектов

В data-heavy структурах (например, парсеры, AST, графы и т.п.)

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

@python_be1
🚀 Хотите запустить сайт, блог или интернет-магазин в 2025 году?
Сейчас идеальное время — и вам не нужно тратить кучу денег.

🌐 Я лично использовал Hostinger для создания своего сайта. Это:
Быстро и надежно
Очень доступно (от $1.99 в месяц!)
Подходит для новичков
Поддерживает оплату криптовалютой
Включает бесплатный домен и SSL

🎁 ЭКСКЛЮЗИВНАЯ СКИДКА: Сэкономьте до 95%
🔗 bit.ly/4kioZuy
🎫 Промокод: YWGDRITION1D

Нужна помощь с началом? Просто напишите в личные сообщения — с радостью помогу 💬

@python_be1
This media is not supported in your browser
VIEW IN TELEGRAM
Хитрый совет по Python

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

Но если ты сначала преобразуешь список в множество, проверка икс ин сэт будет работать в сотни раз быстрее, особенно на больших данных.

Это работает, потому что Сэт в пайтон устроен как хеш-таблица, и проверка вхождения занимает постоянное время ).

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

@python_be1
🚀 15 AI‑инструментов, которые стоит взять на вооружение

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

🎬 Работа с видео
1. Runway.ml — генерация видео по тексту
2. Veed.io — монтаж, субтитры, озвучка онлайн
3. Invideo.io — создание роликов за минуты

🧠 Помощь в мышлении и генерации
4. ChatGPT.com — ассистент для ресёрча, генерации и правок
5. Grok.com — AI-помощник с быстрым доступом к знаниям
6. Deepseek.ai — генерация и анализ текста
7. Claude.ai — диалоговый ассистент от Anthropic
8. Perplexity.ai — умный поисковик с цитируемыми источниками

💻 Код, задачи и коммуникации
9. Cursor.com — AI-помощник для программиста
10. Notion.com — организация, заметки, задачи с AI-поддержкой
11. HubSpot.com — маркетинг, автоматизация и CRM
12. Canva.com — графика, презентации, визуал для соцсетей
13. Figma.com — интерфейсы, прототипы, совместная работа

🎨 Творчество
14. Midjourney.com — генерация изображений по промптам
15. RecCloud.com — быстрые AI-клипы и нарезки видео

#AI #FutureOfWork #Productivity #AItools #Automation

@python_be1
🤖 Илон Маск: ИИ станет умнее любого человека — меньше чем за 2 года,
а умнее всего человечества вместе — меньше чем за 5 лет

По мнению Маска, у ИИ нет потолка — рост идёт экспоненциально, и конца этому тренду не видно.
Он прямо говорит: через несколько лет модели смогут выполнять работу целых корпораций, действуя как единая система.

📌 Почему это звучит серьёзно?
Потому что Dario Amodei, CEO Anthropic, говорит буквально то же самое — с теми же сроками.
Он ожидает, что к 2027 году появится суперинтеллект, способный управлять крупными компаниями как цифровой "мозг-конгломерат".

🔥 Если они правы — нас ждёт резкий сдвиг:
– ИИ перестаёт быть инструментом и становится экономическим субъектом
– Компании превращаются в оболочки для моделей
– Решения, стратегии, оптимизация — передаются системам ИИ
– Конкуренция меняется: человек против облачного суперинтеллекта с API

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

#AI #ElonMusk #Superintelligence #DarioAmodei #Anthropic #FutureOfWork #AGI

@python_be1
This media is not supported in your browser
VIEW IN TELEGRAM
🔥 Amazon выпустили свою ИИ-IDE Kiro

Главная фишка - Kiro предлагает разработку на основе спецификаций, которая масштабируется далеко за пределы прототипов.

Внутри: автоматизация по событиям за счет хуков — сохранил файл → тест обновлён, API поменял → README поправлен. Всё работает в фоне

Внутри есть всё, что вы ожидаете от AI IDE: поддержка MCP, steering rules для настройки поведения агентов, агентный чат

Сделана на основе на Code OSS, так что работает с настройками и плагинами VS Code

Поддержка Mac, Win, Linux.

https://kiro.dev/blog/introducing-kiro/

@python_be1
🐍 Микросервисные архитектуры — как ретраи влияют на отказоустойчивость микросервисов

Ретраи, или повторные запросы, — важный механизм обеспечения отказоустойчивости распределенных систем. Необходимо быть в курсе последних изменений и понимать, как ретраи эволюционировали в электронике, программировании и Java-экосистеме. Об этом подробно расскажет техлид Т-Банка Дмитрий Фролов на конференции JVM Day 30 августа в Москве. На лендинге заявлены спикеры из разных компаний, которые разберут темы по Java, Scala и Backend.

Мероприятие пройдет в штаб-квартире Т-Банка, а половину собранных средств организаторы хотят перечислить региональным техническим вузам, чтобы помочь с развитием ИТ-сферы и подготовкой квалифицированных специалистов в разных городах страны. После докладов гостей ждут настолки с лото, афтепати и нетворкинг. Чтобы принять участие в JVM Day необходимо заранее пройти регистрацию (https://meetup.tbank.ru/conference/jvm-day/).

@python_be1
📗 Отличная находка для тех, кто хочет вкатиться в Linux через командную строку — Linux Command Line Computing.

Книга на английском, но написана простым и понятным языком. Подойдёт и новичкам, и тем, кто уже уверенно чувствует себя в терминале.

Особенно круто, что автор не ограничился теорией — он выложил практические задания (https://github.com/learnbyexample/cli-computing/blob/master/exercises/exercises.md) на GitHub, чтобы можно было сразу закреплять навыки прямо в командной строке.

Если давно хотел разобраться в Linux — с этой книгой будет проще и интереснее.

📌 Книга (https://learnbyexample.github.io/cli-computing/cover.html)

@python_be1
💡 STUMPY — библиотека для анализа временных рядов. Этот проект предлагает мощный инструмент для работы с временными последовательностями через вычисление matrix profile — специальной метрики, которая автоматически находит схожие паттерны в данных.

Инструмент поддерживает распределённые вычисления через Dask и GPU-ускорение через Numba. Технология особенно полезна для обнаружения аномалий, повторяющихся фрагментов и семантической сегментации. Библиотека одинаково хорошо работает как на небольших наборах данных, так и на временных рядах длиной в миллионы точек.

🤖 GitHub (https://github.com/stumpy-dev/stumpy)

@python_be1
🤖 ChatGPT обошел почти всех элитных программистов — выжил только один

На соревновании по оптимизационным алгоритмам модель от OpenAI вышла в финал 16 июля, сразу захватила лидерство…

Но под конец её обошёл Psyho — бывший программист команды OpenAI.

📌 Главное:
— внутренняя кодовая модель OpenAI показывает безумную эффективность

— возможно, это последняя победа человека

Дальше будет только сложнее.

@python_be1
This media is not supported in your browser
VIEW IN TELEGRAM
Когда единственный DevOps ушел в отпуск на неделю, но прод начал отдавать 500

8️⃣

@python_be1
👩‍💻 MegaParse (https://github.com/QuivrHQ/MegaParse) — высокопроизводительный парсер, который способен преобразовывать всевозможные типы документов (Word документы, PDF-файлы или даже презентации PowerPoint)!

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

🔐 Лицензия: Apache-2.0

🖥 Github (https://github.com/QuivrHQ/MegaParse)

@python_be1
🖥 Что выведет код ниже?
```

def append_to_list(val, my_list=[]):
my_list.append(val)
return my_list

print(append_to_list(1))
print(append_to_list(2))
print(append_to_list(3))

```
🤯 Подвох
Многие думают, что каждый вызов append_to_list() создаёт новый список, и ожидают вывод:

```

[1]
[2]
[3]

```
Но на самом деле Python выведет:

```

[1]
[1, 2]
[1, 2, 3]

```
🧠 Почему так происходит?
В Python значения аргументов по умолчанию вычисляются один раз — при определении функции, а не при каждом вызове.

Значение my_list=[] создаётся один раз и сохраняется между вызовами. Это работает как статическая переменная внутри функции.

Как это исправить?
Используй None как значение по умолчанию:

```

def append_to_list(val, my_list=None):
if my_list is None:
my_list = []
my_list.append(val)
return my_list

print(append_to_list(1)) # [1]
print(append_to_list(2)) # [2]
print(append_to_list(3)) # [3]

```
💡 Вывод
Не используйте изменяемые объекты (например, list, dict, set) как значения по умолчанию для аргументов функций в Python.

@python_be1
⚡️ Прокачивайся через практику: лучшие ресурсы для пет-проектов

Хочешь расти как разработчик — пиши код, а не только читай!

Вот 4 крутых ресурса, где ты будешь учиться через реальные задачи:

App Ideas
Список проектов от джуна до про: калькуляторы, трекеры, приложения. Есть примеры и полезные ссылки.
👉 github.com/florinpop17/app-ideas

Build Your Own X
Хочешь создать свой Git, Redis, Docker или даже ОС? Тут есть всё: гайды, туториалы и код на разных языках.
👉 github.com/codecrafters-io/build-your-own-x

Project-Based Learning
Обучение в формате "берёшь проект — делаешь". Примеры с пошаговыми инструкциями для разных языков.
👉 github.com/practical-tutorials/project-based-learning

Frontend Mentor
Получаешь макет — верстаешь сам. Отлично тренирует HTML/CSS/JS. Идеально для портфолио.
👉 frontendmentor.io

Пиши код, а не резюме. Эти ресурсы реально двигают вперёд.

@python_be1
This media is not supported in your browser
VIEW IN TELEGRAM
Linux: как узнать, какие процессы используют файлы — даже если они уже удалены

Иногда удаляешь огромный лог или архив, но место на диске не освобождается. Почему? Потому что процесс всё ещё держит дескриптор удалённого файла.

lsof | grep '(deleted)

Особенно полезно при отладке проблем с disk full, docker, journalctl, tmp и прочим

@python_be1