Search
Write a publication
Pull to refresh
0
0
Дмитрий @ex_ineris

QA Engineer

Send message

Как управлять своим устройством с помощью Tuya API и Tuya-cli

Level of difficultyEasy
Reading time4 min
Views11K

Всем привет! Недавно, я получил в использование робот пылесос Neatsvor x520. Через первые полчаса использования, а также еще получаса знакомства кота с новым жильцом я начал думать о том, что бы такого интересного сделать с пылесосом и решил взаимодействовать с ним с помощью своей самодельной системы умного дома (о ней сегодня мы говорить не будем).

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

Для своего проекта я использовал Tuya api и консольный инструмент tuya‑cli, и в этой статье я расскажу как получить ключи и как управлять роботом пылесосом или любым другим устройством, что работает с Tuya, прямо из вашей консоли.

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

И так, первое что нам предстоит сделать — зарегистрироваться на сайте Tuya для получения доступа к Api.

Читать далее

Программирование на Python для детей: топ-6 обучающих программ

Level of difficultyEasy
Reading time8 min
Views8.5K

Кто бы мог подумать, что Python изначально задумывался его создателем Гвидо Ван Россумом как предрождественское хобби, не более того. А сегодня — это один из самых популярных и востребованных языков программирования во всем мире. Разработчики, в стеке которых есть Python, могут работать в разных направлениях: от компьютерных игр до создания серверов и машинного обучения.

Секрет популярности языка — в широкой области применения и доступном синтаксисе. И на фоне роста ИТ-направлений в целом, многие выбирают именно Python в качестве первого языка программирования.

Детям и подросткам, которые интересуются сферой цифровых и высоких технологий и хотят примерить на себя роль программиста, также подойдет Python для изучения азов разработки. У него простой и понятный синтаксис, который позволяет сокращать количество строчек кода. Также есть много библиотек с уже готовыми скриптами, которые можно применять в своих программах, и другие преимущества.

Читать далее

Создание скрипта на Python с помощью ChatGPT-4о: автоматизация миграции доменов

Level of difficultyMedium
Reading time23 min
Views6.7K

ChatGPT-4o написал Python-скрипт на 400 строк, который с помощью API Cloudflare переносит домены со всеми настройками между разными аккаунтами. В статье подробно рассмотрен процесс создания скрипта, включая сохранение и копирование настроек и DNS-записей. Также приводятся примеры кода и пояснения, позволяющие легко адаптировать решения под конкретные задачи.

Читать далее

Где и как использовать сниффер для тестирования веб-приложений на примере Proxyman

Level of difficultyEasy
Reading time3 min
Views7.2K

Когда я только начинала работать тестировщиком, снифферы трафика казались мне чем-то далеким. В голове было что-то типа: "Ну, это для тестировщиков мобилок и для разработчиков. Мне оно не надо". Но потом я постепенно начала их использовать и поняла, что сниффер это маст хэв вещь в некоторых случаях!

В этой статье расскажу о нескольких кейсах, где снифферы трафика могут реально сохранить кучу времени и некоторое количество нервов. Let's go!

Читать далее

Как простой Python-скрипт с использованием ИИ может оптимизировать ваш рабочий процесс

Level of difficultyEasy
Reading time6 min
Views24K

Программисты не понаслышке знают, как важно периодически давать отдых уставшим запястьям. И в этом случае возможность диктовки текста – будь то во время длительных сессий программирования или в стремлении к более эргономичной организации работы – может стать настоящим спасением. В данном туториале я вместе с вами подробно рассмотрю процесс создания современного инструмента для транскрибации речи в текст на языке Python, отличающегося высокой скоростью и точностью благодаря использованию ИИ, а именно API Whisper от Groq.

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

Приятного прочтения!

Читать далее

Python — тестирование с помощью pytest(ч.2)

Level of difficultyMedium
Reading time6 min
Views10K

Первая часть - https://habr.com/ru/articles/835196/

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

Читать далее

Создание опросников на Python с использованием aiogram 2.x

Level of difficultyEasy
Reading time5 min
Views5.7K

В мире разработки чат-ботов на платформе Telegram создание интерактивных опросников может быть задачей нетривиальной. В этом посте я поделюсь системой, которую разработал на основе библиотеки aiogram 2.x. Она позволяет легко создавать и обрабатывать опросники с текстовыми ответами и вариантами выбора, а также управлять состояниями бота. В статье мы разберем ключевые аспекты реализации, включая обработку состояний, сохранение ответов и управление сообщениями.

Читать далее

Управление секретами: путь от Opensource до Enterprise

