Собрали в одном месте самые важные ссылки
консультируем про IT, Python
Я использую Google Drive для хранения бэкапов на некоторых своих серверах, но можно выдумать множество сценариев использования этого облачного хранилища.
Для этого нам необходимо будет установить клиентскую библиотеку для работы с API Google, драйвер gdfs, получить код авторизации и настроить автоматическое монтирование при загрузке сервера.
Те, кто учат английский язык наверняка знакомы с Anki — программой для запоминания слов, выражений и любой другой информации с помощью интервальных повторений.
Другой популярный сервис, не нуждающийся в представлении — LinguaLeo позволяет при чтении оригинального текста сразу отправлять незнакомые слова на изучение, сохраняя их в собственном словаре вместе с произношением, изображением, транскрипцией слова и контекстом в котором оно употребляется. Пару лет назад LinguaLeo внедрили систему интервальных повторений, но в отличии от Anki система повторений не такая мощная и не содержит в себе возможностей настройки.
Что если нам попытаться скрестить ужа с ежом использовать преимущества двух платформ? Взять сами слова из Лингва Лео вместе со всеми медиафайлами и информацией и использовать ресурсы Anki для их запоминания.
Если у вас Django проект работает на синхронных воркерах и вы периодически их перезапускаете (например, в gunicorn это опция --max-requests), полезно было бы знать, что по-умолчанию после каждого перезапуска воркера, первый запрос к нему обрабатывается гораздо дольше, чем последующие.
Совсем недавно я столкнулся с проблемой: по необьяснимым причинам карта памяти начала забрасывать все файлы в папку LOST.DIR без расширений. За долгое время там накопилось более 500 файлов разного типа: картинки, видео, аудио, документы. Самостоятельно понять формат файла было невозможным, по этому я стал искать способ решения этой проблемы программным путем.
Важнейшей задачей автоматического управления любыми технологическими процессами является разработка математического описания, расчет и анализ динамики автоматических систем регулирования (АСР).
Практика промышленного использования микропроцессорных регулирующих приборов (МРП) показала, что “идеальные алгоритмы” физически не реализуемы. Синтезированная на их основе АСР не отражает поведение реальной системы [1].
С тех пор, как я посмотрел легендарное видео Wat Гэри Бернхардта, меня завораживает странное поведение некоторых языков программирования. Некоторые из них таят больше сюрпризов, чем другие. Например, для Java написана целая книга с описанием пограничных ситуаций и странной специфики. Для C++ вы просто можете почитать сами спецификации всего за $200.
Далее поделюсь с вами моей коллекцией самых неожиданных, забавных и всё-таки валидных «заклинаний» программирования. По сути, использование этих особенностей поведения ЯП считается пагубным, поскольку ваш код никоим образом не должен быть непредсказуемым. Хорошо, что многие линтеры уже осведомлены и готовы посмеяться над вами, если попробуете какое-то из перечисленных дурачеств. Но как говорится, знание — сила, так что начнём.
Эта статья — небольшая заметка о реализации алгоритма q-learning для управления агентом в стохастическом окружении. Первая часть статьи будет посвящена созданию окружения для проведения симуляций — мини-игр на поле nxn, в которых агент должен как можно дольше продержаться на удалении от противников, движущихся случайным образом. Задача противников, соответственно, его настигнуть. Очки начисляются за каждый ход, проведенный агентом в симуляции. Вторая часть статьи затронет основы q-learning алгоритма и его имплементацию. В третьей части попробуем поменять параметры, которые определяют восприятие окружения агентом. Проанализируем влияние этих параметров на результативность его игры. Акцент я специально сместил в сторону использования минимального количества сторонних модулей. Цель — прикоснуться к самой сути алгоритма, так сказать потрогать руками. Для реализации будем использовать только «pure» python 3.
Толстые модели (fat models), тонкие представления (thin views), тупые шаблоны (stupid templates) - один из распространенных подходов к структурированию Django приложений. Цель подхода - вынести бизнес логику из представлений и шаблонов, и поместить ее в модели. Очевидно, что представления и шаблоны не должны содержать бизнес логику, так как они имеют совсем другие обязанности. Но выносить логику в модели не лучший вариант. Это приводит к тому, что модели становятся слишком большими и имеют слишком много обязанностей. Получаются так называемые объекты боги (god objects). Из-за их сложности код сложно понять, тестировать и поддерживать.
В Сети много тюториалов и видеолекций, и других материалов обсуждающих
основные принципы, архитектуру, стратегии обучения и т.д. Традиционно, обучение нейронных сетей производится путем предявления нейронной сети пакетов
изображений из обучающей выборки и коррекции коэффициентов этой сети
методом обратного распространения ошибки. Одним из
наиболее популярных инструментов для работы с нейронными сетями является
библиотека Tensorflow от Google.
На этой неделе я сделал мой первый pull-request в основной проект CPython. Его отклонили :-( Но чтобы не тратить полностью свое время, я поделюсь своими выводами о том, как работает CPython и покажу вам как легко изменить синтаксис Python.
Я собираюсь показать вам как добавить новую фичу в синтаксис Python. Эта фича — оператор инкремента/декремента, стандартный оператор для большинства языков. Чтобы убедиться — откройте REPL и попробуйте:
Как же называется процесс записи в журнал событий?
Нам кажется очень важным способствовать тому, чтобы начинающие (и не только) разработчики узнавали о самых крутых технологиях на рынке. Поэтому мы делаем целый пул образовательных онлайн-проектов в партнёрстве с лучшими площадками. Подробно о них рассказываю под катом, там же раскрываю наши планы на будущее.
Сравниваем 2 подхода к генерации текста c помощью нейронных сетей: Char-RNN vs Word Embeddings + забавные примеры в конце.
Когда становится совсем нечего читать, открывать книгу не хочется, все статьи на Хабре прочитаны, все нотификации на телефоне обработаны, и даже просмотрен спам в ящиках, я открываю Ленту.ру. У моей жены — профессионального журналиста — в такие моменты начинается аллергия, и понятно, почему. После того, как в 2014 году из Ленты ушла старая команда, уровень желтизны издания пошел вверх, а качество текста и редактуры — вниз. Со временем, периодически по инерции продолжая читать Ленту, я стал замечать, что модели заголовков новостей повторяются: «Обнаружено [вставить псевдо-сенсацию]», «Путин [что-то сделал]», «Безработный москвич [описание его приключений]» и так далее. Это была первая вводная.
Недавно OpenDataScience и Mail.Ru Group провели открытый курс машинного обучения. В прошлом анонсе много сказано о курсе. В этой статье мы поделимся материалами курса, а также объявим новый запуск.
Мы, Smart Engines, продолжаем цикл статей про то, как встроить наши технологии распознавания (паспортов, банковских карт и других) в ваши приложения. Ранее мы уже писали про встраивание на iOS и Android, а сегодня мы расскажем про то, как работать с Python-интерфейсом библиотеки распознавания Smart IDReader и напишем простого Telegram-бота.
Кстати, список поддерживаемых нами языков программирования расширился и теперь включает C++, C, C#, Objective-C, Swift, Java, Python, а также такие эзотерические языки, как Visual Basic и, разумеется, PHP. Как и раньше, мы поддерживаем все популярные и многие непопулярные операционные системы и архитектуры, а наши бесплатные приложения доступны для скачивания из App Store и Google Play.
По традиции, демо-версия Smart IDReader SDK для Python вместе с исходным кодом реализации Telegram-бота выложены на Github и доступны по ссылке.
Удаление контейнеров которые работают больше недели с помощью Python
В одной из систем, к которым я имею отношение, doc-файлы складываются в базу данных.
Мне стало интересно, можно ли пристроить в свою программку, работающую с базой, просмотр этих файлов.
"Почему возникла потребность в масштабировании Scrum? Чем нам помог фреймворк LeSS? С какими проблемами мы столкнулись и как их преодолели?"
Слайды: http://www.moscowpython.ru/meetup/50/scrum-scale/
"На MoscowPython 33 я уже рассказывал в общих чертах про состояние property-тестирования в Python и коротко про Hypothesis. Предлагаю продолжить, но уже по существу. В этом докладе я на примерах покажу, как эффективно применять Hypothesis, находить неочевидные баги и повышать качество ваших тестов".
Слайды: http://www.moscowpython.ru/meetup/50/practical-hypothesis/