Обновить
1024K+

Python *

Высокоуровневый язык программирования

755,42
Рейтинг
Сначала показывать
Порог рейтинга
Уровень сложности

typus — локальный типограф на python

Время на прочтение5 мин
Охват и читатели12K
       ,'``.._   ,'``.
      :,--._:)\,:,._,.:       All Glory to
      :`--,''   :`...';\      the HYPNO TOAD!
       `,'       `---'  `.
       /                 :
      /                   \
    ,'                     :\.___,-.
   `...,---'``````-..._    |:       \
     (                 )   ;:    )   \  _,-.
      `.              (   //          `'    \
       :               `.//  )      )     , ;
     ,-|`.            _,'/       )    ) ,' ,'
    (  :`.`-..____..=:.-':     .     _,' ,'
     `,'\ ``--....-)='    `._,  \  ,') _ '``._
  _.-/ _ `.       (_)      /     )' ; / \ \`-.'
 `--(   `-:`.     `' ___..'  _,-'   |/   `.)
     `-. `.`.``-----``--,  .'
       |/`.\`'        ,','); SSt
           `         (/  (/

Найдено в интернетах.


Всем привет!
Хочу поделиться своей небольшой разработкой: типографом, который можно использовать локально.

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

Workflow просмотра сериалов для Alfred

Время на прочтение5 мин
Охват и читатели18K

В конце предыдущей своей статьи я начал рассказывать о том как у меня организован просмотр сериалов, но решил что это — тема для отдельной заметки.


Для тех кто не знает что такое Alfred

Alfred — это Spotlight на стероидах. Умеет чуть более чем всё что умеет Spotlight, плюс, начиная со второй версии, поддерживает написание, а так же использование написанных другими людьми, так называемых, workflows. То бишь, расширений функциональности самописными скриптами. Для их написания поддерживается несколько скриптовых языков:


  • bash
  • zsh
  • php
  • ruby
  • python
  • perl
  • osascript
  • javascript

Речь в этой статье пойдет об одном из таких расширений.


Немного забегая вперед, хочу показать, что же у нас есть в итоге…
Когда обнаруживается время расслабиться и включить сериальчик, я запускаю Alfred, ввожу "сериалы" и получаю в ответ список загруженных.


Красота, не правда ли?

Под катом пара бонусов для любителей сериалов

Cериалокачалка на python3 с поддержкой расширений

Время на прочтение5 мин
Охват и читатели25K

В качестве вступления стоит сказать что я пользуюсь macOS и потому некоторые части:


  • Автозапуск (launchd)
  • Формат конфигурационных файлов (plist)
  • Программа, используемая для уведомлений (terminal-notifier)

будут специфичны для этой ОС. Однако, если Вас заинтересует проект, думаю, поменять пару путей и слегка поправить несколько функций, чтобы заставить этот код работать с Вашей системой уведомлений, yaml'ом и, допустим, кроном, не составит труда.


Итак, к делу.


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

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

Вычисления с плавающей точкой: можно ли доверять результатам?

Время на прочтение6 мин
Охват и читатели27K
Имеющие дело с прикладными вычислениями знают, какие неприятности может преподносить конечная точность представления вещественных чисел в ЭВМ. Наиболее известные в этом плане проблемы — это решение чувствительных к возмущениям (так называемых, плохо обусловленных) систем линейных уравнений и нахождение собственных значений несимметричных матриц.

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

Если, например, вычисления, полученные на одинарной и удвоенной точностях совпадают, то создается чувство уверенности в результате, по крайней мере с точностью сопоставимой с одинарной. Здесь, я бы хотел привести один интересный пример, демонстрирующий, что даже в сравнительно несложной арифметической задаче подобная устойчивость при переменной точности представления чисел не может служить основанием для такой уверенности.
Читать дальше →

Приглашаем в Одессу на WebCamp 2016! Море, отдых и любимые технологии

Время на прочтение2 мин
Охват и читатели5.2K


С 29 по 31 июля в Одессе уже в 7-й раз пройдет конференция WebCamp, которая посвящена технологиям веб-разработки, управлению проектами и развитию бизнеса. Традиционно, мероприятие состоит из нескольких направлений. В этом году это: Front-End, Python, PHP, DevOps, PM, BizDev.

WebCamp 2016 соберет более 600 участников со всей Украины и ближнего зарубежья. Конференция рассчитана на участников уровня Middle/Senior, где у каждого будет возможность обменяться опытом, поделиться своими идеями, отлично провести время с коллегами на афтерпати и отдохнуть у Черного моря.

Наша команда FlyElephant сейчас активно работает над финализацией программы конференции и у вас еще есть шанс присоединиться к нам. С докладами выступят представители таких компаний как: Microsoft, Wargaming, Looksery, Upwork, Provectus, Ciklum, DataArt, Zillion Whales, SoftServe, YouScan, WebbyLab, Coderiver, CartFresh, RevJet, FlyElephant, Netpeak, DataRobot, KeepSolid, VertaMedia и других.
Читать дальше →

Platypus и Packages. Создаём и устанавливаем программы на macOS

Время на прочтение4 мин
Охват и читатели13K


Очень часто бывает необходимо собрать код, написанный на Python, в приложение для Windows, Linux или OS X. Да, для этого действительно существует множество пакетов, таких как кросс-платформенные cx_Freeze и PyInstaller, а также обособленных py2exe и py2app. Но для macOS существует возможность избежать возни с созданием установочного файла.
Читать дальше →

JetBrains и Django анонсировали 30% распродажу PyCharm, c передачей всех денег в фонд Django

Время на прочтение3 мин
Охват и читатели13K
После нескольких лет поддержки фреймворка Django в PyCharm, JetBrains и Django Software Foundation договорились о партнерстве и проведении двухнедельной распродажи лицензий PyCharm c последующей передачей всех заработанных на распродаже денег в фонд Django на развитие различных проектов и инициатив. В дополнение к распродаже, частью партнерства является внедрение нового стандарта аннотаций типов в Python (PEP 484 Type Hints) в будущие версии Django.



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

Пишем текстовую игру на Python/Ren'Py ч.2: мини-игры и подводные камни

Время на прочтение7 мин
Охват и читатели41K
Краткое содержание предыдущих двадцати пяти тысяч серий: мы пишем текстовую игру про плавание по морю и ввязывание в истории. Пишем мы её на движке Ren'Py, который изначально предназначен для визуальных новелл, но после минимальной настройки способен делать всё, что нам надо. В прошлой статье я рассказал, как сделать простенькую интерактивную читалку, а в этой мы добавим ещё пару экранов с более сложными функциями и наконец поработаем на питоне.
image

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

Генератор музыки на базе кодогенератора

Время на прочтение4 мин
Охват и читатели13K
Привет, хабраюзер! В этом топике я расскажу о своей идее генерации музыкальных композиций. Создадим язык описания ритма музыки на базе python, напишем компилятор этого языка в wave файлы и получим довольно нехилую электронную композицию.

Добро пожаловать под кат.
Читать дальше →

Python: строим распределенную систему c PySyncObj

Время на прочтение5 мин
Охват и читатели17K
Представьте, что у вас есть класс:
class MyCounter(object):
    def __init__(self):
        self.__counter = 0
    def incCounter(self):
        self.__counter += 1
    def getCounter(self):
        return self.__counter

И вы хотите сделать его распределённым. Просто наследуете его от SyncObj (передав ему список серверов, с которыми нужно синхронизироваться) и отмечаете декоратором @replicated все методы, которые изменяют внутреннее состояние класса:
class MyCounter(SyncObj):
    def __init__(self):
        super(MyCounter, self).__init__('serverA:4321', ['serverB:4321', 'serverC:4321'])
        self.__counter = 0
    @replicated
    def incCounter(self):
        self.__counter += 1
    def getCounter(self):
        return self.__counter

PySyncObj автоматически обеспечит репликацию вашего класса между серверами, отказоустойчивость (всё будет работать до тех пор, пока живо больше половины серверов), а также (при необходимости) асинхронный дамп содержимого на диск.
На базе PySyncObj можно строить различные распределенные системы, например распределенный мьютекс, децентрализованные базы данных, биллинговые системы и другие подобные штуки. Все те, где на первом месте стоит надёжность и отказоустойчивость.
Читать дальше →

Игра Престолов. Поиск авторов диалогов в книгах

Время на прочтение29 мин
Охват и читатели15K


Привет Хабрахабр,

На основании результата голосования в статье Теория Графов в Игре Престолов, я перевожу обучающий материал Эрика Германи (Erik Germani), который получил социальный граф связей из 5 первых книг серии «Песнь льда и пламени», лёгший в основу вышеупомянутой статьи. Статья не содержит подробного описания методов машинного обучения, а скорее рассказывает как на практике можно использовать существующие инструменты для поиска авторов диалогов в тексте. Осторожно, много букв! Поехали.
Читать дальше →

Пишем свой мессенджер P2P

Время на прочтение7 мин
Охват и читатели89K

На фоне обсуждения будущего интернет мессенджеров и прочтения статьи «Почему ваш любимый мессенджер должен умереть», решил поделиться своим опытом создания P2P приложения для общения независимо от сторонних серверов. Точнее — это просто заготовка, передающая одно сообщение от клиента серверу, дальнейшее расширение функционала зависит только от Вашей фантазии.
Читать дальше →

Автоматизация развертывания Docker-контейнеров на произвольной инфраструктуре

Время на прочтение6 мин
Охват и читатели26K


Контейнеризация приложений сегодня является не просто модным трендом. Объективно такой подход позволяет во многом оптимизировать процесс серверной разработки путем унификации поддерживаемых инфраструктур (dev, test, staging, production). Что в итоге приводит к значительному сокращению издержек на протяжении всего цикла жизни серверного приложения.

Хотя большая часть из перечисляемых достоинств Docker является правдой, тех, кто на практике столкнется с контейнерами, может постигнуть легкое разочарование. И так как Docker не является панацеей, а всего лишь входит в список из «лекарственных средств» от рецепта автоматического деплоя, разработчикам приходится осваивать дополнительные технологии, писать дополнительный код и т.д.
Читать дальше →

Ближайшие события

Как работает метод главных компонент (PCA) на простом примере

Время на прочтение10 мин
Охват и читатели342K


В этой статье я бы хотел рассказать о том, как именно работает метод анализа главных компонент (PCA – principal component analysis) с точки зрения интуиции, стоящей за ее математическим аппаратом. Максимально просто, но подробно.
Читать дальше →

PyCon Russia 2016: последние новости и финальная программа

Время на прочтение4 мин
Охват и читатели2.5K
Привет!

Осталась неделя до четвертого российского PyConRu. Конференция пройдет 3-4 июля в 95 км от Москвы (до места проведения и обратно будет трансфер).

На PyConRu выступит Ben Nuttall из Raspberry Pi, мы сделали телеграм-бота, итоговая сетка с расписанием готова. Под катом — подробно про все последние новости. Этот пост будет полезен для тех, кто до сих пор думает, ехать ему на конференцию или нет.


Больше питонов на ноутбуках! Одна из наклеечек для PyConRu

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

Разработка скрипта для сравнения вкусов людей

Время на прочтение6 мин
Охват и читатели7.3K
Приветствую, %username%. Сегодня разработаем скрипт составления рейтинга схожести интересов между людьми.

Заинтересовались? Прошу под кат

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

Решаем Hola Javascript Challenge с помщью LSTM

Время на прочтение5 мин
Охват и читатели4.6K
Вдохновлено недавним Hola Javascript Challenge. Упаковывать алгоритм в 64кб не будем, но зато точность получим пристойную.
Читать дальше →

PyCon 2016 в Портленде: видео всех значимых докладов и мастер-классов

Время на прочтение2 мин
Охват и читатели5.9K
image

Под словами PyCon чего только не проводится. От шумных конференций с билетами за N сотен долларов до бесплатных заседаний зимбабвийского клуба питонистов в количестве 2-х голодных темнокожих разработчиков.

Портлендский PyCon этого года — мероприятие крупного калибра с крутыми докладчиками и действительно ценной информацией. Тут были и простые развлекательные презентации на 30 минут о будущем Python, и мастер-классы по популярным темам типа масштабирования Flask и упаковки приложений в Docker, и хардкорные многочасовые занятия по статистике и машинному обучению.

Организаторы не поскупились, все качественно записали и уже выложили на официальный канал конференции.
Все на английском языке, но довольно понятном. Мимо такой кучи ценных знаний просто нельзя пройти мимо.

Несколько примечательных видео с комментами под катом

Интервью с программистом из Google Мартином Горнером о TensorFlow

Время на прочтение4 мин
Охват и читатели8.1K
Продолжает серию интервью с докладчиками PyCon Russia разговор с Мартином Горнером (Париж, Франция).

Мартин Горнер (Martin Gorner) стоял у истоков зарождения электронных книг, начиная с запуска Mobipocket, который позже стал частью программного обеспечения на Amazon Kindle и его мобильных вариантов, а с 2011 года Мартин работает в Google, где активно занимается машинным обучением и TensorFlow — принципиально новой, быстрой, умной и гибкой системой машинного обучения, которая способна работать как на простом смартфоне, так и на тысячах узлов в центрах обработки данных.

Ниже — короткое интервью с Мартином о том, что из себя представляет TensorFlow, почему Google открыли TensorFlow для разработчиков в open source, и чем система может быть интересна разработчику, не знакомому с машинным обучением.


3-4 июля Мартин будет на конференции PyCon Russia 2016

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

Telegram бот для службы поддержки (часть 1)

Время на прочтение5 мин
Охват и читатели83K


В этом цикле статей мы реализуем службу поддержки для онлайн-чатов. Система должна уведомлять команду операторов о новом сообщении, делить нагрузку на команду любого размера, делегировать сообщения в зависимости от приоритета. Звучит жутко. Но без паники, я поделюсь нашим опытом построения такой системы, которая уместилась всего в пару сотен строк кода. Да, мы будем использовать Telegram-бота. Но не потому, что это модно, а потому что супер удобно.
Читать дальше →