Search
Write a publication
Pull to refresh
27
0
Константин Рощупкин @minaton

Python-разработчик

Send message

Полезные ресурсы для изучения ООП в Python

Level of difficultyEasy
Reading time3 min
Views10K

Привет! Мы — команда Яндекс Практикума и эксперты курса «Python-разработчик». В этой статье собрали полезные ресурсы, которые помогут освоить принципы объектно-ориентированного программирования (ООП) и научиться применять их на практике.

Читать далее

FastAPI и Dependency Injection: правда или вымысел?

Level of difficultyMedium
Reading time11 min
Views20K

В свое время FastAPI прогремел как гром среди ясного неба - тут тебе и минималистичный API аля-Flask (все устали от Django, диктующего свои правила), и OpenAPI документация из коробки, и удобное тестирование, и хайповая асинхронность. Буквально все, что нужно для свободы творчества, и никаких ограничений! Да еще и Depends завезли! В тот момент это был культрурный шок - Dependency Injection в Python? Разве это не что-то из Java?

Но дьявол кроется в деталях. А вы уверены, что те самые Depends == Dependency Injection? Уверены, что пишете код на FastAPI правильно?

В рамках статьи мы рассмотрим различные подходы к организации зависимостей в рамках FastAPI проекта, оценим их с точки зрения удобства использования и постараемся разобраться, как же все-таки "правильно" готовить DI в FastAPI.

Давайте разбираться

Быстрее пули: как найти счастье с PostgreSQL

Level of difficultyEasy
Reading time24 min
Views16K

В этой статье мы расскажем о том, как эффективно реализовать полнотекстовый поиск с помощью PostgreSQL. Узнайте, как улучшить скорость и точность поиска по текстовым данным, используя такие инструменты, как tsvector, tsquery и индексы GIN, и как эти возможности могут значительно повысить производительность вашего приложения.

Читать далее

Полное руководство по обработке ошибок в Python

Reading time15 min
Views19K

Я часто сталкиваюсь с разработчиками, очень хорошо знающими механику обработки ошибок в Python, однако когда я начинаю выполнять ревью их кода, он оказывается далеко неидеальным. Исключения в Python — это одна из тех областей, поверхностный уровень которого знает большинство, но многие разработчики даже не догадываются о существовании более глубокого, почти тайного уровня. Если вы хотите протестировать себя по этой теме, то проверьте, сможете ли вы ответить на следующие вопросы:

  • Когда следует перехватывать исключения, генерируемые вызываемыми вами функциями, а когда этого делать не нужно?
  • Как узнать, какие классы исключений нужно перехватывать?
  • Что нужно делать при перехвате исключений для их «обработки»?
  • Почему перехватывание всех исключений считается порочной практикой, и когда делать это приемлемо?

Вы готовы узнать секреты обработки ошибок в Python? Тогда поехали!
Читать дальше →

Чиним замедление YouTube на уровне роутера

Level of difficultyMedium
Reading time6 min
Views668K

Всех категорический приветствую. Буквально первого августа, прямо в ночь, стал у меня жутко лагать YouTube. Естественно, мне это сильно не понравилось. Ну, что же, давайте разбираться, почему и как это исправить в условиях моей личной сети.

Что случилось?

Хорошо описано произошедшее здесь, на Хабре. Если совсем кратко, своими словами - во время установки SSL соединения в открытом виде домен передается к которому мы подключаемся(так называемое SNI). И если это googlevideo.com то начинают твориться "интересные вещи". Можно проверить это локально коммандами из статьи.

$ curl https://speedtest.selectel.ru/100MB -o/dev/null

Читать далее

Работает — не трожь: зачем обновлять Python в долгоживущих проектах

Reading time15 min
Views20K

Всем привет! Меня зовут Сергей Яхницкий. Я пишу на Python уже больше шести лет, техлид в Яндекс Такси, Python-евангелист и член Python-комитета Яндекса (аналог Python Steering Council).

Человек я простой, звёзд с Гитхаба не хватал: до того, как я устроился в Такси, я мирно писал маленькие бэкенды на Python. А потом меня прорвало: кодогенерации, CI/CD, кучи тестов, монорепа и прочее. Вот тут-то моя питоничья душа и воспряла. Решил я всё автоматизировать, обновить всё, что движется, а что не движется — подвигать и обновить. Из этого вышел мой рассказ.

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

Читать далее

PEP 257 на русском. (Соглашение о Docstrings)

Reading time8 min
Views45K
Привет, Хабр. Бывают моменты, когда тебе хочется максимально погрузиться в язык и понять все его тонкости. В случае Python один из лучших способов это сделать — читать на официальном сайте документацию и PEP-ы. В своё время я этого не делал, поскольку не мог понять многих «технических» моментов, а вариантов русского перевода не было. Сейчас же я решил сам перевести PEP-257, где рассказывается о правильном документировании кода, ведь наверняка это поможет новичкам лучше понять истинный «пайтоновский» подход к написанию кода. Я переводил примеры кода на русский язык, но только для того, чтобы лучше донести смысл. В реальном программировании старайтесь писать документационные строки на английском. Также говорю сразу, что как синоним термина «docstring» я использовал слова: «документация» и «документационные строки». Что же, перейдём к самому переводу.
Читать дальше →

Django tips & tricks

Reading time9 min
Views52K
Приветствую!

В этом посте — небольшие советы по работе с Django, которые могут пригодиться начинающим разработчикам. Как я хотел бы знать это в начале моего пути освоения Django!..
Рассматривать эти советы следует с долей критицизма. Буду рад, если вы найдёте неточности / лучшее решение, или предложите свои «фишки» для django, которых нет в документации.

Итак, начнём издалека, а уж потом перейдём к деталям.

Читать дальше →

ChatGPT — лучший помощник программиста. Примеры реальных задач. Плагины и инструменты

Level of difficultyEasy
Reading time9 min
Views67K

Языковая модель ChatGPT никогда не заменит программиста, потому что непосредственно редактирование кода — это крохотная часть разработки (5% по времени). Зато ChatGPT великолепно помогает. И чем выше ваш скилл — тем больше пользы от «подмастерья», выполняющего мелкие задания и черновой кодинг. Он пишет простые функции, генерирует документацию, находит и объясняет ошибки, выполняет кучу других задач (полный список под катом).

Сегодня не использовать ChatGPT просто глупо… Это действительно универсальный помощник, который сильно облегчает жизнь и выводит программирование на принципиально новый уровень. Одно из величайших изобретений в IT за десятилетия, после GUI и интернета.

Пожалуй, никогда программирование не было настолько приятным и эффективным, как сейчас.
Читать дальше →

Путь к пониманию декораторов в Python

Reading time11 min
Views92K

Прим. Wunder Fund: В этой статье разбираемся, что такое декораторы в Python, зачем они нужны, и в чем их прикол. Статья будет полезна начинающим разработчикам.

Материал рассчитан на начинающих программистов, которые хотят разобраться с тем, что такое декораторы, и с тем, как применять их в своих проектах.

Читать далее

Игорь Ашманов: «Поисковый интерфейс сейчас на уровне DOS»

Reading time11 min
Views1.7K
Игорь Ашманов, управляющий партнер компании «Ашманов и партнеры», в интервью «Хабрахабру» излагает свое видение кризиса поисковиков и размышляет о методах борьбы с дорвеями, которые, вероятно, со временем еще больше будут досаждать людям.

Читать дальше →

Information

Rating
Does not participate
Location
Москва и Московская обл., Россия
Date of birth
Registered
Activity

Specialization

Backend Developer
Python
Django
HTML
CSS