VPN сервисы ликуют

В Англии ввели закон, согласно которому сайты, дающие доступ к материалам только для взрослых, должны проверять возраст пользователей. Идиотия тупая, как обычно. И дело даже не в том, что проверка возраста происходит, например, по скану государственного документа, который может потом “утечь” — и прецеденты уже были. И даже не в том, что таким образом происходит вторжение в частную жизнь пользователя. Проблему я вижу в том, что с больной головы постоянно валят на здоровую — на техкомпании.

Идея ведь в чём? Официально — “чтобы дети не смотрели порнуху”. Это уже набившее вот такую оскомину политическое клише — под видом “защиты детей” на деле вводится любая драконщина.

Разумеется, оно уже было в Симпсонах.

Дети — это ответственность родителей. Точка.

Если у тебя дети дома бесконтрольно могут смотреть всякое — это ты мудак, а не техкомпании. К тому же, как показывает опыт, все эти “ограничения” достаточно легко обходятся. В Англии количество VPN аккаунтов выросло на 1400%!! А если дети могут беспрепятственно менять настройки и устанавливать на устройства программы, включая VPN — это тебя надо штрафовать, а не техкомпании. Твои дети — это твоя ответственность, а не техкомпаний. Функции родительского контроля есть на всех операционных системах — от Винды до Мака и iOS. Я не знаю, как на Ведроидах, но уверен, что там тоже оно есть. Если ты не можешь потратить пять минут на их настройку — либо не имей детей, либо не покупай устройства. А уж с наличием вездесущего ИИ, который может дать пошаговые инструкции, по-моему, уже даже кот может эти настройки сделать. Надоело уже вот это спихивание ответственности с родителей за детей на кого попало — только не на самих родителей.

Особенно горько осознавать, что Англия, увы, это не исключение. Задолго до Англии примерно те же педерасы в плохом смысле слова сделали то же самое в нашем штате в 2024 году, приняв билль 164. И, увы, не один наш штат такой долбанутый.

Порносайты, кстати, по-моему, не вводили никаких проверок. Просто при заходе с алабамского или других айпишников, где есть соответствующие долбозаконы, некоторые сайты не дают ничего просматривать, просто высвечивается надпись “в качестве протеста мы не обслуживаем запросы из вашего штата. ваше возмущение можете передать вашим законодателям.”. И привет, котятки.

Нуль без палочки

Компьютеры не умеют вычитать числа. Внутри процессора нет “вычитатора”, есть только сумматор (adder). Поэтому когда надо посчитать, например, 3 – 2, компьютер внутри себя переписывает это выражение как 3 + (-2), то-есть, складывает тройку с минус двойкой.

Числа внутри компьютера, конечно же, двоичные. Самый значимый бит в числе — знаковый, если он 0, то число неотрицательное, а если 1 — то отрицательное. Если мы пишем слева направо, так что самый значимый бит — самый первый слева (к слову, внутри себя компьютеры же пишут по-еврейски, справа налево (little endian)).

Так, знаковое целое число 3 записывается как 0011 (пусть у меня будет четырёхбитный процессор), а знаковое целое число -2 пишется как 1110 (т.н. дополнительный код, two’s complement). Ну, и складываем эти числа, пользуясь двоичной математикой, получаем искомый 0001 (вернее, 10001, но процессор у нас четырёхбитный, так что мнимое переполнение идёт в игнор).

Все современные процессоры (x86/AMD64, процессоры ARM, и так далее) записывают отрицательные целые числа, пользуясь дополнительным кодом. А вот на некоторых более ранних компьютерах, типа PDP-1 или советской ЭВМ БЭСМ-2, для записи таких чисел использовался более простой обратный код. Получить обратный код из двоичного числа проще — надо просто поменять единички на нолики и наоборот. Так, чтобы записать -2, берём +2 — это 0010, и меняем единички на нолики, а нолики на единички: 1101, вот вам и обратный код.

И на этом месте появляется хохма!

Вот, например, обыкновенный нуль: 0000

Можно из него сделать отрицательный нуль: 1111

