Обновить

Разработка

Сначала показывать
Порог рейтинга
Уровень сложности

Неодолимая магия компьютера

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

Решил написать небольшую заметку по настройке командной оболочки FreeBSD. В первую очередь для себя, как шпаргалку. Заметка получалась не очень большой и не такой уж интересной. Тогда попробовал объяснить, почему именно FreeBSD и вообще *BSD. Написал небольшое пояснение. И оно оказалось не про BSD. Написал ещё абзац. И снова ни слова про BSD.

«Да ёлы-палы!» — решил я и написал, как знакомился с компьютерами. Но и тут про BSD оказалось немного. Значит, судьба, решил я. Про BSD будет в другой раз. Наверное. А в этот раз опишу путь к компьютеру подростка с конца 80-х по начало 2000-х.

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

Читать далее

Техническая реализация безопасной системы сделок через модель эскроу (не гаранты, а математика)

Время на прочтение11 мин
Охват и читатели6K

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

Показываем, как реализовать технические гарантии безопасности сделок с помощью MultiSig-кошельков, Node.js, smart-контрактов, TronWeb v5. Разбираем код и логику проектирования P2P-платформы, которая не может украсть деньги пользователя (даже если захочет) 👇

Читать далее

Пользовательское требование — точка входа в документацию

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

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

Читать далее

Транспортная логистика в 1С:ERP: типовой функционал и кастомизация под специфику бизнеса

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

В современных условиях, где цепочки поставок становятся всё сложнее, а границы всё тоньше, эффективное управление транспортной логистикой является важным элементом для производственных и торговых предприятий и превращается из вспомогательной функции в мощный конкурентный инструмент. Многие компании, внедряющие комплексные ERP-системы, такие как 1С:ERP Управление предприятием 2.5, сталкиваются с тем, что 1С:ERP предоставляет мощный базовый инструментарий, но он не всегда «ложится» на бизнес-процессы компании и требуется их адаптация под уникальные бизнес-процессы предприятия.

В этой статье мы рассмотрим, как сочетается типовой функционал 1С:ERP с кастомизацией на примере реальных внедренческих проектов для производственного предприятия.

Фундамент: что предлагает «коробочная» 1С:ERP для транспорта

Перед тем, как говорить о доработках, важно понять, что предлагает «коробочная» версия 1С:ERP — отправную точку. Типовая конфигурация 1С:ERP включает в себя базовый, но надежный каркас для управления транспортом:

Читать далее

Нестандартные фичи Rust, которые вы полюбите

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

Привет, Хабр! В Rust есть тип, у которого нет ни одного возможного значения. Звучит необычно. Но я однажды столкнулся с этим самым никогда‑типом и понял — без него жить в Rust уже не хочется! Что это такое и зачем нужно — разберём подробно. По ходу дела упомянем и связанные фичи: Infallible, новоявленные макросы вроде matches!, разные фишки для оптимизации кода и FFI, про которые часто не догадываешься.

Читать далее

Мини-компьютер на Arduino с интерпретатором BASIC: от идеи до реализации

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

Выходные с пользой. Как я, моя восьмилетняя дочь и ИИ создавали мини-компьютер на базе Arduino Mega 2560. Цель - доступно объяснить разницу между персональным компьютером и микроконтроллером.

Читать далее

«Sandtrix»: как фильм вдохновил на переосмысление легенды

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

Думаю, что в каждом из нас живёт воспоминание о первой видеоигре, для кого-то это были «Герои 3», для кого-то — гонки на приставке из 90-х, а для миллионов людей по всему миру первой любовью стали падающие кирпичики, которые нужно было складывать в ровные ряды. Тетрис не требовал перевода, не нуждался в инструкции и не спрашивал, сколько тебе лет — он просто затягивал.

Недавно я посмотрел фильм «Тетрис» (2023) и поймал себя на мысли, что история создания — не менее увлекательна, чем сама игра. А ещё она вдохновила меня на идею, взять классическую механику и добавить в неё щепотку… песка.

Читать далее

Книга «Game++. Устройство и оптимизация игрового движка»

Время на прочтение4 мин
Охват и читатели12K

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

С радостью и чувством выполненного долга издательство «БХВ» представляет вам одну из флагманских новинок наступившего года. Мы получили из типографии книгу «Game++. Устройство и оптимизация игрового движка».

Как известно, высококлассные AAA-игры — это та территория, на которой сходятся проверенные и экспериментальные алгоритмы, высокая производительность, графика на уровне произведений искусства и проектирование распределённых систем. Главный язык программирования для аса в разработке игр — это C++.

