Абьюзер СhatGPT 💄 REBORN
9.45K subscribers
318 photos
47 videos
56 files
164 links
ЕСЛИ БЕРЁТЕ МОИ ПРОЕКТЫ - УКАЗЫВАЙТЕ АВТОРА
Download Telegram
⌛️ Время идет и Python не стоит на месте.

Хочу поделиться тем, какие новые стандарты в Python уже приняты или станут обязательными в ближайший год, и насколько это радикально меняет практику. После перехода от requirements.txt к pyproject.toml (о котором я говорил раньше) это следующий этап эволюции экосистемы.

Вот краткая выжимка:

1) PEP 735 - Dependency Groups в pyproject.toml
Теперь вместо нескольких файлов requirements‑dev.txt, requirements‑test.txt и пр. можно удобно описать группы зависимостей прямо в pyproject.toml в блоке [dependency-groups]. Например, группа dev может включать тестовые, линтеры и прочие зависимости с логическим именованием. Инструменты вроде pip, uv и IDE научатся распознавать эти именованные группы и устанавливать их командой pip install --dependency-groups=dev,test


2) PEP 751 - единый формат lock‑файла pylock.toml
Теперь «состояние» зависимостей фиксируется в стандартизированном файле pylock.toml, который описывает точные версии, хэши, источники, extras и платформенные условия. Установщик может выполнить установку без резолвера, ориентируясь на lock‑файл, что делает процесс быстрее, безопаснее и воспроизводимым. Lock-файл написан в TOML‑формате и совместим с несколькими инструментами упаковки - pip, Poetry, PDM, uv и др.


3) PEP 761 - Sigstore вместо PGP для подписи релизов CPython
С Python 3.14 PGP‑подписи больше не обязательны - теперь релизы CPython подписываются через Sigstore - открытый, более удобный механизм. Sigstore поддерживает OpenID-идентификацию и даже офлайн‑верификацию, проще в автоматизации и внедрении. Это реально упрощает процесс проверки целостности скачанных архивов и повышает криптографическую надёжность распределения


4) PEP 784 - compression.zstd в стандартной библиотеке Python

В Python 3.14 появляется модуль compression.zstd и новый namespace compression.*, который объединяет zlib, bz2, gzip и другие под единым API. Теперь можно сжимать и распаковывать данные с помощью алгоритма Zstandard без внешних библиотек, с API, схожим на lzma или bz2. Zstd обеспечивает высокий уровень сжатия и скорость разжатия, особенно полезен для лонов или large‑файловых архивов.

5. PEP 771 - Default Extras («рекомендуемые» extras по умолчанию)
PEP 771 вводит возможность указать default-optional-dependencies в [project], чтобы extras автоматически включались при обычной установке пакета. Это удобно для пакетов с опциональными компонентами вроде recommended или all, которые не хочется заставлять включать вручную. Пока это черновой этап (Draft), но активно обсуждается и ожидается реализация в 2026 году. 👀 Например, pip install foo сам активирует [recommended], если оно задано по умолчанию.


🕙 Все эти улучшения уже либо действуют (PEP 735, 751, 761, 784), либо находятся в финальной стадии обсуждения (PEP 771). В 2025–2026 годах они станут отраслевым стандартом — самое время подготовиться и внедрить их заранее.

‼️ В больше части это касается тех, кто уже серьезно работает. Если только начали учиться - не забивайте пока голову.
Please open Telegram to view this post
VIEW IN TELEGRAM
279👍3🤔1
Кстати, а что такое "PEP" в Python, и почему это важно? 🤔 Вчера вечером писал об этом "PEP" пост и как-то не удосужился даже рассказать, что это такое...

🖥 PEP (Python Enhancement Proposal)это официальное предложение по развитию Python. Прежде чем в языке появится новая крутая фича, она проходит долгий путь обсуждения и утверждения в виде PEP.

Это не просто скучные документы 🖥, а источник самых важных изменений:

- Стиль кода? Это PEP 8. Он диктует, как форматировать код, чтобы его было легко читать.
- Удобные f-строки? Спасибо PEP 498.
- Подсказки типов (type hints)? Их стандартизировал PEP 484, изменив подход к написанию большого и сложного кода.
- Философия Python? Прочитайте PEP 20 («The Zen of Python»), чтобы понять дух языка.

