Pull to refresh
3
0

Программист

Send message

Файл 420 байт разжимается в картинку PNG на 40 гигапикселей (141 ГБ ОЗУ)

Reading time2 min
Views15K
В старые времена были популярны zip-бомбы и рекурсивные архивы, которые распаковываются сами в себя. Zip-бомбу иногда можно использовать для DoS-атаки. Например, пресловутый файл 42.zip имеет размер 42 килобайта. Если начать его распаковку, то процесс будет идти до тех пор, пока набор данных не достигнет верхнего предела распаковки в 4,3 гигабайта. При этом процесс займет более 4,5 петабайт в оперативной памяти (4 503 599 626 321 920 байт).

Программист и хакер Дэвид Фифилд (David Fifield) задумался, где ещё можно применить «архивные бомбы». Сразу на ум приходит графический формат PNG, в котором используется алгоритм сжатия DEFLATE в библиотеке zlib.
Читать дальше →

Создание Telegram Web App с FastAPI: Генерация, сканирование QR-кодов камерой устройства и деплой за 5 минут

Reading time30 min
Views12K

Привет, друзья! Ваш теплый отклик на мою прошлую статью о разработке Telegram-ботов с использованием технологии MiniApp вдохновил меня на создание нового проекта.

Сегодня вы узнаете, как создать Telegram Web App с помощью FastAPI и Aiogram 3, который сканирует и генерирует QR-коды. В статье приведены шаги от установки зависимостей и настройки вебхуков до написания кода на фронте и бэке, и до деплоя проекта.

Читать далее

Блочное программирование для детей: среды, языки и уроки

Level of difficultyEasy
Reading time7 min
Views3.5K

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

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

Читать далее

Hamster Kombat: автоматизация фарма и тапанья хомяка через Python с деплоем

Reading time8 min
Views43K

Друзья, приветствую! Сейчас наблюдается невероятный интерес к телеграмм игре Hamster Kombat. Все тапают этого несчастного хомяка в надежде, что когда-то можно будет продать монеты за реальные деньги. Пока мы все в ожидании, давайте я расскажу, как автоматизировать процесс фарма и тапанья хомяка через Python, используя один интересный проект.

В завершении статьи я поделюсь с вами двумя способами, которые позволят развернуть нашего бота удаленно.

Читать далее

Самое понятное объяснение Специальной теории относительности

Level of difficultyMedium
Reading time13 min
Views134K

Специальная теория относительности - удивительная теория, которая опровергла многие представления о мире, в которых человечество не сомневалось всю историю своего существования.

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

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

Для иллюстраций я написал интерактивный визуализатор СТО, работающий в браузере. Ссылка на него и исходники проекта в конце статьи.

Читать далее

Clickhouse, Grafana и 3000 графиков. Как построить систему быстрых дашбордов

Reading time17 min
Views36K

Меня зовут Валя Борисов, и я — аналитик в команде Ozon. Задача нашей команды — создавать инструменты для мониторинга и анализа скорости. 

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

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

Читать далее

Мониторинг Supervisord: Упрощение контроля над процессами

Level of difficultyEasy
Reading time3 min
Views4.4K

В современной, стремительно развивающейся ИТ-среде умелое управление процессами играет ключевую роль в обеспечении стабильности и эффективности приложений и систем. Supervisord Monitor представляет собой ориентированное на пользователя решение этой задачи, позволяющее администраторам и разработчикам осуществлять надзор и контроль над процессами.

Читать далее

Как использовать Python в нативном Android приложении. Мой опыт

Level of difficultyEasy
Reading time4 min
Views9.4K

Привет, Хабр! В этой статье я хочу поделиться опытом разработки самого популярного загрузчика видео в RuStore и рассказать, как я использовал потрясающую библиотеку для интеграции Python кода в свой проект.

Читать далее

Записки оптимизатора 1С (часть 4). Параллелизм в 1С, настройки, ожидания CXPACKET