Поскольку сложно объять необъятное, да и участие в разработке The Sims и Age of Empires смотрелось бы в резюме как опыт участия в гонках «Формулы-1», автор, самоотверженно поработав, создал фундаментальную книгу о наилучших практиках высокопроизводительного программирования как в элитном продакшне, так и на очень ограниченных ресурсах. Для автора игры — это полигон, на котором он набрал свой уникальный профессиональный опыт, а C++ — это инструмент, при помощи которого решается любая задача. Отдельно отметим, что в книге уделено внимание не только различным структурам данных и их реализациям, но и стандартной библиотеке шаблонов (STL); этот материал серьёзно повысит профессиональный уровень любого C++-разработчика.  

Далее - от автора, Сергея Кушниренко @dalerank.

Читать далее

Создание индикатора Pine Script v6 для анализа структуры Smart Money

Время на прочтение5 мин
Охват и читатели4.8K

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

Если вы увлечены трейдингом и хотите автоматизировать анализ рынка по концепции Smart Money Concept, то в этом вам может помочь собственноручно написанный индикатор. Написание индикаторов и систем по концепту smart mpney(ict) - часто довольно сложная история.

В этой статье я разберу, как создать такой индикатор в Pine Script версии 6 шаг за шагом. Мы пройдемся по коду, выделяя ключевые фрагменты с объяснениями, чтобы вы могли не только применить его на TradingView, но и понять логику, доработать или даже интегрировать в свои стратегии. Давайте нырнем в детали, начиная с основ.

Читать далее

Особенности Schema Evolution в Hadoop: как сделать alter table

Уровень сложностиСложный
Время на прочтение9 мин
Охват и читатели4.8K

Привет, Хабр! Меня зовут Ольга Косарева, я инженер данных команды «Прогнозирование финансового результата» Центра разработки решений ALM в ИТ‑холдинге Т1, мы занимаемся созданием современной ALM‑системы (подробнее тут ).

Полтора года назад я пришла в команду и получила задачу дописать и внедрить инструмент для DDL‑операций над данными в экосистеме Hadoop. Моя первая реакция была: «А зачем так сложно? Какой инструмент? Почему нельзя просто выполнить команду ALTER TABLE через Hive?»

В этой статье мы с коллегами Никитой Королёвым и Алексеем Пожар расскажем, в каких случаях целесообразно именно так и сделать, а в каких это приведёт к различным проблемам с данными, что такое Schema Evolution и как мы решаем задачу периодического изменения структур таблиц с нашими отчётами.

Читать далее

Андрей Карпаты только что создал полноценный GPT на 240 строках Python

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

Никакого PyTorch. Никакого TensorFlow. Только чистый Python и базовая математика.

За время работы над докторской я перечитал множество реализаций трансформеров. Плотные кодовые базы. Тысячи файлов. Зависимости, нагроможденные на зависимости. Открываешь репозиторий, запускаешь pip install -r requirements.txt и смотришь, как скачиваются 400 пакетов, прежде чем ты вообще увидишь, как твоя модель тренируется (а потом ошибки, проблемы с версиями... и так далее).

А потом, 11 февраля 2026 года, Андрей Карпаты выложил один-единственный файл на Python, который обучает и запускает GPT с нуля. 240 строк. Ноль зависимостей.

Читать далее

System Design для QA: о чём вас спросят на собеседовании

Время на прочтение11 мин
Охват и читатели7.3K

Привет, Хабр! Я написал эту статью для тех, кто с System Design особо не сталкивался. Никаких предварительных знаний не нужно — всё объясню с нуля. Если вы уже знаете, что такое load balancer — местами будет скучно, но, может, в секции про очереди или мониторинг найдёте что-то новое.

Читать далее

Prompt injection для смелых духом: от zero-click атаки на 1.4B устройств до философского джейлбрейка

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

SQL-инъекцию мы лечили 20 лет и вылечили. Prompt injection — фундаментально нерешаема. Это не я придумал. OWASP ставит её на первое место второй год подряд. Найдена в 73% продакшн AI-систем при аудитах.

Вы не за статистикой сюда пришли. Вы пришли за мясом. Ниже — 10 кейсов, которые не попали в типичный пересказ про Chevrolet за доллар. Тут пострашнее.

Что происходит?

Ближайшие события

