Search
Write a publication
Pull to refresh
4
0

Пользователь

Send message

Python-пакеты для Data Science

Reading time8 min
Views39K
Python — это один из самых распространённых языков программирования. Хотя стандартные возможности Python достаточно скромны, существует огромное количество пакетов, которые позволяют решать с помощью этого языка самые разные задачи. Пожалуй, именно поэтому Python и пользуется такой популярностью среди программистов. Можно наугад назвать какую-нибудь сферу деятельности и в экосистеме Python, почти гарантированно, найдутся отличные инструменты для решения специфических задач из этой сферы. В наше время весьма востребованы наука о данных (Data Science, DS) и машинное обучение (Machine Learning, ML). И там и там Python показывает себя наилучшим образом.

Помимо Python в DS-проектах часто используют язык программирования R. R быстрее Python и имеет больше статистических и вычислительных библиотек. Но в этом материале мы будем говорить исключительно о библиотеках (пакетах) для Python, о которых стоит знать каждому, кто хочет добраться до профессиональных вершин Data Science.



Прежде чем переходить к обзору библиотек, остановимся на том, что это такое — «наука о данных», и на том, почему в этой сфере стоит пользоваться языком Python.
Читать дальше →

Маленькие хитрости SSH

Reading time6 min
Views43K
В этой статье собраны наши лучшие приемы для более эффективного использования SSH. Из нее вы узнаете как:

  • Добавить второй фактор к логину SSH
  • Безопасно пользоваться agent forwarding
  • Выйти из вставшей SSH сессии
  • Сохранить постоянный терминал открытым
  • Поделиться удаленной сессией терминала с другом (без Zoom!)

Добавление второго фактора к своему SSH


Второй фактор аутентификации к своим SSH соединениям можно добавить пятью разными способами:

  1. Обновить свой OpenSSH и использовать ключ шифрования. В феврале 2020 года в OpenSSH была добавлена поддержка ключей шифрования FIDO U2F (Universal Second Factor). Это отличная новая функция, но есть нюанс: только те клиенты и серверы, которые обновились до версии OpenSSH 8.2 и выше смогут пользоваться ключами шифрования, так как февральское обновление вводит для них новые типы ключей. Командой ssh –V можно проверить клиентскую версию SSH, а серверную — командой nc [servername] 22
Читать дальше →

Развертывание интерактивных визуализаций данных в реальном времени на Flask и Bokeh

Reading time14 min
Views10K
image

Сегодня, в преддверии старта нового потока курса «Python для веб-разработки», делимся с вами полезным переводом статьи о небольшой интерактивной визуализации, для исследований данных о фильмах. Автор использует не только Flask и Bokeh, но и задействуя бесплатную облачную платформу баз данных easybase.io. Все подробности и демонстрации вы найдёте под катом.
Приятного чтения!

25 лучших репозиториев GitHub для разработчиков Python

Reading time3 min
Views28K
Согласно опросу разработчиков на StackOverflow в 2020 году*, Python — один из самых любимых языков в мире. Что еще более интересно, Python — это язык, который разработчики больше всего хотят попробовать в своей работе. Если вы один из тех, кто использует Python и хочет прокачать свои знания, или один из тех, кто хочет изучить Python, вы попали в нужное место. Под катом 25 лучших репозиториев Python на GitHub.

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

Ускоряем на 70% игру на процессоре в 1 МГц

Reading time16 min
Views31K

Давным-давно, во времена студенчества в колледже я немного занимался разработкой компьютерных видеоигр. Это была эпоха 8-битных PC, когда игровое оборудование по современным стандартам было почти невозможно медленным.

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

Это история об одном из таких трюков.

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

Исходные данные


Мой друг, одарённый программист, почти закончил свою новую игру. Каким-то образом ему удалось почти без изменений уместить в компьютер эпохи 1980-х довольно впечатляющую графически на то время игру, популярную на аркадных автоматах.

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

Мой друг, работавший над игрой параллельно с учёбой в колледже, начал уже ощущать себя немного вымотанным. Опасаясь, что мог упустить какую-нибудь простую оптимизацию, он попросил посмотреть код меня.

Я посмотрел. Но там нельзя было найти никакой простой оптимизации.
Читать дальше →

Личный опыт изучения испанского: так ли прост язык, как о нем пишут?

Reading time6 min
Views44K

Аtención: Мнение, описанное в статье, — субъективно, это личный взгляд на вещи. У каждого человека разные способности к изучению языков, как и к любой другой деятельности.

