«Чай. Эрл‑Грей. Горячий». Помните эту фразу капитана Пикара из «Звёздного пути»?
Меня всегда поражало, с какой лёгкостью компьютер «Энтерпрайза» понимает команды Пикара. И вы замечали — никому на мостике корабля никогда не приходится повторять сказанное?
Никто не раздражается, когда просит компьютер выдать информацию. Машина не превращает слова в текст, не сверяет звучание похожих слов, не ищет в базе совпадения. Она просто... понимает. Проще говоря, намерение переходит от речи к действию без трения — мгновенно и безошибочно.
Читать далееActive Directory не просто каталог пользователей или сервис Windows. Это полноценная информационная система, лежащая в основе почти любой корпоративной сети на базе Windows. Но это не просто «хранилище». Active Directory служба каталогов.
Слово «каталог» здесь означает не папку с файлами, а структурированную иерархическую базу данных, в которой каждый объект имеет: уникальное имя (например, CN=Иванов Иван,OU=Бухгалтерия,DC=company,DC=local), атрибуты (имя, фамилия, пароль, номер телефона, права доступа и т.д.), место в иерархии (в каком подразделении, в каком домене, в каком лесу).
Такая структура позволяет не просто хранить данные, а быстро находить, проверять и управлять ими даже если в системе сотни тысяч объектов.
Active Directory предназначена для сбора, хранения, обработки и предоставления информации обо всех участниках инфраструктуры: пользователях, компьютерах, принтерах, группах, политиках безопасности и правах доступа. Без неё невозможна стабильная, безопасная и масштабируемая работа даже средней компании.
Но именно эта централизация делает её главной целью для атак. Поэтому понимание Active Directory требует не только знания её структуры, но и глубокого осознания её уязвимостей и чёткого плана действий на случай, если защита будет нарушена.
Архитектура: как строится управляемая сеть
Вся структура Active Directory строится вокруг леса высшего уровня доверия и безопасности. Всё, что находится внутри одного леса, разделяет общую схему данных, глобальный каталог и политику безопасности.
Читать далееФронтенд на Rust — звучит странно? Я написал Telegram WebApp SDK на Rust, совместимый с официальным API, и уже использую его в реальных проектах. В статье — зачем я это сделал, с какими проблемами столкнулся и чем это лучше привычного React.
Проявить заинтересованностьПрименение нейросетей в рабочих процессах стремительно набирает популярность. Для одних — это незаменимый помощник, который экономит сотни часов и избавляет команду от рутины. Для других — лишь модный хайп, за которым вскоре последует разочарование, как после пузыря доткомов.
Как понять, действительно ли ИИ принесет пользу вашему бизнесу? Где его место в ваших процессах и какие задачи стоит ему доверить? И главное — как избежать завышенных ожиданий и не тратить бюджет на все, что просто имеет приписку «AI»?
Состоялся выпуск каталогизатора домашней библиотеки MyLibrary 4.2.1. Код программы написан на языке программирования С++ и доступен (GitHub, GitFlic) под лицензией GPLv3. Графический интерфейс пользователя реализован с помощью библиотеки GTK4. Программа адаптирована для работы в операционных системах семейства Linux и Windows. Для пользователей Arch Linux в AUR доступен готовый сценарий сборки пакета. Для пользователей Windows доступен экспериментальный инсталлятор.
MyLibrary каталогизирует файлы книг в формате fb2, epub, pdf, djvu, odt, txt, md, как доступные напрямую, так и упакованные в архивы (zip, 7z, jar, cpio, iso, tar, tar.gz, tar.bz2, tar.xz, rar), и создаёт собственную базу данных, не изменяя исходные файлы и не меняя их положения. Для каталогизации также доступен формат fbd (файл книги упакованный в архив вместе с файлом с расширением fbd, содержащем тэг description формата fb2). В формате fbd могут храниться любые файлы, не только книги. Контроль целостности коллекции и её изменений осуществляется за счёт создания базы данных хэш-сумм файлов и архивов.
( читать дальше... )
Привет, Хабр! Модуль itertools мне известен многим вдоль и поперёк. Ну действительно, что там сложного? Пара функций вроде chain да product, и кажется, что ничего нового для себя уже не найти. Однако стоит копнуть глубже, и выясняется, что у itertools есть немало нюансов и даже новых возможностей, появившихся в свежих версиях. В этой статье рассмотрим многие функции itertools: от базовых до самых интересных.
Понять силу итераторовВ работе инженера по автоматизации нередко возникают задачи, выходящие за рамки типового программирования. Одной из таких является поиск и устранение неисправностей в сложных мехатронных системах, где не всегда очевидно, какой механизм или устройство работает некорректно. На помощь может прийти полезный инструмент - цифровой двойник.
Читать далееПривет, Хабр!
Мы тут в свободное время пилим проект, который должен решить боль многих айтишников, — автоматизировать рутинный поиск работы. Идея выросла в Telegram-бота «Аврора» , который на "автопилоте" ищет вакансии на hh.ru и откликается на них.
Но чтобы "автопилот" был полезным, он должен быть надежным. Никому не нужен ассистент, который при первом же деплое новой версии или падении сервера забывает, что он делал, и какие вакансии уже отправил.
Сегодня я хочу рассказать не столько о самом боте, сколько о конкретной инженерной задаче, с которой мы столкнулись: как обеспечить персистентность и "бесшовное" возобновление длительных пользовательских задач при перезапуске сервиса.
Под катом — наш подход к Graceful Shutdown, восстановлению сессий и немного про то, как LLM (в нашем случае Gemini) генерирует поисковые запросы.
Читать далееДавайте честно – пока что Postgres редко используется для действительно больших и нагруженных баз. Этому множество причин, но главная формулируется просто: «не тянет».
У каждого есть своя граница, где Postgres ещё применим, а дальше —уже нет. Обычно это где-то между одним и пятью терабайтами, дальше жить с этим «больно».
База просто не может обработать большой объем данных с той скоростью, которую способны выдать диски.
И вот — Postgres 18, впервые за долгое время, предлагает не косметическую, а фундаментальную новинку. То, что в Oracle есть уже 20+ лет — асинхронный ввод-вывод (аsync IO).
Попробуем посмотреть async IO и ответить на вопрос - стал ли Postgres ближе к «взрослым» нагрузкам?
Читать далееВ последний месяц очень форсится идея о том, что для универсального промпта нужно правильно натаскать контекст, подключить правильные тулы и MCP, и вот тогда-то наступит счастье.
Итог этой идеи известен каждому руководителю, который пытался сделать для сотрудника идеальные условия, в которых он наконец-то сможет творить, а не заниматься рутиной. Это помогает лишь частично. Если у человека есть возможности что-то делать — не означает, что он пойдет и сделает. Для действий нужны уже некие внутренние мотиваторы. Руководитель уже может капать на нервы очень конкретным образом, в дополнение к формуле «морковка сзади, морковка спереди».
Читать далееВ этой статье приведены основные понятия, которые возникают, когда речь заходит о криптографии. Попытаемся объяснить их на простом бытовом уровне, понятном каждому.
Кому это может быть интересно? Например:
· менеджерам и аналитикам, которым не важны технические детали, но важно понимать, о чем говорят их коллеги разработчики
· новичкам, которым предстоит погрузиться в мир криптографии
· всем несчастным, кому приходится слушать о задачах информационной безопасности при встрече с друзьями программистами.
Читать далееНовое исследование от Anthropic, создателей Claude, ставит крест на классическом промпт-инжиниринге. Их вывод: эффективность ИИ-агентов теперь определяется не тем, как вы спросите, а тем, какие данные вы им предоставите. На сцену выходит контекст-инжиниринг.
Читать далееВ сентябре этого года было зафиксировано сразу два инцидента, когда в репозитории пакетов npm загружалось вредоносное программное обеспечение. Имел место как единичный случай загрузки вредоносного пакета, так и масштабная атака Shai-Hulud, в ходе которой у злоумышленников получилось заразить сразу несколько популярных программ. Данные инциденты можно классифицировать как атаку на цепочку поставок: включение вредоносных пакетов в другое ПО может в итоге привести к гораздо более серьезным последствиям, чем компрометация рабочей станции единственного разработчика. На прошлой неделе специалисты «Лаборатории Касперского» отчитались об обнаружении еще одного вредоносного npm-пакета и опубликовали подробное описание его работы.
Вредоносный пакет был обнаружен в октябре, и имел достаточно убедительное название https-proxy-utils. Легитимные пакеты с похожими именами скачиваются десятки миллионов раз в неделю. Легитимная функциональность полностью скопирована из пакета <code>proxy-from-env</code>, но помимо нее в код добавлен вредоносный скрипт, который загружает и запускает фреймворк для постэксплуатации AdaptixC2. AdaptixC2 — это набор инструментов, позволяющий «закрепиться» в системе после первоначального взлома. В подробном обзоре фреймворка от специалистов Palo Alto Networks показаны его возможности: от анализа запущенных программ и файловой системы до прекращения работы определенных процессов и запуска собственного кода.
Читать далееПовествование о нюансах вывода в эксплуатацию высоконагруженной системы для финансового сектора, где важна согласованность данных и нулевая толерантность к их потере, также выжимка из опыта в подходах к проектированию, разработке и тестированию.
Читать далееПримечание: Статья посвящена формату XBRL-CSV2 (тэг "@context":"www.cbr.ru/xbrl_csv2").
Авторство формата принадлежит Банку России.
Автор статьи — архитектор, принимавший участие в разработке формата в качестве технического специалиста.
Введение.
Банк России использует стандарт XBRL для сбора отчетности от некредитных финансовых организаций. Несмотря на всю продуманность XBRL, при формировании и обработке отчетности возникает проблема, связанная с реестровыми формами.
Эти формы содержат гиперкубы с открытыми осями. При большой вариативности значений таких осей реестровые отчеты становятся чрезвычайно объемными.
Решение этой проблемы — создание производного от XBRL-XML формата: XBRL-CSV.
Основная предпосылка: CSV органически приспособлен для хранения реестровых форм. Открытые оси выносятся в начальные колонки, а комбинации значений ячеек открытых осей в каждой строке образуют составной открытый ключ, однозначно идентифицирующий запись.
Остальные колонки — это данные, которые определяют три аспекта показателя:
Читать далееВозможности Angie в качестве веб‑сервера и обратного прокси довольно известны. Но кроме работы на уровне L7 (HTTP), мы можем применять его на L4 (TCP и UDP) в качестве балансировщика и прокси‑сервера. Именно об этой функциональности мы и поговорим в сегодняшней статье.
Читать далееПривет, Хабр! Меня зовут Пётр Растегаев, я лид backend-разработки команды девайсов. Сегодня я расскажу о нашей системе обновления прошивок устройств: как мы вообще дошли до жизни такой текущих принципов, какой стек технологий выбрали, какие архитектурные паттерны использовали при разработке и как выстроили удобный релизный цикл прошивок. Заваривайте чай — вас ждёт увлекательное путешествие ;-)
Читать далееВ статье представлен всесторонний обзор Grok AI от xAI Илона Маска - уникального чат-бота, сочетающего юмор, правдивость и мультимодальность. Рассматривается история создания от TruthGPT до Grok-4, эволюция версий с улучшениями в логических способностях и генерации контента (изображения, видео), ключевые функции (интеграция с X, режимы работы, API для автоматизации), сравнение с ChatGPT по производительности, цензуре и применению. Обсуждаются контроверсии (политическая предвзятость, этические риски), доступ (бесплатный, премиум, API) и перспективы (Grok-5, Grokipedia). Статья помогает понять, как Grok меняет ИИ-ландшафт, с практическими примерами и FAQ.
Читать далееПривет, друзья! Сегодня расскажу вам, как я установил n8n (крутой инструмент для автоматизации процессов) и Nginx Proxy Manager на свой VPS-сервер в Beget. Если вы читали мою предыдущую статью, то уже знаете, что у меня уже установлен Portainer.io , который делает работу с Docker контейнерами намного проще. Если нет — не переживайте, я всё объясню так, будто это мой первый раз (и, честно говоря, так оно и есть
Попробовал сделать свою брейн-систему. Вроде даже получилось. А потом сделал так, что любой может это повторить.
Читать далее