Технический разбор Greenwich: когда «полезное» расширение начинает видеть слишком много

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

Это разбор браузерного расширения Greenwich, которое заявлено как инструмент для обмена связанными ссылками между пользователями. На практике его техническая реализация вызывает вопросы с точки зрения приватности и безопасности.

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

Читать далее

От гаданий к математике: Как PG_EXPECTO v.7 и DeepSeek превращают DBA-анализ из искусства в науку

Уровень сложностиСложный
Время на прочтение14 мин
Охват и читатели4.6K

GitHub - Комплекс pg_expecto для статистического анализа производительности и нагрузочного тестирования СУБД PostgreSQL

Глоссарий терминов | Postgres DBA | Дзен

Традиционный DBA-анализ часто субъективен и опирается на опыт конкретного специалиста. PG_EXPECTO предлагает другой метод : автоматизация сбора и обработки статистики с помощью PG_EXPECTO v.7 и формирование выводов нейросети DeepSeek.

PG_EXPECTO рассчитал граничные значения и метрики ВКО, отсеяв незначимые события. DeepSeek, получив эти «чистые» данные, провел сравнительный анализ экспериментов , указав на скрытые доминанты и системные паттерны.

Читать далее

Обманываем atomic

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

Давайте обманем атомик. Вот две функции - можно ли, общаясь к атомику только с их помощью, увидеть некорректное состояние ?

void write(std::atomic<int64_t>& x, int64_t v) { x.store(v, std::memory_order_seq_cst); } int64_t read(std::atomic<int64_t>& x) { return x.load(std::memory_order_seq_cst); }

Читать далее

Как можно упростить исправление конфликтов в «git rebase»

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели6.5K

git rebase это отличный способ сделать историю линейной и визуально красивой. Но для каждого коммита, у которого возникает конфликт, приходится его исправлять и делать git rebase --continue. В случае длинных веток таких остановок для исправления конфликтов может быть довольно много. В этой статье я расскажу про нестандартный метод, как можно исправить все эти конфликты разом, что позволяет сделать git rebase быстро и чисто механически.

Читать далее

RAG Testing: как не сломать retrieval

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

RAG ломается не так, как обычный LLM. У голой языковой модели одна поверхность отказа - генерация. У RAG-системы таких поверхностей две: retrieval и generation. И ломаются они по-разному.

Retriever может вернуть нерелевантные чанки, потерять нужные документы или ранжировать их неправильно. Генератор может проигнорировать контекст и ответить из собственных весов. Стандартные LLM-метрики не ловят проблемы retrieval - они оценивают только финальный ответ.

В статье - практический гайд по тестированию обеих поверхностей:

6 метрик RAGAS с production-порогами: Faithfulness ≥ 0.80, Context Precision ≥ 0.70, Context Recall ≥ 0.70, Answer Relevancy ≥ 0.70

Классические IR-метрики: Precision@K, Recall@K, MRR - для быстрой проверки retrieval без LLM-судьи

Security-тесты: document poisoning, context injection, cross-tenant leakage через Promptfoo

CI/CD pipeline: автоматический quality gate при обновлении knowledge base

От pip install ragas до GitHub Actions - всё с кодом и конфигами.

Читать далее

Параллельная обработка Kafka сообщений с гарантией at-least-once в условиях медленного внешнего сервиса

Уровень сложностиСредний
Время на прочтение14 мин
Охват и читатели4.7K

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

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

Для иллюстрации подходов далее будет использоваться код из демонстрационного проекта на Kotlin с использованием spring boot, webFlux, spring reactor и reactor-kafka. Код проекта не является production-ready: в нём, например, отсутствует обработка rebalance, а также ряд других моментов, обязательных для промышленной системы. Используется reactor-kafka, однако описываемые решения не зависят от конкретного фреймворка работы с Kafka и могут быть реализованы с использованием других.

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

Читать далее

Лимит доверия: как ИИ решает, сколько денег вам можно дать (и почему это часто несправедливо)

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

Что влияет на размер вашего кредитного лимита? И почему банк может вдруг его уменьшить, даже если вы всегда вовремя вносите платежи? В предыдущей статье мы выяснили, как банки применяют модели машинного обучения для определения вашей кредитоспособности; в этой статье мы рассмотрим примеры Synchrony Bank и Apple Card, объясним тактику “low-and-grow” и продемонстрируем, как банки задействуют поведенческую экономику и обучение с подкреплением для контроля над вашими задолженностями.

Очень интересно, хочу прочитать!