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

Собрали в одном месте самые важные ссылки
консультируем про IT, Python

     28.03.2019       Выпуск 275 (25.03.2019 - 31.03.2019)       Статьи

От парсера афиши театра на Python до Telegram-бота. Часть 2

Продолжаем историю о разработке Telegram-бота для поиска билетов — HappyTicketsBot, начало можно почитать в первой части.

Во второй расскажу о самом боте, поделюсь кодом, а также идеями, которым скорее всего не суждено стать реальностью. Большая часть функционала к моменту создания бота уже была написана в формате скрипта, поэтому основной задачей стояло наладить интерфейс взаимодействия с пользователем через Telegram-messenger. Получилось не так болтологически, как в 1й части, так что attention — много кода.

     28.03.2019       Выпуск 275 (25.03.2019 - 31.03.2019)       Статьи

DCF77: как работает система передачи сигналов точного времени?

Наверное многие, приобретающие часы или метеостанцию, видели на упаковке логотип Radio Controlled Clock или даже Atomic Clock. Это весьма удобно, ведь достаточно поставить часы на стол, и они через некоторое время автоматически настроятся на точное время.

Разберемся как это работает и напишем декодер на языке Python.

     27.03.2019       Выпуск 275 (25.03.2019 - 31.03.2019)       Статьи

Введение в Python Dataclasses – Часть 2

Это вторая статья из серии статей “Введение в Python Dataclasses“. В первой части я рассказал о базовом использование dataclasses.

     26.03.2019       Выпуск 275 (25.03.2019 - 31.03.2019)       Статьи

Введение в Python Dataclasses – Часть 1

Если вы читаете эту, то возможно вы уже знакомы с Python 3.7 и читали о его новых функциях.

     26.03.2019       Выпуск 275 (25.03.2019 - 31.03.2019)       Видео

Сергей Архипов - Фингерпринтинг

Слайды: https://speakerdeck.com/9seconds/fingerprinting

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

     26.03.2019       Выпуск 275 (25.03.2019 - 31.03.2019)       Статьи

Какие языки программирования наименее безопасны?

Обзор от WhiteSource показал, какие из языков программирования имеют наибольшие дыры в безопасности. Победитель антирейтинга — Си. Но это только начало истории.

Технологии в целом нашпигованы ошибками безопасности. На низком уровне это ошибки в железе. Так это было с уязвимостью Intel и ошибками Spectre. Чуть выше — дыры в безопасности языков программирования. И их ну очень много!

     26.03.2019       Выпуск 275 (25.03.2019 - 31.03.2019)       Статьи

Кросспостинг постов из Instagram в паблик VK на Python

Решил выйти на новый рынок сбыта, тем более, целевая аудитория моего интернет-магазина, не имеющая аккаунтов в Instagram, давно интересовалась появлением дубликата в VK. Идея хорошая, но постов на странице сотни, соответственно вручную работать ctrl+c ctrl+v не хотелось, плюс дальнейшие перспективы обезьянней работы не впечатляли.

Уверенный, что в интернете полно бесплатный решений, я начал гуглить. Естественно, первые страницы поисковой выдачи пестрят платными сервисами, с довольно обширными функционалами. Но мне, всего лишь на всего, надо было перенести все посты со страницы Instagram в паблик VK и в дальнейшем синхронно пополнять его.

     26.03.2019       Выпуск 275 (25.03.2019 - 31.03.2019)       Статьи

Исключения в Python теперь считаются анти-паттерном

Что такое исключения? Из названия понятно — они возникают, когда в программе происходит исключительная ситуация. Вы спросите, почему исключения — анти-паттерн, и как они вообще относятся к типизации? Я попробовал разобраться, и теперь хочу обсудить это с вами, хабражители.

     26.03.2019       Выпуск 275 (25.03.2019 - 31.03.2019)       Статьи

DHCP+Mysql сервер на Python

Целью данного проекта было:

 

 

  • Изучение протокола DHCP при работе в сети IPv4
  • Изучение Python (немножко более чем с нуля ;) )
  • замена серверу DB2DHCP (мой форк), оригинал здесь, который собирать под новую ОС всё труднее и труднее. Да и не нравится, что бинарник, который нет возможности «поменять прям щас»
  • получение работоспособного сервера DHCP с возможностью выборки IP адреса абонента по mac абонента или связке mac свича+порт (Option 82)
  • написание очередного велосипеда (О! это моё любимое занятие)
  • получение люлей про свою косорукость на Хабрахабр (а лучше инвайта) ;)

     26.03.2019       Выпуск 275 (25.03.2019 - 31.03.2019)       Статьи

Ловушка (тарпит) для входящих SSH-соединений

