IT-новости про Python, которые стоит знать

Собрали в одном месте самые важные ссылки
и сделали Тренажер IT-инцидентов для DevOps/SRE

     07.07.2017       Выпуск 185 (03.07.2017 - 09.07.2017)       Видео

Python в первой половине 2017 года

В мире Python за первую половину 2017 года произошло множество интересных событий: перенос репозитория проекта на github, интервью с Гвидо на подкасте “Talk Python”, выход новой версии Django и еще много всего. Краткую выжимку вы сможете послушать в нашем традиционном (второй раз — это уже традиция!) докладе на этом Moscow Python Meetup. Будьте в курсе всего нового!

     04.07.2017       Выпуск 185 (03.07.2017 - 09.07.2017)       Статьи

Оптимизация производительности Django проектов (часть 2)

Это продолжение серии статей про оптимизацию Django приложений. Первая часть доступна здесь и рассказывает о профилировании и настройках Django. В этой части мы рассмотрим оптимизацию работы с БД (модели Django).

     20.06.2017       Выпуск 183 (19.06.2017 - 25.06.2017)       Статьи

Оптимизация производительности Django проектов (часть 1) Django

Django это мощный фреймворк используемый в множестве отличных проектов. Из коробки в нем включено много полезных батареек, которые значительно ускоряют разработку и соответственно уменьшают ее стоимость. Однако, когда проект растет и набирает аудиторию, вы неизбежно столкнетесь с проблемами производительности. В этом посте я попробую рассказать о том с какими проблемами вы можете столкнуться и как их решить.

Это первая статья из серии, здесь будут рассмотрено профилирование и настройки Django.

     09.06.2017       Выпуск 181 (05.06.2017 - 11.06.2017)       Статьи

Использование сторонних компонентов в DjangoCMS

Для DjangoCMS у каждого разработчика есть возможность написать свой плагин, который можно многократно использовать, но перед этим есть смысл посмотреть на готовые решения. В этой статье я расскажу какие есть сторонние компоненты для DjangoCMS и как их можно использовать в своём проекте.

     22.05.2017       Выпуск 179 (22.05.2017 - 28.05.2017)       Статьи

Сравнение производительности иерархических моделей Django Django

 Сегодняшняя статья будет посвящена сравнению моделей работы с иерархическими данными в PostgreSQL, через Django приложение. В статья я специально не использую чистую реализацию в базе данных, т. к. меня интересует именно производительность в среде, приближенной к боевой.

     12.05.2017       Выпуск 177 (08.05.2017 - 14.05.2017)       Статьи

10 основных ошибок, совершаемых Django-разработчиками Django

В этом руководстве мы рассмотрим основные ошибки Django-разработчиков и узнаем, как их избежать. Статья может быть полезна даже опытным разработчикам, потому что и они совершают такие ошибки, как поддержка неподъёмно больших настроек или конфликтов имён в статических ресурсах.

     01.05.2017       Выпуск 176 (01.05.2017 - 07.05.2017)       Статьи

Поиск в Django REST Framework с помощью Elasticsearch Elasticsearch Django

 

Пользователи ищут товары в интернет-магазине, ищут стати, поиск это неотъемлемый компонент сайта. Быстрый и гибкий поиск сложно реализовать средствами реляционных баз данных. Для таких задач используют поисковые движки, один из которых Elasticsearch. Elasticsearch хорошо документирован и доступен из коробки на AWS.

 

Для работы с elasticsearch используется библиотека elasticsearch-py или elasticsearch-dsl-py. elasticsearch-dsl-py это надстройка над elasticsearch-py, она проста в использовании и поддерживает elasticsearch версии 5.x. На базе этой библиотеки была создана библиотека django-rest-elasticsearch, которая основана на идеологии существующего поиска в Django REST Framework. Ниже я детально распишу как реализовать поиск в Django REST Framework с помощью elasticsearch используя данную библиотеку.

     30.04.2017       Выпуск 175 (24.04.2017 - 30.04.2017)       Статьи

Django - Like Dislike система с помощью GenericForeignKey Django

Статья описывает пример использования GenericForeignKey из инструментария Django/Python для создания системы Like Dislike на сайте с использованием полиморфных связей, что позволяет использовать одну модель данных Like Dislike для контента различного типа: Статьи, Комментарии и т.д.

     12.04.2017       Выпуск 173 (10.04.2017 - 16.04.2017)       Видео

