Как устроена цензура изнутри. На примере слитого китайского фаерволла (блокировки Tor, VPN, анализ трафика)

Продолжаем нашу серию статей с разбором работы Китайского Firewall'а (GFW). В этой статье углубимся в техническую часть этой системы

Продолжаем нашу серию статей с разбором работы Китайского Firewall'а (GFW). В этой статье углубимся в техническую часть этой системы

Всем привет!
Я работаю Senior Java Developer в одном из банков, и за последние годы мне пришлось пройти не одно собеседование, услышать десятки каверзных вопросов и потратить уйму времени на подготовку. И вот что я понял: многопоточность — это одна из самых сложных и любимых тем на Java-собеседованиях, независимо от уровня кандидата.
Поэтому в этой статье я хочу помочь вам уверенно подготовиться к секции по concurrency: разберём ключевые термины, посмотрим, как это работает на практике, и дам несколько советов, которые реально помогают на собесах. Поехали!
Кто я такой и с какой горы прибыл?
Зовут меня Юра и у меня немногим больше семи лет опыта разработки фронта на vue+typescript. Начал я, что забавно, с Angular 5 в далёком 2018, когда пятёрка ещё была актуальной версией, и работал с ним немногим больше пары месяцев, после чего перекатился во vue2.
Работал я исключительно в B2B и внутренней разработке. Системы документооборота, сервисдески и вот это вот всё. Благодаря этому я повидал разного. От DDD, до "паста-болоньезе-код".
На последних двух проектах я наступил в FSD. Методологию для организации кодовой базы выбирал не я, но я честно пытался в ней разобраться и как-то удобно организовать. К сожалению, оба раза код становился проблемой с высокой связностью, неочевидным размещением сущностей и сложно отслеживаемой системой взаимодействий компонентов кода.
При всём этом я наблюдал активный рост популярности FSD методологии в сообществе. Это натолкнуло меня на мысль о том, что я просто недостаточно разобрался, и тогда я начал копать. Смотреть, как же готовят FSD, сравнивать с известными мне архитектурными подходами. В этой статье я хочу поделиться выводами, к которым пришёл, и предложить решения, которые нашёл.

Здравствуйте, уважаемые хабровчане.
Я решил провести собственное небольшое расследование о так называемых «сертификатах безопасности» от Минцифры. Цель — собрать полное техническое досье и разобраться, почему их установка может нести потенциальные риски для безопасности данных.
(Оригинал без терпения, все скрипты и файлы, упомянутые в статье, доступны в этом GitHub‑репозитории).

Наконец‑то удалось достичь значительного прогресса в работоспособности графических процессоров Intel Arc на платформах Raspberry Pi. Система работает относительно стабильно. После преодоления множества технических препятствий появилась реальная перспектива интеграции этих GPU в официальную Raspberry Pi OS. В случае успеха, для активации карт Intel пользователям потребуется лишь установить соответствующий пакет прошивок.
Важность этого достижения выходит далеко за рамки экосистемы Raspberry Pi.
Программный патч, необходимый для работы карт Arc, запускает их не только на архитектуре Arm, но и на всех системах, не относящихся к x86, включая RISC-V. Сейчас Arm-платформа Raspberry Pi выступает в роли доступной и популярной тестовой площадки для решения фундаментальной задачи совместимости.
Успешная интеграция драйвера Intel Xe в ядро Linux для non-x86 архитектур открывает всей линейке Intel Arc доступ к экосистеме RISC-V. Не забываем, что та испытывает острую нехватку мощных GPU с открытыми драйверами.

У моей кошки Манишки диабет. Ей 13 лет, весит она всего 3 кг, и каждый день я меряю ей сахар глюкометром и колю инсулин. Первые месяцы записывал показания в блокнот на холодильнике — просто дата, время, цифра. Потом понял что так динамику не увидишь, перешёл на Excel с формулами и цветными ячейками. Потом написал Python‑скрипт который рисовал графики и сохранял их картинками.
А что из этого получилось — смотрите под катом!

Есть три вида писем, которые могут испортить блаженную субботу: уведомление безопасности, предупреждение об отключении электричества и, очевидно, повторное напоминание о том, что вы задолжали облачному провайдеру один цент — да, именно $0,01. Услугами DigitalOcean я пользуюсь с 2013 года, хотя для личных задач я этот сервис использую редко, просто авторизуюсь несколько раз в неделю для обеспечения поддержки моих клиентов на этой платформе.

Начав знакомство с серией Fallout с ее первых частей, выход третьей вызвал во мне смешанные чувства. С одной стороны, это было захватывающее приключение от первого лица в мире любимой игры, с другой же проект ощущался для меня больше как шутер с элементами RPG, где от глубокой ролевой системы классики осталось не так много. И только с выходом New Vegas я наконец получил ту игру, которая по духу оказалась ближе всех к классическому Fallout — даже несмотря на то, что работала она всё на том же движке, что и «тройка».
Для подготовки этой статьи я перелопатил весь интернет в поисках редких фактов и комментариев людей, которые работали над New Vegas. Нашлись даже интервью на японском языке 🤯 — не говоря уже о множестве англоязычных материалов. Я постарался собрать из всего этого цельный, увлекательный текст, который не просто расскажет о создании игры, но и, надеюсь, пробудит у вас желание снова вернуться на Мохавскую пустошь. New Vegas — по-настоящему глубокая и многослойная игра, и мне искренне хочется, если не отправить вас туда лично, то хотя бы подарить повод поностальгировать и узнать что-то новое, читая мой свежий обзор. А в конце вас ждёт бонус: полностью готовая сборка игры с фанатской модификацией, чтобы вы могли сразу после прочтения отправиться навстречу приключениям!

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