Не секрет, что интернет — очень враждебная среда. Как только вы поднимаете сервер, он мгновенно подвергается массированным атакам и множественным сканированиям. На примере ханипота от безопасников можно оценить масштаб этого мусорного трафика. Фактически, на среднем сервере 99% трафика может быть вредоносным.

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

     25.03.2019       Выпуск 275 (25.03.2019 - 31.03.2019)       Статьи

Как стать Data Engineer

Сейчас специализация в области data engineering активно набирает обороты. Судя по отчёту компании hired.com, спрос на data engineer специалистов вырос на 38%, и рост продолжится. Средняя зарплата у Data Engineer в Нью-Йорке составляет $132 тысячи, а в Сан-Франциско $151 тысячу. Что касается рынка СНГ, то спрос на дата инженеров только начинает расти. В России зарплатная вилка варьируется от 100 тысяч рублей до 250 тысяч. Эту информацию я получил из небольшого анализа открытых вакансий на ресурсах Мой Круг и HeadHunter.

     25.03.2019       Выпуск 275 (25.03.2019 - 31.03.2019)       Статьи

Применение принципа единой ответственности в Python

Перевод статьи Никиты Соболева Enforcing Single Responsibility Principle in Python (Применение принципа единой ответственности в Python).

     25.03.2019       Выпуск 275 (25.03.2019 - 31.03.2019)       Видео

Владимир Деев - Как создать MVP онлайн сервиса на Flask Admin за 60 минут

Слайды: https://docs.google.com/presentation/d/1bpUc8xxvdJZ95mfvhHSfMUaQTZjP4l8YijkIBuqFD0Y/edit?usp=sharing

Многие пытаются сделать стартап сразу красивым и привлекательным, используя очередной новомодный JS-фреймворк. Я же убежден, что в ряде случаях гипотезу можно проверить создав веб на базе админки. Расскажу об одном стартапе, которые был создан (и просуществовал в течение 1.5 лет) на Flask-Admin - админке, работающей поверх Flask, WTForms и SQLALchemy, при этом в проекте было написано минимум Javascript-кода. В докладе расскажу о граблях, на которые мы наступили и различных трюках кастомизации данной админки.

 

     25.03.2019       Выпуск 275 (25.03.2019 - 31.03.2019)       Видео

Артем Малышев - dry-python: хорошая архитектура из коробки

Слайды: https://dry-python.org/static/slides/introducing-dry-python.html#/

Как часто, получая новый ticket, вы задумываетесь: "Ну и где тебя искать?" Как часто, вглядываясь в обработчик запроса, вы гадали: "Что тут вообще твориться?" Качественный код всегда тяжело проектировать в начале, а ценить вложенные усилия начинаешь спустя время. В своём докладе я расскажу нехитрые подходы, которые позволят упростить дальнейшую жизнь проектов. А так же анонсирую проект Dry Python, воплотивший эти подходы в виде средств разработки.

     25.03.2019       Выпуск 275 (25.03.2019 - 31.03.2019)       Статьи

Анализ статистики группы Вконтакте через API с помощью Python: часть 1

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

     25.03.2019       Выпуск 275 (25.03.2019 - 31.03.2019)       Релизы
     22.03.2019       Выпуск 274 (18.03.2019 - 24.03.2019)       Статьи

Мой путь от Python к Go — делюсь советами и ресурсами

Мне нравится Python. Этот язык был моим фаворитом последние пять лет. Он дружелюбный, эффективный, и его легко выучить. Используется практически для всего: от создания простых скриптов и веб-разработки до визуализации данных и машинного обучения

     22.03.2019       Выпуск 274 (18.03.2019 - 24.03.2019)       Статьи

Создание универсального приложения с Nuxt.js и Django

Появление современных библиотек JavaScript, таких как React.js и Vue.js, трансформировало front-end веб-разработку в лучшую сторону. Эти библиотеки поставляются с богатым набором функциональности, позволяя быстро создавать одностраничные приложения SPA, которые в основном представляют собой динамическую загрузку и отображение содержимого веб-страниц без полной перезагрузки браузера.

     20.03.2019       Выпуск 274 (18.03.2019 - 24.03.2019)       Статьи

От парсера афиши театра на Python то Telegram-бота. Часть 1

Я очень люблю оперу и балет, но не очень — отдавать большие деньги за билеты. Ежедневный просмотр сайта театра с тыканьем в каждую кнопку ужасно утомлял, а внезапно появлявшиеся билеты по 170 рублей на супер-составы бередили душу.

Чтобы автоматизировать это дело появился скриптик, который бежит по афише и собирает информацию о самых дешевых билетах на выбранный месяц. Запросы из серии «выдай список всех опер в марте на старой и новой сцене до 1000 рублей». Подруга обронила «а ты не Telegram-бота делаешь?». Такого в плане не было, но почему бы и нет. Бот родился, хоть и крутился на домашнем ноутбуке.

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