Pull to refresh
3
0
Michael Elin @vanelm

Consulting Network Engineer

Send message

Как я за 4 месяца прокачала английский с A2 до B2 и не поехала кукухой… почти

Level of difficultyEasy
Reading time4 min
Views11K

Нет, я не продаю курсы английского! Просто делюсь своей историей.

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

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

Читать далее

«Один ушел — и все сломалось». Почему в ИТ-эксплуатации важно отслеживать Bus Factor и как это делаем мы

Reading time9 min
Views14K

Привет всем! Меня зовут Гриша Капцов, я работаю в Отделе координации и поддержки продуктовых команд в МТС Web Services. В прошлом посте рассказывал, как мы с командой прокачали свой навык повелевания хаосом. А сегодня хочу обсудить ситуации, когда один «незаменимый» сотрудник становится угрозой. 

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

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

Предотвратить такие сценарии можно, если отслеживать «фактор автобуса», или Bus Factor — показатель зависимости проекта от отдельных членов команды. Ниже я расскажу, почему эта метрика особенно критична для эксплуатационных команд и как ее измеряем мы. Давайте назовем кейс «This is эксплуатация!».

Читать далее

Что такое дескрипторы в Python и почему вам следует о них знать

Level of difficultyMedium
Reading time13 min
Views24K

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

Читать далее

Давайте поговорим про Web-API

Reading time12 min
Views7.1K

Предупреждение: не сомневаюсь, что наверняка кто-то, прочитав данную статью, возжелает закидать меня тапками, но это его право, я не претендую на истину.

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

В наше время каждый слышал про Web-API и у многих это ассоциируется с REST. Однако этот многострадальный REST всегда какой-то не такой, с ним все время что-то не так.

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

Читать далее

ИИ кодинг не работает

Level of difficultyEasy
Reading time3 min
Views57K

Или как объяснить менеджменту, почему лучше перестать пушить внедрение ИИ в разработку.

Ниже я разбираю основные проблемы и приземляю их на реальные исследования.

Читать далее

LORAmaster Lite: хорошо упакованная Лора (мечта электронщика Егора)

Level of difficultyMedium
Reading time7 min
Views12K

Сегодня мы поговорим об одной интересной платке — LORAmaster Lite, которая представляет собой «микро-ядерную» платформу для построения батарейных и стационарных LoRa нод (датчиков, актуаторов и т. п. устройств).

«Микро-ядерность» LORAmaster Lite заключается в том, что на этой миниатюрной платке, сравнимой по размером с популярной Pro Mini, содержится всё для построения законченного устройства — управляющий микроконтроллер, LoRa модуль на SX1262, аппаратный Watchdog, крипточип ATSHA204A, подсистема управления питанием датчиков и многое другое.

Но самое главное, на этой же платке находится чип DC/DC преобразователя Texas Instruments TPS63802, который позволяет «прямо из коробки» как угодно запитывать устройство — можно от сетевого источника питания, можно от пары батареек AA или AAA, а можно и от литиевого аккумулятора 3,7 В.

Другими словами — подцепил батарею, подключил датчики, залил прошивку (благо контроллер совместим с Pro Mini) — и батарейная долгоживущая LoRa нода готова.

Не об этом ли мы мечтали всё это время?

Читать далее

Векторный анализатор NanoVNA для радиолюбителей

Level of difficultyEasy
Reading time21 min
Views21K

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

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

К счастью, сегодня практически каждому радиолюбителю доступен такой прибор, как векторный анализатор цепей Vector Network Analyser (VNA), с успехом решающий все перечисленные выше задачи.

Читать далее

Забудь про облачные подписки! Полный переход с Google Photos на Immich. Мой личный опыт

Level of difficultyEasy
Reading time13 min
Views67K