Таким образом, у тебя в системе есть два нуля — положительный и отрицательный, и записываются они по-разному 🙂 И если арифметические действия с ними проблем не вызывают, так как на таких компьютерах (-0 == +0) было TRUE, то с побитовыми операциями, хешированием, сортировкой уже возникают эффекты, и к концу 1970х от простого обратного кода (one’s complement) для записи знаковых целых чисел отказались, перейдя на запись дополнительным кодом (two’s complement), в котором нуль как Аллах — один 🙂

Забавно.

PS: А вообще я сталкивался к некоторыми задачами, где мне бы пригодилось наличие двух нулей, отрицательного и положительного. А ещё было бы прикольно записывать этими разными нулями результаты вычисления некоторых пределов — было бы понятнее, с какой стороны предел подкрадывается к нулю: lim (x → -∞) 1/x = -0 😉

pfSense-админское

Не рекомендую апгрейдиться до версии 2.8CE. Она построена на базе FreeBSD 15 вместо 14, и количество багов там зашкаливает. В частности, они поменяли механизм загрузки драйверов.

Пытался настроить тут мост “вайфай-домашняя сеть” на pfSense, для случаев когда основной интернет падает во время смерчей и прочих погодных явлений. Ну, чтобы на весь дом сразу, даже на проводные устройства, раздавать Ёнтернет с телефона. Вайфайная карточка Intel 8260 должна поддерживаться в pfSense из коробки, но pfSense 2.8 при загрузке, увидев эту карточку, сразу насмерть валится в кёрнел паник.

Баг уже задокументирован.

Хорошо, что я тщательно храню бекапы конфигурации, и смог откатиться назад к версии 2.7.2 — и в ней всё прекрасно заработало с пол-тычка.

Как они повидлу в карамельки засовывают

В детстве у меня был проигрыватель для виниловых пластинок с изменяемой скоростью проигрывания. Обычный диск на 33 оборота можно было запустить на 45 — уже получалось смешно. А можно было зафигачить аж на 78 оборотов — тогда пластинка проигрывалась очень быстро, и всё звучало по-мультяшному. По башке, конечно, надо было мне дать, чтобы пластинки не портил, но что было, то прошло. У меня сейчас тоже проигрыватель пластинок есть, но такой дурью я больше не маюсь. Просто играю пластинки и всё.

Так вот, всегда мучал вопрос — как это ютупчик и прочие сервисы видео- и аудиоконтента, типа подкастов, могут убыстрять (или замедлять) проигрывание звука без изменения его высоты?

Оказалось, что делают так:

1. Разбивают цифровой звук на маленькие блоки в 512-2048 байт. На частоте дискретизации в 44.1 килогерца эти блоки имеют длину всего несколько миллисекунд.
2. На каждом блоке запускают преобразование Фурье. Для тех, кто вдруг не знает — это математический способ разбить звук на индивидуальные составляющие частоты.
3. Воссоздают те же частоты, но просто укорачивают или увеличивают им длину проигрывания в нужное количество раз по желанию пользователя. Склеивают звук назад.

PROFIT!

