Все потоки
Поиск
Написать публикацию
Обновить
4
0
Michael Elin @vanelm

Consulting Network Engineer

Отправить сообщение

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

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров13K

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

Читать далее

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

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров4.6K

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

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

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

Читать далее

Я упаковал 10 веб-фреймворков в Docker, чтобы вы могли запустить любой из них одной командой

Уровень сложностиСредний
Время на прочтение3 мин
Количество просмотров13K

Каждый раз, когда речь заходит о новом проекте, начинается вечный спор: какой фреймворк выбрать? Go или Rust для производительности? Python для скорости разработки? А может, стоит попробовать что-то на Elixir? Муки выбора знакомы многим. Вместо того чтобы в очередной раз теоретизировать, я решил пойти другим путем: взять и протестировать их все.

Так родилась идея проекта Framework DevBox — универсальной песочницы, где десять популярных фреймворков на разных языках упакованы в Docker-контейнеры и готовы к запуску одной командой.

Читать далее

Используем Rutoken Lite для шифрования

Время на прочтение11 мин
Количество просмотров4.3K

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

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

И тут я увидел валяющиеся без дела USB‑токены...

Ну, так получилось: один старый, но когда‑то навороченный Aladdin, а другой современный, но простой Rutoken Lite, оставшийся после апгрейда.
Что, если использовать их?

Читать далее

Превращаем приёмник RTL-SDR в сервер

Уровень сложностиСредний
Время на прочтение19 мин
Количество просмотров6.7K

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

В любом из этих случаев может возникнуть проблема — антенна будет находиться слишком далеко от приёмника. Для приёмника RTL-SDR сразу напрашивается два решения — использовать длинный фидер в виде коаксиального кабеля между антенной и приёмником или включить удлинитель USB между приёмником и компьютером.

К сожалению, длинный коаксиальный кабель вносит заметное затухание, ослабляя сигнал на входе приёмника. А максимальная длина обычного удлинителя USB составляет всего лишь 5 м. Длина оптоволоконных удлинителей USB может достигать 100 м, однако их стоимость довольно высока.

Между тем есть ещё одно решение — разместить приёмник RTL-SDR рядом с антенной и подключить к микрокомпьютеру, такому как Raspberry Pi, расположенному недалеко от антенны. Микрокомпьютер, в свою очередь, подключается к домашней локальной сети с помощью кабеля Ethernet или через Wi-Fi. При этом он будет шлюзом между приёмником RTL-SDR и локальной сетью.

Читать далее

Книга «Изучаем React. 2-е издание» отзыв, или 10 главных заметок которые я вынес прочитав книгу

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров2.8K

Представь, что ты строишь крутой интерактивный сайт из деталек LEGO. React — это как раз такой продвинутый набор «умных» деталек для постройки сайтов. А эта книга — инструкция к нему.

Читать далее

Indoor-локация без дополнительных датчиков: Wi-Fi как единственный источник данных

Уровень сложностиПростой
Время на прочтение13 мин
Количество просмотров2.5K

Навигация внутри помещений сложна из-за неточной работы GPS. Вместо дорогих маячков можно использовать уже существующие Wi-Fi роутеры, измеряя мощность сигнала для определения местоположения. В Сколтехе мы исследовали такую систему для поиска людей на кампусе, сталкиваясь с проблемами конфиденциальности и ограничениями iOS. Идею удалось применить к личному транспорту: на скейт или самокат можно поставить маячок, который отправляет уведомления о перемещении или пропаже, облегчая поиск и контроль.

Читать далее

Топ-6 Python-библиотек для визуализации

Уровень сложностиПростой
Время на прочтение23 мин
Количество просмотров10K

Команда Python for Devs подготовила перевод статьи о шести библиотеках Python для визуализации данных. Matplotlib, seaborn, Plotly, Altair, Pygal и Bokeh — у каждой свои сильные и слабые стороны: от академических статичных графиков до интерактивных дашбордов для бизнеса. Выбираем самую подходящую для различных кейсов.

Читать далее

Вам больше не нужен JavaScript

Уровень сложностиПростой
Время на прочтение25 мин
Количество просмотров56K

Команда JavaScript for Devs подготовила перевод статьи о том, как CSS и HTML могут заменить значительную часть JavaScript. Автор делится взглядом на веб как на искусство, показывает возможности современных фич CSS — от вложенности и @starting-style до динамических viewport-единиц, — и доказывает, что сайты могут быть быстрыми, красивыми и интерактивными даже без JS.

Читать далее

SSL-сертификаты в 2025: самый прибыльный развод в истории интернета

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров36K

$199 за файл.

Не за программу. Не за базу данных. Даже не за документ с полезной информацией. За файл в несколько килобайт зашифрованного текста, который говорит браузеру «этот сайт действительно тот, за кого себя выдает».

Читать далее

Сборка тревел-гитары из запчастей с Aliexpress

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров7.3K

Привет, Хабр! Мне давно хотелось иметь электрогитару со следующими свойствами:

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

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

Читать далее

Ваши старые аккаунты в соцсетях — бомба замедленного действия. Как провести цифровую уборку

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров9.2K

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

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

Читать далее

OpenNMS Horizon 34.0, пробую новый релиз на практике

Время на прочтение3 мин
Количество просмотров3.6K

Привет Хабр!