Привет! Сегодня вам расскажу, как я полностью отказался от Google Photos и настроил своё собственное хранилище фотографий на базе Immich с кучей функций, не уступающих тем, что есть у популярных представителей данных сервисов.
Это не обзор ради обзора, а мой реальный кейс. У меня дома стоит свой собственный домашний сервер, который я собрал не так давно, куда я уже перенес все свои фотографии и видео.

Читать далее

Изучаем базовые протоколы сети с помощью open source-эмулятора Miminet

Level of difficultyEasy
Reading time6 min
Views18K

Представьте: в окне браузера вы рисуете топологию, добавляете хосты, маршрутизаторы, коммутаторы (как в draw.io), а потом запускаете эмуляцию и наблюдаете за работой настоящей сети. Настолько настоящей, что там даже VLAN’ы есть.

Miminet — веб-сервис, который превращает изображение сети в работающую модель.

Читать далее

Настраиваем Docker для Django

Level of difficultyMedium
Reading time5 min
Views3.6K

Привет, Хабр! В этой статье мы запустим Docker с Django на локальной машине. Этот материал ориентирован исключительно на локальную разработку — наш Django будет работать с SQLite без использования образов PostgreSQL. Уже в следующей статье мы соберем более сложное приложение. Все действия будем выполнять в Windows, так как большинство начинающих разработчиков используют именно эту операционную систему. Перед началом работы убедитесь, что у вас установлен и настроен Docker Desktop для Windows. В сети много руководств по его установке, поэтому думаю, что с этим не возникнет проблем. Мы будем использовать Django 5.2.6 и Docker Desktop 28.4.0. Весь проект доступен на GitHub. Если материал оказался полезным, буду благодарен за звёзды в репозитории. Первым делом создадим приложение, для которого будем собирать образ:

Читать далее

ИТ-инфраструктура под прицелом: почему традиционная безопасность больше не работает?

Level of difficultyMedium
Reading time3 min
Views3.7K

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

Сетевой уровень: NGFW и IDS как основа защиты

Next-Generation Firewall (NGFW) — это эволюция традиционных фаерволов. В отличие от предшественников, NGFW анализирует трафик на уровне приложений, а не только по портам и протоколам. Например, можно заблокировать передачу данных через мессенджеры или доступ к фишинговым сайтам, даже если они используют стандартные HTTPS-порты.

Системы обнаружения вторжений (IDS) дополняют NGFW, выявляя аномальную активность. Suricata в связке с SecurityOnion позволяет детектировать:

Читать далее

EDA в Python для новичков: что почитать и где попрактиковаться

Level of difficultyEasy
Reading time4 min
Views7.2K

Привет! Это команда курса «Аналитик данных». Мы подготовили подборку материалов для тех, кто делает первые шаги в мире анализа данных и хочет освоить исследовательский анализ данных с нуля.

Разведочный или исследовательский анализ данных (Exploratory Data Analysis, EDA) — это этап работы с данными, на котором аналитик изучает доступную информацию перед построением сложных аналитических моделей. Это основа работы с данными, которая помогает понять, какая информация доступна и возникнут ли трудности с будущим анализом.

Читать далее

Веб. К черту фреймворки! Пишем свой starter-kit с роутером и сторами. Часть 1

Level of difficultyMedium
Reading time10 min
Views4.4K

Пробуем собрать свой минималистичный starter-kit.

Комедия в трех действиях. Туториал из трех частей.

Создадим причудливый конфиг на webpack + собственный роутинг в первой части. Реализуем реактивные хранилища во второй и уменьшим сложность с помощью веб-компонентов в третьей.

Читать далее

Data Forge: Собираем весь современный дата-стек на своем ноутбуке одной командой

Level of difficultyEasy
Reading time4 min
Views3.3K

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

Давайте признаемся: порог входа в Data Engineering довольно высок. И дело не только в знании SQL или Python. Настоящая боль начинается, когда ты пытаешься собрать на своей машине хотя бы простенький пайплайн.