Reading time10 min
Views2.4K

Наша команда занимается развитием продуктов в сфере информационной безопасности в Лиге Цифровой Экономики. В этой статье хотим поделиться опытом создания нашего продукта — модуля управления инфраструктурными секретами ЦУП 2.0 на основе открытого программного обеспечения. В нашем случае это «ванильный» Vault версии 1.7, который был доступен по свободной лицензии MPL. Взяв его за основу в 2021 году, мы почти сразу столкнулись со следующими проблемами его использования:

отсутствие горизонтального масштабирования;

ограничение производительности при использовании в высоконагруженном режиме;

неадаптивный мониторинг;

узкие возможности управления доступом.

Все эти проблемы нам пришлось решать, т. к. стояла задача развернуть наш модуль секретов в проекте, где он будет интегрирован с системами Mission Critical+. Как мы это сделали — расскажем подробнее в статье.

Читать далее

Знакомство со Scratch для детей: как установить программу и создать первую игру

Level of difficultyEasy
Reading time7 min
Views16K

Язык программирования Scratch — это относительно молодой язык, который появился в 2007 году как способ обучения детей кодингу. Он прост, интерактивен и доступен для ребят, так как в нем не нужно писать строчки кода, составлять скрипты с тегами и классами, подключать внешние библиотеки. Scratch сравним с детской компьютерной игрой: у вас есть сцена, на которой происходит действие с персонажами. Они могут прыгать, бегать, кидать мяч, гонять на машинках и выполнять любые другие действия. Чтобы создать в Скретч программу, нужно построить её из специальных «кирпичиков» — цветных блоков-операторов. Так, при помощи синих блоков мы перемещаем объект на поле, зеленым блоком проводим все математические действия и настраиваем логику, красным задаем значения переменных и так далее.

Читать далее

Домашние шпионы: как поставщики WiFi-оборудования следят за вашей личной жизнью

Level of difficultyEasy
Reading time9 min
Views20K

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

Речь идёт о WiFi-узлах (WiFi-pods), производимых такими компаниями, как Plume Design Inc. Эта компания заняла значительную долю рынка WiFi-устройств, охватив своими продуктами с возможностью слежки более 60 миллионов домашних систем по всему миру.
Читать дальше →

Шахматы на pygame: дубль два

Level of difficultyMedium
Reading time13 min
Views2.3K

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

Читать далее

С какого возраста начинать обучение детей программированию: опрос

Level of difficultyEasy
Reading time7 min
Views4.2K

Программирование все больше набирает популярность среди детей. И это объяснимо, ведь сейчас мир ИТ-технологий стремительно развивается: взрослые переучиваются на разработчиков и стремятся попасть на работу в ИТ-компании, либо же зарабатывают навыком написания кода самостоятельно. Это могут быть папы и мамы, старшие братья и сестры, на которых ребенок смотрит и хочет пойти этим же путем. Плохо ли это? Нет, если учиться программированию ребенок будет последовательно и системно.

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

Читать далее

Matrix: децентрализованные открытые мессенджеры с E2E-шифрованием. Обзор возможностей и настройка своего сервера

Level of difficultyMedium
Reading time13 min
Views32K

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

Matrix — открытый протокол мгновенного обмена сообщениями и файлами с поддержкой голосовой и видеосвязи. Почему стоит обратить на него внимание, если у нас уже есть WhatsApp и Telegram? Причин несколько.

Во-первых, в последние дни Роскомнадзор снова начал развлекаться блокировками WhatsApp и Telegram, и иногда у него это даже получается более-менее успешно. В таких условиях всегда неплохо иметь запасной вариант, и Matrix здесь очень хорошо подходит, потому что во-первых он позволяет создавать свои собственные сервера, а во-вторых его протокол со стороны выглядит как самый обычный HTTPS.

Во-вторых, все больше и больше людей не доверяют WhatsApp и Telegram. В случае с Matrix же можно поднять свой личный сервер, протокол Matrix - открытый, исходники клиентов - открыты, исходники серверов - тоже открыты, а в самом протоколе end-to-end шифрование включено для чатов по умолчанию из коробки (в отличие, например, от Telegram, где оно доступно только в "секретных чатах"). Ну и само собой, не требуется нигде вводить телефонный номер для регистрации.

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

Сервер Matrix может работать как изолированно ("только для своих"), так и в составе "федерации" - когда разные серверы общаются между собой, и пользователи, подключенные к разным серверам, могут общаться друг с другом. Есть здесь олды, которые помнят Jabber и IRC? Ну вот, здесь такой же принцип. Я бы даже сказал, что Matrix - это этакий хипстерский Jabber на стероидах.