🫰 PEP - это открытый диалог между разработчиками ядра Python и сообществом. Именно благодаря этому процессу язык остаётся последовательным, современным и удобным для миллионов программистов.

Теперь вы знаете чуть больше :)
Please open Telegram to view this post
VIEW IN TELEGRAM
58👍20🔥9❤‍🔥5🤓4💅2
"Технический долг" 💱 - это довольно популярный термин среди разработчиков. Хочу рассказать вам, что они значит и чем опасно.

Представь, что ты взял быстрый кредит на разработку, но проценты по нему - это замедление проекта и баги. 🐞 Это и есть технический долг.

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


🤷‍♂️ Почему он вообще появляется? Причины могут быть разными:

- Горящие дедлайны: «нам нужно запустить это вчера!»;
- Недостаток опыта: когда разработчик просто не знает лучшего решения;
- Экономия на качестве: «пока и так сойдет, потом переделаем»;
- Стремление к быстрому результату: когда скорость важнее чистоты кода.
Каждый такой компромисс - это еще один «кредит».


👀 Главная опасность техдолга в том, что его «проценты» растут незаметно. Сначала ты просто тратишь чуть больше времени на добавление новых функций. Потом исправление одного бага порождает три новых. Мотивация команды или твоя собственная падает, потому что работать со сложным и запутанным кодом - настоящее мучение. В итоге, проект замедляется до полной остановки, а на рефакторинг уходят месяцы.
Please open Telegram to view this post
VIEW IN TELEGRAM
48👍7🔥5🤬2🤓2🤔1🙈1
😜 Я - деградировал. И вот почему:

Все мы (я тоже) злоупотребляем "Ctrl+C", "Ctrl+V". Мне постоянно кажется, что я экономлю время, но на самом деле - обкрадываю сам себя 🤷‍♂️

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

🔥Я видел, как проекты тонули в техническом долге из-за таких «быстрых» решений. Скопированный код часто неоптимален и плохо вписывается в архитектуру. Вместо роста и чистого кода - получаем хаос, который потом приходится расхлебывать часами.

Поэтому мой вам совет - в следующий раз, когда рука потянется к копированию, остановитесь. Напишите решение сами, пусть даже оно будет неидеальным. Это ваш самый ценный опыт. Хотя бы иногда практикуйте, ибо когда в очередной раз сервера openai/Gemini упадут - придется брать отпуск :D

P.S. но параллельно у меня очень сильно поднялся скилл в "обьяснении чего я хочу", в плане
Please open Telegram to view this post
VIEW IN TELEGRAM
158😁28👍12❤‍🔥7🤔4🤣4😱3🤝2
Какой Ваш возраст?)
Anonymous Poll
33%
До 18
51%
18-25
8%
25-30
8%
35+
😁179🤔81😨45🍌38🕊28🤨20🌚17🏆12
This media is not supported in your browser
VIEW IN TELEGRAM
Появился повод перейти на Windows 11 ;D

Windows 11 получила очень удобную функцию: быстрое завершение зависших приложений прямо с панели задач, без обращения к «Диспетчеру задач». Для этого достаточно кликнуть правой кнопкой мыши по значку программы и выбрать «Завершить задачу».

Чтобы включить: «Параметры» -> «Система» -> «Для разработчиков» -> «Завершить задачу».


Спустя столько лет, ахахаха
113🤬75🙉1911👍8🤯6🤨3🍌1
🖥 Короткий скрипт опишете, что изображено на фото:

from transformers import BlipProcessor, BlipForConditionalGeneration
import torch
from PIL import Image

processor = BlipProcessor.from_pretrained("Salesforce/blip-image-captioning-base")
model = BlipForConditionalGeneration.from_pretrained("Salesforce/blip-image-captioning-base")

image_path = "img_4.jpg"
image = Image.open(image_path)

inputs = processor(images=image, return_tensors="pt")

with torch.no_grad():
output = model.generate(**inputs)

description = processor.decode(output[0], skip_special_tokens=True)

print("Image description:", description)


requirements.txt:


transformers
torch
Pillow
Please open Telegram to view this post
VIEW IN TELEGRAM
46🤬42😁5❤‍🔥2😡2🤯1🤝1
❤️‍🔥 Нашел скрин своего старенького творения, ахахаха.

🔥 Создал среду разработки внутри среды разработки...

Из интереса и ради практики делал.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
77🤬38😁9🥰5💯2💘2😡2💔1
😭 Сорян парни, выпал, плохая неделя, все против.

Вот такой софт сразу исходником даю. Пакетно накладывает водяные знаки/баннеры на изображения/видео, есть предпросмотр и для того, и для того.

👨‍💻 Позицию можно регулировать пресетами или по x,y. Настраиваются шрифты, размеры, прозрачность.

Для корректной работы нужно установить в PATH:

- ImageMagick;
- FFMPEG.


🚀 Скачать можно тут.

Всем хорошего дня!

P.S. если кому-то нужно будет, соберу в .exe.
Please open Telegram to view this post
VIEW IN TELEGRAM
🤬73👍4010🍌7❤‍🔥3🥰1💔1😡1
🖥 В целом мой курс будет начинаться с предложения скачать вот такой вот софт. Это не обязательно но многим может упростить их путь в начале:

1) Поможет скачать последнюю актуальную версию IDE под ОС пользователя;
2) А также Python из последних актуальных релизов.

Будут и рекомендации по правильной установке.

📱 Будет кросс-платформа. Софт сам определяет, на какой платформе запущен, от этого и делает выбор, для какой платформы качать установщик".

Страничку с choco я еще заполню командами. Сейчас там уже есть вкладки (медиа, разработка, веб-разработка и т.д.) с командами для экспресс-установки рабочих инструментов. В одну строчку можно установить все те же IDE, Python, Node JS, драйвера, кодеки и даже Steam :D


🧠 На третьей страничке - ссылки на ресурсы, которые явно помогут в обучении, особенно на начальном этапе. Постарался собрать там и RU/Eng источники, чтобы всем все было понятно.

Пока что так. .exe под Windows мб дам сюда сегодня-завтра.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
😁38🤬24🤣1812👍3🔥3🍌2
💥 Для разработчиков в Telegram может быть полезно - скрипт для парсинга ID всех доступных к покупке подарков 🎁 в ТГ, их ID.

import asyncio
from telegram import Bot

async def get_telegram_gifts(bot_token):
bot = Bot(token=bot_token)
gifts = await bot.get_available_gifts()
for gift in gifts.gifts:
print(f"ID подарка: {gift.id}, Эмодзи: {gift.sticker.emoji}, Размер файла стикера: {gift.sticker.file_size}, Стоимость: {gift.star_count}")



# Замените на токен бота!
bot_token = "ТОКЕН_АДМИН_КРАСАВЧИК"
asyncio.run(get_telegram_gifts(bot_token))


 pip install python-telegram-bot


🤔В дальнейшем можно использовать в своих проектах для авто-выдачи/выплаты/обмена подарков в Телеграм. Используйте, потому что интернет пока не пишет, как найти ID подарков в Телеграм)

P.S. пост со старого канала, но видел в обсуждениях, кому-то нужно было.
Please open Telegram to view this post
VIEW IN TELEGRAM
🤬43🥰14👍84❤‍🔥2🤝1
Media is too big
VIEW IN TELEGRAM
Код красивой "залипалки" (бесконечная анимация), которые часто размещают под нарезками из фильмов/видео в ТикТок\Shorts.

Скачать.

Если есть идеи как сделать лучше - пишите.
🤣3110👍8🤬3😡2
"Технический долг" 💱 - это довольно популярный термин среди разработчиков. Хочу рассказать вам, что они значит и чем опасно.

Представь, что ты взял быстрый кредит на разработку, но проценты по нему - это замедление проекта и баги. 🐞 Это и есть технический долг.

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


🤷‍♂️ Почему он вообще появляется? Причины могут быть разными:

- Горящие дедлайны: «нам нужно запустить это вчера!»;
- Недостаток опыта: когда разработчик просто не знает лучшего решения;
- Экономия на качестве: «пока и так сойдет, потом переделаем»;
- Стремление к быстрому результату: когда скорость важнее чистоты кода.
Каждый такой компромисс - это еще один «кредит».