Level of difficultyEasy
Reading time10 min
Views15K

Параллелизм – это возможность выполнения запросов сервером СУБД в нескольких потоков. По умолчанию в настройках SQL Server параллелизм не ограничен и потенциально для выполнения запроса могут использоваться все ядра всех процессоров (max degree of parallelism= 0). В то же время, в системах 1С вендор настоятельно рекомендует установить max degree of parallelism = 1, и, соответственно, один запрос будет использовать только одно ядро.

Почему так и что же с этим всем делать? Давайте разбираться.

Читать далее

Записки оптимизатора 1С (часть 5). Ускорение RLS-запросов в 1С системах

Level of difficultyMedium
Reading time80 min
Views7.7K

Замахнемся сегодня на RLS.

Обсуждать будем проблемы по нашему профилю, связанные с производительностью 1С:Предприятие. Но, в целом, этот материал может быть полезен и не только 1С-никам.

Почему запросы с RLS часто такие долгие?

Какие есть варианты их ускорить?

Читать далее

Самая дешевая заводская панель управления умным домом, которая отлично работает

Level of difficultyHard
Reading time4 min
Views84K

Несколько лет назад уже писал про свои поиски идеальной и недорогой панели управления умным домом (статья собрала 200 закладок), тогда в 2020 году я остановился на недорогом андроид планшете, который перепрошил на чистый андроид для выполнения удаленных команд через ADB.

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

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

Выбор пал на NSPanel из‑за цены около 3,5 тысяч рублей, а также возможности установки в подрозетник или покупки настольной подставки — как у меня на фото.

Панель в подрозетник или на стол

Три консоли в инструментах разработчика 1С: упрощаем отладку кода, запросов и отчетов

Reading time10 min
Views29K

Привет, Хабр! В одном из недавних проектов мне удалось поближе познакомиться с «Инструментами разработчика» (далее ИР). Это универсальный комплекс средств, который помогает решать широкий спектр задач, поставленных разработчику и администратору. 

Описание всего инструментария будет слишком объемной задачей – многие из них заслуживают отдельной статьи. 

Меня зовут Николай, я 1С-разработчик в SimbirSoft и хочу поделиться собственным опытом применения трех инструментов из набора, которые использую их чаще всего: 

Консоль запросов;

Консоль компоновки;

Консоль кода. 

Я абсолютно уверен, что эти инструменты способны существенно облегчить жизнь разработчика. К примеру, значительно снизить время отладки, работая с большими и сложными запросами, которые в изобилии встречаются в типовых конфигурации компании 1С. Консоль запросов предлагает мощный арсенал средств по анализу запросов, делающих их отладку намного проще, чем использование других обработок, например, Консоли запросов от 1С. Материал будет полезен 1С-разработчикам уровня middle и тем, кто хочет знать о 1С-разработке больше.

Читать далее

Как «яжепрограммист» построил всю свою родню

Level of difficultyMedium
Reading time13 min
Views17K

Всем привет. Разумеется, это шутка — я своих родственников очень люблю, уважаю и никоим образом их не притеснял и не планирую. Более точная формулировка — отсортировал в целях построения генеалогического древа. Об алгоритме построения, сортировки, визуализации фамильного древа и будет эта статья.
Читать дальше →

Чем различаются Kafka и RabbitMQ: простыми словами

Reading time8 min
Views104K

Программные брокеры сообщения уже стали стандартом при построении больших и сложных систем. Однако до сих пор не все ИТ-специалисты понимают, как работают эти инструменты. Главный системный аналитик «Иннотех» Павел Малыгин помогает разобраться в брокерах сообщениях и их работе.

Читать далее

Как мы использовали RabbitMQ для разбиения монолита крупнейшего ритейлера страны*

Reading time6 min
Views9.1K

