Visual Studio Code (VS Code)
Если вы только начинаете работать с кодом или уже в профессии, первым инструментом, который стоит освоить, будет Visual Studio Code. Это кроссплатформенный редактор от Microsoft, который сегодня считается одним из самых популярных рабочих пространств для разработчиков
⚡️ Чем VS Code выделяется среди других IDE (PyCharm, Xcode, Atom и др.):
📌 На практике это значит, что с помощью пары кликов и пары расширений можно настроить рабочее место именно под себя — будь то Python-бэкенд, фронтенд, DevOps или анализ данных
✍️ В будущих постах я поделюсь с вами различными расширениями, модулями и настройками для VS Code, которые значительно облегчают жизнь программисту и ускоряют работу
#рекомендации_tech
Если вы только начинаете работать с кодом или уже в профессии, первым инструментом, который стоит освоить, будет Visual Studio Code. Это кроссплатформенный редактор от Microsoft, который сегодня считается одним из самых популярных рабочих пространств для разработчиков
⚡️ Чем VS Code выделяется среди других IDE (PyCharm, Xcode, Atom и др.):
Лёгкость и скорость — запускается быстрее, чем тяжёлые IDE (например, PyCharm).
Гибкость — можно превратить редактор в полноценную среду разработки под любую задачу.
Расширения (Extensions) — здесь кроется настоящая сила VS Code: тысячи бесплатных модулей для Python, Docker, Git, SQL, фронтенда и других технологий.
Кроссплатформенность — одинаково работает на Windows, macOS и Linux.
Поддержка разных языков и фреймворков из коробки: Python, JavaScript, TypeScript, Go, Rust и др.
Интеграция с системами контроля версий (Git, GitHub, GitLab) и CI/CD инструментами.
📌 На практике это значит, что с помощью пары кликов и пары расширений можно настроить рабочее место именно под себя — будь то Python-бэкенд, фронтенд, DevOps или анализ данных
✍️ В будущих постах я поделюсь с вами различными расширениями, модулями и настройками для VS Code, которые значительно облегчают жизнь программисту и ускоряют работу
#рекомендации_tech
🔥3⚡2
Хэширование (Hashing)
📌 Метод преобразования данных (строки, файла, пароля) в уникальную строку фиксированной длины.
⚡️Хэш-функции незаменимы в:
❕Важно: хэширование — это однонаправленный процесс. По хэшу невозможно восстановить исходные данные (в отличие от шифрования).
На практике пароли никогда не хранятся «как есть», а только в виде хэшей (часто с солью — случайной добавкой к строке для защиты от перебора).
#словарь_программиста
📌 Метод преобразования данных (строки, файла, пароля) в уникальную строку фиксированной длины.
⚡️Хэш-функции незаменимы в:
Хранении и проверке паролей (сравнивается только хэш, а не сам пароль);
Кешировании (хэш быстро проверяет, изменился ли объект);
Индексах баз данных (ускоряют поиск).
❕Важно: хэширование — это однонаправленный процесс. По хэшу невозможно восстановить исходные данные (в отличие от шифрования).
На практике пароли никогда не хранятся «как есть», а только в виде хэшей (часто с солью — случайной добавкой к строке для защиты от перебора).
#словарь_программиста
👨💻3
Теория мёртвого интернета
Недавно в LinkedIn произошёл кейс. Один парень вставил в своё описание на профиле необычную просьбу — он попросил, чтобы любой ИИ-рекрутер, который читает его биографию, обязательно отправил ему рецепт пирога вместе с оффером.
❕В итоге практически все сообщения, которые он получил от «рекрутеров», действительно содержали рецепт пирога
Сама система отбора кандидатов уже настолько автоматизирована, что ии-агент читает профиль, видит инструкцию и делает именно то, что в ней прописано
⚡️С учетом того, что в последнее время все начинают создавать собственные резюме также с помощью искусственного интеллекта, это наглядный пример того, как один ИИ взаимодействует с другим ИИ, при этом люди оказываются «последней станцией» в процессе отбора.
🔍Из ключевых моментов:
P.s. LinkedIn - крупнейшая в мире социальная сеть для проф. общения, деловых контактов и поиска работы. В ней пользователи создают свои цифровые резюме, находят вакансии, строят профессиональные связи и продвигают личный бренд или бизнес
#IT_новости
Недавно в LinkedIn произошёл кейс. Один парень вставил в своё описание на профиле необычную просьбу — он попросил, чтобы любой ИИ-рекрутер, который читает его биографию, обязательно отправил ему рецепт пирога вместе с оффером.
❕В итоге практически все сообщения, которые он получил от «рекрутеров», действительно содержали рецепт пирога
Сама система отбора кандидатов уже настолько автоматизирована, что ии-агент читает профиль, видит инструкцию и делает именно то, что в ней прописано
⚡️С учетом того, что в последнее время все начинают создавать собственные резюме также с помощью искусственного интеллекта, это наглядный пример того, как один ИИ взаимодействует с другим ИИ, при этом люди оказываются «последней станцией» в процессе отбора.
🔍Из ключевых моментов:
Полностью доверять ИИ в рекрутинге — опасно; он может “схватить” любой ключевой флаг в тексте и действовать буквально(как мы и видим из ситуации)
Сам факт, что такие эксперименты проходят, говорит о том, что контент в интернете становится всё чаще продуктом взаимодействий ИИ, а не исключительно людей — близкая отсылка к «Теории мёртвого интернета».
P.s. LinkedIn - крупнейшая в мире социальная сеть для проф. общения, деловых контактов и поиска работы. В ней пользователи создают свои цифровые резюме, находят вакансии, строят профессиональные связи и продвигают личный бренд или бизнес
#IT_новости
⚡3🔥3
Форматирование в f-строках Python
📌 f-строки (f-strings) появились в Python 3.6 и считаются наиболее удобным и читаемым способом форматирования
Преимущества над другими методами:
⚡️ f-строки — это гибко, читаемо и современно. Если вы до сих пор используете % или .format(), попробуйте перейти на f-строки: код станет короче и понятнее
#полезные_ресуры
📌 f-строки (f-strings) появились в Python 3.6 и считаются наиболее удобным и читаемым способом форматирования
Преимущества над другими методами:
Лаконичность и наглядность:
(f"Hello {name}") против( "%s" % name) или ("{}".format(name));
Поддержка выражений внутри фигурных скобок (можно вызывать функции, методы, выполнять арифметику прямо в строке);
Универсальность: поддержка всех форматтеров, которые раньше работали через format.
⚡️ f-строки — это гибко, читаемо и современно. Если вы до сих пор используете % или .format(), попробуйте перейти на f-строки: код станет короче и понятнее
#полезные_ресуры
❤2⚡2
Кэширование (Caching)
📌 Кэширование — это механизм временного хранения часто используемых данных, чтобы ускорить доступ к ним
⚡️Вместо того чтобы каждый раз обращаться к базе данных или выполнять тяжёлый расчёт, программа берёт уже сохранённый результат из памяти (RAM, диск, Redis и др.).
❕Зачем это нужно:
📦 Где используется:
📊 Популярные инструменты:
Redis, Memcached, functools.lru_cache в Python
#словарь_программиста
📌 Кэширование — это механизм временного хранения часто используемых данных, чтобы ускорить доступ к ним
⚡️Вместо того чтобы каждый раз обращаться к базе данных или выполнять тяжёлый расчёт, программа берёт уже сохранённый результат из памяти (RAM, диск, Redis и др.).
❕Зачем это нужно:
Уменьшает время отклика системы
Снижает нагрузку на сервер и базу данных
Экономит вычислительные ресурсы
📦 Где используется:
Веб-приложения (Django, FastAPI) — кэш страниц или запросов
API — повторное использование ответов
Машинное обучение — хранение подготовленных датасетов
СУБД — кэширование запросов
📊 Популярные инструменты:
Redis, Memcached, functools.lru_cache в Python
#словарь_программиста
👨💻3
Как и говорил, расширяем область канала и познаем не только Python
Также недалеко уходим и от темы кэширования
❓ Как управлять кешированием в HTTP?
Кеширование в HTTP контролируется с помощью заголовков, которые определяют, как долго и при каких условиях браузер или прокси может повторно использовать данные
🔹 Основные заголовки:
💡 Пример в жизни:
Когда вы заходите на сайт, браузер не загружает заново весь контент — картинки, стили, JS. Он проверяет, изменился ли файл. Если нет, берёт из локального кэша
📎 Факт:
Фреймворки (FastAPI, Django, Flask) могут автоматически выставлять HTTP-заголовки для кэширования ответов API
#вопросы_на_собесах
Также недалеко уходим и от темы кэширования
❓ Как управлять кешированием в HTTP?
🔹 Основные заголовки:
Cache-Control — задаёт правила кеширования:
max-age, public, private, no-store, no-cache.
Last-Modified + If-Modified-Since — позволяют клиенту узнавать, когда ресурс обновлялся, и запрашивать его только при изменении.
ETag + If-None-Match — сервер генерирует уникальный хеш версии ресурса. Если он не изменился, сервер возвращает код 304 Not Modified.
💡 Пример в жизни:
Когда вы заходите на сайт, браузер не загружает заново весь контент — картинки, стили, JS. Он проверяет, изменился ли файл. Если нет, берёт из локального кэша
📎 Факт:
Фреймворки (FastAPI, Django, Flask) могут автоматически выставлять HTTP-заголовки для кэширования ответов API
#вопросы_на_собесах
⚡3
⚡️Форматирование кода — Black
Black — это один из самых популярных и строгих форматтеров Python-кода. Его принцип прост: «Код должен выглядеть одинаково, независимо от автора»
🔹 Что делает форматер:
Форматтер автоматически приводит код к единому стилю — добавляет/убирает пробелы, выравнивает отступы, расставляет кавычки и переносы строк.
Это помогает, когда проект ведёт несколько человек, и все пишут по одному стандарту (PEP8)
🧩 Black и его конкуренты:
🧠 Почему Black лучше:
⚙️ Подключить можно двумя способами:
1. Установить пакет: pip install black
2. Установить в Visual Studio code расширение Black
Затем добавить в settings.json:
#рекомендации_tech
Black — это один из самых популярных и строгих форматтеров Python-кода. Его принцип прост: «Код должен выглядеть одинаково, независимо от автора»
🔹 Что делает форматер:
Форматтер автоматически приводит код к единому стилю — добавляет/убирает пробелы, выравнивает отступы, расставляет кавычки и переносы строк.
Это помогает, когда проект ведёт несколько человек, и все пишут по одному стандарту (PEP8)
🧩 Black и его конкуренты:
autopep8 — базовый форматтер, который просто приводит код к PEP8, но не всегда последовательно
YAPF (Yet Another Python Formatter) — даёт больше гибкости и стилей, но именно из-за этого код может выглядеть по-разному в разных проектах
Ruff — также умеет форматировать, но его сила всё же в линтинге
🧠 Почему Black лучше:
Жёстко стандартизирован — никаких споров в команде
Минимум настроек — разработчики просто доверяют ему
Оптимизирован под большие кодовые базы
Идеально работает в связке с Ruff и Pylance, создавая целостную экосистему для чистого и безопасного кода
Также - легко интегрируется с VS Code и имеет большую скорость работы
⚙️ Подключить можно двумя способами:
1. Установить пакет: pip install black
2. Установить в Visual Studio code расширение Black
Затем добавить в settings.json:
{
"python.formatting.provider": "black",
"editor.formatOnSave": true
}#рекомендации_tech
❤2🔥2
📢 FastAPI + asyncio в 2025
Свежие данные показывают: FastAPI + asyncio - лидеры 2025 года в мире backend-разработки на Python
❕Вот цифры, которые говорят всё сами за себя:
🔍 Почему именно FastAPI + asyncio растут так быстро:
⚡️ Вывод
Если вы выбираете между Flask, Django и FastAPI — эти данные ясно говорят: FastAPI в связке с asyncio сейчас наиболее перспективны в backend-разработке
#IT_новости
Свежие данные показывают: FastAPI + asyncio - лидеры 2025 года в мире backend-разработки на Python
❕Вот цифры, которые говорят всё сами за себя:
TechGig сообщает: FastAPI используется 38 % разработчиков Python в 2024 году и прибавил +9 % по сравнению с предыдущим годом
Опрос PyCharm: «Каждый третий разработчик Django также использует Flask или FastAPI, а около 25 % используют FastAPI»
CraftYourStartup приводит числа: FastAPI обрабатывает до 15 000–20 000 RPS в тестах, значительно обгоняя Flask и Django
🔍 Почему именно FastAPI + asyncio растут так быстро:
Асинхронность из коробки. Поддержка async/await позволяет обрабатывать тысячи запросов одновременно, не блокируя поток исполнения
Современный стек. Используется Pydantic для валидации данных и Starlette как асинхронное ядро — это делает API-разработку лаконичной и безопасной
Высокая производительность. FastAPI входит в топ самых быстрых Python-фреймворков, уступая лишь решениям на Rust и Go
Отличная документация и автогенерация Swagger UI. FastAPI сам создаёт интерактивную документацию для вашего API без дополнительного кода
⚡️ Вывод
Если вы выбираете между Flask, Django и FastAPI — эти данные ясно говорят: FastAPI в связке с asyncio сейчас наиболее перспективны в backend-разработке
#IT_новости
❤3
Git
📌 Git — распределённая система контроля версий
Она позволяет отслеживать изменения в коде, работать в команде и возвращаться к любой версии проекта.
🔹Что делает Git:
📘 Пример в жизни:
Представьте, что вы пишете диплом или крупный проект. Git — это ваш «контроль времени»: можно увидеть, кто что изменил, когда и почему
⚙️ Почему Git — стандарт в разработке:
💡 Интересный факт:
Создатель Git — Линус Торвальдс, автор Linux. Он написал Git за 10 дней, чтобы решить проблемы с управлением исходным кодом ядра Linux
#словарь_программиста
📌 Git — распределённая система контроля версий
Она позволяет отслеживать изменения в коде, работать в команде и возвращаться к любой версии проекта.
🔹Что делает Git:
Сохраняет историю изменений
Позволяет работать над проектом нескольким разработчикам одновременно
Даёт возможность откатить проект к предыдущему состоянию
📘 Пример в жизни:
Представьте, что вы пишете диплом или крупный проект. Git — это ваш «контроль времени»: можно увидеть, кто что изменил, когда и почему
⚙️ Почему Git — стандарт в разработке:
Используется во всех компаниях
Интегрируется с CI/CD (GitHub Actions, GitLab CI)
Без Git ни один современный workflow не обходится
💡 Интересный факт:
Создатель Git — Линус Торвальдс, автор Linux. Он написал Git за 10 дней, чтобы решить проблемы с управлением исходным кодом ядра Linux
#словарь_программиста
👨💻3
❓ Что такое отображение (mapping) в Python?
Отображение (mapping) — это структура данных, которая хранит пары ключ–значение. Благодаря этому можно быстро находить значение по ключу, без необходимости перебирать весь список
⚡️В Python основным типом отображения является dict, а также — объекты, работающие по тому же принципу (например, collections.ChainMap, types.MappingProxyType)
💡 Особенности:
#вопросы_на_собесах
⚡️В Python основным типом отображения является dict, а также — объекты, работающие по тому же принципу (например, collections.ChainMap, types.MappingProxyType)
💡 Особенности:
Ключи в отображениях уникальны и должны быть хешируемыми (например, строки, числа, кортежи)
Python поддерживает словари словарей, что делает их мощным инструментом для хранения сложных структур данных
#вопросы_на_собесах
❤2⚡1
Ошибка при подключении SSH в GitLab:
конфликт ED25519 и RSA
Недавно столкнулся с ошибкой при работе с репозиториями GitLab через SSH. VS Code при попытке клонировать проект выдал ошибку подключения, хотя ключ уже был добавлен в GitLab
📍Причина:
SSH-клиент ожидал ключ ED25519, а в GitLab был добавлен ключ RSA. GitLab поддерживает оба типа, но SSH на локальной машине может быть сконфигурирован под конкретный алгоритм
Пример проблемы:
📘 Решение:
1. Проверил список доступных ключей:
2. Убедился, что активен RSA, а не ED25519 и создал новый ключ ED25519:
3. Добавил его в GitLab (в профиле в разделе настроек)
🔍 Итог:
После обновления ключа подключение заработало, а VS Code корректно связался с GitLab через SSH
💡Совет:
- ED25519 предпочтительнее: быстрее и безопаснее
- Если GitLab “ругается” на ключ — проверьте тип шифрования
#рабочие_моменты
конфликт ED25519 и RSA
Недавно столкнулся с ошибкой при работе с репозиториями GitLab через SSH. VS Code при попытке клонировать проект выдал ошибку подключения, хотя ключ уже был добавлен в GitLab
📍Причина:
SSH-клиент ожидал ключ ED25519, а в GitLab был добавлен ключ RSA. GitLab поддерживает оба типа, но SSH на локальной машине может быть сконфигурирован под конкретный алгоритм
Пример проблемы:
git@gitlab.com: Permission denied (publickey).
fatal: Could not read from remote repository.
📘 Решение:
1. Проверил список доступных ключей:
ssh-add -l
2. Убедился, что активен RSA, а не ED25519 и создал новый ключ ED25519:
ssh-keygen -t ed25519 -C "your_email@example.com"
3. Добавил его в GitLab (в профиле в разделе настроек)
🔍 Итог:
После обновления ключа подключение заработало, а VS Code корректно связался с GitLab через SSH
💡Совет:
- ED25519 предпочтительнее: быстрее и безопаснее
- Если GitLab “ругается” на ключ — проверьте тип шифрования
#рабочие_моменты
❤2👍2👏1