Pull to refresh

Technotext

Все горит, а вы не выгораете: 4 рабочих принципа и чек‑лист для диагностики

Level of difficultyMedium
Reading time5 min
Reach and readers10K

О чем эта статья

«Как дела? Не могу говорить, все горит!»

Реальность B2B SaaS (как и в большинстве направлений разработки) последние пару лет — это перманентный пожар. Заказчик просыпается с новыми вводными, рынок штормит, приоритеты меняются быстрее, чем успеваешь обновить Jira.

Читать далее

SDR RX стенд на STM32H723

Level of difficultyMedium
Reading time4 min
Reach and readers17K

Давно интересовал вопрос использования 16-битного АЦП STM32H7 для обработки I/Q сигналов в реальном времени.

Почти год ушел на эксперименты реализации SDR приемника на базе Tayloe mixer и MCU STM32H723ZGT6, и вот что у меня получилось: принимаемый КВ диапазон 1...30МГц, вывод обработанного аудио через внутренний 12-битный ЦАП или вывод I/Q потока на ПК через UAC1.

Читать далее

Зрелое железо, к которому нужно найти подход: тестируем российские коммутаторы Eltex для ЦОД

Reading time73 min
Reach and readers29K

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

Недавно к нам приехали коммутаторы для ЦОД российского вендора Eltex. И эта статья открывает цикл материалов, посвященных тестированию данного оборудованию в разных условиях. 

Читать далее

DIY радиотелескоп в сарае: как я поймал сигнал Галактики

Reading time10 min
Reach and readers40K

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

Читать далее

DDD ASP.NET Почему не удобно для больших проектов с более чем 30 реестрами

Level of difficultyEasy
Reading time5 min
Reach and readers8.6K

Domain-Driven Design (DDD) звучит как серебряная пуля. Когда мы начинаем проект на ASP.NET, идея четкого разделения на слои, изоляция бизнес-логики в домене и использование паттернов вроде Repository и Unit of Work кажется идеальной архитектурой.

Но есть один нюанс: магия DDD начинает испаряться ровно в тот момент, когда количество агрегатов (реестров) в проекте переваливает за 30. То, что было элегантным решением для CRM с 10 сущностями, превращается в бюрократический ад для ERP-системы или крупного маркетплейса.

В этой статье я разберу, почему классический DDD в ASP.NET (особенно в связке с Entity Framework Core) становится узким местом на масштабных проектах.

Читать далее

ClickHouse: разбираем MergeTree

Level of difficultyEasy
Reading time15 min
Reach and readers7.2K

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

В этой статье разбираем фундамент ClickHouse — движок MergeTree. Посмотрим, как данные хранятся на диске, чем отличается «парт» от «партиции» и почему индекс в ClickHouse работает не так, как в привычных транзакционных базах вроде PostgreSQL или MySQL.

Читать далее

Сегодня мы построим свою локальную модель на смартфоне. С блэкджеком и WebUI

Level of difficultyEasy
Reading time11 min
Reach and readers11K

Недавно Apple подтвердила стратегическое партнерство с Google для интеграции ИИ Gemini в свои устройства.  Сегодня мы их опередим и поднимем свою LLM в Android-смартфоне. С блэкджеком и WebUI.

Читать далее

Антиспам на нейронках: Gemini Flash в 1000 раз дешевле чем GigaChat

Level of difficultyMedium
Reading time2 min
Reach and readers12K

Сравниваю бесплатные лимиты GigaChat, YandexGPT и Gemini Flash для реальной задачи: антиспам-бот в Telegram, 5000 сообщений в сутки. Считаю токены, потоки и рублики. Разница в лимитах оказалась в 1000 раз.

Читать далее

Claude отключил мне OpenClaw. Штош… я написал замену TG+Claude Max по oAuth

Level of difficultyMedium
Reading time5 min
Reach and readers12K

В субботу Anthropic заблокировал мой рабочий сетап, построенный на oAuth Claude Code и Telegram. Вместо того чтобы ждать, я за вечер написал self-hosted замену с блэкджеком и постоянной памятью. Рассказываю, как устроен TeleClaude — опенсорсный инструмент, который позволяет управлять проектами через топики в Telegram, используя вашу локальную подписку Claude с лимитами из oAuth. Никаких облаков, API и дополнительных трат. Разбираю архитектуру, систему памяти и показываю, как запустить у себя.

Читать далее

Хватит покупать курсы. Соберите портфолио на реальных кейсах. 3 разбора + чек-лист

Level of difficultyMedium
Reading time10 min
Reach and readers6.1K

Я не умею учиться на курсах. Серьёзно. Когда встала задача собрать портфолио, я пошла в поле: взяла документацию трёх продуктов, прошла путь пользователя, нашла проблемы, посчитала их цену в деньгах и спроектировала решения.

Что получилось:

📌 Bpium — документация вокруг функций, а не задач. Готовый шаблон CRM спрятан в подвале сайта. По моей оценке 90% пользователей его не найдут. Предложила задаче-центричную архитектуру и 5 тикетов в Jira.

📌 DirectAdmin — гайд по миграции с cPanel заставляет администратора импровизировать в 80% шагов. Для почты и DNS инструкций нет вообще. Нашла 5 системных проблем, спроектировала структуру Plan→Do→Check и скрипты-помощники.