До переезда в Испанию у меня был скудный опыт в изучении иностранных языков. Относительного успеха я добилась только в изучении английского делового языка в университете. И даже его благополучно забыла в течение пары лет за ненадобностью. В 29 лет судьба закинула меня в Испанию, где я начала изучить совершенно новый для меня язык.

Все, что я читала в интернете на форумах живущих в Испании за полгода до переезда:

  • Испанский очень легкий язык.
  • За три месяца можно научиться бегло говорить, даже не обучаясь языку специально.
  • Испанцы с удовольствием тебе будут помогать, когда увидят, что ты стараешься выучить их язык.
  • Простая грамматика и тому подобное.

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

Откуда берется заголовок Content-Type: nginx + php-fpm

Reading time5 min
Views10K
Rocket science не будет. Если вы используете php-fpm, то скорее всего в связке с nginx. Простой вопрос: как в PHP получить значения HTTP заголовков запроса клиента?

  1. Например, стандартные Accept, Host или Referer?
  2. Знаете? Здорово! А как получить значение Content-Type, Content-Length?
  3. Ничем вас не удивить, а как получить значение произвольного заголовка, например X-Forwarded-For?

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

Как построить полнотекстовый поиск с помощью нейронных сетей

Reading time8 min
Views14K

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


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

Как стать успешным дата-сайентистом и аналитиком данных

Reading time7 min
Views11K

Есть много статей о навыках, необходимых, чтобы быть хорошим дата-сайентистом, или аналитиком данных, но лишь в немногих статьях пишут о навыках, необходимых для успеха — будь то исключительная оценка работы, похвала от руководства, повышение, или все вышеперечисленное. Сегодня мы представляем вам материал, автор которого хотела бы поделиться своим личным опытом работы в качестве дата-сайентиста и аналитика данных, а также тем, чему она научилась ради достижения успеха.
Приятного чтения!

JWT аутентификация в CLI приложении на Linux

Reading time8 min
Views6.2K

Когда речь идёт о хранении sensitive data в браузере, достаточно воспользоваться одним из двух доступных вариантов: cookies или localStorage. Тут каждый выбирает по вкусу. Однако я посветил эту статью Secret Service – службе, которая работает через D-Bus и предназначена для хранения «секретов» в Linux.

У службы есть API, которым пользуется GNOME Keyring для хранения аутентификационных данных пользовательских приложений.

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

Подключение автоплатежей через TeleWalletAbot к своему Telegram-боту

Reading time8 min
Views8.3K
Доброго времени суток.

Сегодня хочу рассказать о том, как работать с платежным API не так давно появившегося на просторах Telegram кошелька TeleWallet Статья будет интересна в первую очередь владельцам и разработчикам ботов Telegram, поскольку эта платежная система позволяет принимать платежи в Телеграме, не покидая Telegram
Читать дальше →

Теперь не заблокируешь: выложен первый выпуск децентрализованной коммуникационной платформы Jami

Reading time3 min
Views25K

Сегодня появился первый выпуск децентрализованной коммуникационной платформы Jami, он распространяется под кодовым именем Together. Ранее проект развивался под другим именем — Ring, а до этого — SFLPhone. В 2018 году децентрализованный мессенджер переименовали для того, чтобы избежать возможных конфликтов с торговыми марками.

Код мессенджера распространяется под лицензией GPLv3. Jami выпущен для GNU/Linux, Windows, MacOS, iOS, Android и Android TV. По желанию можно выбрать один из вариантов интерфейсов на базе Qt, GTK и Electron. Но главное здесь, конечно, не интерфейсы, а то, что Jami дает возможность обмениваться сообщениями без обращения к выделенным внешним серверам.
Читать дальше →

Как я получил пожизненный запас чесночной пиццы с помощью Python и Selenium

Reading time3 min
Views20K

История голодного студента с пытливым умом


Не знаю, как вы, а я обожаю пиццу. Особенно если это особые чесночные пицца-палочки Papa John’s. Поэтому я был в восторге, когда после заказа еды навынос получил от них следующее письмо:


Papa John’s (с) Заголовок письма с опросом

Бесплатная еда! Мне определённо нужно было пройти этот опрос…

HackTheBox. Прохождение Travel. Memcache+SSRF=RCE, LPE через LDAP

Reading time5 min
Views4.3K

