Собрали в одном месте самые важные ссылки
читайте авторский блог
Slack обладает прекрасным потенциалом расширения стандартных возможностей. Но, на практике возникают сложности с интеграцией некоторых соц. сетей в чаты. Для того, чтобы подружить Вконтакте и Slack мы воспользуемся Python и API. Ниже будет рассматривать базовый рецепт того, как сделать так, чтобы Slack-бот мог получать данные по последним комментариям из постов на стенах сообществ или групп Вконтакте.
В стандартной библиотеке Python 3.4 в своё время появился модуль asyncio, позволивший удобно и быстро писать асинхронный код. А уже к Python 3.5 в синтаксис были добавлены конструкции async/await, окончательно оформившие асинхронность «из коробки» как красивую и гармоничную часть языка.
Один из авторов упомянутого PEP-492 (async/await) Юрий Селиванов (на Хабре — 1st1, его твиттер) взялся за разработку альтернативной реализации цикла событий для asyncio — uvloop. Вчера вышла первая альфа-версия модуля, о чём автор написал развёрнутый пост.
Если вкратце, то uvloop работает примерно в 2 раза быстрее Node.js и практически не уступает программам на Go.
Если верить обещаниям Microsoft, в скором времени Windows обзаведется возможностью запускать Linux приложения без каких-либо доработок напильником и сторонних сред окружения вроде Cygwin; одни восприняли эти обещания скептически, дескать, с поддержкой «андроид»-приложений ведь все сошло на нет, другие стали ерничать, мол, ожидайте в недалеком будущем Lindows, ну а третьи… Впрочем, найдутся и четвертые и пятые, — обещания — в будущем, а мы с вами живем здесь и сейчас, решаем задачи также здесь и сейчас, а следовательно какой резон толочь воду в ступе? Приятно, конечно, когда в системе уже предусмотрено нечто в разы упрощающее администрирование, но если этого нет, всегда найдется альтернативный вариант.
Это перевод доклада с голландского TED Talks, прочитанного Гвидо Ван Россумом, "великодушным пожизненным диктатором" языка программирования Python. Много автобиографии и немного про значение языков программирования и основную идею Python.
Позвольте представиться — я нерд, гик. И я постоянно медлю. Я закончил университет в 26, мне было 45, когда я женился, сейчас мне 60, и у меня четырнадцатилетний сын. Может, мне просто трудно даются решения: я прожил в США больше 20 лет, но всё ещё имею вид на жительство.
В минувшие выходные прошла третья конференция питонистов в Питере — Piter Py #3 (http://it-sobytie.ru/events/5862). Конференция длилась три дня, была наполовину англоязычной, все эти дни слова "Docker", "Mongo", "Ansible" произносились даже чаще, чем "Python". И здесь я впервые услышал о существовании YAML-программистов. Делюсь собственными впечатлениями и, полагаю, выражаю мнение большинства других посетителей.
На днях решил попробовать собрать своего свежеиспечённого бота для Телеграм в исполняемый файл. Существуют различные решения: py2exe, pyInstaller, cx_Freeze. Я использую Ubuntu 14.04 и на моём компьютере, и на сервере, поэтому выбор пал наcx_Freeze, ввиду его кросс-платформенности и поддержки Python 3. (На момент написания статьи я ещё не успел распробоватьpyInstaller, который обладает этими же свойствами. Если будет что-то интересное, расскажу об этом в другой статье).
В этой статье я расскажу как я решил проблему настройки окружения для разработки на Django под Windows.
Используется следующая связка:
1) Docker-machine
2) PyCharm
В Docker-machine:
1) PostgreSQL
2) Data container для PostgreSQL
3) Redis
4) И собственно само приложение на Django.
Небольшое описание работы с пакетом Channels для работы с WebSocket и в качестве очереди задач
Совсем недавно я написал статью, в которой без объяснений показал то, на что способен метод грамматической эволюции. Я полностью, согласен, что так делать нельзя, но как хотелось показать результаты интересного метода. Я думал «что будет лучше: перевести первоисточник или дать свое собственное объяснение». Лень взяла верх.
Если кому-то интересны эволюционные методы и задача символьной регрессии(и не только), то прошу к прочтению.
В этой статье речь пойдет о плагинах — программных модулях, которые можно легко установить в основное приложение для расширения его функционала. Точнее, не о самих плагинах, а о том, как реализовать в своей программе систему взаимодействия "Приложение — Плагин".
В сети можно легко найти достаточно сложные и, порой, запутанные алгоритмы интеграции в ваш программный код подобной системы, но, поскольку мы будем использовать язык программирования Python, для нас все будет просто и предельно ясно.
Когда прочитал публикацию про запуск беспилотных гоночных автомобилей — подумал, было бы интересно сделать что-то подобное. Конечно не гоночный болид, но по крайней мере мобильный робот, что ориентируется в пространстве посредством камеры — распознаванием образов.
В нашем хакспейсе — создать робота не такая большая проблема. Но не у всех и не всегда есть возможность экспериментировать с реальным «железом» — поэтому интересно было попробовать решить задачу — в виртуальной среде, и после уже оживить «железо».
Так и возникла идея серии статей, про решение простейшей задачи ориентации робота в пространстве — от виртуальной симуляции, до воплощения в реальном мобильном роботе:
Чуть более года назад мы разрабатывали приложения для Digium телефонов. Несмотря на то, что планы были обширными, мы остановились только на следующих вариациях:
Данные приложения были написаны, чтобы ознакомить сообщество с API и примерами, даже больше just for fun. Cофт, если так можно его назвать, не несет себе никакого уникального применения, которое было бы полезно реальному бизнесу.
Сегодня мы решили вернуться к этой теме, и поделиться другим, на наш взгляд намного более интересным приложением, которое отображает вызов на экране телефона, если пользователи находятся в одной пикап группе и позволяет его перехватить.
Данная статья расскажет о попытке подружить AWS Lamba и python в истинном смысле этого слова. Под истинным смыслом я понимаю возможность взаимодействовать c сервисом (создавать, обновлять и вызывать лябда-функции) непосредственно из пайтона. Если вам интересны AWS Lambda и python, представляю вашему вниманию proof-of-concept библиотеки lambdify.
Стек рассматриваемых технологий: Postgresql 9.3, Python 2.7 с установленным модулем «psycopg2».
Проблема
Как часто в вашей практике приходилось сталкиваться с задачей обработки таблиц большого объема (более 10 млн. записей)? Думаю вы согласитесь, что данная задача является довольно ресурсоемкой как в плане времени обработки, так и задействованных ресурсов системы. Сегодня я постараюсь показать альтернативный способ решения задачи.
Привет! Я воплощаю интересные идеи на python и рассказываю о том, что из этого вышло. В прошлый раз я пробовал найти аномалии на карте цен недвижимости. Просто так. На этот раз идея была построить систему, которая смогла бы сама решать очень популярную ныне Google Recaptcha 2.0, основываясь на некоторых алгоритмах и большой базе обучающих примеров.
Google Recaptcha 2.0 представляет собой набор изображений (9 или 16 квадратных картинок под одной инструкцией), среди которых пользователю, для подтверждения своей разумности, нужно выбрать все изображения одной категории. Речь пойдет НЕ о построении системы машинного обучения — распознавать мы будем именно капчи!
Это статья про довольно неожиданный результат выполнения программы на python. Матёрым разработчикам она покажется детским лепетом, но для тех, кто изредка использует python как полезный инструмент будет несомненно интересна. Также рекомендую её как гимнастику ума. Чтобы заняться этой гимнастикой могли все желающие не добавлял в статью ни строчки кода.
Давно хотел опубликовать этот just4fun проектик по стеганографии, но что-то не было времени.
И вот и время и повод нашелся.
К тому же пятница!
Работая над проектами связанными с авионикой мне потребовалось оформить несколько комплектов документации с полным описанием проекта. Также следовало учитывать требования многих ГОСТов на оформление и на содержание документации, таких как ЕСПД, КТ-178B и других.
Недавно заглянув на КиноПоиск, я обнаружила, что за долгие годы успела оставить более 1000 оценок и подумала, что было бы интересно поисследовать эти данные подробнее: менялись ли мои вкусы в кино с течением времени? есть ли годовая/недельная сезонность в активности? коррелируют ли мои оценки с рейтингом КиноПоиска, IMDb или кинокритиков?
Но прежде чем анализировать и строить красивые графики, нужно получить данные. К сожалению, многие сервисы (и КиноПоиск не исключение) не имеют публичного API, так что, приходится засучить рукава и парсить html-страницы. Именно о том, как скачать и распарсить web-cайт, я и хочу рассказать в этой статье.
В первую очередь статья предназначена для тех, кто всегда хотел разобраться с Web Scrapping, но не доходили руки или не знал с чего начать.
Off-topic: к слову, Новый Кинопоиск под капотом использует запросы, которые возвращают данные об оценках в виде JSON, так что, задача могла быть решена и другим путем.
Не так давно появилось желание скачать из альбома сообщества все изображения, поискав в интернете подходящий сервис, наткнулся лишь на платные сервисы, что мне не совсем подходило.
И вот в преддверии дня рождения, появилось время и отличное настроение для написания сервиса.