django-sitetree: навигация для сайта

Сложно ли реализовать навигацию для сайта? Разместить на его страницах различного вида меню, навигационные цепочки, предоставить пользователю структурную карту. Давайте ознакомимся с подходом, использующемся в sitetree, который позволяет решать подобные задачи минимальными усилиями.

     12.04.2017       Выпуск 173 (10.04.2017 - 16.04.2017)       Статьи

Нескучные запросы с Django ORM Annotate и Query Expressions Django

Некоторое время назад передо мной встала задача: выбрать из таблицы значения по пользователям. Причём, эти значения должны соответствовать определённому регулярному выражению. Но и это не конец условия: из выбранных выражений нужно вытащить substring. Опять же, по регулярке. Сделал я это довольно быстро, и захотелось поделиться опытом с тем, кто ещё не может применять Annotate и Query Expressions на практике

     06.04.2017       Выпуск 172 (03.04.2017 - 09.04.2017)       Статьи

7 вредных советов проектировщику REST API Django

Адаптация статьи REST WORST PRACTICES, © Jacob Kaplan-Moss. Статья написана применительно к Django, но информация будет актуальна для широкого круга специалистов.

Думаю что лучший способ понять как нужно делать, изучить как делать НЕ нужно. Представляю вашему вниманию вредные советы проектировщикам REST API.

     29.03.2017       Выпуск 171 (27.03.2017 - 02.04.2017)       Статьи

Запускаем простой блог на Wagtail CMS (Django) — часть 3, заключительная Django

Третью часть про Wagtail CMS я решил посветить тем моментам, которые помогли мне снова полюбить Django. Благодаря большому сообществу, которое развивает эту CMS, любой найдет в ней что-то для себя.

В заключительной части будут затронуты следующие моменты:

  • StreamField
  • API + React
  • Разработка для e-commerce

     28.02.2017       Выпуск 167 (27.02.2017 - 05.03.2017)       Видео

Правила именования функций

Илья Лебедев (Devman) @ Python Junior Meetup №1 

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

Слайды: https://speakerdeck.com/moscowdjango/pravila-imienovaniia-funktsii

     28.02.2017       Выпуск 167 (27.02.2017 - 05.03.2017)       Видео

Что такое переменные?

Григорий Петров (Voximplant) @ Python Junior Meetup № 1

"В своем выступлении я впервые попробую объяснить переменные: не рассказывая предварительно как работает компьютер, память и компилятор; не вводя мешок дополнительных сущностей вроде «присваивание», «данные», «оператор» и непереводимое «evaluate»; не проводя аналогии с математикой".

Слайды: https://speakerdeck.com/moscowdjango/chto-takoie-pieriemiennyie

     28.02.2017       Выпуск 167 (27.02.2017 - 05.03.2017)       Видео

Система типов в Python

Александр Хаёров (Ingram Micro) @ Python Junior Meetup №1

"Типизация — важный аспект, который зачастую характеризует тот или иной язык программирования, наделяя его разными свойствами. В докладе будут рассмотрена общая информация о типизации, ее роли. Узнаем подробно какая типизация в Python и как использовать для написания лучшего кода".

Слайды: https://speakerdeck.com/moscowdjango/sistiema-tipov-v-python

     28.01.2017       Выпуск 162 (23.01.2017 - 29.01.2017)       Статьи

Создание сайта на DjangoCMS Django DjangoCMS

В России DjangoCMS незаслуженно обделена вниманием, хотя это довольно мощная и функциональная CMS, основанная на фреймворке Django и полностью с ним совместимая. К сожалению материалов по DjangoCMS довольно мало даже на английском языке, а статьи на русском уже устарели, поэтому я решил исправить это недоразумение и поделиться своим опытом работы с данной CMS. Очень надеюсь что статья будет полезна для вас :)

     24.01.2017       Выпуск 162 (23.01.2017 - 29.01.2017)       Видео

Способы хранения иерархических структур данных

Денис Иванов @ MoscowPython 41

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

Слайды: http://www.moscowpython.ru/meetup/41/sposoby-hranenija-ierarhicheskih-struktur-dannyh/

     15.01.2017       Выпуск 160 (09.01.2017 - 15.01.2017)       Статьи

Записи python разработчика — Ловушка при подсчете связанных объектов в Django Django

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