👀 Главная опасность техдолга в том, что его «проценты» растут незаметно. Сначала ты просто тратишь чуть больше времени на добавление новых функций. Потом исправление одного бага порождает три новых. Мотивация команды или твоя собственная падает, потому что работать со сложным и запутанным кодом - настоящее мучение. В итоге, проект замедляется до полной остановки, а на рефакторинг уходят месяцы.
Please open Telegram to view this post
VIEW IN TELEGRAM
🤬35🔥7🤣52
🚀 Даю вас своего "Злюку". Как мне кажется, находка для Телеграм-админов. Сегодня еще будет бот, который пропускает людей в закрытый канал, оплату будет принимать в TG-stars.

По сути — настоящий швейцарский нож для администратора:

🛡 Фильтрует спам, нежелательные ссылки, упоминания и стоп-слова. Умеет автоматически выдавать предупреждения и банить нарушителей. Главное- устранил нюанс, где можно было редактировать сообщения и после редакции бот не реагировал.
⚙️ Настраивайте стоп-слова, исключения, разрешенные ссылки, триггеры для автоответов и многое другое через админку.
🛡 Устали от спам-ботов? Включите проверку по CAPTCHA для новых участников! Пользователю нужно будет ввести символы в личном чате с ботом, чтобы получить доступ к группе. Функцию можно включать и выключать глобально.
📬 Пользователи могут легко связаться с вами по разным темам (реклама, техподдержка, сотрудничество) или предложить новость для вашего канала.
✍️ Публикуйте посты в свои каналы прямо через бота, с inline-кнопками!
📊 Получайте периодические отчеты о работе бота и статистику модерации.
💰 В боте есть удобное меню для тех, кто захочет поддержать админа и его работу.


📱 Если вы ищете комплексное решение для управления вашими Telegram-сообществами, этот бот — то, что вам нужно! 👍
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔47🤬25🔥1211👍4💯4😱2❤‍🔥1
🐳 Я иногда даю тут проекты, которые Docker-ready. Вы спрашиваете, как запустить... И клиенты тоже иногда интересуются, как это запустить на своем сервере...

Так вот, полный список команд с объяснениями (Linux!!!):

1) Установка и проверка:

# Обновляем список пакетов
sudo apt update

# Устанавливаем Docker
sudo apt install -y docker.io

# Запускаем и добавляем Docker в автозагрузку
sudo systemctl start docker
sudo systemctl enable docker

# Устанавливаем Docker Compose
sudo apt install -y docker-compose


Чтобы проверить, что все сделали четко:

docker --version
docker-compose --version


Должно показать версии Docker и Docker-compose.

2) Разворачивание, запуск контейнера.

После того, как вы установили это все (делать нужно 1 раз(!!!)), нужно перейти в директорию с файлами проекта (где лежат Dockerfile, docker-compose.yml).

Пример:
cd /root/dialog_bot/


После этого, пишите команду:

sudo docker-compose up --build -d


Если сделали все четко, контейнер соберется и сразу же будет в работе.

Вот что делают "флажки":

- up: Создает и запускает контейнеры.
- --build: Принудительно пересобирает образ перед запуском. Это полезно, если ты внес изменения в Dockerfile или файлы проекта.
- -d: Запускает контейнеры в фоновом (detached) режиме.

Просмотреть логи с контейнера после можно по команде:

sudo docker-compose logs -f


3) А что на Windows?

Чтобы запустить на Win 10, 11, нужно:

1. Перейдите на официальный сайт Docker и скачай установщик для Windows.
2. Установите Docker Desktop:
- Запустите скачанный установщик.
- Следуйте инструкциям на экране. Очень важно: убедитесь, что выбрана опция "Use WSL 2 instead of Hyper-V" (Использовать WSL 2 вместо Hyper-V), если она доступна и твой Windows 10 это поддерживает (версия 2004 и выше, сборка 19041 и - выше). WSL 2 обеспечивает лучшую производительность. Если опции нет или твоя система старее, Docker Desktop может использовать Hyper-V.
- Установка может потребовать включения функций "Контейнеры" и "Подсистема Windows для Linux" (WSL). Установщик обычно предлагает сделать это автоматически или дает инструкции.