Читать далее

Аутофагия в моделях генеративного ИИ может стать проблемой в скором будущем

Level of difficultyEasy
Reading time3 min
Views11K

Чтобы генеративные модели искусственного интеллекта могли создавать новые формы контента, их нужно регулярно обучать на новых данных, которые создает человечество. Но что будет, если контент, созданный человеком, закончится? Тогда модели вынуждены будут обучаться на ранее сгенерированном ИИ-контенте, что может привести к «ИИ-аутофагии». И это явление может стать реальной проблемой для развития LLM.

Читать далее

Pupy Rat — возможности Open Source трояна

Level of difficultyMedium
Reading time17 min
Views5K

Привет, Хабр!

Меня зовут Борис Нестеров, я аналитик-исследователь угроз кибербезопасности в компании R-Vision. Сегодня я хочу рассказать о трояне Pupy Rat, и его модификациях Decoy Dog. Pupy Rat распространяется с помощью социальной инженерии или доставляется в инфраструктуру после компрометации одного из узлов и активно используется хакерскими группировками в атаках на российские компании. По данным различных источников, по меньшей мере 48 российских организаций в разных отраслях экономики пострадали от действий этого трояна. Об этом можно узнать из новостей на сайтах TheHackerNews, CisoClub, а также из других источников.

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

Читать далее

Как создать многопользовательского телеграм бота с использованием PyTelegramBotAPI?

Level of difficultyMedium
Reading time3 min
Views4.9K

Используя библиотеку PyTelegramBotAPI я столкнулась с тем, что написанный мною бот работает мягко говоря не очень - когда ботом одновременно пользовалось несколько человек сообщения пересекались, записывались левые данные, да и вообще творилась какая-то вакханалия.

Читать статью

Python GUI. Обзор Hero Animation в библиотеке KivyMD

Reading time5 min
Views8.1K

Приветствую вас, дорогие любители и знатоки Python! Сегодня как всегда будем делать обзор библиотеки для кроссплатформенной разработки, которая реализует набор виджетов в стиле Google Material Design для фреймворка Kivy — KivyMD. В этой статье рассмотрим пример создания и управления Hero анимациями, которые недавно были добавлены в библиотеку KivyMD.
Читать дальше →

Путешествие сквозь секреты прошивок: от BIOS/UEFI до OS

Level of difficultyMedium
Reading time17 min
Views18K

Вы когда-нибудь задумывались, что происходит, когда вы нажимаете кнопку питания на компьютере? За той краткой паузой, прежде чем экран загорится, скрывается сложный процесс. В этой статье мы погрузимся в увлекательный мир прошивок (firmware) и исследуем, как разные компоненты взаимодействуют во время загрузки системы. Поняв эти связи, вы получите четкое представление о том, как основные элементы приводят вашу систему в действие. Мы сосредоточимся на Intel архитектуре x86, хотя многие принципы применимы и к другим архитектурам.

Читать далее

Не дать угнать за 60 секунд: автоматизируем базовую настройку облачного сервера

Level of difficultyMedium
Reading time9 min
Views8.9K

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

Привет! Меня зовут Марк, я методолог по информационной безопасности в Selectel. В этой статье расскажу, как использовать механизм cloud-init для базовой настройки параметров безопасности облачных Linux-серверов в небольших проектах. Рассмотрим, каким образом такая практика помогает реализовать меры по обеспечению безопасности персональных данных в соответствии с Приказом ФСТЭК № 21.
Читать дальше →

Большое руководство по сетям и шифрованию трафика в Linux (часть 1)

Level of difficultyMedium
Reading time23 min
Views26K

Приветствую вас, читатели Хабра! В этой статье я бы хотел уделить внимание такой вещи как шифрование трафика на Linux системах. Наверно каждый из нас прекрасно понимает, насколько важна защита нашей приватности. Ведь в эпоху когда многие компании собирают данные, а иногда хакеры могут перехватить наш трафик, это становится особенно важно. Просто необходимо позаботиться о безопасности своих данных. Например, быть уверенным, что какая-либо корпоративная сеть не прослушивается злоумышленниками. Информационная безопасность сегодня — это не просто мода, а насущная необходимость. Постоянно растет киберпреступность, и защита трафика от перехвата — это основной аспект цифровой жизни человека или бизнеса.

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

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

Читать далее

Information

Rating
8,089-th
Location
Днепр, Днепропетровская обл., Украина
Date of birth
Registered
Activity