📌 AmoCRM — разработчик тратит 48 минут вместо 5 на типовую интеграцию. 860% лишнего времени. От 275 тысяч до 3+ миллионов рублей в год оценочных потерь вендора. Предложила раздел со сценариями, визуальные маркеры и перекрёстные ссылки.

Моя методика (7 шагов): выбрать интересный продукт, найти сценарий пользователя, пройти путь с секундомером, искать паттерны (не опечатки!), посчитать цену в деньгах, спроектировать решение, упаковать в историю.

Главное: я не собирала портфолио под вакансии. Я собирала ответ на вопрос «нравится ли мне эта работа?». А кейсы получились сами.

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

Читать далее

Как гуманитарий за 2 месяца с нуля RAG систему построил, или Парсинг PDF по-хардкору

Level of difficultyMedium
Reading time7 min
Reach and readers12K

Добрый день. Сегодня я расскажу о том, как я за 2 месяца с полного нуля создал доменную RAG систему с корпусом в 20+ книг.

В статье затрону проблемы парсинга данных (особенно PDF документов, с которыми приходилось иметь дело), чанкинга, создания и индексации эмбеддингов, а также самого интересного – ретривера. Расскажу о latency, трейд-оффах, и сложностях реализации подобных систем локально на ноутбуке (хоть и «игровом») без использования API LLM.

Вся система делалась мной самостоятельно без использования LangChain – это чистый пайплайн от Tesseract, Pillow, MuPDF/Fitz до e5-multilingual, FAISS (+bm25, который я затрону в статье) и Qwen3:8B в качестве LLM.

Читать далее

Инвалидация nginx кэша

Level of difficultyMedium
Reading time7 min
Reach and readers7.9K

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

Читать далее

Формы в Angular: от Reactive Forms к Signal Forms

Level of difficultyMedium
Reading time11 min
Reach and readers6.2K

Привет! Меня зовут Егор Молчанов, я разработчик в компании Домклик.

В прошлой статье мы познакомились с новыми функциями input(), output() и model(), которые закладывают фундамент для будущего Angular без Zone.js. Сегодня мы поговорим о том, как эти изменения дошли до самой, пожалуй, наболевшей темы в любом приложении — работы с формами.

В Angular v21 появился новый, экспериментальный способ управления формами — Signal Forms. Он не отменяет старые добрые Reactive Forms, но предлагает совершенно иной подход, основанный на сигналах. Давайте разберёмся, как работали формы раньше, как они будут работать с Signal Forms, и что это нам даёт.

Читать далее

Искусственное мышление: дать ИИ понимание и эстетику

Level of difficultyEasy
Reading time17 min
Reach and readers3.8K

Сильный искусственный интеллект (AGI, искусственное мышление) - это Священный Грааль современной компьютерной науки. Его поиском занимается множество людей и на него направляются миллиарды денег.

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

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

Мы не сможем избежать этих вопросов на пути к искусственному мышлению, а значит попробуем дать предельно содержательные ответы на эти вопросы. Сделав это максимально честно и старательно, посмотрим, не смогут ли ответы нам чем-то помочь, сделать перспективы сильного ИИ сколько-нибудь яснее?

Данная статья - это в первую очередь приглашение вместе подумать.

Читать далее

Я сделал тачпанель управления умным домом чтобы вам тоже пришлось

Level of difficultyMedium
Reading time26 min
Reach and readers63K

Немного железа, немного софта, много времени, и у вас появится легендарная панель управления с интерактивным планом дома.

Вот как это сделать

CoreBus: Часть 5 — попытка использования Native AOT

Level of difficultyEasy
Reading time10 min
Reach and readers3.3K

CoreBus (старое название «Терминальная программа») — кроссплатформенный терминал для работы с COM-портами и TCP-сокетами с поддержкой протоколов Modbus TCP / RTU / ASCII.

Ребрендинг, новые фичи и Native AOT (+ боль и разочарование).

Читать далее

Почему найм в ИТ теперь выглядит именно так

Level of difficultyEasy
Reading time4 min
Reach and readers114K

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

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

Читать далее

Почему начальство, да и компании в целом, не признают провалы и когда выгоднее сказать «как есть»

Level of difficultyEasy
Reading time6 min
Reach and readers11K

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

Почему нельзя просто сказать правду?

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

Читать далее

Как прийти к мультиязычной дизайн-системе и выучить арабский

Level of difficultyHard
Reading time5 min
Reach and readers9.6K

Что, если бы дизайн-система умела не просто менять язык, а адаптироваться под культуру, направление чтения, шрифты и даже знаки препинания? А если бы она делала это автоматически — без боли, костылей и ручной работы?

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

Читать далее

Защита критических файлов Linux с помощью Wazuh: пошаговое руководство по настройке мониторинга и сигнализации

Level of difficultyMedium
Reading time7 min
Reach and readers9.4K

Защита критических файлов Linux с помощью Wazuh: пошаговое руководство по настройке мониторинга

Настройте защиту критических файлов Linux (/etc/passwd, shadow, sudoers, sshd_config) с помощью Wazuh: whodata, собственные правила и алерты высокого уровня критичности.

Читать далее