eleday
الذهاب إلى القناة على Telegram
Канал про it, python и около того Актуальные ссылки: [скоро будут] лайв — @eleday_live Автор — @eleday_me Реклама — https://telega.in/c/eleday
إظهار المزيد4 751
المشتركون
-124 ساعات
-137 أيام
-9130 أيام
جاري تحميل البيانات...
القنوات المماثلة
سحابة العلامات
الإشارات الواردة والصادرة
---
---
---
---
---
---
جذب المشتركين
يوليو '26
يوليو '26
+12
في 0 قنوات
يونيو '26
+74
في 0 قنوات
Get PRO
مايو '26
+66
في 0 قنوات
Get PRO
أبريل '26
+99
في 0 قنوات
Get PRO
مارس '26
+228
في 0 قنوات
Get PRO
فبراير '26
+301
في 1 قنوات
Get PRO
يناير '26
+122
في 0 قنوات
Get PRO
ديسمبر '25
+104
في 1 قنوات
Get PRO
نوفمبر '25
+147
في 0 قنوات
Get PRO
أكتوبر '25
+126
في 0 قنوات
Get PRO
سبتمبر '25
+106
في 0 قنوات
Get PRO
أغسطس '25
+138
في 0 قنوات
Get PRO
يوليو '25
+175
في 1 قنوات
Get PRO
يونيو '25
+93
في 0 قنوات
Get PRO
مايو '25
+106
في 0 قنوات
Get PRO
أبريل '25
+104
في 0 قنوات
Get PRO
مارس '25
+213
في 0 قنوات
Get PRO
فبراير '25
+159
في 0 قنوات
Get PRO
يناير '25
+146
في 2 قنوات
Get PRO
ديسمبر '24
+325
في 0 قنوات
Get PRO
نوفمبر '24
+408
في 0 قنوات
Get PRO
أكتوبر '24
+364
في 1 قنوات
Get PRO
سبتمبر '24
+1 388
في 0 قنوات
Get PRO
أغسطس '24
+277
في 0 قنوات
Get PRO
يوليو '24
+509
في 1 قنوات
Get PRO
يونيو '24
+890
في 0 قنوات
Get PRO
مايو '24
+1 468
في 0 قنوات
Get PRO
أبريل '24
+1 595
في 0 قنوات
Get PRO
مارس '240
في 0 قنوات
Get PRO
فبراير '24
+91
في 0 قنوات
| التاريخ | نمو المشتركين | الإشارات | القنوات | |
| 08 يوليو | 0 | |||
| 07 يوليو | +1 | |||
| 06 يوليو | +1 | |||
| 05 يوليو | +1 | |||
| 04 يوليو | +2 | |||
| 03 يوليو | +3 | |||
| 02 يوليو | +3 | |||
| 01 يوليو | +1 |
منشورات القناة
Repost from еледей
Итоги школы кратенько
А то спрашиваете
ЕГЭ
Информатика 98
Математика 97
Русский язык 97
Физика 90
Красный аттест, золотая медаль
Дважды призер регионального этапа ВСОШ по ИБ (и, соответственно, дважды участник закла)
Поступление в процессе, как только, сразу вам обо всем напишу
| 2 | Конфиги в Python
Я уже делал видео по файлам конфигурации и переменным окружения, но сейчас давайте полностью разберемся с этой темой. Будем повышать уровень "правильности"
- Введение
Практически у любой программы есть такие параметры, которые могут меняться в зависимости от окружения или настроек. Например, порт, на котором работает веб-приложение, или секретный ключ для генерации сессий
1 Уровень. Хардкод
Самое простое, что можно делать: не задумываться и писать все эти параметры прямо в код
bot = Bot(
token="123456789:AAH7f8J...",
api_url="https://api.telegram.org",
)
Это сработает, но есть две огромные проблемы:
- Код скоро станет большим, а этих параметров — очень много. Если, например, поменяется токен бота, а такое может случаться довольно часто, найти его будет непросто
- Такой код нельзя публиковать в общедоступный репозиторий: любой сможет просто взять токен и пользоваться ботом в своих целях. Секрет перестанет быть секретом
2 Уровень. Файл конфигурации
Сначала решим первую проблему. Давайте все изменяемые параметры вынесем в отдельный файл, например, config.py
config.py
TOKEN = "..."
API_URL = "https://api.telegram.org"
app.py
from config import TOKEN, API_URL
bot = Bot(
token=TOKEN,
api_url=API_URL,
)
Теперь поменять любой из таких параметров будет очень удобно. Также настройки можно объединить в класс. Это позволяет собрать их в одном пространстве имён и упрощает расширение конфигурации в крупных проектах
config.py
class Config:
TOKEN = "..."
API_URL = "https://api.telegram.org"
app.py
from config import Config
bot = Bot(
token=Config.TOKEN,
api_url=Config.API_URL,
)
3 Уровень. Переменные окружения
Теперь давайте решим проблему секретов в коде. Секреты (ключи, токены и т. д.) у каждого разработчика свои, поэтому их нужно вынести так, чтобы они не попадали в публичный репозиторий (например, на GitHub). Для этого используются переменные окружения
Переменные окружения — это именованные пары ключ-значение, которые хранятся в окружении операционной системы и доступны запущенным приложениям
Например:
DB_HOST=localhost
DB_PORT=5432
API_TOKEN=secret_token
DEBUG=true
Программа может получить их во время выполнения:
import os
host = os.getenv("DB_HOST")
token = os.getenv("API_TOKEN")
Чтобы задать переменные окружения, можно использовать модуль python-dotenv и .env файл
pip install python-dotenv
.env
TOKEN=...
config.py
import os
from dotenv import load_dotenv
load_dotenv()
class Config:
TOKEN = os.getenv("TOKEN")
API_URL = "https://api.telegram.org"
Переменные окружения в git не попадут, а .env мы добавим в .gitignore. Теперь git не увидит никаких секретов, а другим разработчикам будет легко их настроить для себя
4 Уровень. Pydantic
В конфиге могут быть разные типы данных, чтобы упростить себе жизнь и не проверять их вручную, можно использовать библиотеку Pydantic-Settings
pip install pydantic pydantic-settings
from pydantic import SecretStr
from pydantic_settings import BaseSettings, SettingsConfigDict
class Settings(BaseSettings):
model_config = SettingsConfigDict(
env_file=".env"
)
host: str = "127.0.0.1"
port: int = 8000
debug: bool = False
token: SecretStr
settings = Settings()
Эта библиотека сама:
- загрузит значения из переменных окружения
- приведёт нужные типы
- проверит обязательные поля и корректность данных
- вызовет понятное исключение, если что-то пойдёт не так
- защитит секреты от утечек в логи
В итоге мы прошли путь от обычного хардкода до типизированной конфигурации, которая безопаснее, удобнее в сопровождении и лучше подходит для реальных проектов
@eleday | 540 |
| 3 | Лимиты на нуле, а задачи по кодингу не решились? Проект горит, код надо дописать прямо сейчас, а официальные апстримы зажимают рейты и выставляют конские счета.
Хватит переплачивать. Переходи на CLODEX.XYZ — подключай его как OpenAI-compatible endpoint и вызывай флагманы через привычное SDK в сотни раз выгоднее:
GPT 5.5 xHigh — $0.045 / 1M токенов
GPT 5.4 — $0.04 / 1M токенов
Claude Opus 4.8 / 4.7 — $0.30 / 1M токенов
С докой интеграция займет пару минут. Подключай GPT к Cursor/Codex, а Claude к Claude Code Desktop, юзай в скриптах. Платформа легко держит миллиарды токенов в сутки.
⚡️ Тест за 3 клика:
Регистрируйся на CLODEX.XYZ.
Вбивай промокод CODE.
Получай 26 рублей на баланс.
Этого хватит на 5 000 000 (5M) токенов ChatGPT. Нужен Claude? Активируй код и пиши в ЛС саппорту: @clodex_sup — сразу переключим пакет. Запускай на полную! 🚀 | 437 |
| 4 | Мои мысли про подобные посты
https://t.me/eleday_live/664 | 1 163 |
| 5 | Как вам посты про линукс утилиты? | 1 206 |
| 6 | ss — утилита для просмотра сетевых соединений и сокетов
ss (Socket Statistics) — это быстрый и удобный инструмент для анализа всего, что связано с сетью: TCP/UDP-соединения, порты, сокеты и т.д. Он пришёл на смену старому netstat и работает гораздо быстрее, так как обращается напрямую к ядру
Все соединения:
ss
Флаги:
-t — TCP
-u — UDP
-l — только открытые порты
-n — не резолвить имена хостов и портов
-p — вывести PID и имя процесса
-s — краткая статистика по всем сокетам
-4 — IPv4
-6 — IPv6
-m — использование памяти сокетами
-r — резолвить имена хостов (обратное -n)
Открытые порты:
ss -tuln
Порты + процессы:
sudo ss -tulp
Кто занимает порт:
sudo ss -tulp | grep :8080
Соединения с конкретным адресом:
ss -t dst 8.8.8.8
Все соединения процесса:
sudo ss -tp | grep <PID>
Сатистика по сокетам:
ss -s
Зачем может пригодиться
- Приложение не запускается — порт занят
sudo ss -tulp | grep :3000
kill <PID>
- Проверить, какие сервисы слушают порты на сервере
sudo ss -tuln
- Посмотреть, с кем общается конкретный процесс
sudo ss -tp | grep <PID>
@eleday | 1 178 |
| 7 | lsof — утилита для просмотра открытых файлов и сетевых соединений
В Linux почти всё считается файлом: обычные файлы, каталоги, устройства, сокеты и сетевые подключения.
lsof позволяет узнать, какая программа занимает порт, какой процесс использует файл, какие сетевые подключения открыты и др.
Установка:
sudo apt install lsof
Посмотреть все открытые файлы:
lsof
Узнать, какой процесс использует файл:
lsof /path/to/file
Показать файлы процесса:
lsof -p 1234
Показать файлы, открытые пользователем:
lsof -u username
Посмотреть все сетевые соединения:
lsof -i
Только TCP/UDP:
lsof -i <tcp/udp>
Найти процесс, который занимает порт:
sudo lsof -i :8080
Показать только слушающие порты:
sudo lsof -i -P -n | grep LISTEN
Зачем может пригодиться
- Приложение не запускается, потому что занят порт
Находим процесс:
sudo lsof -i :<PORT>
Завершаем:
kill <PID>
- Не получается отмонтировать флешку:
sudo umount /mnt/usb
target is busy
Проверяем, кто использует устройство:
sudo lsof /mnt/usb
- Узнать, какие процессы подключены к определённому серверу:
lsof -i @192.168.1.100
- Посмотреть все соединения конкретного процесса:
lsof -p 1234 -i
@eleday | 1 121 |
| 8 | Тг боты для доступа к ИИ (chatgpt, gemini) еще актуальны? | 1 553 |
| 9 | tcpdump — утилита для анализа сети
Консольная программа, которая позволяет перехватывать и анализировать пакеты, проходящие через сетевой интерфейс
Полезна, когда нужно посмотреть, что происходит с сетевыми пакетами на компьютере
Установка:
sudo apt install tcpdump
Посмотреть весь трафик:
sudo tcpdump
Определённый порт:
sudo tcpdump port <port>
Определённый IP:
sudo tcpdump host <ip>
Определённый интерфейс:
sudo tcpdump -i <interface>
Все интерфейсы:
sudo tcpdump -i any
Только входящий/исходящий трафик:
sudo tcpdump -Q <in/out>
Без DNS-резолвинга (быстрее и удобнее):
sudo tcpdump -n
Без DNS и определения портов:
sudo tcpdump -nn
Запись в файл:
sudo tcpdump -w capture.pcap
Чтение из файла:
sudo tcpdump -r capture.pcap
Показать только определенный протокол (tcp, udp, icmp и др.):
sudo tcpdump <protocol>
Определённая подсеть:
sudo tcpdump net 192.168.1.0/24
IP + порт:
sudo tcpdump host <ip> and port <port>
Исключить IP:
sudo tcpdump not host <ip>
Исключить порт:
sudo tcpdump not port <port>
Только новые TCP-подключения (SYN):
sudo tcpdump 'tcp[tcpflags] & tcp-syn != 0'
Показать содержимое пакетов в ASCII:
sudo tcpdump -A
Показать содержимое в HEX и ASCII:
sudo tcpdump -X
Ограничить количество пакетов:
sudo tcpdump -c 100
Документация:
man tcpdump
@eleday | 1 615 |
| 10 | Сегодня работаем, но вот в выходной…
Кстати, в «Исходном коде» публикуем мемы, делимся опытом 9+ летней разработки и помогаем с собесами в IT
Заходи: https://t.me/codesrc_it | 435 |
| 11 | Интересуешься ИИ и новыми инструментами?
Тогда канал https://t.me/medvedevtxt?erid=2W5zFJDcv49 будет очень в тему.
Автор последние пару лет плотно сидит на ИИ-инструментах и пишет о них без сложностей и воды — просто по-человечески рассказывает, что реально работает, какие подписки стоят денег, а какие не нужно даже пробовать.
И отдельный кайф — 🎁 для подписчиков канала работает его бот @nanobananychbot: генерация картинок на Nano Banana 2!
5 бесплатных генераций каждый день. А ещё автор в конце июня разыграет 3 безлимитных доступа к боту (бесконечные генерации в Nano Banana 2 и GPT Image 2.0).
В шпаргалке выше — лайфхак из его поста, как получать от Нанобананы (и любой другой image-модели) реально красивые картинки. Сохраняйте, заходите, читайте 👇
https://t.me/+mLi_ai1SAdFlOGYy?erid=2W5zFJDcv49 | 0 |
| 12 | Пропадаю, пропадаю
До ЕГЭ меньше месяца, готовлюсь, ребята, поэтому до канала руки не доходят, к сожалению
Вернуться в темп планирую, когда — не знаю | 2 055 |
| 13 | Разбираемся с устройством баз данных
При разработке практически любого программного продукта очень скоро возникает потребность в хранении данных. Для этого используют специальные сервисы — СУБД (система управления базами данных)
Сегодня залезем внутрь и разберёмся, как они работают. Для начала немного вводных
Оговорка: обсуждаем стандартные SQL СУБД, не углубляемся в разновидности и их особенности
- Взаимодействие с БД
Программе, которой необходимо сохранить или получить какую-то информацию, абсолютно не нужно знать, как устроены базы данных, в каком формате и как там все хранится. Вместо этого она использует SQL (Structured Query Language) — специальный язык для общения с СУБД
Например, чтобы получить имя пользователя с id = 42:
SELECT name FROM users WHERE id = 42;
А чтобы добавить красную лампу
INSERT INTO devices (type, color) VALUES ('lamp', 'red');
- Схема
В SQL-базах данные сохраняются в таблицы. В каждой таблице есть колонки — поля с определённым типом и строки — записи об отдельных объектах, например:
Таблица users
id name age admin
1 Вася 45 false
2 Петя 67 true
- Лезем внутрь
Чтобы разобраться с тем, как работает СУБД, проследим путь от SQL-запроса до возвращенных данных
1. Прием запроса, парсинг
СУБД принимает SQL-запрос от пользователя, проверяет его на синтаксические ошибки и из набора букв преобразует в AST (Abstract Syntax Tree)
Когда-то подробно коснёмся этой темы
2. Семантический анализ
Запрос сопоставляется с реальной базой. Проверяется, существуют ли запрашиваемые таблицы, совпадают ли типы данных
3. Планирование
СУБД определяет оптимальный план выполнения задачи: генерирует различные варианты, оценивает их сложность и выбирает лучший
4. Исполнение
Каждый узел плана — оператор, который вызывает следующий. Например:
- Взять строку из таблицы
- Проверить, выполняется ли условие (id = 42)
- Добавить строку в результат, если выполняется
- Повторить для следующей строки
5. Хранение данных
Перед записью данные сериализуются в бинарный формат и сохраняются на диск блоками по 4–16 КБ — страницами
6. Индексы
Специальная структура — индекс — позволяет осуществлять более быстрый поиск. Он хранит отсортированные ключи и соответствующие указатели на реальные данные. Для поиска по проиндексированному полю не нужно перебирать всю таблицу, можно просто взять уже сохраненный указатель
Если индекса нет, СУБД выполняет полный перебор таблицы, проверяя каждую строку
7. Кэширование
Диск медленный, поэтому СУБД хранит часто используемые страницы в оперативной памяти, что позволяет реже читать диск и ускоряет работу
8. Транзакции
Транзакция — группа операций, которые должны выполниться вместе
Обычно СУБД следуют наборам требований ACID:
- Atomicity (атомарность) — транзакция рассматривается как единое целое: либо выполнится все, либо ничего
- Consistency (согласованность) — исполнение транзакции приводит систему в корректное состояние
- Isolation (изоляция) — транзакции, исполняющиеся в одно время не должны мешать друг другу
- Durability (устойчивость) — после успешного выполнения транзакции ее результат сохраняется даже при сбое системы
9. Журналирование
Перед тем, как выполнить действие, СУБД записывает его в журнал. Это позволяет восстанавливать данные в случае сбоя
10. Конкурентность
Может случится такое, что несколько транзакций одновременно обращаются к одним и тем же данным. Чтобы избежать конфликтов, используются блокировки и MVCC (версионность данных)
После обработки данные возвращаются клиенту. В случае, если возвращать ничего не требуется (при добавлении, изменении или удалении записей), возвращается статус: успешно или нет
Итоговая схема от запроса до данных:
- SQL
- парсинг
- AST
- план выполнения
- исполнение
- индексы / диск
- результат
Что думаете про такой формат больших постов? На какие темы хотели бы видеть ещё?
@eleday | 1 712 |
| 14 | Готовишься к Python-собеседованию?
В @CrackPythonBot — реальные вопросы, которые сейчас задают в Яндексе, Тинькофф, Авито и FAANG. Не учебные, а живые — те самые, что прозвучат на твоём собесе.
— Сотни вопросов: Python, Django, async, SQL, системный дизайн
— От джуна до сеньора — реальные вопросы со всех уровней
— Подробный разбор: не просто «правильный ответ», а как ответить, чтобы впечатлить
— 5 минут в день, прямо в Telegram. Бесплатно.
👉 Открыть бота → | 0 |
| 15 | За что дизы? | 0 |
| 16 | IP vs MAC — почему у устройств в сети есть сразу два адреса
Серия WEB с нуля
1. IP — логический адрес, может меняться. Используется на уровне L3 для маршрутизации между сетями
2. MAC — уникальный физический адрес. Я бы скорее назвал его идентификатором, чем адресом. Используется на уровне L2 внутри локальных сетей
@eleday // MAX | 0 |
| 17 | Kubernetes: это сложно? Мы разберем основные ошибки, чтобы вы не наступали на те же грабли
Приглашаем на вебинар: «Неочевидные проблемы Kubernetes, которые легко упустить»
👉 Этот вебинар создан для тех, кто ещё ни разу не работал с Kubernetes, боится первых шагов
Спикеры:
Виталий Лихачев
🔹 Инженер по надёжности сайта (SRE) в нидерландской компании в туристической отрасли (TravelTech)
🔹 10+ лет опыта
Всеволод Севостьянов
🔹Ведущий инженер в Lokalise
🔹10+ лет на разных языках (php, java, Go)
О чем поговорим?
✅Архитектура k8s
✅Мифы о k8s
✅Проблемы ресурсов и планирования
✅Механизмы, позволяющие системе регулярно проверять состояние контейнеров и приложений, работающих в подах (healthchecks) и жизнь подов
✅Хранение данных в кубах
✅Наблюдаемость (observability)
✅Релизные циклы
✅Риски инфраструктуры
🗓 6 мая, 19:00 мск
✍️ ЗАНЯТЬ МЕСТО НА ВЕБИНАРЕ | 0 |
| 18 | Появился удобный AI-инструмент для подготовки к найму и прохождения собеседований - Sobes Copilot.
Это ассистент, который помогает прямо во время интервью: слушает диалог, распознаёт речь в реальном времени и подсказывает, как лучше ответить. Работает в Zoom, Google Meet, Teams, VK Calls и других платформах, и не виден при демонстрации экрана.
Что есть в Sobes Copilot:
• Подсказки в реальном времени во время собеседований
• Пост-анализ интервью - сервис разбирает прошедший созвон, выделяет сильные и слабые места, удачные формулировки и зоны роста
• Генератор и улучшение резюме - помогает собрать сильное резюме под конкретную вакансию
• Мок-собеседования (и System Design) - тренировки с ИИ, приближённые к реальным интервью
• Авто-отклики на HH - автоматизируют массовую подачу на вакансии по заданным фильтрам
Если хочешь проходить собеседования спокойнее, увереннее и системнее - посмотри, что умеет Sobes Copilot. | 0 |
