Если бы расам Elder Scrolls соответствовала специализация в Python
🦄 — Если тоже решил снова поиграть в Oblivion
#кек
@zen_of_python
🦄 — Если тоже решил снова поиграть в Oblivion
#кек
@zen_of_python
RedBaron | Прокачивай код Like a Pro
Мощная библиотека для анализа и модификации исходного кода с сохранением форматирования. Предоставляет удобный интерфейс для работы с синтаксическим деревом кода, сохраняя пробелы, отступы и комментарии. Идеально подходит для рефакторинга, автогенерации кода и статического анализа.
p.s. Red Baron («Красный барон») — вид питонов, чешуя кирпично-красного цвета.
Репозиторий проекта
#библиотека
@zen_of_python
Мощная библиотека для анализа и модификации исходного кода с сохранением форматирования. Предоставляет удобный интерфейс для работы с синтаксическим деревом кода, сохраняя пробелы, отступы и комментарии. Идеально подходит для рефакторинга, автогенерации кода и статического анализа.
p.s. Red Baron («Красный барон») — вид питонов, чешуя кирпично-красного цвета.
Репозиторий проекта
#библиотека
@zen_of_python
Из гайда по безопасности Django
Фреймворк известен своей философией «батарейки в комплекте». Однако даже с его встроенными средствами защиты, безопасность приложения во многом зависит от разработчика.
Современные веб-приложения сталкиваются с множеством угроз. Хотя Django предоставляет встроенные механизмы защиты от многих из этих угроз, полезно ознакомиться с основными InfoSec-практиками.
Обновление Django и зависимостей
Регулярно «освежайте» версию фреймворка и сторонних библиотек, они нередко содержат хотфиксы в контексте безопасности.
Передача данных по HTTPS
Обязательно настраивайте свой веб-сервер, будь то nginx или что другое, на HTTPS. SSL-сертификат можно получить бесплатно на letsencrypt.com. Библиотека certbot даже позволяет настроить автопродление серта.
Ограничение доступа к базе данных
Хотя Django ORM защищает от SQL-инъекций, дополнительные меры не повредят:
— Ограничьте права пользователя БД до необходимого минимума;
— Регулярно создавайте резервные копии и шифруйте данные;
— Используйте ORM Django.
Если необходимо использовать сырой SQL, спасет параметризация. В примере ниже драйвер БД экранирует значение username:
Встроенные средства безопасности
Создатели проекта предоставляет множество встроенных механизмов безопасности:
— Добавьте
— Настройте заголовки безопасности, такие как
Аутентификация
— Реализуйте многофакторную аутентификацию с помощью пакетов, таких как django-otp;
— Применяйте ролевую модель доступа для управления правами пользователей.
Полезные библиотеки | Misc
Ниже представлена слегка эклектичная, но полезная подборка тулов, прямо или косвенно повышающих безопасность вашего сайта:
— django-ratelimit ограничит частоту запросов;
— django-guardian управляет объектно-ориентированными разрешениями;
— SonarQube / semgrep.dev: автотестирует ваш проект на предмет эксплойтов (DevSecOps).
#безопасность #основы
@zen_of_python
Фреймворк известен своей философией «батарейки в комплекте». Однако даже с его встроенными средствами защиты, безопасность приложения во многом зависит от разработчика.
Современные веб-приложения сталкиваются с множеством угроз. Хотя Django предоставляет встроенные механизмы защиты от многих из этих угроз, полезно ознакомиться с основными InfoSec-практиками.
Обновление Django и зависимостей
Регулярно «освежайте» версию фреймворка и сторонних библиотек, они нередко содержат хотфиксы в контексте безопасности.
Передача данных по HTTPS
Обязательно настраивайте свой веб-сервер, будь то nginx или что другое, на HTTPS. SSL-сертификат можно получить бесплатно на letsencrypt.com. Библиотека certbot даже позволяет настроить автопродление серта.
Ограничение доступа к базе данных
Хотя Django ORM защищает от SQL-инъекций, дополнительные меры не повредят:
— Ограничьте права пользователя БД до необходимого минимума;
— Регулярно создавайте резервные копии и шифруйте данные;
— Используйте ORM Django.
Если необходимо использовать сырой SQL, спасет параметризация. В примере ниже драйвер БД экранирует значение username:
from django.db import connection
with connection.cursor() as cursor:
cursor.execute("SELECT * FROM auth_user WHERE username = %s", [username])
Встроенные средства безопасности
Создатели проекта предоставляет множество встроенных механизмов безопасности:
— Добавьте
django.middleware.security.SecurityMiddleware
в список MIDDLEWARE
;— Настройте заголовки безопасности, такие как
Content-Security-Policy, X-Content-Type-Options, X-Frame-Options
.Аутентификация
— Реализуйте многофакторную аутентификацию с помощью пакетов, таких как django-otp;
— Применяйте ролевую модель доступа для управления правами пользователей.
Полезные библиотеки | Misc
Ниже представлена слегка эклектичная, но полезная подборка тулов, прямо или косвенно повышающих безопасность вашего сайта:
— django-ratelimit ограничит частоту запросов;
— django-guardian управляет объектно-ориентированными разрешениями;
— SonarQube / semgrep.dev: автотестирует ваш проект на предмет эксплойтов (DevSecOps).
#безопасность #основы
@zen_of_python
This media is not supported in your browser
VIEW IN TELEGRAM
Мощь, скорость и надежность для ваших проектов — по выгодной цене.
Почему выбирают серверы Aéza:
• Канал связи до 25 Гбит/с — никаких лагов и задержек
• Мощные процессоры AMD Ryzen 9 9950X — справятся с любой нагрузкой
• Встроенная DDoS-защита — ваш проект под надежной охраной
P.S. Предложение не суммируется с другими акционными программами.
Выбрать тариф | Зарегистрироваться
Реклама. Рекламодатель: ООО «Аеза Групп», ИНН 7813654490, erid: 2W5zFGbd7PE
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from IT Юмор
Минцифры запускает платформу для подтверждения ИТ-навыков 😱
Пройти тесты уже можно по 5 языкам программирования и 12 теоретическим темам. Это бесплатно и не требует диплома.
Успешные участники получают сертификат, видимый в резюме и на Госуслугах🕺
Будете проходить такую сертификацию?
👍 — да
👎 — нет
@ithumor
Пройти тесты уже можно по 5 языкам программирования и 12 теоретическим темам. Это бесплатно и не требует диплома.
Успешные участники получают сертификат, видимый в резюме и на Госуслугах
Будете проходить такую сертификацию?
👍 — да
👎 — нет
@ithumor
Please open Telegram to view this post
VIEW IN TELEGRAM
Pandas 3.0 переходит с NumPy на PyArrow
Такой переход обеспечит значительный прирост скорости, особенно при фильтрации, группировке и чтении данных. Также снижается потребление памяти и появляется лучшая поддержка отсутствующих значений. Благодаря формату Arrow, Pandas становится более совместимым с другими современными инструментами аналитики. При этом существующий код на Pandas останется работоспособным без изменений.
Все больше статей в сообществе про альтернативы pandas, выигрывающие в скорости, но не тут-то было!
#факт
@zen_of_python
Такой переход обеспечит значительный прирост скорости, особенно при фильтрации, группировке и чтении данных. Также снижается потребление памяти и появляется лучшая поддержка отсутствующих значений. Благодаря формату Arrow, Pandas становится более совместимым с другими современными инструментами аналитики. При этом существующий код на Pandas останется работоспособным без изменений.
Все больше статей в сообществе про альтернативы pandas, выигрывающие в скорости, но не тут-то было!
#факт
@zen_of_python
Нобелевки, где помог Python
Python играет ключевую роль в науке. Это инструмент анализа данных, моделирования и визуализации. Вашему вниманию самые нашумевшие проекты с участием этого ЯП, получившие Нобелевские премии.
Обратное распространение ошибки (Backpropagation) и глубокое обучение
Наука: Физика
Когда: 2024
Библиотеки TensorFlow и PyTorch стали основными инструментами для реализации алгоритма обратного распространения ошибки в нейронных сетях.
CRISPR/Cas9 — редактирование генома
Наука: химия
Когда: 2020
Библиотека Biopython используется для анализа геномных данных и моделирования последовательностей ДНК.
Гравитационные волны (LIGO)
Наука: физика
Когда: 2017
Библиотека GWpy используется для анализа данных, полученных от детекторов гравитационных волн — это рябь в пространстве-времени, возникающая при очень мощных космических событиях, например, столкновении черных дыр.
Нейропластичность и функциональная МРТ
Наука: физиология
Когда: 2014
Библиотека MNE-Python используется для анализа нейрофизиологических данных, таких как ЭЭГ и МЭГ.
Анализ климата и моделирование глобального потепления
Наука: физика
Когда: 2021
Библиотека Xarray помогает анализировать многомерные климатические данные и моделировать климатические изменения.
Экзопланеты — открытие планет за пределами Солнечной системы
Наука: физика
Когда: 2019
Библиотека Lightkurve используется для анализа световых кривых звезд и обнаружения экзопланет.
Некоторые проекты все же остались лишь номинантами, но их тоже стоит упомянуть, ибо лучшего способа зарядиться изучать программирование, пожалуй, нет.
Телескоп Джеймса Уэбба (JWST) и инфракрасная астрономия
Инструменты Astropy используется для обработки и анализа данных, полученных от JWST. Это помогает определить химический состав объектов, проследить их траектории во времени.
Подробнее
#факт
@zen_of_python
Python играет ключевую роль в науке. Это инструмент анализа данных, моделирования и визуализации. Вашему вниманию самые нашумевшие проекты с участием этого ЯП, получившие Нобелевские премии.
Обратное распространение ошибки (Backpropagation) и глубокое обучение
Наука: Физика
Когда: 2024
Библиотеки TensorFlow и PyTorch стали основными инструментами для реализации алгоритма обратного распространения ошибки в нейронных сетях.
CRISPR/Cas9 — редактирование генома
Наука: химия
Когда: 2020
Библиотека Biopython используется для анализа геномных данных и моделирования последовательностей ДНК.
Гравитационные волны (LIGO)
Наука: физика
Когда: 2017
Библиотека GWpy используется для анализа данных, полученных от детекторов гравитационных волн — это рябь в пространстве-времени, возникающая при очень мощных космических событиях, например, столкновении черных дыр.
Нейропластичность и функциональная МРТ
Наука: физиология
Когда: 2014
Библиотека MNE-Python используется для анализа нейрофизиологических данных, таких как ЭЭГ и МЭГ.
Анализ климата и моделирование глобального потепления
Наука: физика
Когда: 2021
Библиотека Xarray помогает анализировать многомерные климатические данные и моделировать климатические изменения.
Экзопланеты — открытие планет за пределами Солнечной системы
Наука: физика
Когда: 2019
Библиотека Lightkurve используется для анализа световых кривых звезд и обнаружения экзопланет.
Некоторые проекты все же остались лишь номинантами, но их тоже стоит упомянуть, ибо лучшего способа зарядиться изучать программирование, пожалуй, нет.
Телескоп Джеймса Уэбба (JWST) и инфракрасная астрономия
Инструменты Astropy используется для обработки и анализа данных, полученных от JWST. Это помогает определить химический состав объектов, проследить их траектории во времени.
Подробнее
#факт
@zen_of_python
Analytics Vidhya
The 2024 Nobel Prizes: AI is Taking Over Everything
Find out how AI is reshaping the future of science with the Nobel Prizes in Physics and Chemistry. Nobel prize winners and their work in 2024.
Как работает развёртывание Python-приложений: от запроса до ответа
Зачем нужен gunicorn? А зачем — Nginx? Эти вопросы часто задают разработчики, впервые сталкивающиеся с деплоем Python-приложений. Может показаться, что веб-приложение — это просто код на Flask или Django, который запускается и принимает запросы. Но на практике между пользователем и вашим кодом выстраивается целая цепочка инфраструктурных компонентов, каждый из которых решает важную задачу. На схеме показан путь HTTP-запроса от клиента до конечного обработчика в приложении и обратно.
Accept: принимаем запрос
Когда пользователь открывает ваш сайт, он отправляет HTTP-запрос. Этот запрос в первую очередь встречается с внешним сервером — чаще всего это nginx. Его задача — понять, куда направить запрос: отдать ли статику, переписать URL, направить на конкретное приложение, или вовсе отклонить (например, по причине отсутствия авторизации). Он также может выполнять кэширование, сжатие и защищать от некоторых видов атак. Сюда же можно отнести балансировщики нагрузки и ingress-контроллеры в Kubernetes.
Translate: превращаем байты в Python
Следующий этап — перевод сетевого запроса в то, что понимает ваше Python-приложение. Это задача gunicorn или аналогичных серверов, поддерживающих WSGI (или ASGI, если речь о FastAPI и асинхронных приложениях). gunicorn создаёт рабочие процессы, слушает сокет, принимает соединения от nginx и передаёт их дальше в код Python. Он изолирует логику приложения от низкоуровневой сетевой части и обеспечивает масштабируемость.
Process: бизнес-логика и генерация ответа
Завершающий этап — сам Python-код во фреймворке (Django, Flask, FastAPI и пр.). Здесь выполняются проверки, обращения к БД, формируются HTML-страницы или JSON-ответы. Именно здесь происходит «магия» — добавление ценности, решение задач пользователей и реализация бизнес-логики.
#факт #основы
@zen_of_python
👀 — Если пришлось перечитать три раза
Зачем нужен gunicorn? А зачем — Nginx? Эти вопросы часто задают разработчики, впервые сталкивающиеся с деплоем Python-приложений. Может показаться, что веб-приложение — это просто код на Flask или Django, который запускается и принимает запросы. Но на практике между пользователем и вашим кодом выстраивается целая цепочка инфраструктурных компонентов, каждый из которых решает важную задачу. На схеме показан путь HTTP-запроса от клиента до конечного обработчика в приложении и обратно.
Accept: принимаем запрос
Когда пользователь открывает ваш сайт, он отправляет HTTP-запрос. Этот запрос в первую очередь встречается с внешним сервером — чаще всего это nginx. Его задача — понять, куда направить запрос: отдать ли статику, переписать URL, направить на конкретное приложение, или вовсе отклонить (например, по причине отсутствия авторизации). Он также может выполнять кэширование, сжатие и защищать от некоторых видов атак. Сюда же можно отнести балансировщики нагрузки и ingress-контроллеры в Kubernetes.
Translate: превращаем байты в Python
Следующий этап — перевод сетевого запроса в то, что понимает ваше Python-приложение. Это задача gunicorn или аналогичных серверов, поддерживающих WSGI (или ASGI, если речь о FastAPI и асинхронных приложениях). gunicorn создаёт рабочие процессы, слушает сокет, принимает соединения от nginx и передаёт их дальше в код Python. Он изолирует логику приложения от низкоуровневой сетевой части и обеспечивает масштабируемость.
Process: бизнес-логика и генерация ответа
Завершающий этап — сам Python-код во фреймворке (Django, Flask, FastAPI и пр.). Здесь выполняются проверки, обращения к БД, формируются HTML-страницы или JSON-ответы. Именно здесь происходит «магия» — добавление ценности, решение задач пользователей и реализация бизнес-логики.
#факт #основы
@zen_of_python
👀 — Если пришлось перечитать три раза
Forwarded from Веб-страница
Мегагайд: культура работы с Git
Git — это не только (и не столько!) знание самой технологии и конкретных команд, но и определённая культура взаимодействия, практики, подходы, договорённости. Всё это помогает участникам команды лучше понимать друг друга и работать быстрее и чётче.
В статье — как раз об этом. В ней раскрыли, что формирует культуру работы с Git: от конвенций именования коммитов и до практик работы в пуллреквесте. В конце статьи — полезные ссылки на интерактивные обучалки, шпаргалки и гайды: https://habr.com/ru/companies/yandex_praktikum/articles/812139/
#git #шпаргалки
Git — это не только (и не столько!) знание самой технологии и конкретных команд, но и определённая культура взаимодействия, практики, подходы, договорённости. Всё это помогает участникам команды лучше понимать друг друга и работать быстрее и чётче.
В статье — как раз об этом. В ней раскрыли, что формирует культуру работы с Git: от конвенций именования коммитов и до практик работы в пуллреквесте. В конце статьи — полезные ссылки на интерактивные обучалки, шпаргалки и гайды: https://habr.com/ru/companies/yandex_praktikum/articles/812139/
#git #шпаргалки
Сломал ногу — выучил Python: как ИИ помог экс-консультанту стать программистом за 100 дней
38-летний Эрик Леннрот после травмы решил изменить карьеру и выбрал Python, пройдя бесплатные курсы CS50 от Гарварда. С помощью ChatGPT он писал псевдокод, получал обратную связь и вручную набирал код. Его первый проект стал основой для более сложного веб-приложения из 25К строк кода. И о чудо! через три месяца он получил оффер в консалтинговой компании в Лондоне, где заменил Excel на автоматизированные пайплайны. Обучение обошлось ему в $120 (подписки на Claude Pro и Cursor).
#факт
@zen_of_python
38-летний Эрик Леннрот после травмы решил изменить карьеру и выбрал Python, пройдя бесплатные курсы CS50 от Гарварда. С помощью ChatGPT он писал псевдокод, получал обратную связь и вручную набирал код. Его первый проект стал основой для более сложного веб-приложения из 25К строк кода. И о чудо! через три месяца он получил оффер в консалтинговой компании в Лондоне, где заменил Excel на автоматизированные пайплайны. Обучение обошлось ему в $120 (подписки на Claude Pro и Cursor).
#факт
@zen_of_python
Насколько вы толерантны к галлюцинациям LLM по шкале от 0 до 5?
Anonymous Poll
26%
0
14%
1
12%
2
24%
3
12%
4
12%
5
Вопросы подписчиков
Zen of Python поддерживает новоприбывших (и не только) в особой рубрике. Как это работает:
— Спрашивайте что угодно (в комментариях под этим постом), связанное с Python. Здесь нет плохих вопросов!
— Сообщество вас поддержит. Самые интересные вопросы мы разберём в отдельном посте;
#вопросы_новичков
@zen_of_python
Zen of Python поддерживает новоприбывших (и не только) в особой рубрике. Как это работает:
— Спрашивайте что угодно (в комментариях под этим постом), связанное с Python. Здесь нет плохих вопросов!
— Сообщество вас поддержит. Самые интересные вопросы мы разберём в отдельном посте;
#вопросы_новичков
@zen_of_python
Бэкроним — это в шутку неверная расшифровка аббревиатуры.
PEP — Please Explain Python
#кек
@zen_of_python
PEP — Please Explain Python
#кек
@zen_of_python