Pull to refresh
3
0
Егор @Ommonick

SDET teamlead

Send message

Настоящий домашний онлайн-кинотеатр на ТВ-приставке c Android. Cinema / surround 5.1 DIY project

Level of difficultyEasy
Reading time7 min
Views15K

Привет Хабр. Расскажу о своем опыте построения домашнего кинотеатра с многоканальным звуком на ТВ-приставке с Android.

История такая. На выходные ко мне в гости приезжают внуки. В нашу воскресную программу входит неограниченный просмотр мультфильмов и детских сказок онлайн. Дома они тоже это смотрят, но вот родители считают, что времяпровождение у экрана должно быть как-то ограничено. В гостях у бабушки с дедушкой этих ограничений в принципе быть не может. И ещё одно событие в предыстории. Старшему внуку 5 лет и этим летом я сводил его в кинотеатр.  Это был первый в его жизни мультик на большом экране с большим звуком. Он, конечно, не выдержал весь сеанс (1час 20минут) но впечатлений было море.

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

Я выбрал FORMOVE FengMi S5. 

Читать далее

Управление инцидентами: 9 ключевых факторов успеха

Reading time6 min
Views3.3K

Современные практики devops и sre не обходятся без грамотного управления событиями, алертами, графиками дежурств, и т.д. Имея за плечами более 15 лет поддержки сложных систем и сервисов, решили поделиться прописными истинами в форме данной статьи. Весь этот процесс теперь можно построить с помощью бесплатного сервиса Monq OnCall, так что приглашаем на ранний доступ, ссылка внутри.

Читать далее

Выбираем роутер с VPN

Level of difficultyEasy
Reading time3 min
Views48K

Решил наконец поменять свой старенький маршрутизатор Linksys и купить новый гигабитный роутер со встроенным VPN – именно так большинство ритейлеров называют функцию, не уточняя, что имеется в виду: VPN-клиент или VPN-сервер.

После некоторых поисков удалось найти лишь одного крупного продавца – оранжевый из трех букв, на сайте которого для роутеров реализована глубокая фильтрация по VPN параметрам – протоколу и режиму работы (клиент/сервер).

И вот, имея список из нескольких десятков кандидатов для покупки, встал главный вопрос – а какую скорость через VPN сможет выдать каждый из них?

Читать далее

Игры, которые помогают понять абстракции

Level of difficultyEasy
Reading time5 min
Views6.9K

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

Читать далее

Отстаньте от подчинённых: 4 критические ошибки начинающих IT-руководителей

Reading time13 min
Views17K

На управленца-новичка сваливается масса забот. И дело не только в ином уровне ответственности и новых, более значительных бизнес-целях. Главная сложность – люди в команде. 

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

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

*Обращаем ваше внимание, что позиция автора может не всегда совпадать с мнением МойОфис.

Читать далее

Как работать со стейкхолдерами ИТ-проекта

Level of difficultyEasy
Reading time4 min
Views2.9K

Заинтересованные стороны (ЗС), или стейкхолдеры, в проекте автоматизации – это любые люди, организации или институты, кто пользуется его результатами и может на них влиять. Прежде всего, это заказчики / покупатели АИС как продукта. Основная работа аналитика с ними заключается в сборе и анализе бизнес-требований.

Читать далее

Строим ETL-конвейер для машинного обучения с помощью Kafka, Clickhouse и Go

Reading time16 min
Views4.9K

В этой статье я поделюсь с вами своим опытом использования Golang, Kafka и Clickhouse на примере простого ETL-конвейера для параллельной передачи JSON-данных в базу данных с последующим прогнозированием температуры на основе машинного обучения.

Читать далее

IDOR: Полное руководство по продвинутой эксплуатации уязвимостей IDOR

Reading time6 min
Views1.5K

Уязвимости IDOR (незащищённая прямая ссылка на объект) являются одними из наиболее часто встречающихся уязвимостей безопасности в современных веб-приложениях и API. Неудивительно, что они часто рекомендуются начинающим охотникам за уязвимостями, так как их легко обнаружить и эксплуатировать, и по своей природе они являются уязвимостями высокой степени опасности.

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

Читать далее

Создание эффективной команды QA: Рекомендации для лидеров

Level of difficultyEasy
Reading time5 min
Views1.5K

В эпоху стремительного развития технологий и повышенных ожиданий пользователей качество программного обеспечения становится критическим фактором успеха продукта на рынке. Ошибки и сбои могут привести не только к финансовым потерям, но и к подрыву доверия клиентов. В этих условиях команда QA (Quality Assurance) играет ключевую роль в обеспечении стабильности и надежности продуктов.

Читать далее

История глазами араба XIV века

Reading time12 min
Views12K

Сегодня я предлагаю вам посмотреть на историю глазами Абу Зейда Абдуррахмана ибн Мухаммада аль-Хадрами, более известного под именем Ибн Хальдун.

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

· Именно он по поручению гранадского эмира вёл переговоры о мире с Педро Кастильским,

· Он занимал высокие посты при дворе султана Туниса,

· Был письмоводителем при дворе султана Феса,

· Вёл переговоры между египетским султаном и Тамерланом,

· Многократно занимал должность верховного кади (верховного судьи) маликитов.

Читать далее

Что и зачем почитать DevSecOps-у: личный опыт

Level of difficultyEasy
Reading time12 min
Views9.5K
Знания — сила! А актуальные и понятно преподнесенные знания — и вовсе на вес золота! Я решил рассказать про книги, которые показались мне, как руководителю отдела поддержки инфраструктуры сервисов (Head of Security Services Infrastructure) в «Лаборатории Касперского», полезными. Перед вами — «опорная» литература DevSecOps. Я разберу основные темы, связанные с работой девопсов и девсекопсов – и пройдусь по релевантным изданиям для этих специалистов. Расскажу, как конкретно эта литература повлияла на мою карьеру, а значит — может повлиять и на вашу :)