Ну, немного посложнее, конечно (обычно там не тупо дискретные блоки по 512 байт, а т.н. “скользящее окно” (sliding window) размером в 512 байт, например, но основа алгоритма Phase Vocoder (“фазовый вокодер”, что ли?) именно такая.

Прикольно. Неужели всё это делается прямо в браузере, джаваскриптом? Обалдеть. Наврядли на сервере хранятся сто разных версий одного и того же видеофайла.

Ждалкер 2

Первая игра франшизы S.T.A.L.K.E.R. мне вообще-то не очень зашла. Но справедливости ради, во многом из-за того, что в 2007 году, когда она вышла, комп у меня был довольно дохлый — а системные требования игры были очень высокими. Никаких твёрдотельных дисков у меня ещё не было — так что игра грузилась… долго. В ней также было много багов, и она пару раз у меня вылетала в самый интересный момент. Потом, в оригинале семь разных концовок, в зависимости от того, как играешь. Я тогда пошёл по пути жадности, и с дурна ума попёр на Исполнитель Желаний — а все концовки Исполнителя Желаний плохие. Так что меня заживо похоронили в золоте — что сильно смазало впечатление.
“Чистое небо” как-то тоже не очень понравилось — история неинтересная. А вот “Зов Припяти” зашёл на ура. С удовольствием провёл время.

В Стиме была распродажа, так что купил “Серце Чорнобиля“. Впечатления в целом — положительные, но, конечно, не без минусов.

Хорошее:
1. История интересная, квестов как основных, так и дополнительных — навалом. Рекомендую поглядеть видео геймеров в ютубе на предмет того, где надо искать лучший лут. Так, ещё в Малой Зоне можно раздобыть СВД, которую я использовал для более безопасного нападения на “Сферу”, а так же АК74 с прицепленным ПСО — который почти как снайперка по точности, но убойность, конечно, пожЫже (патрон другой).
2. Геймплей хороший, динамичный, цепляет и затягивает.
3. Родимые, известные места — присутствуют. Вдалеке видел махину чернобыльской ЗГРЛС “Дуга” — чуть не прослезился.
Плохое:
1. Система изнашивания оружия совершенно долбанутая. Вот выпустил ты из АК74 триста пуль — и он начинает клинить, и его уже надо нести ремонтировать.

Это как, япона мать, извиняюсь, понимать? После трёхсот пуль? Автомат Михаила Тимофеича? Та ви з глузду з’їхали. Максимум, что с ним надо сделать — это его почистить, и это игрок вполне должен быть способен сделать сам, вместо того, чтобы тащить его к технику. Апгрейды оружия, всяческие ништяки и навесное оборудование — это да, к технику. А уж гвiнтивку почистити я и сам могу.
2. Тебя могут ранить, и ты начнёшь истекать кровью, надо лечиться. А вот враги почему-то кровью не истекают, и не лечатся. Непонятно, почему. Пусть лечатся, а ты будешь в них в этом время стрелять, если у них нет мозгов, чтобы спрятаться за укрытием.
3. Первая загрузка игры с надписью “идёт компиляция шейдеров” каждый раз идёт очень долго, и грузит все восемь ядер моего не самого медленного процессора на 100%. Как-то странно. Могли бы один раз скомпилировать, а потом загружать объекты прямо с диска.
Нейтральное:
1. Графика в целом норм, на уровне, хотя на некоторых вещах уровень детализации как-то… не очень.
2. Игра не всегда даёт сохраниться. Вот, например, во время выхода из “Сферы” мне бы очень не помешала бы ещё парочка сейвов, а то убьют тебя — и начинай чуть ли не с середины, а врагов на “Сфере” много…
3. Никак не могу себя заставить пройти мимо нехороших людей, я ж такой — “всех убью, один останусь”.

А эта игра она почти как “Наёмный Убийца №47” — предполагает много вариантов прохождения. Наверняка на “Сфере” можно было бы большинство вражин тихо обойти, не вступая в бой с двумя взводами вооружённых солдат. Впрочем, конечно, самый частый рейтинг, который я получал в “Наёмном Убийце” — это “mass murderer”, так что выводы делают себя сами.

Но в-общем, мне пока очень нравится, играю с удовольствием.

Сильное колдунство

Я очень люблю Windows Subsystem for Linux (WSL). Вот реально без неё — как без рук. Весь нужный инструмент — grep, sed, find, cat, nc, awk, wget, curl, openssl, и так далее — доступен сразу не отходя от кассы. Не надо никаких отдельно стоящих виртуалок. И да, это круче Cygwin, потому что линуксовые бинарники под вашим цЫгвином не запускаются, а под WSL — пожалуйста. Потом, у цЫгвина самый большой недостаток — это то, что если там какой-то пакет в ней не стоит, то надо запускать setup.exe и заново перевыбирать пакеты. А в WSL у меня же в ней вообще полноценная Убунта стоит, и на неё хоть чорта лысого можно поставить через apt, а если не помогает apt — то через snap, или вообще можно по-старинке самому скомпилировать и сделать make install. Кстати, выбор не ограничен Убунтой, хотя это дистро по умолчанию. Можно и Дебиан, можно kali. Да хоть SUSE, если она кому-то близка (слакварщикам, может быть).

Но при всём этом — это не отдельно стоящая виртуалка, типа как в рабочей станции ВМВарь. Она сильно интегрирована с хозяйской операционной системой. Например, можно сказать /mnt/c/windows/system32/calc.exe и он запустится! Ну, понятно, в отдельном окне. А теперь, пишут, можно даже на Винде линуксовые гуйные приложения запускать, и их использовать, но я, правда, пока не пробовал. Вот это я понимаю, сильное колдунство.

Или очень просто диски монтировать сетевые, sudo mount -t drvfs //server/share /mnt/mountpoint и вперёд, не надо мудохаться с cifs и паролями, оно пароли берёт из пользовательской сессии самой винды.

Мало того — я под ней запускаю всяческий Тензорфлоу, Олламу и прочий ИИ — и CUDA видеоускоритель прекрасно пробрасывается до гостевой ОС, она его видит и использует на всю катушку.

Google Gemini (Gemma3), запущенный в окне WSL под Ollama. До кучи тут ещё Микрософт Терминал, тоже ещё один пакет, без которого как без рук:

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

Рекомендую изо всех сил. Отличная вещь.

Про силу ИИ

Спросил у двух разных систем ИИ сыграть со мной в крестики-нолики.

Обыграл всех всухую. Такое ощущение, что ходы были вообще случайные, хотя я специально требовал, чтобы оно использовало минимакс для оценки своих ходов. Нормально сделанный минимакс обязан приводить игру в крестики-нолики в состояние ничьей.

Это же не шахматы, тут максимальное вообще возможное количество игр 9! = 362,880.

Сарочка Коннор может спать спокойно.

Урод 3.0

Вышел GIMP 3.0. Скачал, поставил. Убедился в очередной раз, что эта поделка до сих пор ни для чего нормального не годится, и стёр.

History brush? Не слышали.
Создание файла CMYK? Нет, до сих пор не видели.
Почему в примитивном диалоге Curves в УРОДЕ 3.0 до сих пор, японский бог, нет пипеток выставить high, mid, и low? На кой чорт вообще нужен этот диалог, если ты ему даже нормально сказать не можешь, что на твоём изображении является самой тёмной точкой (или наоборот, самой светлой) — и что всё остальное надо посылать нахер? А? А???

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

Во-первых, ими очень сложно пользоваться. Мне пришлось просмотреть два ролика на ютубе, чтобы понять, КАК — вот такой вот “продуманный” интерфейс. В фотошопе ты идёшь в меню слой – эффекты — и применяешь, какие надо. А здесь надо сначала применить какой-то эффект, чтобы он появился в меню применённых эффектов для слоя.

Во-вторых, не все эффекты являются обратимыми — например, эффекты освещённости (lighting) как ты применил — и всё, хана, выбито зубилом в граните, как-то поменять не получится, разве что через Ctrl+Z. Но фишка-то — как раз в лёгкой изменяемости и обратимости!!

В-третьих, работают они исключительно медленно — глазами видно, как изображение меняется по кусочкам, будто снова за 80486 компьютер сел. Видеоускорители? Нет, извините, прошло мимо нас.

А знаете, почему “всё у них так”? Потому что GIMP создают программисты. Во-первых, они делают то, что им кажется важным. А во-вторых, они делают это так, как им кажется правильно, а не пользователям. А фотошоп? А фотошоп создаётся не сколько программистами, сколько командой профессионалов из самых разных отраслей, как то: печатников, редакторов, верстальщиков, фотографов, художников, дизайнеров интерфейсов, вебмастеров, и так далее. А над ними всеми стоит начальник проекта, с плёткой в руках, и всех постоянно бьёт по жопе, чтобы было так, как он/а сказал/а, а не так, как они сами себе придумали, чтобы было удобно и нужно. Потому что если так не делать, то вот и получится УРОД версии 3.0.