Собрали в одном месте самые важные ссылки
читайте нас в Twitter
Блокчейн — децентрализованная база данных, хранящая информацию о всех операциях в виде цепи блоков. Особенностью сети является то, что записи находятся не на одном сервере, а на сотнях, из-за чего незаметно подделать их или удалить невозможно. Блокчейн — надежная и безопасная технология, которую можно использовать для обмена данными, деньгами и даже документами.
Не для кого не секрет, что капча является популярным средством, чтобы снизить нагрузку на сайт и предотвратить скачивание информации роботами. Сегодня, когда капча применяется практически на каждом сайте, рассмотрим кейс с ее обходом на сервисе "Прозрачный бизнес".
psycopg — это адаптер базы данных PostgreSQL для Python, то есть одной из его основных задач является автоматическая подстройка типов при составлении запросов и получении ответов между PostgreSQL и Python. И хотя это преобразование отлично применяется к встроенным типам, psycopg также предоставляет нативный способ обрабатывать специализированные типы данных с помощью фабрик строк.
Я занимаюсь NLP в сфере Data Science и хочу поделиться результатами разработки Telegram-бота, у которого под капотом уже 15 нейросетей. Речь идёт о TurboText_bot. Он будет полезен всем, кто причастен к созданию контента. К таким можно отнести блогеров, журналистов, копирайтеров и многих других специалистов.. Даже бабушек у подъезда, ведь бот способен генерировать и обрабатывать новости.
Каждый, кто слышит словосочетание "язык программирования", наверняка представляет себе код или скрипт, который выполняет строгий порядок действий для решения сложной технической задачи. Если спросить прохожего, для каких целей используются языки программирования, первое, что придет ему на ум - разработка, а любой гуманитарий скажет, что это скучно и совершенно не интересно. Однако, мне хотелось бы развеять эти стереотипы. Учитывая современные тенденции роста научно-технического прогресса, важно отметить, что программирование перестало быть чисто "техническим" инструментом.
Поделюсь с Вами одним численным алгоритмом вычислительной математики для построения оптимального пути движения на сложной поверхности. Под оптимальностью понимается построение такого маршрута, который проходит по карте местности, огибая все локальные экстремумы (возвышенности и впадины), обеспечивая таким образом некоторую степень минимизации перепада высот и длину всего маршрута.
Рендерим спрайты как в Doom/Heretic/Hexen.
В рамках проекта цифровой модернизации для одного из наших клиентов возникла задача миграции данных из одной модели хранения в другую. Для тестирования такого решения мы обратились к практикам BDD (Behaviour Driven Development) и виртуализации зависимостей с помощью docker контейнеров. В данном посте рассмотрен рецепт как можно организовать тестирование подобного решения с помощью pytest-bdd и testcontainers на python. Весь исходный код доступен по ссылке.
Про регрессионный анализ вообще, и его применение в DataScience написано очень много. Есть множество учебников, монографий, справочников и статей по прикладной статистике, огромное количество информации в интернете, примеров расчетов. Можно найти множество кейсов, реализованных с использованием средств Python. Казалось бы - что тут еще можно добавить?
К концу руководства вы освоите основные функции и методы модуля Python socket, научитесь применять пользовательский класс для отправки сообщений и данных между конечными точками и работать со всем этим в собственных клиент-серверных приложениях.
Как часто вы сталкиваетесь с необходимостью выгрузить в MS Excel более миллиона строк? Все фильтры на выгрузку уже были наложены ранее, но, увы, она до сих пор «не проходит по габаритам». Перед нами встает дилемма – делить, или … воспользоваться готовыми решениями для python, не изучая python! Речь сегодня пойдет о трех библиотеках, которые позволяют писать код и при этом не писать его, а также оперировать внушительными объемами данных с минимальными знаниями английского языка или синтаксиса пресловутых «панд» (здесь и далее «панды»: pandas – open-source библиотека для python для работы с табличными данными – прим. автора). Для примера будем использовать объявления о продаже автомобилей Toyota с известного сайта.
Продолжение статьи C/C++ из Python (ctypes) на Android. Теперь поговорим о том как использовать Java из Python, ведь для android это родной язык и почти все работающие библиотеки и нужные вещи написаны на ней. Научимся создавать классы, вызывать методы, возвращать результат и дергать callback-и. На Linux аналогично работает.
Python стал самым популярным языком во многих быстроразвивающихся областях, таких, как глубокое обучение и различные направления анализа и обработки данных. Но при этом за удобство работы с Python-кодом, за высокий уровень его читабельности, приходится платить производительностью. Конечно, все мы время от времени жалуемся на скорость работы программ, и Python, безусловно, не стоит винить во всех грехах. Несмотря на это, справедливым будет заявление о том, что природа Python, интерпретируемого языка, не способствует высокой производительности кода, особенно когда речь идёт о «тяжёлых» вычислениях (один из признаков таких вычислений — наличие в программе нескольких вложенных циклов).
Множество курсов, призванных подготовить DS специалистов «за полгода», создают впечатление, что уж сертифицированным датамайнером стать достаточно просто. А что? Немного основ DS языка, немного по структуре данных, немного по различным преобразованиям данных, немного SQL, немного математики (в ML не погружаемся, только знакомимся), немного визуализации, немного HTML+JS+CSS. Специалист готов? На практике оказывается, что маловато будет.
Первый паттерн, который я бы хотел с вами разобрать - Memento (снимок). После, с перерывом ~2 недели будут выходить и остальные. Если у вас есть замечания или вы что-то не понимаете - пишите в комменты, разбор самых интересных вопросов я добавлю в статью.
Недавно мне довелось участвовать в хакатоне по информационной безопасности на научной конференции в прекрасном городе Санкт-Петербург в СПбГУТ. Одно из заданий представляло из себя написание собственного сканера уязвимостей на любом ЯП с условиями, что использование проприетарного ПО и фреймворков запрещено. Можно было пользоваться кодом и фреймворками существующих сканеров уязвимости с открытым кодом. Это задание и мое решение с моим коллегой мы и разберем в этой публикации.
Штош. В этой статье я научу вас делать кроссплатформенное приложение генератор паролей с графическим интерфейсом. Мы будем использовать язык Python и библиотеку PySide6 - привязку к инструментарию фреймворка Qt.
Приложение умеет генерировать пароли, скрывать и копировать их в буфер обмена. Длина задается с помощью слайдера и счетчика. Пул допустимых символов меняется кнопками. Сила пароля рассчитывается по информационной энтропии.
В статье я постарался затронуть все моменты создания и сборки приложения. Ознакомиться с проектом можно на GitHub.
Кортокая версия. Я набил API и python библиотеку, которые позволяют искать картинки похожую на искомую.API бесплатный, на один запрос выдает до 20 похожих картинок.В базе данных 18 миллионов изображений. Надеюсь, в ближайшее время, добавлю еще 50M.API: LINKpython wrapper: LINKWeb Demo: LINK. Можно загрузить свою картинку или воспользоваться текстовым поиском. Можно кликать на картинки в результате поиска и смотреть что найдет по ней. Хороший вопрос за сколько шагов можно дойти от чего-то невинного до порнухи или хотя бы обнаженки
Представьте на секунду, что вы очень азартный игрок, который только что попал в казино и не может выбрать, за какой игровой автомат ему сесть. Или один муравей из колонии, выбирающий по какому пути ему пойти на поиски пищи. Или даже вы – это целый маркетплейс, который думает, какую же цену, ему поставить на тот или иной товар!
Судоку – это игра, в которой игровое поле представляет собой квадрат размером 9×9, разделённый на меньшие квадраты со стороной в 3 клетки. Таким образом, всё игровое поле состоит из 81 клетки. В них уже в начале игры стоят некоторые числа (от 1 до 9), называемые подсказками. От игрока требуется заполнить свободные клетки цифрами от 1 до 9 так, чтобы в каждой строке, в каждом столбце и в каждом малом квадрате 3×3 каждая цифра встречалась бы только один раз