Нужно поднять Kafka, рядом поставить Zookeeper (или обойтись Kraft, если ты хипстер), прикрутить Debezium для CDC, развернуть Spark для обработки, где-то хранить результат (привет, MinIO!), а потом всё это оркестрировать через Airflow и визуализировать в Superset. Каждый инструмент — это отдельный Docker-контейнер, своя конфигурация, свои порты и свои зависимости. Через пару часов борьбы с docker-compose.yml и сетевыми настройками желание учиться и экспериментировать улетучивается.

Знакомо? А что, если я скажу, что весь этот зоопарк можно поднять одной командой, и он просто... заработает?

Сегодня я хочу рассказать о проекте, который стал для меня настоящей находкой — Data Forge. Это готовая песочница для дата-инженера, или, как называет её автор, "Data Engineering Playground".

Читать далее

Изучаем Python: модуль sys для начинающих с практическим домашним заданием

Level of difficultyEasy
Reading time9 min
Views9.5K

Практическое руководство по модулю sys для начинающих. Разбираем, как научить Python-скрипты принимать аргументы командной строки, управлять потоками ввода-вывода и корректно завершать работу. Материал подкреплен пятью задачами с автотестами на GitHub.

Читать далее

Парсинг сайтов с Selenium на Python

Reading time8 min
Views11K

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

Самый очевидный из вариантов — парсинг HTML, но здесь часто возникает проблема: часть данных подгружается через JavaScript. В такие моменты использование условного requests и BeautifulSoup бесполезно.

Здесь на помощь приходит Selenium — инструмент для автоматизации браузера. С его помощью можно открывать страницы, имитируя действия настоящего пользователя, выполнять JavaScript и забирать данные в правильном виде.

Читать далее

Трюк, который раньше ускорял Python, теперь лишь захламляет код

Level of difficultyMedium
Reading time13 min
Views14K

Команда Python for Devs подготовила перевод статьи о том, почему любимая оптимизация Python — присваивать глобальные функции локальным переменным — больше не даёт выигрыша. CPython 3.11 стал умнее, и старый хак l = len уже почти бессмыслен.

Читать далее

Rules File Backdoor. Как атакуют GitHub Copilot и Cursor и почему «это ваша проблема»

Reading time3 min
Views3.1K

Продолжаем серию статей о взломах ИИ. В начале 2025 года исследователи Pillar Security обнаружили новый вектор атаки, который переворачивает представление о безопасности AI‑ассистентов вроде GitHub Copilot и Cursor. Под видом безобидных конфигурационных файлов — тех самых, что задают ИИ правила написания кода — хакерам удалось протащить бэкдоры, вызвав цепную реакцию утечек и ошибок. Давайте разберемся, как безобидный файл с «правилами» превратился в оружие против цепочек поставок.

Читать далее

Назад в будущее 2 — образцовый сиквел легендарного фильма?

Level of difficultyEasy
Reading time11 min
Views17K

Первая часть «Назад в будущее» произвела фурор. Сюжет о Марти МакФлае — парнишке из неудачливой семьи, который волею случая попадает в прошлое и меняет к лучшему судьбу своей семьи, проходя через множество приключений, стал невероятно популярен. Получив отличные отзывы критиков и горячий прием аудитории, фильм стал настоящей находкой для студии Universal: при бюджете в 14 миллионов долларов, в прокате удалось собрать 380 миллионов. После такого оглушительного успеха практически сразу же начались разговоры о сиквеле…

Читать далее

GRIZZLY — портативная игровая консоль‑самоделка

Level of difficultyEasy
Reading time6 min
Views5.8K

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

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

Начать можно, скажем, с простого подключения Raspberry Pi к монитору и старой клавиатуре. Источник питания — зарядка от телефона. Это уже потом добавятся портативный экран, кнопки и подходящий аккумулятор. На каждом шаге — устройство остается работоспособным.

Читать далее

Information

Rating
Does not participate
Location
Praha, Hlavni Mesto Praha, Чехия
Registered
Activity