Дисклеймер: Если вас, как специалистов, сформировали какие-то другие книги по той же тематике — обязательно пишите в комментариях!
Читать дальше →

Не Flipper Zero единым: хакерский мультитул из старого смартфона

Reading time7 min
Views41K

Говорят, что лень — двигатель прогресса. Как по мне, лучше работает конкуренция. Возможность свободного выбора устройств, приложений и информации сейчас — движущая сила, которая мотивирует разработчиков создавать и совершенствовать свои продукты. Сегодня хочу обсудить, какая альтернатива может быть у знаменитого пентестерского тулкита. Присаживайтесь поудобнее — и добро пожаловать под кат.

Читать далее

Что показывает ваш мультиметр (напряжение или погоду на Марсе)?

Level of difficultyEasy
Reading time8 min
Views19K


До тех пор, пока в вашем хозяйстве имеется единственный мультиметр, у вас не возникает никаких проблем — в ваших устройствах присутствует именно то напряжение, которое он показывает (смайл). Но как только у вас появляется два или больше мультиметров, немедленно встаёт вопрос: кому из них можно верить, а кто откровенно врёт при каждом измерении (и насколько и в какую сторону)?

Решить эту проблему можно двумя способами: либо найти доступ к эталонному поверенному мультиметру 5+ разрядов (чем больше — тем лучше) и сравнить с его показаниями показания ваших приборов, либо воспользоваться специальными платами рефренсного напряжения.

Понятно, что лучше получить доступ к эталонному мультиметру, но мало кто имеет такую возможность. В этом смысле воспользоваться платами с Алиэкспресс гораздо проще, но тут нас поджидают ловушки, умело расставленные китайскими «оптимизаторами бизнеса» (нельзя просто так взять и продать неперемаркированный чип рефренсного напряжения).

Обо всём этом мы и поговорим далее, а заодно я поделюсь впечатлениями о мультиметрах, которые приняли участие в этом исследовании.
Читать дальше →

Ошибки в интерпретации A/B-тестов: как избежать неверных выводов

Reading time6 min
Views1.3K

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

В этой статье я рассмотрю 7 наиболее распространенных ошибок с примерами и способами их предотвращения. Чтобы выводы ваших А/В были точны и надежны.

Читать далее

Муравьиный алгоритм. Решение задачи коммивояжера

Level of difficultyMedium
Reading time5 min
Views10K

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

Читать далее

Транзакции в БД на Go с использованием многослойной архитектуры

Level of difficultyMedium
Reading time17 min
Views7.9K

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

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

Работа в новой компании — это всегда увлекательно. Я осознал, что даже если какой-то аспект кажется простым, например, SQL-транзакции, его легко упустить из виду.

SQL кажется чем-то, что мы все хорошо знаем, и мало чем может удивить. (Ему уже 50 лет!) Возможно, пришло время пересмотреть подходы, так как мы уже прошли фазу хайпа по поводу NoSQL, и снова возвращаемся к “используйте просто Postgres”, а иногда и к “SQLite тут за глаза”.

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

Основной принцип многослойной архитектуры заключается в разделении критически важных частей кода (логики) от деталей реализации (например, SQL-запросов). Одним из способов достижения такого разделения является паттерн «Репозиторий». Однако, наиболее сложным аспектом такой архитектуры является обработка транзакций.

Читать далее

Rogue Trader — лучшая игра, чтобы понять «Ваху»

Level of difficultyEasy
Reading time4 min
Views10K

Если вы не в курсе, то в прошлом году по «Вахе» вышла партийная РПГ, Rogue Trader называется. В ней игрок берет под управление могущественного слугу Империума — того самого Роуг Трейдера или по-русски Вольного Торговца — имеющего очень широкие полномочия, и идет наводить порядки в своем протекторате на отшибе галактики. Попутно он с головой ныряет во внутренние разборки Империума, шашни ксеносов, замуты Богов Хаоса — короче, во все, с чем обычно и ассоциируется «Ваха».

Скажу сразу: игрушка кайфовая, и я в восторге. Но поговорить мне бы хотелось немного о другом, ведь после прохождения Rogue Trader на вопрос «с какого произведения лучше вкатываться во вселенную?» у меня есть однозначный ответ.

Читать далее

Создание AI-ассистента с OpenAI Assistants API на Go

Level of difficultyEasy
Reading time18 min
Views3.2K

Всем привет!

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

В этой статье мы рассмотрим процесс создания MVP такого ассистента. Мы загрузим в него файлы, зададим инструкции, привяжем все к Telegram-боту и будем обрабатывать запросы пользователей.

Для создания ассистента будем использовать функциональность OpenAI Assistants API с помощью сторонних прокси-сервисов.

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

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

К статье

Создание прототипа библиотеки для визуализации алгоритмов на Python

Level of difficultyMedium
Reading time7 min
Views3K

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

Читать далее

Парсим, редактируем, экспортируем: JSON, XML и CSV в PowerShell

Level of difficultyEasy
Reading time5 min
Views2.9K

Сегодня рассмотрим, как в PowerShell работать с форматами данных JSON, XML и CSV. Эти форматы часто используются для обмена информацией между системами, и умение быстро парсить, изменять и генерировать данные в них — одна из важных задач в автоматизации и интеграции.

Читать далее

Information

Rating
Does not participate
Works in
Date of birth
Registered
Activity

Specialization

Backend Developer, Quality Assurance Analyst
Lead