13 августа 2025 года вышел новый релиз OpenNMS Horizon (открытой системы мониторинга сетей и сервисов, NMS). Версия 34.0.0 стала первым крупным обновлением в ветке 34.x.

Не буду пересказывать все технические детали, с ними всегда можно ознакомиться на сайте проекта. Важно другое, OpenNMS распространяется под лицензией AGPLv3 и является полностью open source. Помимо этого, существует продукт OpenNMS Meridian, подписочная услуга с коммерческими планами, поддержкой и SLA. Однако, с учётом текущей ситуации, в России коммерческая версия вряд ли доступна.

Почему же тогда стоит говорить об OpenNMS?

Читать далее

Пять производительных паттернов кэширования, которые ускорят ваш микросервис

Время на прочтение6 мин
Количество просмотров7.7K

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

Читать далее

4 фреймворка апокалипсиса: LangChain, LlamaIndex, CrewAI и Semantic Kernel в действии

Время на прочтение18 мин
Количество просмотров7.3K

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

Для этого воспользуемся сервисом Evolution Foundation Models и рассмотрим фреймворки LangChain, LlamaIndex, CrewAI и Semantic Kernel. Сервис предоставляет доступ к open source моделям по open AI Compatible API. Касаемо фреймворков — каждый из них по-своему упрощает разработку, но имеет уникальные паттерны подключения. В статье я покажу готовые примеры и поясню ключевые части кода. А все ссылки на мои полные решения даю в конце статьи.

Читать далее

HackRF на Windows: работа через DLL и создание Python-библиотеки

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров2.1K

Небольшая статья для начала работы на питоне с приемником HackRF One под Windows. Когда мне захотелось работать с приемником HackRF напрямую из Python, я обнаружил, что существующая библиотека pyhackrf работает только на Linux. Это подтолкнуло меня к доработке подхода для работы под Windows через прямое взаимодействие с DLL. Возможно, мой опыт кому-то пригодится.

Читать далее

Почему не работает VoWiFi в роуминге

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров16K

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

Есть у меня телефон Redmi Note 13 Pro 5G, который покупался по двум причинам — в нём есть eSIM, он поддерживается российскими операторами в плане работы VoWiFi (он же WiFi calling). И таким образом, я проживая вне РФ смог купить удалено симку российского оператора, которая мне периодически нужна и звонить и принимать вызовы без роуминга, находясь где угодно.

Приехал я тут в Турцию и достал свой телефон и обнаружил, что VoWiFi не работает, хотя он включен в настройках. Написал в поддержку Билайн — те как всегда отморозились тем, что ничего не знают, всё мол должно работать.

Тут нужно заметить, что я живу не в РФ и по месту моего жительства VoWiFi работал, но непосредственно перед отъездом в Турцию я обновил прошивку телефона (со штатной на штатную обычным OTA). В конце статьи напишу, почему это может быть важно.

Ну что делать? А делать, имея роутер на OpenWRT можно следующее. Широко известно, что VoWiFi работает путем установки IPSec соединения с узлом ePDG (Evolved Packet Data Gateway). Для этого происходит сначала обмен по UDP порту 500, а потом по порту 4500.

Вот и установим на роутер tcpdump и посмотрим, что за UDP трафик исходит от моего телефона командой:

Читать далее

Хватит писать try/catch вокруг fetch: история о том, как я устал ловить ошибки

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров20K

Каждый фронтендер знает эту боль: пишешь запрос через fetch - и автоматически добавляешь try/catch. Где-то ловишь TypeError, где-то 500-й статус, где-то подвисший запрос с AbortController. В итоге половина кода в проекте - это обработка ошибок, а не бизнес-логика.

Я прожил с этим годами. Чем больше становился проект, тем больше росла копипаста: таймауты, ретраи, проверки на res.ok, костыли для разных браузеров. Одно и то же, снова и снова.

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

Так появилась библиотека @asouei/safe-fetch. Маленькая (3kb), без зависимостей, но с тем, чего нет у самого fetch: общий таймаут, умные ретраи, нормализованные ошибки и поддержка Retry-After.

🌟 Библиотека добавлена в Awesome TypeScript — один из крупнейших мировых списков лучших TypeScript-проектов

Как я решил проблему

Публичное вскрытие: Провал IBM Watson Health

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров2.5K

Как IBM не смогла превратить технологию Watson в медицинский продукт и потеряла миллиарды.

(От автора: Все факты в этом материале взяты из открытых источников: The Wall Street Journal, STAT News, IEEE Spectrum и других. Имена и события реальны. Наша цель — извлечь уроки из чужих ошибок, а не бросить камень в гиганта. Великие провалы учат лучше скромных успехов.)

Читать далее

ATS-20+ — мал да удал. Испытания компактного широкополосного радиоприемника

Время на прочтение5 мин
Количество просмотров19K

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

Стремление к компактности и дешевизне привело к созданию линейки универсальных чипов для построения DIY-радио — Silicon Labs 473X. Китайские инженеры ухитрились полностью запихнуть приемный тракт внутрь единственной недорогой микросхемы, которая прекрасно совместима с различными микроконтроллерами и может управляться по I2C-шине. Она стала центральной частью разных приемников, один из которых мы сегодня детально разберем.

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

Информация

В рейтинге
Не участвует
Откуда
Praha, Hlavni Mesto Praha, Чехия
Зарегистрирован
Активность