Привет, Хабр! Каждый, кто хоть раз пытался вытащить данные из скана акта или старого отчета, знает эту боль. Классические OCR-инструменты, вроде старого доброго Apache Tika, отлично справляются с простым печатным текстом, но пасуют перед реальными вызовами: таблицами со сложной вёрсткой, рукописными пометками, мелким курсивом и разными шрифтами в одном документе.
Чтобы не быть голословными, давайте посмотрим на типичный «сложный» документ и что с ним делает Tika.

Привет! Недавно начал активно использовать инструмент GitHub SpecKit, который превращает хаотичные промпты при разработке в чёткие структурированные документы для AI-агентов. Я пробовал писать код с использованием LLM и был недоволен как нейросеть пишет код. Придерживался мнения проще самому написать код, чем играть в генерацию кода. Те, кто уже баловался вейкбордингом знают, как нейросеть начинает фантазировать/галлюцинировать и гонять по кругу ошибки в перемешку с фантазиями и не существующими методами. Но SpecKit приятно удивил 😊

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

RAG (Retrieval‑Augmented Generation или генерация, дополненная поиском) — это метод искусственного интеллекта, сочетающий генеративную большую языковую модель (LLM) с внешней базой знаний для создания более точных, контекстно‑зависимых и актуальных ответов. Принцип его работы заключается в том, что сначала извлекается релевантная информация из набора документов или источников данных, а затем эта информация передается в LLM для формирования окончательного ответа. Этот процесс позволяет модели выдавать более точные ответы, менее подверженные «галлюцинациям», и ее можно обновлять без дорогостоящего переобучения.
Сегодня мы разберёмся, как собрать базовую RAG‑систему на PHP (да, да, не надо удивляться) с помощью фреймворка Neuron AI. Это будет наш маленький proof‑of‑concept — минимально работающий, но вполне реальный пример.
Ну что, начнём генерацию?

Стандартная модель часто выглядит как странный зоопарк частиц: шесть кварков, шесть лептонов, восемь глюонов, W и Z, фотон, Хиггс… Но если смотреть на неё не как на таблицу, а как на язык симметрий, оказывается, что это очень жёсткая и экономичная конструкция.
В этой статье я продолжаю цикл про «Теорию всего» и разбираю Стандартную модель как минимальную калибровочную квантовую теорию поля. Мы начинаем с симметрий Пуанкаре и внутренних групп SU(3)×SU(2)×U(1), показываем, как из них неизбежно рождаются глюоны, W/Z и фотон. Потом разбираем фермионный сектор: кварки и лептоны как представления этих групп, левый/правый, поколения. Отдельная часть посвящена Хиггсу — не как «шайбе массой 125 ГэВ», а как механизму, который даёт массы W/Z и фермионам, не разрушая калибровочную структуру.
В финале обсуждаем аномалии, BRST-симметрию и ренормгруппу: как требования отмены аномалий фиксируют дробные гиперзаряды и структуру поколений, почему QCD оказывается асимптотически свободной, а калибровочные константы почти унифицируются на высоких энергиях. Цель статьи — показать читателю с физмат-бэкграундом, что Стандартная модель — это не случайный набор формул, а почти единственный самосогласованный способ устроить наш мир из симметрий, который не ломается ни на уровне математики, ни на уровне эксперимента.

Будучи творческим человеком и техногиком, я обожаю при первой возможности апгрейдить своё оборудование. Время от времени я мониторю маркетплейсы в поисках чего-то новенького и в этот раз я наткнулся на настоящий мультитул для Embedded-разработчика — контроллер I2C/SPI/UART/JTAG в одной коробочке и всё это всего за 1.000 рублей... Конечно я не смог пройти мимо этой штучки и в рамках сегодняшней статьи хочу рассказать что оно из себя представляет и как с ним работать. Жду вас под катом!

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

В 1939 году, опоздав на занятие по статистике в Калифорнийском университете в Беркли, Джордж Данциг, студент первого курса магистратуры, скопировал с доски две задачи, думая, что это домашнее задание. Позже он вспоминал, что задание показалось ему «сложнее, чем обычно», и извинился перед профессором за то, что на его выполнение у него ушло на несколько дней больше, чем обычно. Через несколько недель профессор сказал ему, что он решил две известные нерешённые задачи по статистике. Работа Данцига стала основой для его докторской диссертации, а спустя десятилетия — источником вдохновения для фильма «Умница Уилл Хантинг».
Данциг получил докторскую степень в 1946 году, сразу после Второй мировой войны, и вскоре стал математическим консультантом новообразованных ВВС США. Как и во всех современных войнах, исход Второй мировой войны зависел от разумного распределения ограниченных ресурсов. Но в отличие от предыдущих войн, этот конфликт был поистине глобальным по масштабам, и победа в нём была во многом достигнута благодаря огромной промышленной мощи. США могли просто производить больше танков, авианосцев и бомбардировщиков, чем их враги. Зная об этом, военные были очень заинтересованы в задачах оптимизации, то есть в том, как стратегически распределять ограниченные ресурсы в ситуациях, которые могли включать сотни или тысячи переменных.

Помимо всем известной Apple, на свете существовала еще одна «фруктовая» компания, выпускавшая очень популярные компьютеры.
И сейчас мы цинично оживим и запустим эмулятор этих замечательных машин.

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

В этой статье нет каких-то революционных открытий, есть только некоторые наблюдения о зеркалах, не совсем очевидные для людей, никогда не создававших эти объекты в играх.
Зеркала в Sims 4 по-настоящему работают! Для этого игре нужно ещё раз рендерить комнату для каждого зеркала в сцене. Разумеется, это затратный процесс.