* Если вам не нравится слово отпечаток, заменяйте его на слово hash.
* В статье фигурируют два отпечатка: отпечаток (hash) публичного ключа и отпечаток (hash) файла с данными. Будьте внимательны, чтобы понимать, о каком отпечатке мы говорим в данный момент.
Предположим, что у нас есть:
file_name — файл данных, подлинность которого мы хотим проверить.
file_name.asc — файл с цифровой подписью, который содержит:
Читать далееВ мире Kotlin-бэкенда стандартом считается JVM. Это надежно, привычно, но иногда избыточно. Когда мне понадобился простой инструмент для сбора логов ошибок с моих проектов, я не хотел разворачивать тяжелый стек с Elasticsearch или платить за Sentry.
Мне хотелось получить компактное, быстрое решение, которое можно запустить одной командой в Docker, не выделяя под него гигабайты оперативной памяти.
Так появился Katcher. Это self-hosted краш-трекер, построенный на Kotlin Multiplatform (Native). В этой статье я расскажу, как собрать современный веб-сервис без JVM, без React и без сложной сборки фронтенда, используя Ktor, SQLite и HTMX.
Читать далееКогда несколько лет назад ИИ только вышел на сцену, в нём видели роль мощного ускорителя продуктивности — почти волшебную палочку для работы и повседневных задач.
Во многом эти ожидания оправдались. Но есть важная оговорка: чтобы по‑настоящему выжать максимум из ИИ, нужно понимать, какой именно инструмент подходит под конкретную задачу.
Я изучил и протестировал лучшие инструменты ИИ для повышения продуктивности в самых разных сценариях, чтобы помочь вам собрать идеальный набор AI‑инструментов.
Сегодня мы пройдемся по подборке одних из лучших AI‑решений: они помогают работать быстрее, экономить время и находить творческое вдохновение.
Погружаемся. Надеюсь, они окажутся для вас полезными!
Читать далееЦифровой феодализм — это не теория. Это операционная система нашей реальности, выросшая на костях первоначальных вольных общин.
Если первая часть этой хроники описывала рождение и триумф системы — восхождение Короля-платформы и его алхимию превращения человеческого внимания в капитал — то перед вами фаза ее патогенеза. Фаза метастаз.
Здесь история совершает неизбежный виток диалектической спирали. Любая империя, достигнув пределов внешней экспансии, начинает пожирать саму себя. Любая тотальная система, исчерпав внешних врагов, плодит внутренних — более изощренных, неуловимых и опасных. Это закон социальной термодинамики: давление, не находя выхода вовне, взрывает конструкцию изнутри.
В первой саге Дракон Алгоритмов пожирал кроликов-продавцов. Теперь он столкнется с противниками своего уровня — не с бесправными арендаторами, а с архитекторами реальности. Не с протестующими кроликами, а с теми, кто пишет сами законы бытия этой системы. С творцами кода, который феодалы используют, но не понимают. С программистами, для которых их алгоритмы — не магия, а открытый текст, не приговор, а набор инструкций, который можно переписать.
Война выйдет из сферы экономики в сферу онтологий. Битва пойдёт не за монеты или товары, а за сам язык, на котором говорит цифровой мир. За право определять, что есть реальность, а что — ошибка; что есть личность, а что — баг, подлежащий удалению.
Раньше, в эпоху физических феодалов, власть хотя бы понимала механику своего господства. Даже если управляющий обманывал с отчётами о урожае, сам сеньор мог лично проехать по полям, пощупать землю, увидеть крестьян и оценить реальный масштаб обмана. Обман был тактическим, ситуационным — он происходил внутри понятной всем системы. Феодал мог разгневаться, наказать управляющего, но сама логика власти — земля, барщина, оброк — оставалась для него прозрачной и осязаемой. Конфликт был на уровне исполнения правил.
Читать далееМухи — отдельно, котлеты — отдельно. Отделяем Go-код от SQL-запросов. Зачем это делать и как?Личный опыт миграции большого проекта на новую СУБД показал: смешивание SQL с кодом приложения создаёт проблемы. Представляю простую библиотеку SQLSet для хранения именованных SQL-запросов в отдельных файлах.
Читать далееПринято считать, что ИИ не способен создать ничего принципиально нового, лишь комбинируя кусочки обучающей выборки. Для языковых моделей это утверждение часто справедливо, но если мы сместим фокус с текстов на молекулярную биологию, оно не будет стоить и ломаного гроша. Что если я скажу вам, что ИИ уже способен создавать нечто, чего еще не существовало?
Пока интернет спорит, является ChatGPT поисковиком или зачатком AGI (вы только почитайте новости!), в биоинженерии происходит тихая революция, где ставки гораздо выше. «Галлюцинация» модели там — неработающее лекарство или развалившийся белок. Я объясню, как работает De Novo дизайн, чем «биологический промпт» отличается от текстового, и почему для создания нового лекарства* недостаточно просто «предсказать следующий токен».
Читать далееНаконец-то я её доделал! Шпаргалка по настройке свежего Ubuntu/Debian VPS, которую начинал писать, когда ещё сам был новичком.
Вы только что купили сервер, а что дальше? Каждый раз я гуглил и пошагово делал одно и то же, тратил на это много времени, пока не собрал всё в одном месте. Теперь за 15–20 минут вы можете превратить «голый» VPS в безопасную и удобную машину.
Этот базовый минимум с чёткими командами и объяснениями. Никакого Ansible и сложностей — чистая ручная настройка. Подойдёт всем, кто только осваивает Linux, и каждый раз не знает, с чего начать.
Читать далееВ первой части я разбирал архитектуру AI-агента, выбор между RAG и GraphRAG на примере AI-юриста для техподдержки. Если пропустили – https://habr.com/ru/articles/975230/
Во второй части решил уделить внимание тому, как добиться нормального качества поиска и точности ответов. Чтобы AI‑агент не остался в песочнице и не превратился в очередной эксперимент «мы попробовали, не взлетело».
Надеюсь мой опыт будет полезен и вы сэкономите себе деньги, нервы и время. А может быть и вовсе откажетесь от идеи создания агента — это тоже нормальный исход.
Я уже писал про чанки, RAGAS, бенчмарки и инструменты отслеживания качества. Сегодня остановимся детально на каждом артефакте, расскажу плюсы и минусы, и почему именно их я использовал для AI‑юриста. Погнали
Читать далееПриветствую тебя читатель, позволь мне выразить боль и воспользоваться площадкой, может здесь меня услышат, потому-что интерфейс яндекса не работает!
Предыстория: не знаю в какой момент, но уже минимум на протяжении полугода по какой-то неизвестной мне причине у меня 2 раза в месяц списывается с карты сумма за подписку яндекс плюса, хотя у меня только один аккаунт привязанный к номеру! Карта уже раза 3 перевыпускалась, получается что старая карта отвязывалась бы в любом случае от любых аккаунтов, верно же? Не может же яндекс автоматически заменить старую карту на новую при первыпуске?
Читать далееЭта статья является прямым продолжением предыдущей публикации на данную тему. К тому же, от пользователя @Sotnya1337 прозвучал вопрос
«Подскажите пожалуйста, угол fi мы выбираем наобум? Было бы интересно рассмотреть автоматическую логику управления, без ручного выбора угла fi »
требующий ответа. Более того — этот ответ я и сам хотел получить довольно давно. Но, как я и писал ранее, в отечественной литературе этот вопрос не освещается вообще, а в зарубежной — частично, в основном применительно к низковольтным активным выпрямителям вторичных источников питания. Тем не менее, мне удалось разобраться в этом вопросе. И сегодня мы не будем «наобум» выбирать угол , а построим настоящую систему управления 4QS‑преобразователем и смоделируем её работу. При чем не для каких‑то там «детских» мощностей, а вполне в соответствии с потребностями электрической тяги на магистральных линиях.
Осторожно! Много волосатой ТАУ!Не очень серьёзный рассказ в жанре научной фантастики.
Сидит Бог у себя на небесах. Витает в облаках. Скучает, нечем заняться. Что бы такого сотворить? Мается без дела…
Думал Бог, думал, ничего не придумал: «Дай-ка, посмотрю, чем там люди внизу занимаются. Вдруг подскажут идею».
Читать далееСинтаксис Go глазами того, кто последние пять лет писал на TypeScript.
В первой части мы разобрались с философией Go и настройкой рабочего окружения. Теперь к коду. Эта статья про синтаксис и ключевые концепции Go. Не ждите пересказа документации. Будут сравнения, будут подводные камни, будет код.
Читать далееОценить проект «на берегу», когда требований почти нет, команды ещё нет, а ответ нужен к завтрашнему совещанию, — это не инженерия, а гадание с серьёзными последствиями. В статье разбирается практичный способ превратить туман неопределённости в расчёт: как декомпозировать работу по пользовательским функциям, считать оценки через PERT и показывать стейкхолдерам не «одну цифру», а диапазон с уровнем уверенности.
Понять PERTИстория способов хранения данных — это история человечества. От первых рисунков на стенах древних пещер до современных облачных хранилищ, мы постоянно совершенствовали способы сохранить важную информацию, чтобы передать её потомкам или использовать для решения актуальных проблем. Но речь в статье пойдет немного не о том: сегодня мы постараемся осветить не столько глобальные вопросы сохранения и приумножения знаний, сколько проблемы рядовых «пользователей». Мы задались вопросом, как простые люди, не обремененные высокими материями, хранили личную информацию: любовные письма, дорогие сердцу изображения, плоды творчества и тому подобное. Разумеется, охватить всё в рамках одной статьи будет попросту невозможно, поэтому основной акцент мы сделаем на текстовой информации.
Читать далееПочему одни топ-менеджеры с одинаковыми KPI двигают компанию вперёд, а другие годами держат её в стагнации? В статье - практический протокол оценки компетенций топов: какие данные собирать, как увязать их с бизнес-результатами и как превращать выводы в реальные кадровые решения
Читать далееSupabase — это краеугольный камень многих low-code и no-code платформ (Lovable — хороший тому пример) и он получил широкое распространение с приходом эпохи vibe-coding. Не просто так - им (супер)легко пользоваться как AI-кодинг агентам, так и углеродным формам жизни.
В некотором смысле он убирает необходимость иметь отдельного девопс / админа / администратора БД. Для стартапа преимущества очевидны: свободного времени и рук почти никогда не бывает. И, если честно, кому вообще хочется этим заниматься? Гораздо приятнее потратить это время более продуктивно - например, на думскроллинг в Twitter.
Читать далееСовременные распределённые системы часто сталкиваются с задачей управления большим количеством заданий - будь то обработка данных, интеграции или выполнение фоновых задач.
В этой статье рассмотрим архитектуру подсистемы управления заданиями, реализованную на принципах микросервисной архитектуры. Подсистема управляет заданиями на загрузку данных из внешних источников, то есть задачу интеграции с поставщиками данных.
В статье не будет технических деталей, будут даны только принципиально важные детали реализации и критически важные параметры.
Читать далееИз новостей: что показали на TGA 2025, Godot 4.6 Beta, Unity игры на Реддите, один из крупнейших акционеров Square Enix публично раскритиковал руководство, Paradox поднимает цены.
Из интересностей: вторая часть документалки про Disco Elysium, трюки из GLSL-демо, когда сиквелы работают, формат файлов, который не удаётся взломать уже 20 лет.
Читать далееКоманда Python for Devs подготовила перевод статьи о двух новых Rust-базированных анализаторах типов для Python — pyrefly и ty. Оба пока в ранней альфе, но уже демонстрируют впечатляющую скорость, разные подходы к выводу типов и новые возможности.
Читать далееКоманда Spring АйО подготовила перевод про Fray — инструмент для обнаружения и воспроизведения ошибок многопоточности в Java-программах. Основанный на научных исследованиях и написанный на Kotlin, Fray использует технику теневой блокировки для выявления взаимоблокировок и других проблем синхронизации. Он уже доказал свою эффективность на таких проектах, как Kafka, Flink и Lucene.
Читать далее