Продолжаю публикацию решений, отправленных на дорешивание машин с площадки HackTheBox.

В данной статье разбираемся как с помощью PHP memcache и SSRF получить RCE, копаемся в базе данных и смотрим, чем опасен LDAP администратор.

Подключение к лаборатории осуществляется через VPN. Рекомендуется не подключаться с рабочего компьютера или с хоста, где имеются важные для вас данные, так как Вы попадаете в частную сеть с людьми, которые что-то да умеют в области ИБ.

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

HackTheBox. Прохождение Oouch. OAuth2, RCE в uWSGI и LPE через DBUS

Reading time8 min
Views3.9K

Продолжаю публикацию решений отправленных на дорешивание машин с площадки HackTheBox.

В данной статье разберем атаку на OAuth2 аутентификацию, а также зарегистрируем свое приложение для угона куки администратора. В добавок к этому, проэксплуатируем RCE в веб-сервере и сервере веб-приложений uWSGI, а также повысим привилегии через шину сообщений D-Bus.

Подключение к лаборатории осуществляется через VPN. Рекомендуется не подключаться с рабочего компьютера или с хоста, где имеются важные для вас данные, так как Вы попадаете в частную сеть с людьми, которые что-то да умеют в области ИБ.

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

HackTheBox endgame. Прохождение лаборатории Xen. Пентест Active Directory

Reading time10 min
Views8K
image

В данной статье разберем прохождение не просто машины, а целой мини-лаборатории с площадки HackTheBox.

Как сказано в описании, Xen предназначен для проверки навыков на всех стадиях атак в небольшой среде Active Directory. Цель состоит в том, чтобы скомпрометировать доступный хост, повысить привилегии и, в конечном итоге, скомпрометировать весь домен, собрав при этом 6 флагов.

Посмотреть разбор еще одной лаборатории Professional Offensive Operations можно здесь.

Подключение к лаборатории осуществляется через VPN. Рекомендуется не подключаться с рабочего компьютера или с хоста, где имеются важные для вас данные, так как Вы попадаете в частную сеть с людьми, которые что-то да умеют в области ИБ :)

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

Hack The Box. Прохождение Blunder. Ломаем Bludit CMS

Reading time2 min
Views5K

Продолжаю публикацию решений, отправленных на дорешивание машин с площадки HackTheBox.

Подключение к лаборатории осуществляется через VPN. Рекомендуется не подключаться с рабочего компьютера или с хоста, где имеются важные для вас данные, так как Вы попадаете в частную сеть с людьми, которые что-то да умеют в области ИБ.

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

10 фраз на английском, которые помогут сойти за американца

Reading time5 min
Views67K


Только ленивый не знает, что школьный и университетский английский сильно отличаются от реального языка, на котором говорят в США или Британии.

В каждой англоязычной стране есть разговорные выражения, которые отличают носителя от приезжего.

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

Добавьте их в свой словарик и при разговоре сможете сами сойти если не за американца, то хотя бы за обладателя уверенного английского. Поехали.

Система рекомендаций фильмов с GUI на Python

Reading time13 min
Views13K

«Без опыта я никому не нужен! Где взять опыт?» — часто думают люди, осваивающие новую для себя сферу или изучающие новый язык программирования. Решение есть — делать пет-проекты. Представленный под катом проект системы рекомендации фильмов не претендует на сложность и точность аналогичных систем от энтерпрайз-контор, но может стать практическим стартом для новичка, которому интересны системы рекомендации в целом. Этот пост также подойдет для демонстрации как использовать Python-библиотеку EasyGUI на практике.

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

Логирование запросов к приложению Django

Reading time20 min
Views16K


Привет, меня зовут Дмитрий Чернышов, я ведущий разработчик компании «БАРС Груп». Последние несколько лет среди прочих задач нам в команде приходится сталкиваться с необходимостью анализа производительности приложений на Django с большим количеством пользователей и постоянно меняющимися профилями нагрузки. В данной статье я хочу поделиться наработками, которые появились у нас в процессе работы.

Предыстория/Описание проблемы


В Django достаточно средств для того, чтобы организовать логирование запросов к приложению с целью получения ответов на следующие вопросы:

  • Какие запросы в среднем работают дольше всего с точки зрения пользователей?
  • Каких запросов выполняется больше всего?
  • Какие запросы создают больше всего запросов к СУБД?
  • В каких запросах самые длинные транзакции?
Читать дальше →

Information

Rating
Does not participate
Registered
Activity