Собрали в одном месте самые важные ссылки
читайте авторский блог
Благодаря неоценимой организаторской помощи компании Positive Technologies я проведу семинар по asyncio/aiohttp в Москве 17-18 декабря (суббота-воскресенье).
Квантизация — уменьшение цветов изображения (wiki). Конечно, сейчас мало кому это необходимо, но задача сама по себе интересная.
Например, старый добрый формат GIF использует палитру, максимум на 256 цветов. Если вы захотите сохранить серию своих селфи как gif-анимацию (кому бы это надо было), то первое, что вам, а точнее программе, которую вы будете для этого использовать, надо будет сделать – создать палитру. Можно использовать статическую палитру, например web-safe colors, алгоритм квантизации получиться очень простым и быстрым, но результат будет «не очень». Можно создать оптимальную палитру на основе цветов изображения, что даст результат наиболее визуально похожий на оригинал.
Иногда проводишь день в попытках без использования терминов «рекурсивный вызов» и «идиоты» объяснить главному бухгалтеру, почему на самом деле простое изменение учетной системы затягивается почти на неделю из-за орфографической ошибки, допущенной кем-то в коде в 2009 году. В такие дни хочется пооборвать руки тому умнику, который сотворил этот мир, и переписать все с ноля.
Рассчитан на новичков, которые еще скорее всего и с питоном не сталкивались. Писал для себя в процессе изучения Python и работы с VK API.
Буду рад если кому-то еще пригодится.
Есть интересная статья о том, как Энтузиасты делают погоду.
Энтузиасты делают, а мы воспользуемся плодами их трудов — получим эту самую погоду от OpenWeatherMap.org скриптом на Python'е.
Для получения доступа к сервису погоды придется пройти несложную процедуру регистрации на сайте OpenWeatherMap.org
Я полагаю, что 99% Python разработчиков решали так или иначе эту задачу, поскольку она входит в стандартный набор задач, предлагаемый им для соискателей должности Python Developer'а в одной широко известной компании.
# Есть два списка разной длины. В первом содержатся ключи, а во втором значения.
# Напишите функцию, которая создаёт из этих ключей и значений словарь.
# Если ключу не хватило значения, в словаре должно быть значение None.
# Значения, которым не хватило ключей, нужно игнорировать.
Язык Python отлично подходит для прототипирования: простой синтаксис, множество батареек, много готовых решений. Это отлично для бизнеса и для разработчика. Но давайте снимем розовые очки и озвучим негатив, который вас ждет, когда вы возьмете Python для проекта.
Слайды: http://www.slideshare.net/PyNSK/python-68851470
Привычки бывают хорошие, а бывают и нет. И хотя в целом привычка покрывать код тестами, безусловно, заслуживает всяческого поощрения, вопрос о том, к какому именно каркасу для тестирования лучше привыкать, остаётся открытым. Мы в очередной раз попытаемся его закрыть.
Слайды — http://bit.ly/ist_004
«В следующие два года нужно не пытаться изобразить из себя что-то особенное, а просто быть достаточно умным, чтобы компоновать то, что человечество уже создало» (с) bobuk
Год назад на внутреннем хакатоне наши ростовские ребята за ночь скрестили визуальный текстовый редактор, «Типограф Муравьева» и антиплагиат-сервис. Получилась штука, которая помогала быстро подготовить и отправить публикацию в блог.
Одно время штука жила как сайд-проект, затем нам дали немного ресурсов — ну, как внутреннему стартапу. В итоге получилось удобное коллективное медиа без редакции.
Статья про установку стилей линий по умолчанию в библиотеке для построения графиков Matplotlib.
Статья с описанием возможных способов задания цвета в библиотеке для построения графиков Matplotlib.
В данной статье я хотел бы рассмотреть на практике вариант построения простейшей рекомендательной системы основанной на схожести изображений товаров. Этот материал предназначен для тех, кто хотел бы попробовать применить Deep Learning, а именно свёрточные нейронные сети, в простом, интересном и практически применимом проекте, но не знает с чего начать.
Всем привет! Хотелось бы поделиться опытом использования python asyncio. За полтора года использования в продакшене накопился некоторый опыт, общие приемы, облегчающие жизнь. Естественно, были и грабли, о которых также стоит упомянуть, ибо это поможет сэкономить кучу времени тем, кто только начинает использовать в своих приложениях asyncio. Кому интересно — прошу под кат.
Любой, кто изучал устройство языков программирования, примерно представляет, как они работают: парсер в соответствии с формальной грамматикой ЯП превращает входной текст в некоторое древовидное представление, с которой работают последующие этапы (семантический анализ, различные трансформации, и генерация кода).
Доклад с Moscow Python Conf 2016 (http://conf.python.ru)
Слайды: https://conf.python.ru/django-orm/
В докладе будут затронуты большинство тем, которые необходимо знать современному python-разработчику, чтобы эффективно использовать функционал Django-ORM для построения высоконагруженных web-проектов.
Поговорим и про классические ошибки при работе с QuerySet’ами и про профилирование и про code style. Выясним как можно сэкономить память и время при выполнении запросов, покажу популярные ошибки при проектировании схемы данных и при использовании миграций, а так же рассмотрим несколько распространенных задач современного веба, которые в Django еще не решены или решены некорректно.
Доклад с Moscow Python Conf 2016 (http://conf.python.ru)
Слайды: https://conf.python.ru/metodika-nagruzochnogo-testirovaniya/
Я расскажу об этапах тестирования производительности типичного сервиса, о том, какие виды тестов нужно проводить, как интерпретировать результаты измерений и об инструментах, которые мы применяем для генерации нагрузки и анализа результатов тестов. Слушатели доклада научатся применять opensource и бесплатные инструменты, созданные в стенах Яндекса, для тестирования производительности своих сервисов.
Доклад с Moscow Python Conf 2016 (http://conf.python.ru)
Слайды: https://conf.python.ru/optimizaciya-proizvoditelnosti-pri-pomoshi-cython/
Тридцать лет назад все стремились писать быстрые программы.
Сейчас ничего не изменилось.
Лекция расскажет о методиках ускорения программ на Python вообще и применении для этого Cython в частности.
О том когда надо ускорять, что и надо ли вообще.
Каких результатов можно достичь и какую цену за это нужно платить.
И, самое главное, на каком месте нужно остановиться.
Скорость развития технологий в наши дни поражает. Скачок научно-технического прогресса в последние годы можно сравнить разве что с темпами развития космической отрасли в период с конца 50-х по середину 70-х годов ХХ века. Как тогда присутствие человека в космосе стало реальностью, так же и сейчас повсеместная замена людей машинами уже не кажется чем-то заоблачным.
Django-pushall предназначен для отправки Push-уведомлений через систему Pushall как всем пользователям сайта, так и персонально. Можно использовать для отправки уведомлений самому себе в каких-либо скриптах