3. Запусти Docker Desktop после установки. Иконка кита появится в системном трее. При первом запуске может потребоваться некоторое время на инициализацию. Убедись, что Docker Desktop показывает, что он запущен (иконка кита в трее статична и не анимирована).


Важно: каждый раз, когда захотите собрать контейнер на Win 10, 11, нужно запускать Docker Desktop!

Дальше можете прямо в IDE, в папке с проектом в консоли писать:

docker-compose up --build -d


И все. Команды тут те же, что и на Linux.

Полезно?
Please open Telegram to view this post
VIEW IN TELEGRAM
🥰25🤬12👍76🔥3❤‍🔥1🤷‍♂1
🚀 Часто в инфо-поле начал появляться n8n. Хочу о нем рассказать, может кто-то не знаком.

И главный вопрос:

Что лучше для автоматизации — использовать готовый инструмент типа n8n или писать все с нуля, то есть заниматься ручной разработкой?


🤷‍♂️ Что такое n8n?

n8n — это платформа для визуальной автоматизации. Вы соединяете кубики-«ноды» (приложения и сервисы) между собой, чтобы они обменивались данными и выполняли задачи без вашего участия. Гибко, наглядно и не всегда требует навыков программирования.

Что же выбрать: n8n или код? 🤔

🏹 n8n — ваш выбор, если:

- Скорость — главный приоритет. Собрать рабочий сценарий в n8n можно за минуты, а не за дни или недели;
- Бюджет ограничен. Использование готовых интеграций и визуального конструктора значительно дешевле, чем оплата часов разработчика;
- Задача типовая. Нужно связать популярные сервисы (Telegram, Google Sheets, CRM, Trello)? В n8n для этого уже все готово;
- Нужна гибкость без хардкора. Вы не программист, но хотите иметь возможность легко менять логику процесса.


👨‍💻 Ручная разработка — ваш выбор, если:

- Нужна 100% кастомизация. У вас уникальная бизнес-логика, нестандартные API или требования к интерфейсу;
- Требуется максимальная производительность. Для высоконагруженных систем, обрабатывающих тысячи запросов в секунду, кастомный код, написанный под конкретную задачу, будет эффективнее;
- Интеграция очень специфична. Нужно подключить редкий или внутренний корпоративный софт, для которого нет готовых «нод»;
- Полный контроль над кодом и окружением является критически важным в серьезных проектах.


Итог таков: не стоит противопоставлять эти два подхода. Это инструменты для разных задач. Для 60% стандартных кейсов автоматизации n8n будет быстрее, дешевле и проще в поддержке. Например, бот для записи на маникюр, в больницу и т.д.

Для масштабных же проектов, рассчитанных на тысячи пользователей, n8n - это шутка. Где нужна уникальная логика и высокая производительность, — без ручной разработки не обойтись. ⚙️

#automation #n8n #dev #nocode #tools
Please open Telegram to view this post
VIEW IN TELEGRAM
🤬22🔥106👍1😡1
⚙️ Генерирует QR со ссылки, любого текста.

import qrcode
from PIL import Image

def generate_qr_code(data, filename="qr_code.png"):
qr = qrcode.QRCode(
version=1,
error_correction=qrcode.constants.ERROR_CORRECT_L,
box_size=10,
border=4,
)
qr.add_data(data)
qr.make(fit=True)

img = qr.make_image(fill_color="black", back_color="white")
img.save(filename)
return filename

if __name__ == "__main__":
print("Генератор QR-кодов")
input_data = input("Введите текст или ссылку для кодирования в QR-код: ")
output_filename = input("Введите имя файла для сохранения QR-кода (например, my_qr.png) или нажмите Enter для 'qr_code.png': ")

if not output_filename:
output_filename = "qr_code.png"
elif not output_filename.lower().endswith(('.png', '.jpg', '.jpeg', '.bmp', '.gif')):
output_filename += ".png"

saved_file = generate_qr_code(input_data, output_filename)
print(f"QR-код успешно создан и сохранен как '{saved_file}'")


Ниже зависимости:

pip install qrcode Pillow
Please open Telegram to view this post
VIEW IN TELEGRAM
🥰33🤬166🍌6👍3🤣3❤‍🔥1🙏1