Накопить за 7 лет терабайты данных в монолите и решить, что пора оптимизировать систему и разбивать её на микросервисы — страшный сон для айтишника. Добавим сюда ещё база на решениях от 1С и необходимость обеспечить непрерывность процесса. Стало страшно? А для нас — возможность показать экспертность и решить нетривиальную задачу. О том, как «кролик» помог сдвинуть гору рассказал архитектор 1С компании «Автомакон» Виталий Осиповский.

С 2013 года ВкусВилл проводил внутреннюю автоматизацию с использованием программ на базе 1С. За годы активного развития и эксплуатации база увеличилась до нескольких терабайт, кратно выросло количество операций, что спровоцировало большой объем работы для администраторов, оптимизаторов и команды разработчиков. Например, тяжелые алгоритмы планирования, закрытий, генерации документов могли негативно влиять на работу всей базы.

Любые сбои и простои были неадекватно затратны и влияли на все компоненты системы в целом. А сама система не годилась для быстрого масштабирования бизнеса. Поэтому уже в 2020 году приняли решение о поэтапном разделении монолита на отдельные программные компоненты.  

Читать далее

Установка Home Assistant Supervised в Ubuntu 22.04 LTS

Reading time4 min
Views69K

Обновлен мануал по установке Home Assistant (далее для краткости - HA) в связи с выходом новой версии Ubuntu и Home Assistant. В качестве отправной точки взято видео Alex Kvazis Raspberry Pi 4B в корпусе Argon ONE M.2 c SSD диском 128 ГБ, собираем сервер для Home Assistant. Однако автор использует вариант установки Home Assistant Operating System, который является наиболее простым и удобным. В данной же статье будет использоваться способ Home Assistant Supervised.

Далее

Почему не работают стримеры, и как раскрутить свою игру?

Reading time4 min
Views9.7K

Доброго времени суток! В этой статье, хочу рассказать о нашем проекте, подсветить проблемы и подискутировать на волнующие темы со знающими хабровчанами. Прошу не расценивать как Гайд по раскрутке, скорее наоборот.

Что у меня за волнующие темы? Да собственно одна есть, самая важная, которая беспокоит всю команду - привлечение игроков. Для игры нашего жанра (MMO RolePlay), количество игроков является неким парадоксом. Чем больше игроков, тем интереснее играть, тем быстрее растет онлайн. И обратная ситуация - мало игроков, играть не так интересно, онлайн падает. Получается: чтобы повысить онлайн, нужен интересный контент, а чтобы был интересный контент, нужно повысить онлайн :)

Речь пойдет об игре GTA5 и о нашем проекте Divine RolePlay

Читать далее

Установка, настройка и эксплуатация стэка OpenSearch в классической среде

Reading time45 min
Views84K
image

Передо мной встала задача сбора логов с парка серверов на ОС Windows и ОС Linux. Для того чтобы решить её я воспользовался стэком OpenSearch. Во время настройки OpenSearch мне не хватало в открытых источниках наглядных примеров, а информация на официальных сайтах ElasticSearch и OpenSearch мне показалась обрывочной, слабо привязанной к реальным ситуациям. Поэтому я решил поделиться своим опытом и описать основные моменты установки и некоторые сценарии настройки и применения стэка OpenSearch, которые я применил в своей практике.
Читать дальше →

Как мы с друзьями собрали сервис для построения маршрутов для походов и велопутешествий ActiveTrip.me

Reading time7 min
Views26K

Всем привет! Меня зовут Александр, я разработчик ActiveTrip.me — cервиса для построения маршрутов для пеших, велосипедных, водных походов и путешествий, а также для хранения и группировки интересных мест в виде меток.

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

Читать далее

7 многообещающих расширений VS Code 2021 года

Reading time4 min
Views16K

К старту курса по Fullstack-разработке на Python делимся подборкой расширений Visual Studio Code, среди которых вы найдёте генератор документации для кода JavaScript на базе ИИ и лёгкий, простой клиент REST API. За подробностями приглашаем под кат.

Читать далее
1
23 ...

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Registered
Activity